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

This commit is contained in:
chenwenjian 2025-02-24 11:28:27 +08:00
commit 93b21b4b7a
3 changed files with 28 additions and 4 deletions

View File

@ -1,5 +1,7 @@
package cn.axzo.nanopart.visa.server.mq.listener.workflow.process;
import cn.axzo.framework.rocketmq.Event;
import cn.axzo.framework.rocketmq.EventConsumer;
import cn.axzo.framework.rocketmq.EventProducer;
import cn.axzo.nanopart.visa.api.enums.VisaStatusEnum;
import cn.axzo.nanopart.visa.api.enums.VisaTypeEnum;
@ -17,16 +19,21 @@ import cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum;
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 com.google.common.collect.Lists;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_VISA_TYPE_KEY;
import static cn.axzo.nanopart.visa.api.enums.VisaLogTypeEnum.REJECT_APPROVE;
import static cn.axzo.nanopart.visa.api.enums.VisaLogTypeEnum.REVERT_APPROVE;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_VISA;
import static cn.axzo.nanopart.visa.api.enums.VisaTypeEnum.DESIGN_CHANGE;
import static cn.axzo.nanopart.visa.api.enums.VisaTypeEnum.PROJECT_VISA;
import static cn.axzo.nanopart.visa.api.enums.VisaTypeEnum.TECHNOLOGY_APPROVED;
/**
* 工作流广播的实例维度的所有事件类型
@ -39,6 +46,11 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
protected final ChangeRecordService changeRecordService;
protected final ChangeRecordRelationService changeRecordRelationService;
protected final ChangeRecordBillService changeRecordBillService;
public static List<String> SUPPORTED_DEFINITION_KEYS = Lists.newArrayList(
DESIGN_CHANGE.getProcessDefinitionKey(),
TECHNOLOGY_APPROVED.getProcessDefinitionKey(),
PROJECT_VISA.getProcessDefinitionKey()
);
public ProcessInstanceAllEventHandler(EventProducer eventProducer,
VisaOrganizationalNodeUserGateway visaOrganizationalNodeUserGateway,
@ -56,6 +68,11 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
return Integer.MIN_VALUE;
}
@Override
public boolean accept(ProcessInstanceDTO dto, Event event, EventConsumer.Context context) {
return SUPPORTED_DEFINITION_KEYS.contains(dto.getProcessDefinitionKey());
}
@Override
public void onCreated(ProcessInstanceDTO dto) {
ProcessInstanceEventHandler.super.onCreated(dto);
@ -160,7 +177,7 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
.ouId(Long.valueOf(lastOperationAssigner.getOuId()))
.workspaceId(Long.valueOf(lastOperationAssigner.getTenantId()))
.updateStatus(VisaStatusEnum.COMPLETED)
.editFormFlag(false)
.editFormFlag(false)
.build());
return;
}
@ -171,7 +188,7 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
.ouId(Long.valueOf(lastOperationAssigner.getOuId()))
.workspaceId(Long.valueOf(lastOperationAssigner.getTenantId()))
.updateStatus(Objects.isNull(visa.getImGroupId()) ? VisaStatusEnum.REPORT_FROM_APPROVE : VisaStatusEnum.DECIDING_FROM_APPROVE)
.editFormFlag(false)
.editFormFlag(false)
.build());
// 取消当前主单据关联的其他单据的关联状态

View File

@ -1,5 +1,7 @@
package cn.axzo.nanopart.visa.server.mq.listener.workflow.task;
import cn.axzo.framework.rocketmq.Event;
import cn.axzo.framework.rocketmq.EventConsumer;
import cn.axzo.framework.rocketmq.EventProducer;
import cn.axzo.maokai.api.vo.response.OrgNodeUserBriefInfoResp;
import cn.axzo.nanopart.visa.server.domain.ChangeRecordLog;
@ -14,6 +16,7 @@ import java.util.Objects;
import static cn.axzo.nanopart.visa.api.enums.VisaLogTypeEnum.APPROVED_AGRESS;
import static cn.axzo.nanopart.visa.api.enums.VisaLogTypeEnum.TRANSMIT_APPROVE;
import static cn.axzo.nanopart.visa.server.mq.listener.workflow.process.ProcessInstanceAllEventHandler.SUPPORTED_DEFINITION_KEYS;
/**
* 工作流广播的任务维度的所有事件类型
@ -33,6 +36,11 @@ public class ProcessTaskAllEventHandler extends BasicLogSupport implements Proce
return Integer.MAX_VALUE;
}
@Override
public boolean accept(ProcessTaskDTO dto, Event event, EventConsumer.Context context) {
return SUPPORTED_DEFINITION_KEYS.contains(dto.getProcessDefinitionKey());
}
@Override
public void onAssigned(ProcessTaskDTO dto) {
ProcessTaskEventHandler.super.onAssigned(dto);

View File

@ -326,8 +326,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
@Transactional(rollbackFor = Exception.class)
public void appendAttachment(ChangeRecordAppendAttachReq req) {
ChangeRecord visa = changeRecordService.getById(req.getVisaId());
AssertUtil.isTrue(!Objects.equals(VisaStatusEnum.APPROVING, visa.getStatus())
&& !Objects.equals(VisaStatusEnum.COMPLETED, visa.getStatus()), "当前单据状态下不允许操作");
AssertUtil.isTrue(!Objects.equals(VisaStatusEnum.COMPLETED, visa.getStatus()), "当前单据状态下不允许操作");
AssertUtil.notNull(visa, "变洽签单据不存在");
List<ChangeRecordRelation> existsAttach = findByCondition(VisaRelationDto.builder()