update 强制撤回后发送hiwork删除
This commit is contained in:
+2
@@ -20,4 +20,6 @@ public interface PushWorkflowIntegrationAPI {
|
|||||||
void sendTodoTask(List<HiworkTodoAdd> hiworkTodoAddList);
|
void sendTodoTask(List<HiworkTodoAdd> hiworkTodoAddList);
|
||||||
|
|
||||||
void sendActivityComplete(List<HiworkTodoAdd> processInstanceId);
|
void sendActivityComplete(List<HiworkTodoAdd> processInstanceId);
|
||||||
|
|
||||||
|
void sendDeleteTask(List<HiworkTodoAdd> todoAddList);
|
||||||
}
|
}
|
||||||
|
|||||||
+2
@@ -21,4 +21,6 @@ public class HiworkTodoAdd {
|
|||||||
private String recordId;
|
private String recordId;
|
||||||
@ApiModelProperty(value = "流程定义id")
|
@ApiModelProperty(value = "流程定义id")
|
||||||
private String processDefinitionId;
|
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 PROCESS_TYPE = "srms";
|
||||||
|
private static final String TODO_TYPE_3 = "3";
|
||||||
|
private static final String TODO_TYPE_6 = "6";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author: liao
|
* @Author: liao
|
||||||
@@ -92,7 +94,7 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
|||||||
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "hiworkTodoAddList");
|
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "hiworkTodoAddList");
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
List<HiworkTodo> hiworkTodoList = getHiworkTodos(hiworkTodoAddList,false);
|
List<HiworkTodo> hiworkTodoList = getHiworkTodos(hiworkTodoAddList);
|
||||||
log.info("统一待办推送入参" + JSON.toJSONString(hiworkTodoList));
|
log.info("统一待办推送入参" + JSON.toJSONString(hiworkTodoList));
|
||||||
log.info("统一待办推送url" + ip + todoUrl);
|
log.info("统一待办推送url" + ip + todoUrl);
|
||||||
// 远程调用
|
// 远程调用
|
||||||
@@ -113,7 +115,10 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
try {
|
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("统一待办推送入参" + JSON.toJSONString(hiworkTodoList));
|
||||||
log.info("统一待办推送url" + ip + todoUrl);
|
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
|
@NotNull
|
||||||
private List<HiworkTodo> getHiworkTodos(List<HiworkTodoAdd> hiworkTodoAddList, boolean b) {
|
private List<HiworkTodo> getHiworkTodos(List<HiworkTodoAdd> hiworkTodoAddList) {
|
||||||
List<HiworkTodo> hiworkTodoList = new ArrayList<>();
|
List<HiworkTodo> hiworkTodoList = new ArrayList<>();
|
||||||
for (HiworkTodoAdd hiworkTodoAdd : hiworkTodoAddList) {
|
for (HiworkTodoAdd hiworkTodoAdd : hiworkTodoAddList) {
|
||||||
String recordId = hiworkTodoAdd.getRecordId();
|
String recordId = hiworkTodoAdd.getRecordId();
|
||||||
String processDefinitionId = hiworkTodoAdd.getProcessDefinitionId();
|
String processDefinitionId = hiworkTodoAdd.getProcessDefinitionId();
|
||||||
|
String type = hiworkTodoAdd.getType();
|
||||||
ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getById(recordId);
|
ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getById(recordId);
|
||||||
if(Objects.isNull(processApprovalRecord)){
|
if(Objects.isNull(processApprovalRecord)){
|
||||||
continue;
|
continue;
|
||||||
@@ -222,8 +252,10 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
|||||||
}else {
|
}else {
|
||||||
hiworkTodo.setMultiInstance(1);
|
hiworkTodo.setMultiInstance(1);
|
||||||
}
|
}
|
||||||
if (b){
|
if (TODO_TYPE_3.equals(type)){
|
||||||
hiworkTodo.setIsTodo(String.valueOf(3));
|
hiworkTodo.setIsTodo(TODO_TYPE_3);
|
||||||
|
}else if (TODO_TYPE_6.equals(type)){
|
||||||
|
hiworkTodo.setIsTodo(TODO_TYPE_6);
|
||||||
}else {
|
}else {
|
||||||
hiworkTodo.setIsTodo(String.valueOf(finishFlag));
|
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.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
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.dto.message.SendMessageDTO;
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
import com.jero.common.api.vo.ResultCommon;
|
||||||
import com.jero.common.api.vo.SendMessageAPI;
|
import com.jero.common.api.vo.SendMessageAPI;
|
||||||
@@ -80,6 +82,8 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
|||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private EnterpriseStandardPlanService espService;
|
private EnterpriseStandardPlanService espService;
|
||||||
|
@Resource
|
||||||
|
private PushWorkflowIntegrationAPI pushWorkflowIntegrationAPI;
|
||||||
|
|
||||||
private static final List<Integer> INSPECT_PROCESS = Arrays.asList(
|
private static final List<Integer> INSPECT_PROCESS = Arrays.asList(
|
||||||
ProcessTypeEnum.FB_ENTRY_CHANGE.getValue(),
|
ProcessTypeEnum.FB_ENTRY_CHANGE.getValue(),
|
||||||
@@ -252,6 +256,22 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
|||||||
this.revisionForcedWithdrawalProcess(processInstanceId);
|
this.revisionForcedWithdrawalProcess(processInstanceId);
|
||||||
}
|
}
|
||||||
//todo 同步删除操作到统一待办
|
//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) {
|
private void revisionForcedWithdrawalProcess(String processInstanceId) {
|
||||||
|
|||||||
Reference in New Issue
Block a user