diff --git a/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java b/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java index 1a4118a4..54947743 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java +++ b/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java @@ -428,6 +428,8 @@ public class TodoTaskController extends BaseAction { } else if (StringUtils.equals(one.getPrcType(), FlowTypeEnum.ZCHGXXMSCLC.getValue())) { this.changeZchgxxmscFlowAssignee(assignee, userId, pId, str); } + + this.busProcessHistoryService.changeUserIdByTaskId(str,assignee,userId); } } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessHistoryService.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessHistoryService.java index 88c804d1..7d3ad458 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessHistoryService.java +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessHistoryService.java @@ -30,4 +30,7 @@ public interface IBusProcessHistoryService extends IService { void updateOrderNum(String actiProcInstId, int orderNum,int dataNum); List> getImgDataList(BusProcessHistory busProcessHistory); + + // 根据taskId修改用户id + void changeUserIdByTaskId(String taskId,String afterUserId,String frontUserId); } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/IBusProcessHistoryServiceImpl.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/IBusProcessHistoryServiceImpl.java index 5bb6801e..d9e4dd20 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/IBusProcessHistoryServiceImpl.java +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/IBusProcessHistoryServiceImpl.java @@ -277,6 +277,20 @@ public class IBusProcessHistoryServiceImpl extends ServiceImpl bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskId, taskId); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,frontUserId); + BusProcessHistory bph = this.getOne(bphQueryWrap); + if (ObjectUtils.isNotEmpty(bph)) { + bph.setUserId(afterUserId); + this.updateById(bph); + } + } + } + /** * 获取标准征求意见流程图数据 * @param bphList @@ -320,6 +334,21 @@ public class IBusProcessHistoryServiceImpl extends ServiceImpl childList = bphList.stream().filter(bph -> StringUtils.equals(busProcessHistory.getId(), bph.getManyPId())).distinct().collect(Collectors.toList()); + if (CollectionUtils.isNotEmpty(childList)) { + for (BusProcessHistory history : childList) { + busProcessHistory.setTaskId(busProcessHistory.getId()); + busProcessHistory.setTaskStatus(TaskStatusEnum.DONE.getValue()); + if (StringUtils.equals(history.getTaskStatus(),TaskStatusEnum.TODO.getValue()) || StringUtils.equals(history.getTaskStatus(),TaskStatusEnum.RECEIVED.getValue())) { + busProcessHistory.setTaskStatus(TaskStatusEnum.TODO.getValue()); + busProcessHistory.setTaskId(null); + break; + } + } + } + } if (StringUtils.isEmpty(busProcessHistory.getTaskId()) || StringUtils.equals(busProcessHistory.getTaskStatus(), TaskStatusEnum.TODO.getValue()) || StringUtils.equals(busProcessHistory.getTaskStatus(), TaskStatusEnum.RECEIVED.getValue())) {