Merge remote-tracking branch 'origin/master'

This commit is contained in:
zjh 2025-12-26 09:51:44 +08:00
commit 9f6983f745
2 changed files with 20 additions and 2 deletions

View File

@ -10,4 +10,6 @@ public class TodoReturnRequest {
private String steps; private String steps;
//退回的待办ID //退回的待办ID
private String todoTaskId; private String todoTaskId;
//退回人
private String modelID;
} }

View File

@ -270,6 +270,7 @@ public class TodoTaskServiceImpl implements TodoTaskService {
} }
@Override @Override
@Transactional(rollbackFor = Exception.class)
public void todoReturn(TodoReturnRequest todoReturnRequest) { public void todoReturn(TodoReturnRequest todoReturnRequest) {
String todoTaskId = todoReturnRequest.getTodoTaskId(); String todoTaskId = todoReturnRequest.getTodoTaskId();
if (ObjectUtils.isEmpty(todoTaskId)) { if (ObjectUtils.isEmpty(todoTaskId)) {
@ -283,6 +284,7 @@ public class TodoTaskServiceImpl implements TodoTaskService {
throw new RuntimeException("传入的单据查不到"); throw new RuntimeException("传入的单据查不到");
} }
TodoTaskPojo todoTaskPojo1 = todoTaskPojos.get(0); TodoTaskPojo todoTaskPojo1 = todoTaskPojos.get(0);
String modelID = todoReturnRequest.getModelID();
//如果是填写人退回 把填写人的待办删除 则为该条责任人添加待办 并且待办创建人改为退回人 //如果是填写人退回 把填写人的待办删除 则为该条责任人添加待办 并且待办创建人改为退回人
if ("填写人退回".equals(todoReturnRequest.getSteps())) { if ("填写人退回".equals(todoReturnRequest.getSteps())) {
sw.buildFromDatasource("xdap_app_223770822127386625") sw.buildFromDatasource("xdap_app_223770822127386625")
@ -291,22 +293,36 @@ public class TodoTaskServiceImpl implements TodoTaskService {
.eq("id", todoTaskId).doUpdate(TodoTaskPojo.class); .eq("id", todoTaskId).doUpdate(TodoTaskPojo.class);
XdapUsers xdapUsersPojo = xdapDeptUsersService.selectUserByID(todoReturnRequest.getUserID()); XdapUsers xdapUsersPojo = xdapDeptUsersService.selectUserByID(todoReturnRequest.getUserID());
//组装待办 //组装待办
TodoTaskPojo todoTaskPojo = new TodoTaskPojo(); TodoTaskPojo todoTaskPojo = new TodoTaskPojo();
todoTaskPojo.setCreatedById(todoReturnRequest.getUserID()); todoTaskPojo.setCreatedById(todoReturnRequest.getUserID());
todoTaskPojo.setDocumentNo(UUID.randomUUID().toString()); todoTaskPojo.setDocumentNo(UUID.randomUUID().toString());
todoTaskPojo.setProcessTitle(CurrentNodeEnum.JOBSPLIT.getDesc()); todoTaskPojo.setProcessTitle("分发责任人(填写人退回)");
todoTaskPojo.setCurrentNode("待分解"); todoTaskPojo.setCurrentNode("待分解");
todoTaskPojo.setStatusCode(null/*String.valueOf(ParamValueVersionEnum.DRAFT.getCode())*/); todoTaskPojo.setStatusCode(null/*String.valueOf(ParamValueVersionEnum.DRAFT.getCode())*/);
todoTaskPojo.setModelName(todoTaskPojo1.getModelName()); todoTaskPojo.setModelName(todoTaskPojo1.getModelName());
todoTaskPojo.setModelId(todoTaskPojo1.getModelId()); todoTaskPojo.setModelId(todoTaskPojo1.getModelId());
todoTaskPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now())); todoTaskPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
todoTaskPojo.setDataType(todoTaskPojo1.getDataType()); todoTaskPojo.setDataType(CurrentNodeEnum.JOBSPLIT.getDesc());
todoTaskPojo.setVersionNumber(todoTaskPojo1.getVersionNumber()); todoTaskPojo.setVersionNumber(todoTaskPojo1.getVersionNumber());
todoTaskPojo.setIsDelete(0); todoTaskPojo.setIsDelete(0);
todoTaskPojo.setCurrentProcessor(todoTaskPojo1.getCreatedById());
todoTaskPojo.setOwnerId(todoTaskPojo1.getCreatedById()); todoTaskPojo.setOwnerId(todoTaskPojo1.getCreatedById());
todoTaskPojo.setCreatedBy(ObjectUtils.isNotEmpty(xdapUsersPojo) ? xdapUsersPojo.getUsername() : ""); todoTaskPojo.setCreatedBy(ObjectUtils.isNotEmpty(xdapUsersPojo) ? xdapUsersPojo.getUsername() : "");
sw.buildFromDatasource("xdap_app_223770822127386625").doInsert(todoTaskPojo); sw.buildFromDatasource("xdap_app_223770822127386625").doInsert(todoTaskPojo);
//把相关参数中的填写人退回
List<EngineParamDetailPojo> pojoList = engineParamDetailService.selectByModelNewVersion(modelID);
List<EngineParamDetailPojo> pojos = pojoList.stream().filter(x -> x.getFilledBy().equals(todoReturnRequest.getUserID()))
.collect(Collectors.toList());
for (EngineParamDetailPojo pojo : pojos) {
sw.buildFromDatasource("xdap_app_223770822127386625")
.update("filled_by", null)
.eq("id",pojo.getId())
.doUpdate(pojo);
}
} else if ("责任人退回".equals(todoReturnRequest.getSteps())) { } else if ("责任人退回".equals(todoReturnRequest.getSteps())) {
//如果是责任人退回 则该条数据还是属于未分发状态 //如果是责任人退回 则该条数据还是属于未分发状态
//暂时先不这么做处理责任人退回无法记录退回人容易重复提交分发 //暂时先不这么做处理责任人退回无法记录退回人容易重复提交分发