feat(REQ-3982) - 调整创建业务表单可能出现的事务问题

This commit is contained in:
wangli 2025-04-30 10:43:06 +08:00
parent 2fe47895c5
commit 582c6875bc
3 changed files with 63 additions and 61 deletions

View File

@ -17,6 +17,7 @@ import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.compress.utils.Lists;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.List;
@ -63,6 +64,7 @@ public class ChangeRecordBillServiceImpl extends ServiceImpl<ChangeRecordBillDao
/**
* 删除
*/
@Transactional(rollbackFor = Exception.class)
public Boolean deleteByVisaId(Long visaId) {
if (Objects.isNull(visaId)) {
return false;

View File

@ -44,6 +44,7 @@ import com.google.common.collect.Sets;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
@ -119,6 +120,7 @@ public class ChangeRecordConfirmServiceImpl extends ServiceImpl<ChangeRecordConf
/**
* 通过变更签证Id删除变更签证确认信息
*/
@Transactional(rollbackFor = Exception.class)
public boolean deleteByVisaId(Long visaId, List<VisaConfirmBizTypeEnum> bizTypes) {
if (Objects.isNull(visaId)) {
return false;

View File

@ -1,66 +1,5 @@
package cn.axzo.nanopart.visa.server.service.impl;
import static cn.axzo.maokai.common.enums.SaasCooperateShipCooperateTypeEnum.PROJ_GROUP;
import static cn.axzo.maokai.common.enums.SaasCooperateShipCooperateTypeEnum.PROJ_TEAM;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.FORM_FIELD_ATTACH;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_BIZ_INFO_VISA_ID;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_BIZ_INFO_VISA_TYPE;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_BIZ_INFO_VISA_TYPE_DESC;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_OWNER_TIPS;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS_OPERATED;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.MSG_CENTER_APP_CODE;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_INITIATOR_NAME;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_INITIATOR_UNIT_NAME;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_PDF_FILE_URL;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_STAMP_TYPE_DESC;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_TOPIC;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_CONTRACT_ID;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_OU_ID;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_RECIPIENT;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_TYPE;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.ESS_RECIPIENT_ID_MAP;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.ESS_RECIPIENT_ID_MAP_PAY;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PRINT_PDF_FILE;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PRINT_PDF_FILE_PAY;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS_PAY;
import static cn.axzo.nanopart.visa.api.request.UpdateVisaChangeReq.VisaStampAction.REQUEST_STAMP;
import static cn.axzo.workflow.common.constant.BpmnConstants.NO_TENANT_ID;
import static cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum.PROCESSING;
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.Base64;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.groovy.util.Maps;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import cn.axzo.apollo.workspace.api.workspace.req.GetWorkspaceDetailReq;
import cn.axzo.apollo.workspace.api.workspace.res.GetWorkspaceDetailRes;
import cn.axzo.basics.common.util.AssertUtil;
@ -130,8 +69,66 @@ import cn.axzo.workflow.common.model.request.form.instance.FormVariablesUpdateDT
import cn.axzo.workflow.common.model.response.bpmn.process.NodesByModelVO;
import cn.axzo.workflow.common.model.response.print.PrintModelDTO;
import cn.hutool.core.lang.UUID;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.groovy.util.Maps;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.Base64;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
import static cn.axzo.maokai.common.enums.SaasCooperateShipCooperateTypeEnum.PROJ_GROUP;
import static cn.axzo.maokai.common.enums.SaasCooperateShipCooperateTypeEnum.PROJ_TEAM;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.FORM_FIELD_ATTACH;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_BIZ_INFO_VISA_ID;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_BIZ_INFO_VISA_TYPE;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_BIZ_INFO_VISA_TYPE_DESC;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_OWNER_TIPS;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS_OPERATED;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.MSG_CENTER_APP_CODE;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_INITIATOR_NAME;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_INITIATOR_UNIT_NAME;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_PDF_FILE_URL;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_STAMP_TYPE_DESC;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_TOPIC;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_CONTRACT_ID;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_OU_ID;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_RECIPIENT;
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_TYPE;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.ESS_RECIPIENT_ID_MAP;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.ESS_RECIPIENT_ID_MAP_PAY;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PRINT_PDF_FILE;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PRINT_PDF_FILE_PAY;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS_PAY;
import static cn.axzo.nanopart.visa.api.request.UpdateVisaChangeReq.VisaStampAction.REQUEST_STAMP;
import static cn.axzo.workflow.common.constant.BpmnConstants.NO_TENANT_ID;
import static cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum.PROCESSING;
/**
* @author xudawei
@ -214,6 +211,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean deleteByVisaId(Long visaId, List<VisaRelationFieldEnum> relationTypes) {
if (NumberUtil.isNotPositiveNumber(visaId)) {
return false;