Explorar o código

新增团组流程节点备注功能及相关优化

本次提交主要为团组流程节点新增备注(Remark)字段,支持前端传递和展示节点备注信息。完善了数据模型、数据库保存与查询逻辑,确保备注内容可正确存储和返回。修正了财务流程节点顺序及类型,优化了节点查询过滤和控制器特性声明,提升了流程节点信息的完整性和准确性。
Lyyyi hai 2 días
pai
achega
36105693c6

+ 1 - 1
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -32908,7 +32908,7 @@ WHERE
         /// 团组总览进程 - 团组名称集合
         /// </summary>
         /// <returns></returns>
-        [HttpGet]
+        [HttpGet()]
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> GroupProcessGroupNames()
         {

+ 7 - 0
OASystem/OASystem.Domain/Dtos/Groups/VisaProcessDtos.cs

@@ -102,6 +102,11 @@ namespace OASystem.Domain.Dtos.Groups
         /// </summary>
         public string ActualDone { get; set; }
 
+        /// <summary>
+        /// 备注信息
+        /// </summary>
+        public string Remark { get; set; }
+
         /// <summary>
         /// 当前用户Id  
         /// </summary>
@@ -145,6 +150,8 @@ namespace OASystem.Domain.Dtos.Groups
         /// 当前用户Id  
         /// </summary>
         public int CurrUserId { get; set; }
+
+        public string Remark { get; set; }
     }
 
     public class ConfProcessChangeNodeTempSaveDto : ConfProcessOverInfoView

+ 1 - 0
OASystem/OASystem.Domain/ViewModels/Groups/ProcessOverView.cs

@@ -58,5 +58,6 @@ namespace OASystem.Domain.ViewModels.Groups
         public string ActualDone { get; set; }
         public bool IsEnaFileUpBtn { get; set; }
         public bool IsFileUp { get; set; }
+        public string Remark { get; set; }
     }
 }

+ 2 - 0
OASystem/OASystem.Domain/ViewModels/Groups/ProcessView.cs

@@ -68,5 +68,7 @@ namespace OASystem.Domain.ViewModels.Groups
         /// 签证节点类型使用
         /// </summary>
         public List<VisaProcessNode> VisaSubNodes { get; set; } = new List<VisaProcessNode>();
+
+        public string Remark { get; set; }
     }
 }

+ 28 - 12
OASystem/OASystem.Infrastructure/Repositories/Groups/ProcessOverviewRepository.cs

@@ -113,7 +113,8 @@ namespace OASystem.Infrastructure.Repositories.Groups
                         Grp_ProcessNode.Create(3, "提交客户所需报件材料完毕",oaNode3Tips,ProcessStatus.InProgress, false,false,false,false, currUserId ,oaNodeOpUsers),
                         Grp_ProcessNode.Create(4, "对接公务",oaNode4Tips,ProcessStatus.InProgress, false,false,false,false, currUserId,oaNodeOpUsers),
                         Grp_ProcessNode.Create(5, "参与公务翻译人员落实",oaNode5Tips,ProcessStatus.InProgress, false,false,false,true, currUserId,oaNodeOpUsers),
-                        Grp_ProcessNode.Create(6, "公务邀请数据有效录入",oaNode7Tips,ProcessStatus.InProgress, false,false,true,false, currUserId,oaNodeOpUsers),
+                        Grp_ProcessNode.Create(6, "公务邀请数据有效录入",oaNode6Tips,ProcessStatus.InProgress, false,false,false,true, currUserId,oaNodeOpUsers),
+                        Grp_ProcessNode.Create(7, "文件上传",oaNode7Tips,ProcessStatus.InProgress, false,false,true,false, currUserId,oaNodeOpUsers),
                     }
                 ));
             #endregion
@@ -372,7 +373,10 @@ namespace OASystem.Infrastructure.Repositories.Groups
 
             var processData = await _sqlSugar.Queryable<Grp_ProcessOverview>()
                 .Where(p => p.GroupId == groupId && p.IsDel == 0)
