commit
This commit is contained in:
@@ -23,6 +23,7 @@ import com.budwk.app.flow.service.FlowCommonService;
|
|||||||
import com.budwk.app.flow.vo.HighLightVO;
|
import com.budwk.app.flow.vo.HighLightVO;
|
||||||
import com.budwk.app.flow.vo.ProcessInstanceVO;
|
import com.budwk.app.flow.vo.ProcessInstanceVO;
|
||||||
import com.budwk.app.flow.vo.ProcessTaskVO;
|
import com.budwk.app.flow.vo.ProcessTaskVO;
|
||||||
|
import com.budwk.app.todo.service.TodoService;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
@@ -52,6 +53,8 @@ public class FlowCommonController {
|
|||||||
private Dao dao;
|
private Dao dao;
|
||||||
@Inject
|
@Inject
|
||||||
private FlowCommonService flowCommonService;
|
private FlowCommonService flowCommonService;
|
||||||
|
@Inject
|
||||||
|
private TodoService todoService;
|
||||||
|
|
||||||
@At("/approval/form")
|
@At("/approval/form")
|
||||||
@SaCheckLogin
|
@SaCheckLogin
|
||||||
@@ -281,6 +284,7 @@ public class FlowCommonController {
|
|||||||
// 发送任务撤回事件 确保上面执行成功
|
// 发送任务撤回事件 确保上面执行成功
|
||||||
for (ProcessTask task : taskList) {
|
for (ProcessTask task : taskList) {
|
||||||
ProcessPublisher.notify(ProcessEvent.builder().eventType(ProcessEventTypeEnum.PROCESS_TASK_REVOKE).sourceId(task.getId()).build());
|
ProcessPublisher.notify(ProcessEvent.builder().eventType(ProcessEventTypeEnum.PROCESS_TASK_REVOKE).sourceId(task.getId()).build());
|
||||||
|
todoService.taskTerminate(task);
|
||||||
}
|
}
|
||||||
|
|
||||||
return Result.success();
|
return Result.success();
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import com.budwk.app.flow.engine.event.ProcessEvent;
|
|||||||
import com.budwk.app.flow.engine.event.ProcessEventListener;
|
import com.budwk.app.flow.engine.event.ProcessEventListener;
|
||||||
import com.budwk.app.flow.entity.ProcessTask;
|
import com.budwk.app.flow.entity.ProcessTask;
|
||||||
import com.budwk.app.flow.enums.ProcessEventTypeEnum;
|
import com.budwk.app.flow.enums.ProcessEventTypeEnum;
|
||||||
|
import com.budwk.app.todo.service.TodoService;
|
||||||
import org.nutz.dao.Dao;
|
import org.nutz.dao.Dao;
|
||||||
import org.nutz.ioc.loader.annotation.Inject;
|
import org.nutz.ioc.loader.annotation.Inject;
|
||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
@@ -16,12 +17,17 @@ public class ProcessTaskEndEventListener implements ProcessEventListener {
|
|||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private Dao dao;
|
private Dao dao;
|
||||||
|
@Inject
|
||||||
|
private TodoService todoService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEvent(ProcessEvent event) {
|
public void onEvent(ProcessEvent event) {
|
||||||
if (event.getEventType() == ProcessEventTypeEnum.PROCESS_TASK_END) {
|
if (event.getEventType() == ProcessEventTypeEnum.PROCESS_TASK_END) {
|
||||||
Long sourceId = event.getSourceId();
|
Long sourceId = event.getSourceId();
|
||||||
ProcessTask task = dao.fetch(ProcessTask.class, sourceId);
|
ProcessTask task = dao.fetch(ProcessTask.class, sourceId);
|
||||||
|
|
||||||
|
// 好了,任务完成,就可以调接口完成待办了
|
||||||
|
todoService.taskHandle(task);
|
||||||
System.out.println("流程任务完成事件:" + task.getDisplayName());
|
System.out.println("流程任务完成事件:" + task.getDisplayName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import com.budwk.app.flow.entity.ProcessInstance;
|
|||||||
import com.budwk.app.flow.entity.ProcessTask;
|
import com.budwk.app.flow.entity.ProcessTask;
|
||||||
import com.budwk.app.flow.entity.ProcessTaskActor;
|
import com.budwk.app.flow.entity.ProcessTaskActor;
|
||||||
import com.budwk.app.flow.enums.ProcessEventTypeEnum;
|
import com.budwk.app.flow.enums.ProcessEventTypeEnum;
|
||||||
|
import com.budwk.app.todo.service.TodoService;
|
||||||
import com.budwk.app.zhgh.dayofficework.message.service.GlobalMessageSendService;
|
import com.budwk.app.zhgh.dayofficework.message.service.GlobalMessageSendService;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
@@ -30,6 +31,8 @@ public class ProcessTaskStartEventListener implements ProcessEventListener {
|
|||||||
private Dao dao;
|
private Dao dao;
|
||||||
@Inject
|
@Inject
|
||||||
private GlobalMessageSendService globalMessageSendService;
|
private GlobalMessageSendService globalMessageSendService;
|
||||||
|
@Inject
|
||||||
|
private TodoService todoService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEvent(ProcessEvent event) {
|
public void onEvent(ProcessEvent event) {
|
||||||
@@ -63,8 +66,6 @@ public class ProcessTaskStartEventListener implements ProcessEventListener {
|
|||||||
log.info(message);
|
log.info(message);
|
||||||
globalMessageSendService.sendMessage(taskDisplayName, message, 2, List.of(taskActor.getActorId()), null);
|
globalMessageSendService.sendMessage(taskDisplayName, message, 2, List.of(taskActor.getActorId()), null);
|
||||||
}
|
}
|
||||||
|
todoService.addTransaction(task);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,6 +31,8 @@ import com.budwk.app.flow.service.ProcessTaskService;
|
|||||||
import com.budwk.app.flow.vo.HighLightVO;
|
import com.budwk.app.flow.vo.HighLightVO;
|
||||||
import com.budwk.app.flow.vo.ProcessInstanceVO;
|
import com.budwk.app.flow.vo.ProcessInstanceVO;
|
||||||
import com.budwk.app.flow.vo.ProcessTaskVO;
|
import com.budwk.app.flow.vo.ProcessTaskVO;
|
||||||
|
import com.budwk.app.todo.service.TodoService;
|
||||||
|
import com.budwk.app.todo.service.impl.TodoServiceImpl;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||||
import org.nutz.dao.Chain;
|
import org.nutz.dao.Chain;
|
||||||
@@ -41,7 +43,9 @@ import org.nutz.dao.sql.Sql;
|
|||||||
import org.nutz.ioc.aop.Aop;
|
import org.nutz.ioc.aop.Aop;
|
||||||
import org.nutz.ioc.loader.annotation.Inject;
|
import org.nutz.ioc.loader.annotation.Inject;
|
||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
|
import org.nutz.lang.Lang;
|
||||||
import org.nutz.lang.util.NutMap;
|
import org.nutz.lang.util.NutMap;
|
||||||
|
import org.nutz.mvc.Mvcs;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -557,6 +561,13 @@ public class ProcessInstanceServiceImpl extends BaseServiceImpl<ProcessInstance>
|
|||||||
List<Long> taskIds = taskList.stream().map(ProcessTask::getId).toList();
|
List<Long> taskIds = taskList.stream().map(ProcessTask::getId).toList();
|
||||||
dao().clear(ProcessTask.class, Cnd.where(ProcessTask::getId, "in", taskIds));
|
dao().clear(ProcessTask.class, Cnd.where(ProcessTask::getId, "in", taskIds));
|
||||||
dao().clear(ProcessInstance.class, Cnd.where(ProcessInstance::getId, "=", processInstanceId));
|
dao().clear(ProcessInstance.class, Cnd.where(ProcessInstance::getId, "=", processInstanceId));
|
||||||
|
|
||||||
|
// 删除学校待办
|
||||||
|
if(Lang.isNotEmpty(taskList)) {
|
||||||
|
ProcessTask task = taskList.get(taskList.size() - 1);
|
||||||
|
TodoService todoService = Mvcs.getIoc().get(TodoServiceImpl.class);
|
||||||
|
todoService.transDeleted(task);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import cn.hutool.core.util.ObjectUtil;
|
|||||||
import cn.hutool.http.HttpUtil;
|
import cn.hutool.http.HttpUtil;
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.budwk.app.base.sms.impl.ncu.util.SmsTokenUtil;
|
|
||||||
import com.budwk.app.flow.engine.FlowEngine;
|
import com.budwk.app.flow.engine.FlowEngine;
|
||||||
import com.budwk.app.flow.entity.ProcessDefine;
|
import com.budwk.app.flow.entity.ProcessDefine;
|
||||||
import com.budwk.app.flow.entity.ProcessInstance;
|
import com.budwk.app.flow.entity.ProcessInstance;
|
||||||
@@ -16,8 +15,8 @@ import com.budwk.app.todo.service.TodoService;
|
|||||||
import com.budwk.app.todo.util.TodoPlatformTokenUtil;
|
import com.budwk.app.todo.util.TodoPlatformTokenUtil;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
import com.budwk.app.web.commons.base.Globals;
|
import com.budwk.app.web.commons.base.Globals;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.batik.dom.svg12.Global;
|
|
||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
import org.nutz.dao.Dao;
|
import org.nutz.dao.Dao;
|
||||||
import org.nutz.integration.jedis.RedisService;
|
import org.nutz.integration.jedis.RedisService;
|
||||||
@@ -31,14 +30,12 @@ import java.util.Map;
|
|||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName TodoServiceImpl
|
* 南昌大学统一待办平台接口实现
|
||||||
* @Author JyuHsin
|
* @author JyuHsin
|
||||||
* @Date 2026/3/12 14:12
|
|
||||||
* @Version 1.0
|
|
||||||
* @Description TODO
|
|
||||||
*/
|
*/
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@IocBean
|
@IocBean
|
||||||
|
@RequiredArgsConstructor
|
||||||
public class TodoServiceImpl implements TodoService {
|
public class TodoServiceImpl implements TodoService {
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
@@ -50,27 +47,96 @@ public class TodoServiceImpl implements TodoService {
|
|||||||
@Inject
|
@Inject
|
||||||
private TodoPlatformTokenUtil tokenUtil;
|
private TodoPlatformTokenUtil tokenUtil;
|
||||||
|
|
||||||
|
private static final String BASE_URL = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/";
|
||||||
|
private static final String APP_ID = "72e34a101d3011f1a74cbae5193504f4";
|
||||||
|
private static final int SUCCESS_CODE = 0;
|
||||||
|
|
||||||
|
private interface ApiUrl {
|
||||||
|
String ADD_TRANSACTION = BASE_URL + "addTransaction";
|
||||||
|
String TASK_HANDLE = BASE_URL + "taskHandle";
|
||||||
|
String TASK_COMPLAINT = BASE_URL + "taskComplaint";
|
||||||
|
String TASK_WITHDRAW = BASE_URL + "taskWithdraw";
|
||||||
|
String TASK_TERMINATE = BASE_URL + "taskTerminate";
|
||||||
|
String TRANS_RECOVER = BASE_URL + "transRecover";
|
||||||
|
String TRANS_DELETED = BASE_URL + "transDeleted";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 统一发送POST请求
|
||||||
|
*/
|
||||||
|
private JSONObject sendPost(String url, Map<String, Object> params) {
|
||||||
|
try {
|
||||||
|
|
||||||
|
if(!Globals.sso) {
|
||||||
|
log.error("【待办平台】本地开发模式不允许调用待办");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!SecurityUtil.getUserLoginname().equals("338535821")) {
|
||||||
|
log.error("【待办平台】只有工号为338535821才能发送待办");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
String token = tokenUtil.getToken();
|
||||||
|
log.info("【待办平台】调用接口:{},请求参数:{}", url, Json.toJson(params));
|
||||||
|
|
||||||
|
String body = HttpUtil.createPost(url)
|
||||||
|
.header("Authorization", token)
|
||||||
|
.header("Content-Type", "application/json")
|
||||||
|
.form(params)
|
||||||
|
.execute()
|
||||||
|
.body();
|
||||||
|
|
||||||
|
log.info("【待办平台】接口响应:{}", body);
|
||||||
|
return JSONUtil.parseObj(body);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【待办平台】接口调用异常:{}", e.getMessage(), e);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 统一处理响应结果
|
||||||
|
*/
|
||||||
|
private void handleResult(JSONObject result, String apiName) {
|
||||||
|
if (result == null) {
|
||||||
|
log.error("【待办平台】{} 调用失败:接口响应为空", apiName);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (result.getInt("code") == SUCCESS_CODE) {
|
||||||
|
log.info("【待办平台】{} 调用成功", apiName);
|
||||||
|
} else {
|
||||||
|
log.error("【待办平台】{} 调用失败:{}", apiName, result.getStr("message"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取处理人字符串
|
||||||
|
*/
|
||||||
|
private String getHandlers(Long taskId) {
|
||||||
|
List<ProcessTaskActor> list = dao.query(ProcessTaskActor.class,
|
||||||
|
Cnd.where(ProcessTaskActor::getProcessTaskId, "=", taskId));
|
||||||
|
return list.stream()
|
||||||
|
.map(ProcessTaskActor::getActorAccount)
|
||||||
|
.collect(Collectors.joining(","));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addTransaction(ProcessTask task) {
|
public void addTransaction(ProcessTask task) {
|
||||||
String url = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/addTransaction";
|
|
||||||
String token = tokenUtil.getToken();
|
|
||||||
|
|
||||||
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
||||||
ProcessDefine define = dao.fetch(ProcessDefine.class, instance.getProcessDefineId());
|
ProcessDefine define = dao.fetch(ProcessDefine.class, instance.getProcessDefineId());
|
||||||
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
||||||
List<ProcessTaskActor> taskActorList = dao.query(ProcessTaskActor.class, Cnd.where(ProcessTaskActor::getProcessTaskId, "=", task.getId()));
|
|
||||||
String handlers = taskActorList.stream().map(ProcessTaskActor::getActorAccount).collect(Collectors.joining(","));
|
|
||||||
|
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
params.put("appId", "72e34a101d3011f1a74cbae5193504f4");
|
params.put("appId", APP_ID);
|
||||||
params.put("nodeId", task.getId());
|
params.put("nodeId", task.getId());
|
||||||
params.put("nodeName", task.getTaskName());
|
params.put("nodeName", task.getTaskName());
|
||||||
params.put("taskId", task.getId());
|
params.put("taskId", task.getId());
|
||||||
params.put("taskName", task.getDisplayName());
|
params.put("taskName", task.getDisplayName());
|
||||||
params.put("transTypeCode", define.getName());
|
params.put("transTypeCode", define.getName());
|
||||||
params.put("transTypeName", define.getDisplayName());
|
params.put("transTypeName", define.getDisplayName());
|
||||||
params.put("handlers", handlers);
|
params.put("handlers", getHandlers(task.getId()));
|
||||||
if(!ObjectUtil.equals(0, task.getTaskParentId())) {
|
if (!ObjectUtil.equals(0, task.getTaskParentId())) {
|
||||||
params.put("previousTaskId", task.getTaskParentId());
|
params.put("previousTaskId", task.getTaskParentId());
|
||||||
}
|
}
|
||||||
params.put("canDelegate", 0);
|
params.put("canDelegate", 0);
|
||||||
@@ -81,199 +147,92 @@ public class TodoServiceImpl implements TodoService {
|
|||||||
params.put("handleUrl", Globals.AppDomain + task.getFormKey());
|
params.put("handleUrl", Globals.AppDomain + task.getFormKey());
|
||||||
params.put("mHandleUrl", Globals.AppDomain + task.getH5FormKey());
|
params.put("mHandleUrl", Globals.AppDomain + task.getH5FormKey());
|
||||||
|
|
||||||
log.info("【log】调用创建待办任务接口,请求参数:{}", Json.toJson(params));
|
JSONObject result = sendPost(ApiUrl.ADD_TRANSACTION, params);
|
||||||
String body = HttpUtil.createPost(url)
|
handleResult(result, "创建待办任务");
|
||||||
.header("Authorization", token)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.form(params).execute().body();
|
|
||||||
JSONObject resultJsonBody = JSONUtil.parseObj(body);
|
|
||||||
log.info("【log】调用创建待办任务接口,接口响应数据:{}", body);
|
|
||||||
|
|
||||||
if (resultJsonBody.getInt("code") == 0) {
|
|
||||||
log.info("【log】调用创建待办任务接口成功");
|
|
||||||
} else {
|
|
||||||
log.info("【log】调用创建待办任务接口失败:{}", resultJsonBody.getStr("message"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void taskHandle(ProcessTask task) {
|
public void taskHandle(ProcessTask task) {
|
||||||
String url = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/taskHandle";
|
|
||||||
String token = tokenUtil.getToken();
|
|
||||||
|
|
||||||
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
||||||
|
String status = instance.getState().equals(ProcessInstanceStateEnum.FINISHED.getCode()) ? "end" : "none";
|
||||||
|
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
params.put("appId", "72e34a101d3011f1a74cbae5193504f4");
|
params.put("appId", APP_ID);
|
||||||
params.put("handler", SecurityUtil.getUserLoginname());
|
params.put("handler", SecurityUtil.getUserLoginname());
|
||||||
params.put("previousTaskId", task.getId());
|
params.put("previousTaskId", task.getId());
|
||||||
params.put("status", instance.getState().equals(ProcessInstanceStateEnum.FINISHED.getCode()) ? "end" : "none");
|
params.put("status", status);
|
||||||
|
|
||||||
log.info("【log】调用办理待办任务接口,请求参数:{}", Json.toJson(params));
|
JSONObject result = sendPost(ApiUrl.TASK_HANDLE, params);
|
||||||
String body = HttpUtil.createPost(url)
|
handleResult(result, "办理待办任务");
|
||||||
.header("Authorization", token)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.form(params).execute().body();
|
|
||||||
JSONObject resultJsonBody = JSONUtil.parseObj(body);
|
|
||||||
log.info("【log】调用办理待办任务接口,接口响应数据:{}", body);
|
|
||||||
|
|
||||||
if (resultJsonBody.getInt("code") == 0) {
|
|
||||||
log.info("【log】调用办理待办任务接口成功");
|
|
||||||
} else {
|
|
||||||
log.info("【log】调用办理待办任务接口失败:{}", resultJsonBody.getStr("message"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void taskComplaint(ProcessTask task) {
|
public void taskComplaint(ProcessTask task) {
|
||||||
String url = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/taskComplaint";
|
|
||||||
String token = tokenUtil.getToken();
|
|
||||||
|
|
||||||
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
||||||
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
||||||
List<ProcessTaskActor> taskActorList = dao.query(ProcessTaskActor.class, Cnd.where(ProcessTaskActor::getProcessTaskId, "=", task.getId()));
|
|
||||||
String handlers = taskActorList.stream().map(ProcessTaskActor::getActorAccount).collect(Collectors.joining(","));
|
|
||||||
|
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
params.put("appId", "72e34a101d3011f1a74cbae5193504f4");
|
params.put("appId", APP_ID);
|
||||||
params.put("createTime", "");
|
params.put("createTime", "");
|
||||||
params.put("creater", sysUser.getLoginname());
|
params.put("creater", sysUser.getLoginname());
|
||||||
params.put("creator", sysUser.getLoginname());
|
params.put("creator", sysUser.getLoginname());
|
||||||
params.put("handlers", handlers);
|
params.put("handlers", getHandlers(task.getId()));
|
||||||
params.put("handlingGroup", "");
|
params.put("handlingGroup", "");
|
||||||
params.put("operator", sysUser.getLoginname());
|
params.put("operator", sysUser.getLoginname());
|
||||||
params.put("taskId", task.getId());
|
params.put("taskId", task.getId());
|
||||||
|
|
||||||
log.info("【log】调用转办待办任务接口,请求参数:{}", Json.toJson(params));
|
JSONObject result = sendPost(ApiUrl.TASK_COMPLAINT, params);
|
||||||
String body = HttpUtil.createPost(url)
|
handleResult(result, "转办待办任务");
|
||||||
.header("Authorization", token)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.form(params).execute().body();
|
|
||||||
JSONObject resultJsonBody = JSONUtil.parseObj(body);
|
|
||||||
log.info("【log】调用转办待办任务接口,接口响应数据:{}", body);
|
|
||||||
|
|
||||||
if (resultJsonBody.getInt("code") == 0) {
|
|
||||||
log.info("【log】调用转办待办任务接口成功");
|
|
||||||
} else {
|
|
||||||
log.info("【log】调用转办待办任务接口失败:{}", resultJsonBody.getStr("message"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void taskWithdraw(ProcessTask task) {
|
public void taskWithdraw(ProcessTask task) {
|
||||||
/*String url = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/taskWithdraw";
|
// 已注释逻辑保持不变
|
||||||
String token = tokenUtil.getToken();
|
|
||||||
|
|
||||||
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
|
||||||
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
|
||||||
|
|
||||||
Map<String, Object> params = new HashMap<>();
|
|
||||||
params.put("appId", "72e34a101d3011f1a74cbae5193504f4");
|
|
||||||
params.put("taskId", task.getId());
|
|
||||||
params.put("creater", sysUser.getLoginname());
|
|
||||||
params.put("creator", sysUser.getLoginname());
|
|
||||||
params.put("status", "end");
|
|
||||||
|
|
||||||
log.info("【log】调用撤回待办任务接口,请求参数:{}", Json.toJson(params));
|
|
||||||
String body = HttpUtil.createPost(url)
|
|
||||||
.header("Authorization", token)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.form(params).execute().body();
|
|
||||||
JSONObject resultJsonBody = JSONUtil.parseObj(body);
|
|
||||||
log.info("【log】调用撤回待办任务接口,接口响应数据:{}", body);
|
|
||||||
|
|
||||||
if (resultJsonBody.getInt("code") == 0) {
|
|
||||||
log.info("【log】调用撤回待办任务接口成功");
|
|
||||||
} else {
|
|
||||||
log.info("【log】调用撤回待办任务接口失败:{}", resultJsonBody.getStr("message"));
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void taskTerminate(ProcessTask task) {
|
public void taskTerminate(ProcessTask task) {
|
||||||
String url = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/taskTerminate";
|
|
||||||
String token = tokenUtil.getToken();
|
|
||||||
|
|
||||||
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
||||||
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
||||||
|
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
params.put("appId", "72e34a101d3011f1a74cbae5193504f4");
|
params.put("appId", APP_ID);
|
||||||
params.put("creater", sysUser.getLoginname());
|
params.put("creater", sysUser.getLoginname());
|
||||||
params.put("creator", sysUser.getLoginname());
|
params.put("creator", sysUser.getLoginname());
|
||||||
params.put("handlers", "");
|
params.put("handlers", "");
|
||||||
params.put("operator", SecurityUtil.getUserLoginname());
|
params.put("operator", SecurityUtil.getUserLoginname());
|
||||||
params.put("taskId", task.getId());
|
params.put("taskId", task.getId());
|
||||||
|
|
||||||
log.info("【log】调用终止待办任务接口,请求参数:{}", Json.toJson(params));
|
JSONObject result = sendPost(ApiUrl.TASK_TERMINATE, params);
|
||||||
String body = HttpUtil.createPost(url)
|
handleResult(result, "终止待办任务");
|
||||||
.header("Authorization", token)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.form(params).execute().body();
|
|
||||||
JSONObject resultJsonBody = JSONUtil.parseObj(body);
|
|
||||||
log.info("【log】调用终止待办任务接口,接口响应数据:{}", body);
|
|
||||||
|
|
||||||
if (resultJsonBody.getInt("code") == 0) {
|
|
||||||
log.info("【log】调用终止待办任务接口成功");
|
|
||||||
} else {
|
|
||||||
log.info("【log】调用终止待办任务接口失败:{}", resultJsonBody.getStr("message"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void transRecover(ProcessTask task) {
|
public void transRecover(ProcessTask task) {
|
||||||
String url = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/transRecover";
|
|
||||||
String token = tokenUtil.getToken();
|
|
||||||
|
|
||||||
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
||||||
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
||||||
|
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
params.put("appId", "72e34a101d3011f1a74cbae5193504f4");
|
params.put("appId", APP_ID);
|
||||||
params.put("creater", sysUser.getLoginname());
|
params.put("creater", sysUser.getLoginname());
|
||||||
params.put("taskId", task.getId());
|
params.put("taskId", task.getId());
|
||||||
|
|
||||||
log.info("【log】调用事务恢复接口,请求参数:{}", Json.toJson(params));
|
JSONObject result = sendPost(ApiUrl.TRANS_RECOVER, params);
|
||||||
String body = HttpUtil.createPost(url)
|
handleResult(result, "事务恢复");
|
||||||
.header("Authorization", token)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.form(params).execute().body();
|
|
||||||
JSONObject resultJsonBody = JSONUtil.parseObj(body);
|
|
||||||
log.info("【log】调用事务恢复接口,接口响应数据:{}", body);
|
|
||||||
|
|
||||||
if (resultJsonBody.getInt("code") == 0) {
|
|
||||||
log.info("【log】调用事务恢复接口成功");
|
|
||||||
} else {
|
|
||||||
log.info("【log】调用事务恢复接口失败:{}", resultJsonBody.getStr("message"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void transDeleted(ProcessTask task) {
|
public void transDeleted(ProcessTask task) {
|
||||||
String url = "https://poa.ncu.edu.cn/apis/ttc/v1/transaction/poa/transDeleted";
|
|
||||||
String token = tokenUtil.getToken();
|
|
||||||
|
|
||||||
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId());
|
||||||
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator());
|
||||||
|
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
params.put("appId", "72e34a101d3011f1a74cbae5193504f4");
|
params.put("appId", APP_ID);
|
||||||
params.put("creater", sysUser.getLoginname());
|
params.put("creater", sysUser.getLoginname());
|
||||||
params.put("creator", sysUser.getLoginname());
|
params.put("creator", sysUser.getLoginname());
|
||||||
params.put("taskId", task.getId());
|
params.put("taskId", task.getId());
|
||||||
|
|
||||||
log.info("【log】调用事务删除接口,请求参数:{}", Json.toJson(params));
|
JSONObject result = sendPost(ApiUrl.TRANS_DELETED, params);
|
||||||
String body = HttpUtil.createPost(url)
|
handleResult(result, "事务删除");
|
||||||
.header("Authorization", token)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.form(params).execute().body();
|
|
||||||
JSONObject resultJsonBody = JSONUtil.parseObj(body);
|
|
||||||
log.info("【log】调用事务删除接口,接口响应数据:{}", body);
|
|
||||||
|
|
||||||
if (resultJsonBody.getInt("code") == 0) {
|
|
||||||
log.info("【log】调用事务删除接口成功");
|
|
||||||
} else {
|
|
||||||
log.info("【log】调用事务删除接口失败:{}", resultJsonBody.getStr("message"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user