Merge remote-tracking branch 'origin/feature/REQ-3300' into feature/REQ-3300

This commit is contained in:
xudawei 2025-02-11 14:20:45 +08:00
commit 463abb9e8d
2 changed files with 16 additions and 11 deletions

View File

@ -2,6 +2,7 @@ package cn.axzo.nanopart.visa.server.mq.listener.workflow.process;
import cn.axzo.framework.rocketmq.EventProducer;
import cn.axzo.nanopart.visa.api.enums.VisaStatusEnum;
import cn.axzo.nanopart.visa.api.enums.VisaTypeEnum;
import cn.axzo.nanopart.visa.api.request.ChangeStatusRequest;
import cn.axzo.nanopart.visa.server.domain.ChangeRecord;
import cn.axzo.nanopart.visa.server.domain.ChangeRecordLog;
@ -16,6 +17,7 @@ import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskDelegateAssigner;
import cn.axzo.workflow.common.model.response.mq.ProcessInstanceDTO;
import cn.axzo.workflow.starter.handler.ProcessInstanceEventHandler;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.util.Date;
import java.util.Objects;
@ -60,27 +62,30 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
@Override
public void onStarted(ProcessInstanceDTO dto) {
BpmnTaskDelegateAssigner initiator = dto.getInitiator();
String visaType = (String) dto.getVariables().getOrDefault(WORKFLOW_VAR_VISA_TYPE_KEY, "");
String visaTypeDesc = parseVisaType(dto);
ChangeRecordLog log = ChangeRecordLog.builder()
.visaId(Long.valueOf(dto.getBusinessKey()))
.action(dto.getType().getTag())
.title(String.format(TO_APPRROVE.getTitle(), visaType))
.content(String.format(TO_APPRROVE.getContent(), buildLogUserInfo(initiator), visaType))
.title(String.format(TO_APPRROVE.getTitle(), visaTypeDesc))
.content(String.format(TO_APPRROVE.getContent(), buildLogUserInfo(initiator), visaTypeDesc))
.build();
eventProducer.send(VisaChangeLogPayload.form(log));
}
private String parseVisaType(ProcessInstanceDTO dto) {
String visaType = (String) dto.getVariables().getOrDefault(WORKFLOW_VAR_VISA_TYPE_KEY, "");
return StringUtils.hasText(visaType) ? VisaTypeEnum.valueOf(visaType).getDesc() : "";
}
@Override
public void onCompleted(ProcessInstanceDTO dto) {
String visaType = (String) dto.getVariables().getOrDefault(WORKFLOW_VAR_VISA_TYPE_KEY, "");
String visaTypeDesc = parseVisaType(dto);
ChangeRecordLog log = ChangeRecordLog.builder()
.visaId(Long.valueOf(dto.getBusinessKey()))
.action(dto.getType().getTag())
.title(String.format(APPROVE_COMPLETED.getTitle(), visaType))
.content(String.format(APPROVE_COMPLETED.getContent(), visaType))
.title(String.format(APPROVE_COMPLETED.getTitle(), visaTypeDesc))
.content(String.format(APPROVE_COMPLETED.getContent(), visaTypeDesc))
.build();
eventProducer.send(VisaChangeLogPayload.form(log));
@ -95,12 +100,12 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
@Override
public void onCancelled(ProcessInstanceDTO dto) {
BpmnTaskDelegateAssigner initiator = dto.getInitiator();
String visaType = (String) dto.getVariables().getOrDefault(WORKFLOW_VAR_VISA_TYPE_KEY, "");
String visaTypeDesc = parseVisaType(dto);
ChangeRecordLog log = ChangeRecordLog.builder()
.visaId(Long.valueOf(dto.getBusinessKey()))
.action(dto.getType().getTag())
.title(String.format(REVERT_APPROVE.getTitle(), visaType))
.title(String.format(REVERT_APPROVE.getTitle(), visaTypeDesc))
.content(String.format(REVERT_APPROVE.getContent(), buildLogUserInfo(initiator)))
.build();
eventProducer.send(VisaChangeLogPayload.form(log));

View File

@ -617,7 +617,7 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
request.setMemberLimit(100L);
request.setBizGroupInfo(Maps.of(IM_GROUP_BIZ_INFO_VISA_ID, visaId,
IM_GROUP_BIZ_INFO_INITIATOR_WORKSPACE_ID, req.getRelationWorkspaceId(),
IM_GROUP_BIZ_INFO_VISA_TYPE, req.getType().getCode()));
IM_GROUP_BIZ_INFO_VISA_TYPE, req.getType().name()));
GroupCreateResponse imGroup = msgCenterGateway.createImGroup(request);
updateImInfo(visaId, imGroup);
@ -682,7 +682,7 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
// 设置变洽签主键 ID
processDto.setBusinessKey(String.valueOf(visaId));
Map<String, Object> variables = new HashMap<>();
variables.put(WORKFLOW_VAR_VISA_TYPE_KEY, req.getType().getCode());
variables.put(WORKFLOW_VAR_VISA_TYPE_KEY, req.getType().name());
processDto.setVariables(variables);
processDto.setInitiator(BpmnTaskDelegateAssigner.builder()
.tenantId(String.valueOf(req.getRelationWorkspaceId()))