From 42e3058f2858f37e95b38f0499f55f264614d8ba Mon Sep 17 00:00:00 2001 From: yanglin Date: Thu, 27 Feb 2025 09:54:14 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3581:=20=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ess/api/enums/EssContractState.java | 2 ++ .../ess/server/ess/ContractManager.java | 28 ++++++++++--------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/enums/EssContractState.java b/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/enums/EssContractState.java index d840f274..a6c0877b 100644 --- a/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/enums/EssContractState.java +++ b/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/enums/EssContractState.java @@ -4,11 +4,13 @@ package cn.axzo.nanopart.ess.api.enums; import lombok.AccessLevel; import lombok.Getter; import lombok.RequiredArgsConstructor; +import lombok.experimental.Accessors; /** * @author yanglin */ @Getter +@Accessors(fluent = true) @RequiredArgsConstructor(access = AccessLevel.PRIVATE) public enum EssContractState { diff --git a/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/ContractManager.java b/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/ContractManager.java index 2976bfed..973243f8 100644 --- a/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/ContractManager.java +++ b/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/ContractManager.java @@ -1,6 +1,19 @@ package cn.axzo.nanopart.ess.server.ess; +import static cn.axzo.nanopart.ess.server.utils.BizAssertions.fail; +import static java.util.stream.Collectors.toList; + +import java.util.Arrays; +import java.util.List; + +import org.springframework.dao.DuplicateKeyException; +import org.springframework.stereotype.Component; + +import com.tencentcloudapi.common.exception.TencentCloudSDKException; +import com.tencentcloudapi.essbasic.v20210526.models.ApproverItem; +import com.tencentcloudapi.essbasic.v20210526.models.ChannelCreateFlowByFilesResponse; + import cn.axzo.basics.common.exception.ServiceException; import cn.axzo.nanopart.ess.api.domain.contract.EssApproveDetail; import cn.axzo.nanopart.ess.api.enums.EssContractState; @@ -16,19 +29,8 @@ import cn.axzo.nanopart.ess.server.ess.mq.EssBroadcaster; import cn.axzo.nanopart.ess.server.ess.support.ContractSupport; import cn.axzo.nanopart.ess.server.utils.BizAssertions; import cn.axzo.nanopart.ess.server.utils.BizTransactional; -import com.tencentcloudapi.common.exception.TencentCloudSDKException; -import com.tencentcloudapi.essbasic.v20210526.models.ApproverItem; -import com.tencentcloudapi.essbasic.v20210526.models.ChannelCreateFlowByFilesResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.dao.DuplicateKeyException; -import org.springframework.stereotype.Component; - -import java.util.Arrays; -import java.util.List; - -import static cn.axzo.nanopart.ess.server.utils.BizAssertions.fail; -import static java.util.stream.Collectors.toList; /** * @author yanglin @@ -92,7 +94,7 @@ public class ContractManager { essLogDao.logRequest("revokeContract", request.getEssContractId(), request); // lock when updating state EssContract contract = essContractDao.findForUpdateOrNull(request.getEssContractId()); - BizAssertions.assertFalse(contract.isFinalState(), "合同已是终态 {}, 无法撤销", contract.getState().getDescription()); + BizAssertions.assertFalse(contract.isFinalState(), "合同已是终态 {}, 无法撤销", contract.getState().description()); EssPerson superAdmin = getContractSuperAdmin(contract); essClient.revokeContract(superAdmin, contract.getEssContractId(), request.getReason()); updateContractState(contract, EssContractState.CANCEL, null, request.getReason()); @@ -105,7 +107,7 @@ public class ContractManager { BizAssertions.assertNotNull(reload, "合同不存在: {}", contract.getEssContractId()); if (reload.isFinalState()) { log.warn("合同[{}]已是最终状态[{}], 无法更新状态至{}", reload.getEssContractId(), reload.getState(), - state.getDescription()); + state.description()); } else { essContractDao.updateState(contract, state, approveDetails, essMessage);