From 3777ec066316f3c1d3ca36e2cae5b1e05bac4f6e Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期五, 05 十二月 2025 17:11:39 +0800
Subject: [PATCH] 首页

---
 business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java |   24 +++++++++++++++++++-----
 1 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java b/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java
index c39400e..9514a39 100644
--- a/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java
@@ -175,6 +175,7 @@
             }
         }
         taskService.addComment(taskId, task.getProcessInstanceId(), FlowComment.SUBMIT.getType(), "瀹屾垚鎻愪氦");
+        //鍒ゆ柇鏄惁鏄娲句换鍔�
         if (DelegationState.PENDING.equals(task.getDelegationState())) {
             taskService.resolveTask(taskId, newV);
         } else {
@@ -1513,7 +1514,7 @@
 
     /**
      * 娴佺▼鑺傜偣琛ㄥ崟
-     *
+     * 鐐瑰嚮鍔炵悊杩涘叆
      * @param taskId 娴佺▼浠诲姟缂栧彿
      * @return
      */
@@ -1627,7 +1628,9 @@
 
     @Override
     public AjaxResult detail(String processInsId, String taskId) {
+        //鏌ヨ杩愯鏃舵祦绋嬪疄渚嬶紙鍚祦绋嬪彉閲忥級
         ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().includeProcessVariables().processInstanceId(processInsId).singleResult();
+        log.info("鎵撳嵃杩愯鏃�:{}",processInstance);
         // 娴佺▼鍙橀噺
         Map<String, Object> parameters = new HashMap<>();
         if (Objects.isNull(processInstance)) {
@@ -1637,7 +1640,7 @@
             if (Objects.isNull(historicProcessInstance)) {
                 throw new RuntimeException("娴佺▼涓嶅瓨鍦�");
             }
-
+            //娴佺▼鏈粨鏉� 鏌ヨ娴佺▼宸插畬鎴愮殑缁撶偣浠诲姟
             List<HistoricTaskInstance> hisTasks = historyService.createHistoricTaskInstanceQuery()
                     .taskId(taskId)
                     .finished()
@@ -1648,7 +1651,9 @@
             if (CollectionUtils.isNotEmpty(hisTasks) && Objects.isNull(hisTasks.get(0))) {
                 throw new RuntimeException("璇ヤ换鍔′笉瀛樺湪");
             }
+            //鑾峰緱鏈�鏂扮殑浠诲姟鑺傜偣
             HistoricTaskInstance hisTask = hisTasks.get(0);
+            //鑾峰緱鍙傛暟
             parameters = historicProcessInstance.getProcessVariables();
             List<FormDetailVO> beforeNodes = this.getBeforeNodeForm(parameters,
                     hisTask.getFormKey(),
@@ -1657,12 +1662,14 @@
                     hisTask.getTaskDefinitionKey(),
                     Boolean.TRUE, Boolean.TRUE);
             List<FormDetailVO> dataList = new ArrayList<>(2);
+            // 鎸夋墽琛屾祦ID鍒嗙粍鍓嶇疆鑺傜偣
             Map<String, List<FormDetailVO>> map = new HashMap<>(2);
             beforeNodes.stream().forEach(node -> {
                 if (node.getCurrent()) {
                     node.setTaskId(taskId);
                     dataList.add(node);
                 } else {
+                    //鍓嶇疆鑺傜偣锛氭煡璇㈠搴旂殑鏈�鏂板巻鍙蹭换鍔�
                     List<HistoricTaskInstance> beforeTasks = historyService.createHistoricTaskInstanceQuery()
                             .processInstanceId(hisTask.getProcessInstanceId())
                             .finished()
@@ -1670,6 +1677,7 @@
                             .orderByTaskCreateTime()
                             .desc()
                             .list();
+
                     if (CollectionUtils.isNotEmpty(beforeTasks) && Objects.nonNull(beforeTasks.get(0))) {
                         node.setTaskId(beforeTasks.get(0).getId());
                         List<FormDetailVO> l = map.get(beforeTasks.get(0));
@@ -1689,7 +1697,9 @@
             }
             List<DoFormDetailVO> vos = dataList.stream().map(node -> {
                 if (node.getCurrent()) {
+                    // 璋冪敤鏃ュ織鏈嶅姟锛屾煡璇㈣浠诲姟鏄惁澶勪簬鎸傝捣鐘舵�侊紙浼犲叆浠诲姟ID鍜屾祦绋嬪疄渚婭D锛�
                     if (processLogService.taskIsHangup(taskId, hisTask.getProcessInstanceId())) {
+                        //鑻ユ寕璧凤紝缁欒妭鐐硅缃�滄寕璧封�濈姸鎬侊紙鍓嶇浼氬睍绀烘寕璧锋爣璇嗭級
                         node.setTaskStatus(TaskStatusEnum.HANGUP);
                     }
                 }
@@ -1812,16 +1822,19 @@
 
         // 杩欓噷鍙渶瑕佹煡鑷韩浠ュ強涓婁竴涓妭鐐�(濡傛灉骞惰鐨勬湁澶氫釜)鐨勮〃鍗曟暟鎹�
         List<FormDetailVO> beforeNodes = taskCommonService.getBeforeNodeDefInfo(processDefId, processDefKey, sysFormService, Boolean.TRUE);
+        // 闈炲綋鍓嶈妭鐐� 鎴� 闇�瑕佸綋鍓嶈妭鐐规暟鎹�
         List<String> beforeNodeDefIds = beforeNodes.stream().filter(item -> !item.getCurrent() || currentNeedData).map(FormDetailVO::getBeforeNodeDefId).collect(Collectors.toList());
 
         // 澶勭悊姣忎釜琛ㄥ崟鐨勬暟鎹�
         for (FormDetailVO formDetailVO : beforeNodes) {
+            // 璺宠繃鈥滃綋鍓嶈妭鐐逛笖涓嶉渶瑕佸叾鏁版嵁鈥濈殑鍦烘櫙 骞朵笖 currentNeedData涓嶉渶瑕佸綋鍓嶈妭鐐规暟鎹殑鎯呭喌
             if (formDetailVO.getCurrent() && !currentNeedData) {
                 // 褰撳墠鑺傜偣鐨勮〃鍗曚篃瑕佸鐞唅p闂
                 continue;  // 璺宠繃褰撳墠鑺傜偣锛屽洜涓哄綋鍓嶈妭鐐瑰湪鑾峰彇鍓嶇疆鑺傜偣鏃跺凡缁忚缃繃浜�(浣嗚〃鍗曟暟鎹病鏈夌粰)
             }
 
             Map<String, Object> newP = new HashMap<>();
+            // 瀛樺偍褰撳墠鑺傜偣鐨勮〃鍗曟暟鎹�
             if (CollectionUtils.isNotEmpty(beforeNodeDefIds)) {
                 for (String key : parameters.keySet()) {
                     // 杩囨护鎷垮埌鐩爣琛ㄥ崟鏁版嵁锛屽皢鐩爣琛ㄥ崟鏁版嵁鏀惧埌鏂癿ap涓�
@@ -1834,7 +1847,7 @@
                     }
                 }
             }
-
+            //鑾峰緱鍓嶇疆鑺傜偣瀹氫箟id锛屽嵆浠诲姟key
             Object form = newP.get(formDetailVO.getBeforeNodeDefId() + "&" + ProcessConstants.TASK_FORM_KEY);
             if (Objects.nonNull(form)) {
                 JSONObject formJson = JSONObject.parseObject(JSON.toJSONString(form));
@@ -1853,11 +1866,12 @@
                             options.put("uploadURL", String.format("http://%s:10076/common/upload", this.targetIp));
                         }
                     }
-
+                    // 鏇存柊琛ㄥ崟缁撴瀯锛堝凡澶勭悊绂佺敤鍜屼笂浼犲湴鍧�锛�
                     formJson.put(ProcessConstants.WIDGET_LIST, oldFields);
                     newP.put(ProcessConstants.TASK_FORM_KEY, formJson);
+                    // 鍒犻櫎鍘熷鐨勨�滆妭鐐笽D&TASK_FORM_KEY鈥濋敭锛堥伩鍏嶅啑浣欙級
                     newP.remove(formDetailVO.getBeforeNodeDefId() + "&" + ProcessConstants.TASK_FORM_KEY);
-                    // 澶勭悊宸茬粡涓婁紶鐨勬枃浠剁殑ip鍦板潃
+                    // 宸蹭笂浼犳枃浠剁殑璁块棶IP鍦板潃锛堝墠绔瑙�/涓嬭浇鏃舵寚鍚戞纭湴鍧�锛�
                     for (String s : newP.keySet()) {
                         if (ProcessConstants.TASK_FORM_KEY.equals(s)) {
                             continue;

--
Gitblit v1.8.0