From bc263d8bed5d1405f275bb8638a9bec9eaf06585 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期一, 31 三月 2025 09:42:00 +0800
Subject: [PATCH] 添加审签逻辑,移动flow通用代码,添加根据角色查询用户,新增时间工具类,修改指派设备bug

---
 lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java
index 2bb58bd..ab62a88 100644
--- a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java
+++ b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java
@@ -42,7 +42,6 @@
 import org.jeecg.modules.flowable.apithird.common.constant.ProcessConstants;
 import org.jeecg.modules.flowable.apithird.common.enums.FlowComment;
 import org.jeecg.modules.flowable.apithird.common.exception.CustomException;
-import org.jeecg.modules.flowable.apithird.entity.ActStatus;
 import org.jeecg.modules.flowable.apithird.entity.SysUser;
 import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI;
 import org.jeecg.modules.flowable.apithird.service.IFlowThirdService;
@@ -96,6 +95,10 @@
             taskService.saveTask(task);
         }
         SysUser loginUser = iFlowThirdService.getLoginUser();
+        //鍒ゆ柇鐢ㄦ埛鏄惁鏈夋潈闄�
+        if (!task.getAssignee().equals(loginUser.getUsername())){
+            return Result.error("褰撳墠鐢ㄦ埛鏃犳潈闄�");
+        }
         if (DelegationState.PENDING.equals(task.getDelegationState())) {
             taskService.addComment(taskVo.getTaskId(), taskVo.getInstanceId(), FlowComment.DELEGATE.getType(), taskVo.getComment());
             //taskService.resolveTask(taskVo.getTaskId(), taskVo.getValues());
@@ -103,7 +106,6 @@
             System.out.println("taskVo.getTaskId()--->taskVo.getInstanceId()--->FlowComment.NORMAL.getType()--->taskVo.getComment()"+taskVo.getTaskId() + "---" + taskVo.getInstanceId() + "---" + FlowComment.NORMAL.getType() + "---"+taskVo.getComment() );
             taskService.addComment(taskVo.getTaskId(), taskVo.getInstanceId(), FlowComment.NORMAL.getType(), taskVo.getComment());
             taskService.setAssignee(taskVo.getTaskId(), loginUser.getUsername());
-            //taskService.complete(taskVo.getTaskId(), taskVo.getValues());
         }
         /*======================瀹℃壒缁撴潫  鍥炶皟浠ュ強鍏抽敭鏁版嵁淇濆瓨======================*/
         //涓氬姟鏁版嵁id
@@ -157,8 +159,8 @@
 
         if (task2!=null && task.getTaskDefinitionKey().equals(task2.getTaskDefinitionKey())){
         //    * 褰撳墠鑺傜偣鏄細绛捐妭鐐癸紝娌℃湁璧板畬
-            business.setActStatus(ActStatus.doing)
-                    .setTaskId(task2.getId())
+            business.setTaskId(task2.getId())
+//                    .setActStatus(ActStatus.doing)
                     .setDoneUsers(doneUserList.toJSONString())
             ;
             String todoUsersStr = business.getTodoUsers();
@@ -202,8 +204,9 @@
                     //    鍓嶇浼犲叆鍊欓�変汉
                     collect_username = candidateUsers;
                 }
-                business.setActStatus(ActStatus.doing)
+                business
                         .setTaskId(task2.getId())
+//                        .setActStatus(ActStatus.doing)
                         .setTaskNameId(nextTask.getId())
                         .setTaskName(nextTask.getName())
                         .setPriority(nextTask.getPriority())
@@ -234,7 +237,7 @@
 
             } else {
                 //    **娌℃湁涓嬩竴涓妭鐐癸紝娴佺▼宸茬粡缁撴潫浜�
-                business.setActStatus(ActStatus.pass)
+                business
                         .setDoneUsers(doneUserList.toJSONString())
                         .setTodoUsers("")
                         .setTaskId("")
@@ -250,11 +253,13 @@
         if (flowCallBackService!=null)flowCallBackService.afterFlowHandle(business);
         return Result.OK();
     }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Result completeByDateId(FlowTaskVo flowTaskVo){
         return this.complete(flowTaskVo);
     }
+
     @Override
     public void taskRejectByDataId(FlowTaskVo flowTaskVo){
         FlowMyBusiness business = flowMyBusinessService.getByDataId(flowTaskVo.getDataId());
@@ -409,8 +414,9 @@
             if (!doneUserList.contains(loginUser.getUsername())){
                 doneUserList.add(loginUser.getUsername());
             }
-            business.setActStatus(ActStatus.reject)
+            business
                     .setTaskId(task2.getId())
+//                    .setActStatus(ActStatus.reject)
                     .setTaskNameId(task2.getTaskDefinitionKey())
                     .setTaskName(task2.getName())
                     .setDoneUsers(doneUserList.toJSONString())
@@ -588,8 +594,9 @@
                 //**璺宠浆鍒扮洰鏍囪妭鐐�
             List<Task> task2List = taskService.createTaskQuery().processInstanceId(business.getProcessInstanceId()).active().list();
             Task targetTask = task2List.get(0);
-                business.setActStatus(ActStatus.reject)
+                business
                         .setTaskId(targetTask.getId())
+//                        .setActStatus(ActStatus.reject)
                         .setTaskNameId(targetTask.getTaskDefinitionKey())
                         .setTaskName(targetTask.getName())
                         .setPriority(targetTask.getPriority()+"")

--
Gitblit v1.9.3