-                .Mapper(p => p.Nodes, p => p.Nodes.First().ProcessId)
+                .Mapper(
+                    p => p.Nodes,
+                    p => p.Nodes.First().ProcessId
+                 )
                 .ToListAsync();
 
             // 预先构建用户字典,提升查询性能
@@ -380,7 +384,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
 
             var processes = processData.Select(p =>
             {
-                var orderedNodes = p.Nodes.OrderBy(n => n.NodeOrder).ToList();
+                var orderedNodes = p.Nodes.Where(x => x.IsDel == 0).OrderBy(n => n.NodeOrder).ToList();
                 var totalNodes = orderedNodes.Count;
 
                 return new ProcessDetailsView()
@@ -447,15 +451,16 @@ namespace OASystem.Infrastructure.Repositories.Groups
                             Operator = operatorName,
                             OpeateTime = n.OperationTime?.ToString("yyyy-MM-dd HH:mm:ss") ?? "-",
                             ActualDone = n.ActualDone?.ToString("yyyy-MM-dd HH:mm:ss") ?? "",
-                            OpUserList = n.OpUserList,    //可操作用户列表
-                            NodeDescTips = nodeTipsMsg,
-                            IsEnaAssistBtn = isEnaAssistBtn,  // 是否启用财务流程首节点协助按钮
-                            IsAssist = n.IsAssist,      // 财务流程首节点 存储值
-                            IsEnaFileUpBtn = isEnaFileUpBtn,  // 是否启用上传文件按钮
-                            IsFileUp = n.IsFileUp,      // 票据上传节点 存储值
-                            IsEnaPartBtn = isEnaPartBtn,    // 是否启用参与按钮
-                            IsPart = n.IsPart,        // 参与按钮 存储值
-                            VisaSubNodes = visaSubNodes     // 签证节点类型使用
+                            OpUserList = n.OpUserList,       //可操作用户列表
+                            NodeDescTips = nodeTipsMsg,      
+                            IsEnaAssistBtn = isEnaAssistBtn, // 是否启用财务流程首节点协助按钮
+                            IsAssist = n.IsAssist,           // 财务流程首节点 存储值
+                            IsEnaFileUpBtn = isEnaFileUpBtn, // 是否启用上传文件按钮
+                            IsFileUp = n.IsFileUp,           // 上传文件节点 存储值
+                            IsEnaPartBtn = isEnaPartBtn,     // 是否启用参与按钮
+                            IsPart = n.IsPart,               // 参与按钮 存储值
+                            VisaSubNodes = visaSubNodes,     // 签证节点类型使用
+                            Remark = n.Remark
                         };
                     }).ToList()
                 };
@@ -1369,6 +1374,10 @@ namespace OASystem.Infrastructure.Repositories.Groups
             node.IsAssist = isAssist;
             node.IsFileUp = isFileUp;
             node.IsPart = isPart;
+            if (!string.IsNullOrEmpty(dto.Remark))
+            {
+                node.Remark = dto.Remark;
+            }
 
             // 3. 保存节点更新
             await _sqlSugar.Updateable(node)
@@ -1378,6 +1387,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     n.IsAssist,
                     n.IsFileUp,
                     n.IsPart,
+                    n.Remark,
                 })
                 .ExecuteCommandAsync();
             //记录节点日志
@@ -1660,6 +1670,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                             ActualDone = n.ActualDone?.ToString("yyyy-MM-dd HH:mm:ss") ?? "",
                             IsEnaFileUpBtn = isEnaFileUpBtn,
                             IsFileUp = n.IsFileUp,      // 票据上传节点 存储值
+                            Remark = n.Remark
                         };
                     }).ToList()
                 };
@@ -2227,6 +2238,10 @@ namespace OASystem.Infrastructure.Repositories.Groups
 
             node.IsFileUp = isFileUp;
             node.Participators = dto.Participators;
+            if (!string.IsNullOrEmpty(dto.Remark))
+            {
+                node.Remark = dto.Remark;
+            }
 
             // 3. 保存节点更新
             await _sqlSugar.Updateable(node)
@@ -2235,6 +2250,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     n.ActualDone,
                     n.Participators,
                     n.IsFileUp,
+                    n.Remark
                 })
                 .ExecuteCommandAsync();
             //记录节点日志