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();