feat(REQ-3300) - 调整审批实例监听逻辑
This commit is contained in:
parent
aaa139ac34
commit
2dd863a674
@ -1,12 +1,10 @@
|
||||
package cn.axzo.nanopart.visa.server.mq.listener.workflow.process;
|
||||
|
||||
import cn.axzo.framework.rocketmq.EventProducer;
|
||||
import cn.axzo.nanopart.visa.api.enums.VisaBillTypeEnum;
|
||||
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.ChangeRecordBill;
|
||||
import cn.axzo.nanopart.visa.server.domain.ChangeRecordLog;
|
||||
import cn.axzo.nanopart.visa.server.domain.ChangeRecordRelation;
|
||||
import cn.axzo.nanopart.visa.server.mq.listener.workflow.BasicLogSupport;
|
||||
@ -19,14 +17,11 @@ 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 java.util.stream.Collectors;
|
||||
|
||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_VISA_TYPE_KEY;
|
||||
import static cn.axzo.nanopart.visa.api.enums.VisaLogTypeEnum.APPROVE_COMPLETED;
|
||||
@ -150,7 +145,7 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
|
||||
}
|
||||
|
||||
private void updateChangeRecordApprovalStatus(ProcessInstanceDTO dto, BpmnProcessInstanceResultEnum resultEnum) {
|
||||
// 更新主表审批信息
|
||||
// 更新主表审批状态信息
|
||||
Long visaId = Long.valueOf(dto.getBusinessKey());
|
||||
changeRecordService.lambdaQuery()
|
||||
.eq(ChangeRecord::getId, visaId)
|
||||
@ -194,9 +189,8 @@ public class ProcessInstanceAllEventHandler extends BasicLogSupport implements P
|
||||
.updateStatus(Objects.isNull(visa.getImGroupId()) ? VisaStatusEnum.REPORT_FROM_APPROVE : VisaStatusEnum.DECIDING_FROM_APPROVE)
|
||||
.build());
|
||||
|
||||
if (Objects.isNull(visa.getImGroupId())) {
|
||||
List<ChangeRecordBill> bills = changeRecordBillService.findMainBill(VisaBillTypeEnum.DESIGN_VISA, Lists.newArrayList(visaId));
|
||||
changeRecordBillService.deleteByCondition(bills.stream().map(ChangeRecordBill::getId).collect(Collectors.toList()), VisaBillTypeEnum.DESIGN_VISA);
|
||||
}
|
||||
// 取消当前主单据关联的其他单据的关联状态
|
||||
changeRecordBillService.billRelationStatus(visaId, false);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -865,6 +865,9 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
processRelation.setContent(processInstanceId);
|
||||
processRelation.setContentExt(PROCESSING.getStatus());
|
||||
changeRecordRelationService.save(processRelation);
|
||||
|
||||
// 更新单据关联状态为 true
|
||||
changeRecordBillService.billRelationStatus(visaId, true);
|
||||
}
|
||||
|
||||
private List<BpmnTaskDelegateAssigner> buildApprovers(List<VisaChangeApproveCreateReq.ApprovePersonInfo> approvePersonInfoList) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user