From f653612d323e9b40f23358c3d68ef48bb57c5581 Mon Sep 17 00:00:00 2001 From: JyuHsin <729757837@qq.com> Date: Wed, 18 Mar 2026 17:52:21 +0800 Subject: [PATCH] commit --- .../base/sms/impl/ncu/SmsNcuServiceImpl.java | 9 +++++ .../ProcessTaskEndEventListener.java | 5 ++- .../impl/ProcessInstanceServiceImpl.java | 7 ++-- .../budwk/app/todo/service/TodoService.java | 2 +- .../todo/service/impl/TodoServiceImpl.java | 34 ++++++++++++------- .../strategy/impl/SmsMessageSendStrategy.java | 8 ++--- 6 files changed, 44 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/budwk/app/base/sms/impl/ncu/SmsNcuServiceImpl.java b/src/main/java/com/budwk/app/base/sms/impl/ncu/SmsNcuServiceImpl.java index 1bcc4b49..59217093 100644 --- a/src/main/java/com/budwk/app/base/sms/impl/ncu/SmsNcuServiceImpl.java +++ b/src/main/java/com/budwk/app/base/sms/impl/ncu/SmsNcuServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.budwk.app.base.sms.SmsService; import com.budwk.app.base.sms.impl.ncu.util.SmsTokenUtil; +import com.budwk.app.web.commons.base.Globals; import lombok.extern.slf4j.Slf4j; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; @@ -103,6 +104,14 @@ public class SmsNcuServiceImpl implements SmsService { String pcUrl, String mobileUrl, String picUrl) { + if(!Globals.sso) { + log.error("【log】本地开发模式不允许调用消息接口"); + return; + } + if(!Globals.MyConfig.getBoolean("AppNotify", false)) { + log.error("【log】消息配置未开启"); + return; + } if (Lang.isEmpty(receivers)) { log.error("【log】send fail by receivers is null"); diff --git a/src/main/java/com/budwk/app/flow/listenter/ProcessTaskEndEventListener.java b/src/main/java/com/budwk/app/flow/listenter/ProcessTaskEndEventListener.java index e2f9f78d..ea6c7733 100644 --- a/src/main/java/com/budwk/app/flow/listenter/ProcessTaskEndEventListener.java +++ b/src/main/java/com/budwk/app/flow/listenter/ProcessTaskEndEventListener.java @@ -1,5 +1,6 @@ package com.budwk.app.flow.listenter; +import cn.hutool.core.util.ObjectUtil; import com.budwk.app.flow.engine.event.ProcessEvent; import com.budwk.app.flow.engine.event.ProcessEventListener; import com.budwk.app.flow.entity.ProcessTask; @@ -27,7 +28,9 @@ public class ProcessTaskEndEventListener implements ProcessEventListener { ProcessTask task = dao.fetch(ProcessTask.class, sourceId); // 好了,任务完成,就可以调接口完成待办了 - todoService.taskHandle(task); + if (!ObjectUtil.equals(0, task.getTaskParentId().intValue())) { + todoService.taskHandle(task); + } System.out.println("流程任务完成事件:" + task.getDisplayName()); } } diff --git a/src/main/java/com/budwk/app/flow/service/impl/ProcessInstanceServiceImpl.java b/src/main/java/com/budwk/app/flow/service/impl/ProcessInstanceServiceImpl.java index 697b59fb..e69cc4a3 100644 --- a/src/main/java/com/budwk/app/flow/service/impl/ProcessInstanceServiceImpl.java +++ b/src/main/java/com/budwk/app/flow/service/impl/ProcessInstanceServiceImpl.java @@ -559,15 +559,16 @@ public class ProcessInstanceServiceImpl extends BaseServiceImpl public void deleteProcessInstanceById(Long processInstanceId) { List taskList = dao().query(ProcessTask.class, Cnd.where(ProcessTask::getProcessInstanceId, "=", processInstanceId)); List taskIds = taskList.stream().map(ProcessTask::getId).toList(); - dao().clear(ProcessTask.class, Cnd.where(ProcessTask::getId, "in", taskIds)); - 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); + todoService.deleteProcessInstance(task); } + + dao().clear(ProcessTask.class, Cnd.where(ProcessTask::getId, "in", taskIds)); + dao().clear(ProcessInstance.class, Cnd.where(ProcessInstance::getId, "=", processInstanceId)); } @Override diff --git a/src/main/java/com/budwk/app/todo/service/TodoService.java b/src/main/java/com/budwk/app/todo/service/TodoService.java index c9997450..4de5038b 100644 --- a/src/main/java/com/budwk/app/todo/service/TodoService.java +++ b/src/main/java/com/budwk/app/todo/service/TodoService.java @@ -61,6 +61,6 @@ public interface TodoService { * * @param task */ - void transDeleted(ProcessTask task); + void deleteProcessInstance(ProcessTask task); } diff --git a/src/main/java/com/budwk/app/todo/service/impl/TodoServiceImpl.java b/src/main/java/com/budwk/app/todo/service/impl/TodoServiceImpl.java index b834d194..65480256 100644 --- a/src/main/java/com/budwk/app/todo/service/impl/TodoServiceImpl.java +++ b/src/main/java/com/budwk/app/todo/service/impl/TodoServiceImpl.java @@ -1,6 +1,7 @@ package com.budwk.app.todo.service.impl; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; @@ -19,6 +20,10 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; +import org.nutz.dao.Sqls; +import org.nutz.dao.entity.Record; +import org.nutz.dao.sql.Sql; +import org.nutz.dao.util.Daos; import org.nutz.integration.jedis.RedisService; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; @@ -35,7 +40,6 @@ import java.util.stream.Collectors; */ @Slf4j @IocBean -@RequiredArgsConstructor public class TodoServiceImpl implements TodoService { @Inject @@ -66,14 +70,12 @@ public class TodoServiceImpl implements TodoService { */ private JSONObject sendPost(String url, Map params) { try { - if(!Globals.sso) { log.error("【待办平台】本地开发模式不允许调用待办"); return null; } - - if(!SecurityUtil.getUserLoginname().equals("338535821")) { - log.error("【待办平台】只有工号为338535821才能发送待办"); + if(!Globals.MyConfig.getBoolean("AppTodo", false)) { + log.error("【待办平台】待办配置未开启"); return null; } @@ -83,7 +85,7 @@ public class TodoServiceImpl implements TodoService { String body = HttpUtil.createPost(url) .header("Authorization", token) .header("Content-Type", "application/json") - .form(params) + .body(Json.toJson(List.of(params))) .execute() .body(); @@ -127,16 +129,18 @@ public class TodoServiceImpl implements TodoService { ProcessDefine define = dao.fetch(ProcessDefine.class, instance.getProcessDefineId()); Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator()); + ProcessTask parentTask = dao.fetch(ProcessTask.class, task.getTaskParentId()); + Map params = new HashMap<>(); params.put("appId", APP_ID); params.put("nodeId", task.getId()); - params.put("nodeName", task.getTaskName()); + params.put("nodeName", task.getDisplayName()); params.put("taskId", task.getId()); params.put("taskName", task.getDisplayName()); params.put("transTypeCode", define.getName()); params.put("transTypeName", define.getDisplayName()); params.put("handlers", getHandlers(task.getId())); - if (!ObjectUtil.equals(0, task.getTaskParentId())) { + if (!ObjectUtil.equals(0, parentTask.getTaskParentId().intValue())) { params.put("previousTaskId", task.getTaskParentId()); } params.put("canDelegate", 0); @@ -144,8 +148,14 @@ public class TodoServiceImpl implements TodoService { params.put("initiator", sysUser.getLoginname()); params.put("initiatorName", sysUser.getUsername()); params.put("serialNumber", task.getId()); - params.put("handleUrl", Globals.AppDomain + task.getFormKey()); - params.put("mHandleUrl", Globals.AppDomain + task.getH5FormKey()); + if(StrUtil.isNotBlank(task.getFormKey())) { + params.put("handleUrl", Globals.AppDomain + task.getFormKey()); + params.put("viewUrl", Globals.AppDomain + task.getFormKey()); + } + if(StrUtil.isNotBlank(task.getH5FormKey())) { + params.put("mHandleUrl", Globals.AppDomain + task.getH5FormKey()); + params.put("mViewUrl", Globals.AppDomain + task.getH5FormKey()); + } JSONObject result = sendPost(ApiUrl.ADD_TRANSACTION, params); handleResult(result, "创建待办任务"); @@ -199,7 +209,7 @@ public class TodoServiceImpl implements TodoService { params.put("appId", APP_ID); params.put("creater", sysUser.getLoginname()); params.put("creator", sysUser.getLoginname()); - params.put("handlers", ""); + params.put("handlers", getHandlers(task.getId())); params.put("operator", SecurityUtil.getUserLoginname()); params.put("taskId", task.getId()); @@ -222,7 +232,7 @@ public class TodoServiceImpl implements TodoService { } @Override - public void transDeleted(ProcessTask task) { + public void deleteProcessInstance(ProcessTask task) { ProcessInstance instance = dao.fetch(ProcessInstance.class, task.getProcessInstanceId()); Sys_user sysUser = dao.fetch(Sys_user.class, instance.getOperator()); diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/message/strategy/impl/SmsMessageSendStrategy.java b/src/main/java/com/budwk/app/zhgh/dayofficework/message/strategy/impl/SmsMessageSendStrategy.java index 78e38342..380e42ac 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/message/strategy/impl/SmsMessageSendStrategy.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/message/strategy/impl/SmsMessageSendStrategy.java @@ -32,10 +32,10 @@ public class SmsMessageSendStrategy implements GlobalMessageSendStrategy { return true; // 短信发送支持异步 } -// @Override -// public boolean isEnabled() { -// return true; -// } + @Override + public boolean isEnabled() { + return false; + } @Override public void send(String title, String content, Integer type, List receiverIds, JSONObject config) {