修改:数据流程整体修改,增加直送、撤回、退回
This commit is contained in:
parent
8e3e1d59f7
commit
c45f9938e9
@ -2,15 +2,22 @@ package com.xdap.self_development.controller;
|
||||
|
||||
|
||||
import com.definesys.mpaas.common.http.Response;
|
||||
import com.xdap.self_development.controller.request.ApprovalByPlatformRequest;
|
||||
import com.xdap.self_development.controller.form.ApprovalUserNodeDTO;
|
||||
import com.xdap.self_development.controller.form.HandleApprovalRequest;
|
||||
import com.xdap.self_development.controller.form.HandleReturnNodeForm;
|
||||
import com.xdap.self_development.controller.request.ApprovalNodeRequest;
|
||||
import com.xdap.self_development.controller.request.EngineReviewListRequest;
|
||||
import com.xdap.self_development.exception.CommonException;
|
||||
import com.xdap.self_development.pojo.EngineReviewListPojo;
|
||||
import com.xdap.self_development.pojo.dto.*;
|
||||
import com.xdap.self_development.service.ActivitiProcessService;
|
||||
import com.xdap.self_development.service.EngineReviewListService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@ -51,7 +58,8 @@ public class ActivitiProcessController {
|
||||
//查看审批详情
|
||||
@PostMapping(value = "/showActiviti")
|
||||
public Response showActiviti(@RequestBody ShowActivitiDTO showActivitiDTO) {
|
||||
ActivitiDataAndRecordDTO activitiDataAndRecordDTO = activitiProcessService.showActivitiData(showActivitiDTO);
|
||||
ActivitiDataAndRecordDTO activitiDataAndRecordDTO = activitiProcessService
|
||||
.showActivitiData(showActivitiDTO);
|
||||
return Response.ok().data(activitiDataAndRecordDTO);
|
||||
}
|
||||
//操作审批
|
||||
@ -63,7 +71,7 @@ public class ActivitiProcessController {
|
||||
//查看审批
|
||||
@PostMapping(value = "/showEngReview")
|
||||
public Response showEngReview(@RequestBody EngineReviewListRequest engineReviewListRequest) {
|
||||
PageResultDTO msg = engineReviewListService.selectEngineReviewListByUserId(engineReviewListRequest);
|
||||
PageResultDTO<EngineReviewListPojo> msg = engineReviewListService.selectEngineReviewListByUserId(engineReviewListRequest);
|
||||
return Response.ok().data(msg);
|
||||
};
|
||||
//申请人退回审批
|
||||
@ -72,33 +80,66 @@ public class ActivitiProcessController {
|
||||
String msg = engineReviewListService.returnApproval(approvalId);
|
||||
return Response.ok().data(msg);
|
||||
};
|
||||
|
||||
//
|
||||
// //查询删除所有部署信息(谨慎使用)
|
||||
// @GetMapping(value = "/deleteDeployment")
|
||||
// public void deleteDeployment() {
|
||||
//
|
||||
// List<Deployment> deployments = repositoryService.createDeploymentQuery().list();
|
||||
// for (Deployment deployment : deployments) {
|
||||
// System.out.println("--------" + deployment);
|
||||
// repositoryService.deleteDeployment(deployment.getId());
|
||||
// }
|
||||
// }
|
||||
// //查询删除所有流程信息(谨慎使用)
|
||||
// @GetMapping(value = "/deleteProcessInstances")
|
||||
// public void deleteProcessInstances(@RequestParam(value = "processkey")String processDefinitionKey) {
|
||||
// // 1. 查询该流程定义下的所有流程实例ID
|
||||
// List<ProcessInstance> instances = runtimeService.createProcessInstanceQuery()
|
||||
// .processDefinitionKey(processDefinitionKey)
|
||||
// .list();
|
||||
//
|
||||
// // 2. 逐个删除流程实例(级联删除任务、变量等)
|
||||
// for (ProcessInstance instance : instances) {
|
||||
// // 删除流程实例(true表示级联删除所有关联数据)
|
||||
// runtimeService.deleteProcessInstance(instance.getId(), "删除原因:清理测试数据");
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
// 获取是否直送
|
||||
@GetMapping("/getIsDirect")
|
||||
public Response getIsDirect(
|
||||
@RequestParam String flowId
|
||||
) {
|
||||
boolean flag = activitiProcessService.getIsDirect(flowId);
|
||||
return Response.ok().data(flag);
|
||||
}
|
||||
// 获取流程审批人
|
||||
@GetMapping("/getApprovalUsers")
|
||||
public Response getApprovalUsers(
|
||||
@NotBlank @RequestParam String templateId
|
||||
) {
|
||||
List<ApprovalUserNodeDTO> nodes = activitiProcessService.getApprovalUsers(templateId);
|
||||
return Response.ok().data(nodes);
|
||||
}
|
||||
// 直送回退回的节点
|
||||
@GetMapping("/directSendingApproval")
|
||||
public Response directSendingApproval(
|
||||
@RequestParam @NotBlank String templateId,
|
||||
@RequestParam @NotBlank String userId
|
||||
) {
|
||||
activitiProcessService.directSendingApproval(templateId, userId);
|
||||
return Response.ok();
|
||||
}
|
||||
// 获取可退回节点
|
||||
@GetMapping("/getReturnNodes")
|
||||
public Response getReturnNodes(
|
||||
@NotBlank String flowId
|
||||
) {
|
||||
List<String> result = activitiProcessService.getReturnNodes(flowId);
|
||||
return Response.ok().data(result);
|
||||
}
|
||||
// 处理人退回指定节点
|
||||
@PostMapping("/handleReturnToNode")
|
||||
public Response handleReturnToNode(
|
||||
@RequestBody @Valid HandleReturnNodeForm form,
|
||||
BindingResult bindingResult
|
||||
) {
|
||||
if (bindingResult.hasErrors()) {
|
||||
bindingResult.getFieldErrors().forEach(error -> {
|
||||
throw new CommonException(error.getDefaultMessage());
|
||||
});
|
||||
}
|
||||
activitiProcessService.handleReturnToNode(form);
|
||||
return Response.ok();
|
||||
}
|
||||
// 发起人撤回审批
|
||||
@PostMapping("/handleReturn")
|
||||
public Response handleReturn(
|
||||
@RequestBody @Valid HandleApprovalRequest request,
|
||||
BindingResult bindingResult
|
||||
) {
|
||||
if (bindingResult.hasErrors()) {
|
||||
bindingResult.getFieldErrors().forEach(error -> {
|
||||
throw new CommonException(error.getDefaultMessage());
|
||||
});
|
||||
}
|
||||
activitiProcessService.handleReturn(request);
|
||||
return Response.ok();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -105,6 +105,13 @@ public class EngineReviewListPojo implements Serializable {
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date lastUpdateDate;
|
||||
|
||||
|
||||
/**
|
||||
* 退回标记
|
||||
*/
|
||||
private Integer returnNum;
|
||||
/**
|
||||
* 前一个节点
|
||||
*/
|
||||
private Integer preNode;
|
||||
|
||||
}
|
||||
|
||||
@ -84,5 +84,27 @@ public class ParamApprovalRecordPojo implements Serializable {
|
||||
*/
|
||||
private Date lastUpdateDate;
|
||||
|
||||
private Integer approvalLevel;
|
||||
|
||||
public ParamApprovalRecordPojo(
|
||||
String approvalId,
|
||||
String nodeName,
|
||||
String assignee,
|
||||
String operator,
|
||||
Date operateTime,
|
||||
String approvalComment,
|
||||
Integer nodeOrder,
|
||||
Date creationDate,
|
||||
Integer approvalLevel
|
||||
) {
|
||||
this.approvalId = approvalId;
|
||||
this.nodeName = nodeName;
|
||||
this.assignee = assignee;
|
||||
this.operator = operator;
|
||||
this.operateTime = operateTime;
|
||||
this.approvalComment = approvalComment;
|
||||
this.nodeOrder = nodeOrder;
|
||||
this.creationDate = creationDate;
|
||||
this.approvalLevel = approvalLevel;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,8 +1,10 @@
|
||||
package com.xdap.self_development.pojo.dto;
|
||||
|
||||
import com.xdap.self_development.pojo.view.FlowNode;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ActivitiDataAndRecordDTO {
|
||||
@ -10,6 +12,6 @@ public class ActivitiDataAndRecordDTO {
|
||||
private String processTitle;
|
||||
private String modelName;
|
||||
private ArrayList<ActivitiDataDTO> activitiDataDTOS;
|
||||
private ArrayList<ActivitiRecordDTO> activitiRecordDTOS;
|
||||
private List<FlowNode> flowNodes;
|
||||
|
||||
}
|
||||
|
||||
@ -12,7 +12,7 @@ import java.util.List;
|
||||
// CASE af.flow_status WHEN 'COMPLETE' THEN 1 WHEN 'APPROVING' THEN 2 WHEN 'DRAFT' THEN 3 WHEN 'REJECTED' THEN 4 ELSE 5 END ASC,
|
||||
@SQLQuery(value = {
|
||||
@SQL(view = "getAllReportApprovalList",
|
||||
sql = "WITH RankedFlows AS ( SELECT af.id AS flowId, r.id AS reportId, af.process_title AS title, af.flow_status AS status, af.create_by AS createBy , xu.username AS username, af.created_time AS createdTime, ac.assignees AS current_users, ROW_NUMBER() OVER (PARTITION BY af.template_id ORDER BY af.created_time DESC) AS rn FROM yfsjglpt_model_approval_flow af LEFT JOIN approval_config ac ON af.id = ac.approval_id AND af.current_node = ac.node_order LEFT JOIN yfsjglpt_model_benchmarking_report r ON af.template_id = r.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE af.flow_type = 2 ) SELECT flowId, reportId, title, status, createBy , username, createdTime, current_users FROM RankedFlows WHERE rn = 1 AND r.title LIKE CONCAT('%', #title, '%') AND af.flow_status LIKE CONCAT('%', #status, '%') AND af.created_time LIKE CONCAT('%', #createdTime, '%') AND xu.username LIKE CONCAT('%', #username, '%') ORDER BY createdTime DESC")
|
||||
sql = "WITH RankedFlows AS (SELECT af.id AS flowId, r.id AS reportId, af.process_title AS title, af.flow_status AS status, af.create_by AS createBy, xu.username AS username, af.created_time AS createdTime, ac.assignees AS current_users, ROW_NUMBER() OVER (PARTITION BY af.template_id ORDER BY af.created_time DESC) AS rn FROM yfsjglpt_model_approval_flow af LEFT JOIN approval_config ac ON af.id = ac.approval_id AND af.current_node = ac.node_order LEFT JOIN yfsjglpt_model_benchmarking_report r ON af.template_id = r.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE af.flow_type = 2) SELECT flowId, reportId, title, status, createBy, username, createdTime, current_users FROM RankedFlows WHERE rn = 1 AND title LIKE CONCAT('%', #title, '%') AND status LIKE CONCAT('%', #status, '%') AND createdTime LIKE CONCAT('%', #createdTime, '%') AND username LIKE CONCAT('%', #username, '%') ORDER BY createdTime DESC")
|
||||
})
|
||||
@Data
|
||||
public class TodoAndReportListView {
|
||||
|
||||
@ -31,6 +31,7 @@ public class TodoAndReportView {
|
||||
private String projectName;
|
||||
private String projectNumber;
|
||||
private String createBy;
|
||||
private Integer returnNum;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Timestamp uploadTime;
|
||||
private String filePath;
|
||||
|
||||
@ -13,7 +13,7 @@ import java.util.List;
|
||||
@SQLQuery(value = {
|
||||
// CASE af.flow_status WHEN 'COMPLETE' THEN 1 WHEN 'APPROVING' THEN 2 WHEN 'DRAFT' THEN 3 WHEN 'REJECTED' THEN 4 ELSE 5 END ASC
|
||||
@SQL(view = "getAllApproval",
|
||||
sql = "WITH RankedFlows AS ( SELECT af.id AS flowId, t.id AS templateId, t.template_name AS templateName, t.version AS version, af.flow_status AS status , af.create_by AS createBy, xu.username AS username, af.created_time AS createdTime, ac.assignees AS current_users , ROW_NUMBER() OVER (PARTITION BY af.template_id ORDER BY af.created_time DESC) AS rn FROM yfsjglpt_model_approval_flow af LEFT JOIN approval_config ac ON af.id = ac.approval_id AND af.current_node = ac.node_order LEFT JOIN yfsjglpt_model_template t ON af.template_id = t.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE af.flow_type = 1 ) SELECT flowId, templateId, templateName, version, status , createBy, username, createdTime, current_users FROM RankedFlows WHERE t.template_name LIKE CONCAT('%', #templateName, '%') AND af.flow_status LIKE CONCAT('%', #status, '%') AND af.created_time LIKE CONCAT('%', #createdTime, '%') AND xu.username LIKE CONCAT('%', #username, '%') AND rn = 1 ORDER BY createdTime DESC"),
|
||||
sql = "WITH RankedFlows AS ( SELECT af.id AS flowId, t.id AS templateId, t.template_name AS templateName, t.version AS version, af.flow_status AS status , af.create_by AS createBy, xu.username AS username, af.created_time AS createdTime, ac.assignees AS current_users , ROW_NUMBER() OVER (PARTITION BY af.template_id ORDER BY af.created_time DESC) AS rn FROM yfsjglpt_model_approval_flow af LEFT JOIN approval_config ac ON af.id = ac.approval_id AND af.current_node = ac.node_order LEFT JOIN yfsjglpt_model_template t ON af.template_id = t.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE af.flow_type = 1 ) SELECT flowId, templateId, templateName, version, status , createBy, username, createdTime, current_users FROM RankedFlows WHERE rn = 1 AND templateName LIKE CONCAT('%', #templateName, '%')AND status LIKE CONCAT('%', #status, '%')AND createdTime LIKE CONCAT('%', #createdTime, '%')AND username LIKE CONCAT('%', #username, '%') ORDER BY createdTime DESC"),
|
||||
@SQL(view = "getApprovalByUserIdAndIds",
|
||||
sql = "SELECT af.id AS \"flowId\", t.id AS \"templateId\", t.template_name AS \"templateName\", t.version AS \"version\", af.flow_status AS \"status\" , af.create_by AS \"createBy\", af.created_time AS \"createdTime\" , CASE WHEN current_node = 'PROOFREAD' THEN proofread_users WHEN current_node = 'REVIEW' THEN review_users WHEN current_node = 'COUNTERSIGN' THEN countersign_users WHEN current_node = 'APPROVE' THEN approve_users END AS current_users FROM yfsjglpt_model_approval_flow af JOIN yfsjglpt_model_template t ON af.template_id = t.id WHERE t.template_name like CONCAT('%',#templateName, '%') and af.flow_status like CONCAT('%',#status, '%') and af.flow_type = 1 and af.id NOT IN (#ids) AND af.create_by = #createBy"),
|
||||
@SQL(view = "getTodoAndTemplate",
|
||||
|
||||
@ -1,13 +1,21 @@
|
||||
package com.xdap.self_development.service;
|
||||
|
||||
|
||||
import com.xdap.self_development.controller.form.ApprovalUserNodeDTO;
|
||||
import com.xdap.self_development.controller.form.HandleApprovalRequest;
|
||||
import com.xdap.self_development.controller.form.HandleReturnNodeForm;
|
||||
import com.xdap.self_development.controller.request.ApprovalByPlatformRequest;
|
||||
import com.xdap.self_development.controller.request.ApprovalNodeRequest;
|
||||
import com.xdap.self_development.enums.ParamValueVersionEnum;
|
||||
import com.xdap.self_development.pojo.*;
|
||||
import com.xdap.self_development.pojo.dto.ActivitiDataAndRecordDTO;
|
||||
import com.xdap.self_development.pojo.dto.ActivitiDataDTO;
|
||||
import com.xdap.self_development.pojo.dto.HandleApprovalDTO;
|
||||
import com.xdap.self_development.pojo.dto.ShowActivitiDTO;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public interface ActivitiProcessService {
|
||||
@ -20,4 +28,47 @@ public interface ActivitiProcessService {
|
||||
String handleApproval(HandleApprovalDTO handleApprovalDTO);
|
||||
|
||||
void startActivitiByPlatform(ApprovalByPlatformRequest request);
|
||||
|
||||
boolean getIsDirect(String flowId);
|
||||
|
||||
List<ApprovalUserNodeDTO> getApprovalUsers(@NotBlank String flowId);
|
||||
|
||||
void directSendingApproval(@NotBlank String templateId, @NotBlank String userId);
|
||||
|
||||
List<String> getReturnNodes(@NotBlank String flowId);
|
||||
|
||||
void handleReturnToNode(@Valid HandleReturnNodeForm form);
|
||||
|
||||
void handleReturn(@Valid HandleApprovalRequest request);
|
||||
|
||||
void processApproval(
|
||||
EngineReviewListPojo flow,
|
||||
HandleApprovalDTO request,
|
||||
ApprovalConfigPojo currentNode,
|
||||
ParamApprovalRecordPojo lastedRecord,
|
||||
ArrayList<EngineParamDetailPojo> list
|
||||
);
|
||||
void cancelProcess(
|
||||
EngineReviewListPojo flow,
|
||||
ApprovalConfigPojo node,
|
||||
ParamValueVersionEnum status,
|
||||
String userId
|
||||
);
|
||||
void updateTasks(
|
||||
EngineReviewListPojo flow,
|
||||
String status,
|
||||
Integer enableReturn
|
||||
);
|
||||
void processNextNode(
|
||||
EngineReviewListPojo flow,
|
||||
ApprovalConfigPojo currentNode,
|
||||
String userId,
|
||||
List<EngineParamDetailPojo> list
|
||||
);
|
||||
void addNodeTodo(
|
||||
EngineReviewListPojo flow,
|
||||
ApprovalConfigPojo node,
|
||||
String createBy,
|
||||
Integer enableReturn
|
||||
);
|
||||
}
|
||||
|
||||
@ -51,6 +51,6 @@ public interface BenchmarkingReportService {
|
||||
|
||||
void cancelProcess(ApprovalFlow flow, ApprovalConfigPojo node, String status, String userId);
|
||||
|
||||
void updateTasks(ApprovalFlow flow, String status);
|
||||
void updateTasks(ApprovalFlow flow, String status, Integer enableReturn);
|
||||
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -572,7 +572,7 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
|
||||
.orderBy("approval_time", "desc")
|
||||
.doQueryFirst(ApprovalRecord.class);
|
||||
|
||||
String lockKey = FLOW_LOCK_PREFIX + flow.getId() + ":" + currentNode;
|
||||
String lockKey = FLOW_LOCK_PREFIX + flow.getId() + ":" + currentNode.getNodeName();
|
||||
String lockValue = UUID.randomUUID().toString();
|
||||
boolean lockAcquired = redisLockUtil
|
||||
.tryLock(lockKey, lockValue, FLOW_LOCK_EXPIRE_SECONDS, TimeUnit.SECONDS);
|
||||
@ -670,7 +670,7 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
|
||||
.update("status", report.getStatus())
|
||||
.doUpdate(BenchmarkingReport.class);
|
||||
// 待办环节修改
|
||||
myself.updateTasks(flow, "已完成");
|
||||
myself.updateTasks(flow, "已完成", 0);
|
||||
} else {
|
||||
flow.setCurrentNode(nextNode.getNodeOrder());
|
||||
myself.addNodeTodo(flow, nextNode, report, userId, 0);
|
||||
@ -713,7 +713,7 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
|
||||
}
|
||||
|
||||
// 更新已办和发起的状态
|
||||
myself.updateTasks(flow, node.getNodeName());
|
||||
myself.updateTasks(flow, node.getNodeName(), enableReturn);
|
||||
|
||||
if (!list.isEmpty()) {
|
||||
bd.getBusinessDatabase().doBatchInsert(list);
|
||||
@ -747,14 +747,32 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
|
||||
report.setStatus(status);
|
||||
bd.getBusinessDatabase()
|
||||
.rowid("id", report.getRowId())
|
||||
.update("status", report.getStatus())
|
||||
.update("status", "DRAFT")
|
||||
.update("return_num", report.getReturnNum() + 1)
|
||||
.doUpdate(BenchmarkingReport.class);
|
||||
|
||||
myself.updateTasks(flow, "已拒绝");
|
||||
// 增加拒绝待办
|
||||
if (Objects.equals(status, "REJECTED")) {
|
||||
TodoTaskPojo todoTask = new TodoTaskPojo();
|
||||
todoTask.setCreatedById(userId);
|
||||
todoTask.setCreatedBy(xdapDeptUsersService.selectUserByID(userId).getUsername());
|
||||
todoTask.setCurrentNode(node.getNodeName());
|
||||
todoTask.setDataType("对标报告拒绝");
|
||||
todoTask.setDocumentNo(flow.getId());
|
||||
todoTask.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
todoTask.setIsDelete(0);
|
||||
todoTask.setModelId(report.getId());
|
||||
todoTask.setModelName(report.getTitle());
|
||||
todoTask.setProcessTitle("拒绝提醒:"+flow.getProcessTitle());
|
||||
todoTask.setStatusCode(flow.getFlowStatus());
|
||||
todoTask.setVersionNumber(0);
|
||||
todoTask.setOwnerId(flow.getCreateBy());
|
||||
todoTask.setCurrentProcessor(JSON.toJSONString(Collections.singletonList(flow.getCreateBy())));
|
||||
bd.getBusinessDatabase().doInsert(todoTask);
|
||||
}
|
||||
myself.updateTasks(flow, Objects.equals(report.getStatus(), "RETURNED") ? "已撤回" : "已拒绝", 0);
|
||||
}
|
||||
|
||||
public void updateTasks(ApprovalFlow flow, String status) {
|
||||
public void updateTasks(ApprovalFlow flow, String status, Integer enableReturn) {
|
||||
// 更新已办和发起的节点状态
|
||||
bd.getBusinessDatabase()
|
||||
.eq("document_no", flow.getId())
|
||||
@ -763,6 +781,7 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
|
||||
bd.getBusinessDatabase()
|
||||
.eq("document_no", flow.getId())
|
||||
.update("current_node", status)
|
||||
.update("enable_return", enableReturn)
|
||||
.doUpdate(InitiatedTaskPojo.class);
|
||||
}
|
||||
|
||||
|
||||
@ -479,7 +479,11 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
}
|
||||
|
||||
// 处理下一节点流转
|
||||
public void processNextNode(ApprovalFlow flow, ApprovalConfigPojo currentNode, String userId) {
|
||||
public void processNextNode(
|
||||
ApprovalFlow flow,
|
||||
ApprovalConfigPojo currentNode,
|
||||
String userId
|
||||
) {
|
||||
// 检查当前节点是否满足流转条件
|
||||
if (!myself.checkNodeComplete(flow, currentNode)) {
|
||||
return;
|
||||
@ -655,6 +659,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
||||
bd.getBusinessDatabase()
|
||||
.eq("document_no", flow.getId())
|
||||
.update("current_node", status)
|
||||
.update("enable_return", enableReturn)
|
||||
.doUpdate(InitiatedTaskPojo.class);
|
||||
}
|
||||
|
||||
|
||||
@ -230,7 +230,7 @@ public class TodoTaskServiceImpl implements TodoTaskService {
|
||||
ArrayList<TodoTaskPojo> todoTaskPojos = new ArrayList<>();
|
||||
ArrayList<InitiatedTaskPojo> taskPojos = new ArrayList<>();
|
||||
|
||||
// todo清除待办
|
||||
// TODO:清除待办
|
||||
|
||||
XdapUsers xdapUsersPojo = xdapDeptUsersService.selectUserByID(userID);
|
||||
DataEntryEngineModelPojo modelPojo = dataEntryEngineModelService.selectBymodelId(modelId);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user