Commit b0ddafe4 by 赵剑炜

消息推送代码调整

parent 52b0af84
......@@ -45,8 +45,7 @@ import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.*;
import static com.junmp.junmpProcess.common.CommonConstants.BUSINESS_STATUS_4;
import static com.junmp.junmpProcess.common.CommonConstants.PROCESS_STATUS;
import static com.junmp.junmpProcess.common.CommonConstants.*;
import static com.junmp.junmpProcess.utils.BpmnModelUtils.getChildNode;
/**
......@@ -77,6 +76,7 @@ public class CounterSignListener implements ExecutionListener {
public void notify(DelegateExecution execution) {
String currentActivityId = execution.getCurrentActivityId();
Process mainProcess = repositoryService.getBpmnModel(execution.getProcessDefinitionId()).getMainProcess();
UserTask userTask = (UserTask) mainProcess.getFlowElement(currentActivityId);
String flowJson = mainProcess.getAttributeValue("http://flowable.org/bpmn", "Junmp");
JSONObject jsonObject = JSONObject.parseObject(flowJson, new TypeReference<JSONObject>() {
......@@ -300,9 +300,12 @@ public class CounterSignListener implements ExecutionListener {
{
MessageSendReq sendReq = new MessageSendReq();
sendReq.setReceiveUserIds(String.valueOf(userId));
sendReq.setMsgTitle("单据审批提示");
sendReq.setBizType("单据审批");
sendReq.setMsgContent("您有一条单据流程需要进行审批");
sendReq.setMsgTitle("您有新的待办任务");
sendReq.setBizType(execution.getVariable(ORDER_TYPE).toString());
sendReq.setBizId(Long.valueOf(execution.getProcessInstanceId()));
String StartUser=execution.getVariable(START_USER_INFO).toString();
UserInfo user= JSONObject.parseObject(StartUser, UserInfo.class);
sendReq.setMsgContent(user.getRealName()+" 提交的"+mainProcess.getName()+"需要您审批,请即时处理");
sendReq.setPriority("0");
sendReq.setSendTime(DateTime.now());
messageApi.sendMessage(sendReq);
......
package com.junmp.jyzb.listener;
import cn.hutool.core.date.DateTime;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
......@@ -7,6 +8,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.junmp.junmpProcess.dto.json.ChildNode;
import com.junmp.junmpProcess.dto.json.UserInfo;
import com.junmp.junmpProcess.utils.RabbitMQUtils2;
//import com.rabbitmq.client.Channel;
//import com.rabbitmq.client.Connection;
......@@ -24,6 +26,9 @@ import com.junmp.jyzb.service.*;
import com.junmp.jyzb.utils.DateTimeUtil;
import com.junmp.v2.common.exception.base.ServiceException;
import com.junmp.v2.common.util.BeanPlusUtil;
import com.junmp.v2.message.api.MessageApi;
import com.junmp.v2.message.api.bean.req.MessageReq;
import com.junmp.v2.message.api.bean.req.MessageSendReq;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.MessageProperties;
......@@ -33,6 +38,7 @@ import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType;
import org.flowable.common.engine.impl.event.FlowableEntityEventImpl;
import org.flowable.engine.HistoryService;
import org.flowable.engine.delegate.event.AbstractFlowableEngineEventListener;
import org.flowable.engine.history.HistoricProcessInstance;
import org.flowable.task.service.impl.persistence.entity.TaskEntity;
import org.flowable.variable.api.history.HistoricVariableInstance;
import org.slf4j.Logger;
......@@ -47,6 +53,9 @@ import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
import static com.junmp.junmpProcess.common.CommonConstants.ORDER_TYPE;
import static com.junmp.junmpProcess.common.CommonConstants.START_USER_INFO;
@Component
public class GlobalEndListener extends AbstractFlowableEngineEventListener {
......@@ -73,6 +82,8 @@ import java.util.stream.Collectors;
private InventorySummaryService inventorySummaryService;
@Resource
private MessageApi messageApi;
@Resource
private InventoryService inventoryService;
protected Logger logger = LoggerFactory.getLogger(this.getClass());
......@@ -81,10 +92,15 @@ import java.util.stream.Collectors;
@Override
protected void processCompleted(FlowableEngineEntityEvent event) {
if (event.getType() == FlowableEngineEventType.PROCESS_COMPLETED) {
// 获取流程实例ID
String processInstanceId = event.getProcessInstanceId();
HistoricProcessInstance historicProcessInstance = historyService.createHistoricProcessInstanceQuery()
.processInstanceId(processInstanceId)
.includeProcessVariables()
.singleResult();
// 获取流程定义ID
String processDefinitionId = event.getProcessDefinitionId();
List<HistoricVariableInstance> orderType = historyService.createHistoricVariableInstanceQuery().processInstanceId(processInstanceId).variableName("orderType").list();
......@@ -140,6 +156,26 @@ import java.util.stream.Collectors;
}
//消息推送
// MessageSendReq sendReq = new MessageSendReq();
// historicProcessInstance.getProcessVariables()
// sendReq.setReceiveUserIds(String.valueOf(userId));
// sendReq.setMsgTitle("您有新的待办任务");
// sendReq.setBizType(execution.getVariable(ORDER_TYPE).toString());
// sendReq.setBizId(Long.valueOf(execution.getProcessInstanceId()));
// String StartUser=execution.getVariable(START_USER_INFO).toString();
// UserInfo user= JSONObject.parseObject(StartUser, UserInfo.class);
// sendReq.setMsgContent(user.getRealName()+" 提交的"+mainProcess.getName()+"需要您审批,请即时处理");
// sendReq.setPriority("0");
// sendReq.setSendTime(DateTime.now());
// messageApi.sendMessage(sendReq);
// messageApi.queryCount(new MessageReq());
// /*推送发送未读数量*/
// MessageReq req1 = new MessageReq();
// req1.setReadFlag(0);
// req1.setReceiveUserId(Long.valueOf(userId));
// Integer count1 = messageApi.queryCount(req1);
// messageApi.pushMsgToUser(userId,count1);
}
}
......@@ -150,12 +186,6 @@ import java.util.stream.Collectors;
System.out.println("event = " + event);
}
// 获取流程实例关联的变量
private Map<String, Object> getProcessVariables(String processInstanceId) {
// 根据 processInstanceId 获取流程实例关联的变量
// 这里需要根据你的业务逻辑来实现获取变量的方法
// 返回一个包含流程变量的 Map
return null;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论