update 强制撤回后发送hiwork删除
This commit is contained in:
+2
@@ -20,4 +20,6 @@ public interface PushWorkflowIntegrationAPI {
|
||||
void sendTodoTask(List<HiworkTodoAdd> hiworkTodoAddList);
|
||||
|
||||
void sendActivityComplete(List<HiworkTodoAdd> processInstanceId);
|
||||
|
||||
void sendDeleteTask(List<HiworkTodoAdd> todoAddList);
|
||||
}
|
||||
|
||||
+2
@@ -21,4 +21,6 @@ public class HiworkTodoAdd {
|
||||
private String recordId;
|
||||
@ApiModelProperty(value = "流程定义id")
|
||||
private String processDefinitionId;
|
||||
@ApiModelProperty(value = "3结束,6删除,其他是待办已办")
|
||||
private String type;
|
||||
}
|
||||
|
||||
+37
-5
@@ -76,6 +76,8 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
||||
|
||||
|
||||
private static final String PROCESS_TYPE = "srms";
|
||||
private static final String TODO_TYPE_3 = "3";
|
||||
private static final String TODO_TYPE_6 = "6";
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
@@ -92,7 +94,7 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
||||
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "hiworkTodoAddList");
|
||||
}
|
||||
try {
|
||||
List<HiworkTodo> hiworkTodoList = getHiworkTodos(hiworkTodoAddList,false);
|
||||
List<HiworkTodo> hiworkTodoList = getHiworkTodos(hiworkTodoAddList);
|
||||
log.info("统一待办推送入参" + JSON.toJSONString(hiworkTodoList));
|
||||
log.info("统一待办推送url" + ip + todoUrl);
|
||||
// 远程调用
|
||||
@@ -113,7 +115,10 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
||||
return;
|
||||
}
|
||||
try {
|
||||
List<HiworkTodo> hiworkTodoList = getHiworkTodos(hiworkTodoAddList, true);
|
||||
for (HiworkTodoAdd hiworkTodoAdd : hiworkTodoAddList) {
|
||||
hiworkTodoAdd.setType(TODO_TYPE_3);
|
||||
}
|
||||
List<HiworkTodo> hiworkTodoList = getHiworkTodos(hiworkTodoAddList);
|
||||
log.info("统一待办推送入参" + JSON.toJSONString(hiworkTodoList));
|
||||
log.info("统一待办推送url" + ip + todoUrl);
|
||||
// 远程调用
|
||||
@@ -128,12 +133,37 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void sendDeleteTask(List<HiworkTodoAdd> hiworkTodoAddList) {
|
||||
if(!isWorkflow){
|
||||
return;
|
||||
}
|
||||
try {
|
||||
for (HiworkTodoAdd hiworkTodoAdd : hiworkTodoAddList) {
|
||||
hiworkTodoAdd.setType(TODO_TYPE_6);
|
||||
}
|
||||
List<HiworkTodo> hiworkTodoList = getHiworkTodos(hiworkTodoAddList);
|
||||
log.info("统一待办删除推送入参" + JSON.toJSONString(hiworkTodoList));
|
||||
log.info("统一待办推送url" + ip + todoUrl);
|
||||
// 远程调用
|
||||
JSONObject json = restTemplate.postForObject(ip + todoUrl,hiworkTodoList, JSONObject.class);
|
||||
if(!Objects.isNull(json) && json.containsKey("success") && Objects.equals("true",json.getString("success"))){
|
||||
log.info("统一待办删除推送成功");
|
||||
}else{
|
||||
log.info("统一待办删除推送失败{}",json);
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("统一待办删除推送异常",e);
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private List<HiworkTodo> getHiworkTodos(List<HiworkTodoAdd> hiworkTodoAddList, boolean b) {
|
||||
private List<HiworkTodo> getHiworkTodos(List<HiworkTodoAdd> hiworkTodoAddList) {
|
||||
List<HiworkTodo> hiworkTodoList = new ArrayList<>();
|
||||
for (HiworkTodoAdd hiworkTodoAdd : hiworkTodoAddList) {
|
||||
String recordId = hiworkTodoAdd.getRecordId();
|
||||
String processDefinitionId = hiworkTodoAdd.getProcessDefinitionId();
|
||||
String type = hiworkTodoAdd.getType();
|
||||
ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getById(recordId);
|
||||
if(Objects.isNull(processApprovalRecord)){
|
||||
continue;
|
||||
@@ -222,8 +252,10 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
||||
}else {
|
||||
hiworkTodo.setMultiInstance(1);
|
||||
}
|
||||
if (b){
|
||||
hiworkTodo.setIsTodo(String.valueOf(3));
|
||||
if (TODO_TYPE_3.equals(type)){
|
||||
hiworkTodo.setIsTodo(TODO_TYPE_3);
|
||||
}else if (TODO_TYPE_6.equals(type)){
|
||||
hiworkTodo.setIsTodo(TODO_TYPE_6);
|
||||
}else {
|
||||
hiworkTodo.setIsTodo(String.valueOf(finishFlag));
|
||||
}
|
||||
|
||||
@@ -8,6 +8,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.PushWorkflowIntegrationAPI;
|
||||
import com.jero.common.api.dto.message.HiworkTodoAdd;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.common.api.vo.SendMessageAPI;
|
||||
@@ -80,6 +82,8 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
||||
|
||||
@Resource
|
||||
private EnterpriseStandardPlanService espService;
|
||||
@Resource
|
||||
private PushWorkflowIntegrationAPI pushWorkflowIntegrationAPI;
|
||||
|
||||
private static final List<Integer> INSPECT_PROCESS = Arrays.asList(
|
||||
ProcessTypeEnum.FB_ENTRY_CHANGE.getValue(),
|
||||
@@ -252,6 +256,22 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
||||
this.revisionForcedWithdrawalProcess(processInstanceId);
|
||||
}
|
||||
//todo 同步删除操作到统一待办
|
||||
//查询所有待办任务
|
||||
LambdaQueryWrapper<ProcessApprovalRecord> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId);
|
||||
wrapper.eq(ProcessApprovalRecord::getFinishFlag,FinishFlagEnum.INCOMPLETE.getValue());
|
||||
List<ProcessApprovalRecord> approvalRecordList = approvalRecordService.list(wrapper);
|
||||
|
||||
List<HiworkTodoAdd> todoAddList = new ArrayList<>();
|
||||
String processDefinitionId = processAll.getProcessDefinitionId();
|
||||
for (ProcessApprovalRecord approvalRecord : approvalRecordList) {
|
||||
HiworkTodoAdd hiworkTodoAdd = new HiworkTodoAdd();
|
||||
hiworkTodoAdd.setRecordId(approvalRecord.getId());
|
||||
hiworkTodoAdd.setProcessDefinitionId(processDefinitionId);
|
||||
todoAddList.add(hiworkTodoAdd);
|
||||
}
|
||||
|
||||
pushWorkflowIntegrationAPI.sendDeleteTask(todoAddList);
|
||||
}
|
||||
|
||||
private void revisionForcedWithdrawalProcess(String processInstanceId) {
|
||||
|
||||
Reference in New Issue
Block a user