diff --git a/apihost/Tnb.API.Entry/Configurations/Swagger.json b/apihost/Tnb.API.Entry/Configurations/Swagger.json
index 66d6cf45..e6a1899c 100644
--- a/apihost/Tnb.API.Entry/Configurations/Swagger.json
+++ b/apihost/Tnb.API.Entry/Configurations/Swagger.json
@@ -1,12 +1,12 @@
{
"SpecificationDocumentSettings": {
- "DocumentTitle": "JNPF.NET",
+ "DocumentTitle": "ToTong Next Builder",
"DocExpansionState": "None",
"RoutePrefix": "swagger",
"GroupOpenApiInfos": [
{
"Group": "Default",
- "Title": "JNPF快捷开发平台",
+ "Title": "ToTong Next Builder",
"Description": "",
"Version": "3.4.5"
}
diff --git a/common.props b/common.props
index eb6672a5..17c7a75a 100644
--- a/common.props
+++ b/common.props
@@ -4,9 +4,9 @@
$(NoWarn);CS1591;CA1307;CS8625;CS8600;CS8601;CS8604;CS8618;
-
+
\ No newline at end of file
diff --git a/common/Tnb.SqlSugar/Repositories/SqlSugarRepository.cs b/common/Tnb.SqlSugar/Repositories/SqlSugarRepository.cs
index aebedc0a..41df7e6e 100644
--- a/common/Tnb.SqlSugar/Repositories/SqlSugarRepository.cs
+++ b/common/Tnb.SqlSugar/Repositories/SqlSugarRepository.cs
@@ -87,7 +87,7 @@ where TEntity : class, new()
};
base.Context.Aop.OnError = (ex) =>
{
- Log.Error(UtilMethods.GetSqlString(base.Context.CurrentConnectionConfig.DbType, ex.Sql, (SugarParameter[])ex.Parametres));
+ Log.Error("SQL执行错误: " + UtilMethods.GetSqlString(base.Context.CurrentConnectionConfig.DbType, ex.Sql, (SugarParameter[])ex.Parametres));
//App.PrintToMiniProfiler("SqlSugar", "Error", $"{ex.Message}{Environment.NewLine}{ex.Sql}{pars}{Environment.NewLine}");
};
diff --git a/system/Tnb.Systems/Common/HeartbeatService.cs b/system/Tnb.Systems/Common/HeartbeatService.cs
new file mode 100644
index 00000000..43b96649
--- /dev/null
+++ b/system/Tnb.Systems/Common/HeartbeatService.cs
@@ -0,0 +1,35 @@
+using System.Data;
+using JNPF.Common.Core.Manager;
+using JNPF.Common.Filter;
+using JNPF.Common.Security;
+using JNPF.DependencyInjection;
+using JNPF.DynamicApiController;
+using JNPF.Extras.Thirdparty.JSEngine;
+using JNPF.JsonSerialization;
+using JNPF.Logging.Attributes;
+using JNPF.Systems.Entitys.Permission;
+using JNPF.Systems.Entitys.System;
+using JNPF.TaskScheduler;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Cors;
+using Microsoft.AspNetCore.Mvc;
+using SqlSugar;
+
+namespace JNPF.Systems.Common;
+
+///
+/// 测试接口.
+///
+[ApiDescriptionSettings(Name = "Test", Order = 900)]
+[Route("api")]
+public class HeartbeatService : IDynamicApiController, ITransient
+{
+ [HttpGet("heartbeat")]
+ [AllowAnonymous]
+ [IgnoreLog]
+ public string Heartbeat()
+ {
+ return DateTime.Now.ToString();
+ }
+
+}
diff --git a/system/Tnb.Systems/Common/TestService.cs b/system/Tnb.Systems/Common/TestService.cs
index c01ba6dd..98576c4b 100644
--- a/system/Tnb.Systems/Common/TestService.cs
+++ b/system/Tnb.Systems/Common/TestService.cs
@@ -8,6 +8,7 @@ using JNPF.Extras.Thirdparty.JSEngine;
using JNPF.JsonSerialization;
using JNPF.Logging.Attributes;
using JNPF.Systems.Entitys.Permission;
+using JNPF.Systems.Entitys.System;
using JNPF.TaskScheduler;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Cors;
@@ -69,11 +70,11 @@ public class TestService : IDynamicApiController, ITransient
}
}
- public void xx(UserEntity user)
- {
- user.Account = "2312321";
+ public void xx(UserEntity user)
+ {
+ user.Account = "2312321";
- }
+ }
public void xx1(UserEntity user)
{
diff --git a/visualdev/Tnb.VisualDev/RunService.cs b/visualdev/Tnb.VisualDev/RunService.cs
index 6f991a9d..fbb7dbf7 100644
--- a/visualdev/Tnb.VisualDev/RunService.cs
+++ b/visualdev/Tnb.VisualDev/RunService.cs
@@ -147,7 +147,7 @@ public class RunService : IRunService, ITransient
LogicalDelete(templateInfo); // 处理软删除
primaryKey = GetPrimary(link, templateInfo.MainTableName);
bool udp = _userManager.UserOrigin == "pc" ? templateInfo.ColumnData.useDataPermission : templateInfo.AppColumnData.useDataPermission;
- var pvalue = _userManager.GetCondition>(primaryKey, input.menuId, udp).Result;
+ var pvalue = await _userManager.GetCondition>(primaryKey, input.menuId, udp);
var pvalueJson = pvalue.ToJsonString();
foreach (var item in templateInfo.AllTableFields)
{
diff --git a/workflow/Tnb.WorkFlow.Entitys/Model/FlowTemplateModel.cs b/workflow/Tnb.WorkFlow.Entitys/Model/FlowTemplateModel.cs
new file mode 100644
index 00000000..3089c480
--- /dev/null
+++ b/workflow/Tnb.WorkFlow.Entitys/Model/FlowTemplateModel.cs
@@ -0,0 +1,29 @@
+using JNPF.DependencyInjection;
+using Newtonsoft.Json.Linq;
+
+namespace JNPF.WorkFlow.Entitys.Model;
+
+[SuppressSniffer]
+public class FlowTemplateModel
+{
+ ///
+ /// id.
+ ///
+ public string id { get; set; } = "";
+
+ ///
+ /// 流程id.
+ ///
+ public string flowId { get; set; } = "";
+
+ ///
+ /// 流程名称.
+ ///
+ public string fullName { get; set; } = "";
+
+ ///
+ /// 子节点.
+ ///
+ public FlowTemplateJsonModel? flowTemplateJson { get; set; }
+
+}
diff --git a/workflow/Tnb.WorkFlow/Service/FlowTemplateService.cs b/workflow/Tnb.WorkFlow/Service/FlowTemplateService.cs
index 3bd2f5db..4fcabe8b 100644
--- a/workflow/Tnb.WorkFlow/Service/FlowTemplateService.cs
+++ b/workflow/Tnb.WorkFlow/Service/FlowTemplateService.cs
@@ -617,7 +617,7 @@ public class FlowTemplateService : IFlowTemplateService, IDynamicApiController,
await _repository.AsSugarClient().Insertable(visibleList).CallEntityMethod(m => m.Creator()).ExecuteCommandAsync();
#region 功能流程则要回写到对应的表单表中
- GetFormIdList(flowTemplateJson.ToObject(), formIdList);
+ GetFormIdList(flowTemplateJson.ToObject>().First().flowTemplateJson, formIdList);
foreach (var item in formIdList)
{
var formRelationEntity = new FlowFormRelationEntity
@@ -700,7 +700,7 @@ public class FlowTemplateService : IFlowTemplateService, IDynamicApiController,
}
if (visibleList.Count > 0)
await _repository.AsSugarClient().Insertable(visibleList).CallEntityMethod(m => m.Creator()).ExecuteCommandAsync();
- GetFormIdList(flowTemplateJson.ToObject(), formIdList);
+ GetFormIdList(flowTemplateJson.ToObject>().First().flowTemplateJson, formIdList);
foreach (var item in formIdList)
{
var formRelationEntity = new FlowFormRelationEntity
@@ -739,8 +739,10 @@ public class FlowTemplateService : IFlowTemplateService, IDynamicApiController,
var output = new List();
if (josnStr.IsNotEmptyOrNull())
{
- // 发起节点属性.
- var pro = josnStr.ToObject().properties.ToObject();
+ // 发起节点属性.
+ var flow = josnStr.ToObject>();
+ var pro = flow.First().flowTemplateJson.properties.ToObject();
+ //var pro = josnStr.ToObject().properties.ToObject();
if (pro.initiator.Any())
{
var list = pro.initiator.Select(x => new FlowEngineVisibleEntity() { OperatorId = x, OperatorType = "user" }).ToList();