新增:模板待办
This commit is contained in:
parent
b0bc890c57
commit
f7348b3407
@ -104,25 +104,25 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
bd.getBusinessDatabase().doInsert(flow);
|
||||
|
||||
// 新增待办
|
||||
// List<TodoTaskPojo> list = new ArrayList<>();
|
||||
// for (String person : request.getProofreadUsers()) {
|
||||
// TodoTaskPojo todoTask = new TodoTaskPojo();
|
||||
// todoTask.setCreatedById(permissionGetter.getCurrentUserId());
|
||||
// todoTask.setCreatedBy(xdapDeptUsersService.selectUserByID(permissionGetter.getCurrentUserId()).getUsername());
|
||||
// todoTask.setCurrentNode(getNodeName(flow.getCurrentNode()));
|
||||
// todoTask.setDataType("-");
|
||||
// todoTask.setDocumentNo(flow.getId());
|
||||
// todoTask.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
// todoTask.setIsDelete(0);
|
||||
// todoTask.setModelId(template.getId());
|
||||
// todoTask.setModelName(template.getTemplateName());
|
||||
// todoTask.setProcessTitle("模板审核");
|
||||
// todoTask.setStatusCode(flow.getFlowStatus());
|
||||
// todoTask.setVersionNumber(template.getVersion());
|
||||
// todoTask.setOwnerId(person);
|
||||
// list.add(todoTask);
|
||||
// }
|
||||
// bd.getBusinessDatabase().doBatchInsert(list);
|
||||
List<TodoTaskPojo> list = new ArrayList<>();
|
||||
for (String person : request.getProofreadUsers()) {
|
||||
TodoTaskPojo todoTask = new TodoTaskPojo();
|
||||
todoTask.setCreatedById(permissionGetter.getCurrentUserId());
|
||||
todoTask.setCreatedBy(xdapDeptUsersService.selectUserByID(permissionGetter.getCurrentUserId()).getUsername());
|
||||
todoTask.setCurrentNode(getNodeName(flow.getCurrentNode()));
|
||||
todoTask.setDataType("-");
|
||||
todoTask.setDocumentNo(flow.getId());
|
||||
todoTask.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
todoTask.setIsDelete(0);
|
||||
todoTask.setModelId(template.getId());
|
||||
todoTask.setModelName(template.getTemplateName());
|
||||
todoTask.setProcessTitle("模板审核");
|
||||
todoTask.setStatusCode(flow.getFlowStatus());
|
||||
todoTask.setVersionNumber(template.getVersion());
|
||||
todoTask.setOwnerId(person);
|
||||
list.add(todoTask);
|
||||
}
|
||||
bd.getBusinessDatabase().doBatchInsert(list);
|
||||
|
||||
// 3. 更新模板状态为校对中
|
||||
template.setStatus("APPROVING");
|
||||
@ -142,7 +142,6 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
@Override
|
||||
@Transactional
|
||||
public List<TodoAndTemplateView> getApprovalList(ApprovalListForm form) {
|
||||
|
||||
// List<TodoAndTemplateView> todoAndTemplateViews = bd.getBusinessDatabase()
|
||||
// .viewQueryMode(true)
|
||||
// .view("getAllApproval")
|
||||
@ -160,26 +159,27 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
.setVar("createdTime", form.getCreateDate() == null ? "" : form.getCreateDate())
|
||||
.setVar("username",form.getUsername())
|
||||
.doQuery(TodoAndTemplateView.class);
|
||||
setCurrentApprovers(approvalList, todoList);
|
||||
return approvalList;
|
||||
// return todoAndTemplateViews;
|
||||
}
|
||||
|
||||
// private void setCurrentApprovers(List<TodoAndTemplateView> approvalList, List<TodoAndTemplateView> todoAndTemplateViews) {
|
||||
// todoAndTemplateViews.forEach(item -> {
|
||||
// if (item.getCurrentUsers() == null || item.getCurrentUsers().isEmpty()) {
|
||||
// item.setCurrentApprovers(null);
|
||||
// item.setCurrentUsers(null);
|
||||
// } else {
|
||||
// List<String> userIds = JSON.parseArray(item.getCurrentUsers()).toJavaList(String.class);
|
||||
// List<ApprovalXdapUsers> approvalXdapUsers = bd.getBusinessDatabase()
|
||||
// .in("id", userIds)
|
||||
// .doQuery(ApprovalXdapUsers.class);
|
||||
// item.setCurrentApprovers(approvalXdapUsers);
|
||||
// item.setCurrentUsers(null);
|
||||
// }
|
||||
// });
|
||||
// approvalList.addAll(todoAndTemplateViews);
|
||||
// }
|
||||
private void setCurrentApprovers(List<TodoAndTemplateView> approvalList, List<TodoAndTemplateView> todoAndTemplateViews) {
|
||||
todoAndTemplateViews.forEach(item -> {
|
||||
if (item.getCurrentUsers() == null || item.getCurrentUsers().isEmpty()) {
|
||||
item.setCurrentApprovers(null);
|
||||
item.setCurrentUsers(null);
|
||||
} else {
|
||||
List<String> userIds = JSON.parseArray(item.getCurrentUsers()).toJavaList(String.class);
|
||||
List<ApprovalXdapUsers> approvalXdapUsers = bd.getBusinessDatabase()
|
||||
.in("id", userIds)
|
||||
.doQuery(ApprovalXdapUsers.class);
|
||||
item.setCurrentApprovers(approvalXdapUsers);
|
||||
item.setCurrentUsers(null);
|
||||
}
|
||||
});
|
||||
approvalList.addAll(todoAndTemplateViews);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = CommonException.class)
|
||||
@ -248,14 +248,14 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
// 删除当前节点的已处理待办
|
||||
if ("COUNTERSIGN".equals(flow.getCurrentNode())) {
|
||||
redisTemplate.opsForSet().remove(TODO_PREFIX + request.getUserId(), flow.getId());
|
||||
// bd.getBusinessDatabase()
|
||||
// .eq("document_no", flow.getId())
|
||||
// .eq("owner_id", permissionGetter.getCurrentUserId())
|
||||
// .doDelete(TodoTaskPojo.class);
|
||||
// } else {
|
||||
// bd.getBusinessDatabase()
|
||||
// .eq("document_no", flow.getId())
|
||||
// .doDelete(TodoTaskPojo.class);
|
||||
bd.getBusinessDatabase()
|
||||
.eq("document_no", flow.getId())
|
||||
.eq("owner_id", permissionGetter.getCurrentUserId())
|
||||
.doDelete(TodoTaskPojo.class);
|
||||
} else {
|
||||
bd.getBusinessDatabase()
|
||||
.eq("document_no", flow.getId())
|
||||
.doDelete(TodoTaskPojo.class);
|
||||
}
|
||||
|
||||
// 处理驳回逻辑
|
||||
@ -399,7 +399,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
clearProcessed(flow);
|
||||
} else {
|
||||
flow.setCurrentNode(nextNode);
|
||||
addNodeTodo(flow, nextNode);
|
||||
addNodeTodo(flow, nextNode, template);
|
||||
}
|
||||
|
||||
bd.getBusinessDatabase()
|
||||
@ -478,13 +478,31 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
}
|
||||
}
|
||||
|
||||
private void addNodeTodo(ApprovalFlow flow, String node) {
|
||||
private void addNodeTodo(ApprovalFlow flow, String node, Template template) {
|
||||
List<String> users = getNodeUsers(flow, node);
|
||||
users.forEach(userId -> {
|
||||
redisTemplate.opsForSet().add(TODO_PREFIX+ userId, flow.getId());
|
||||
});
|
||||
|
||||
|
||||
// 新增待办
|
||||
List<TodoTaskPojo> list = new ArrayList<>();
|
||||
for (String person : users) {
|
||||
TodoTaskPojo todoTask = new TodoTaskPojo();
|
||||
todoTask.setCreatedById(permissionGetter.getCurrentUserId());
|
||||
todoTask.setCreatedBy(xdapDeptUsersService.selectUserByID(permissionGetter.getCurrentUserId()).getUsername());
|
||||
todoTask.setCurrentNode(getNodeName(flow.getCurrentNode()));
|
||||
todoTask.setDataType("-");
|
||||
todoTask.setDocumentNo(flow.getId());
|
||||
todoTask.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
todoTask.setIsDelete(0);
|
||||
todoTask.setModelId(template.getId());
|
||||
todoTask.setModelName(template.getTemplateName());
|
||||
todoTask.setProcessTitle("模板审核");
|
||||
todoTask.setStatusCode(flow.getFlowStatus());
|
||||
todoTask.setVersionNumber(template.getVersion());
|
||||
todoTask.setOwnerId(person);
|
||||
list.add(todoTask);
|
||||
}
|
||||
bd.getBusinessDatabase().doBatchInsert(list);
|
||||
}
|
||||
|
||||
private void clearNodeTodo(ApprovalFlow flow, String node) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user