fix:87473

This commit is contained in:
梁琦涛
2024-07-26 13:50:46 +08:00
parent abb8a06f4c
commit 8b02102e6a
@@ -298,7 +298,7 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
}
@Transactional(rollbackFor = JeroBootException.class)
public void delegateTask(DelegateTaskParam param) {
public synchronized void delegateTask(DelegateTaskParam param) {
String taskId = param.getTaskId();
String userId = param.getUserId();
Integer prcType = param.getPrcType();
@@ -326,6 +326,17 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
if(Objects.isNull(processNode)){
throw new JeroBootException("数据不存在");
}
// 不可重复加签
LambdaQueryWrapper<ProcessNodeLink> queryProcessNodeLink = new LambdaQueryWrapper<>();
queryProcessNodeLink.eq(ProcessNodeLink::getProcessDefinitionId,processDefinitionId);
queryProcessNodeLink.eq(ProcessNodeLink::getProcessNodeId,processNode.getId());
queryProcessNodeLink.eq(ProcessNodeLink::getProcessDefinitionId, processDefinitionId);
queryProcessNodeLink.eq(ProcessNodeLink::getUserId,userId);
long l = processNodeLinkService.count(queryProcessNodeLink);
if(l > 0){
throw new JeroBootException("加签人员重复");
}
processNodeLink.setProcessNodeId(processNode.getId());
processNodeLink.setUserId(userId);
processNodeLinkService.save(processNodeLink);