From 0de271f69b68abd42eff5e293050e3ca88bc10f8 Mon Sep 17 00:00:00 2001 From: airoger Date: Sun, 2 Oct 2022 13:39:52 +0800 Subject: [PATCH] optimize accept modification logic --- .../main/java/cn/hippo4j/common/enums/VerifyEnum.java | 7 ++++++- .../impl/AbstractConfigModificationVerifyService.java | 11 +++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/hippo4j-common/src/main/java/cn/hippo4j/common/enums/VerifyEnum.java b/hippo4j-common/src/main/java/cn/hippo4j/common/enums/VerifyEnum.java index 4dacb4bc..1d2ecf05 100644 --- a/hippo4j-common/src/main/java/cn/hippo4j/common/enums/VerifyEnum.java +++ b/hippo4j-common/src/main/java/cn/hippo4j/common/enums/VerifyEnum.java @@ -34,7 +34,12 @@ public enum VerifyEnum { /** * reject */ - VERIFY_REJECT(2, "审核拒绝"); + VERIFY_REJECT(2, "审核拒绝"), + + /** + * invalid + */ + VERIFY_INVALID(3, "失效"); private final Integer verifyStatus; diff --git a/hippo4j-config/src/main/java/cn/hippo4j/config/service/biz/impl/AbstractConfigModificationVerifyService.java b/hippo4j-config/src/main/java/cn/hippo4j/config/service/biz/impl/AbstractConfigModificationVerifyService.java index 00e89d42..5d73ee86 100644 --- a/hippo4j-config/src/main/java/cn/hippo4j/config/service/biz/impl/AbstractConfigModificationVerifyService.java +++ b/hippo4j-config/src/main/java/cn/hippo4j/config/service/biz/impl/AbstractConfigModificationVerifyService.java @@ -77,6 +77,17 @@ public abstract class AbstractConfigModificationVerifyService implements ConfigM hisConfigVerifyMapper.update(null, updateWrapper); + Date gmtVerify = hisConfigVerifyMapper.selectById(reqDTO.getId()).getGmtVerify(); + LambdaUpdateWrapper invalidUpdateWrapper = new LambdaUpdateWrapper() + .eq(HisConfigVerifyInfo::getType, reqDTO.getType()) + .eq(reqDTO.getTenantId() != null, HisConfigVerifyInfo::getTenantId, reqDTO.getTenantId()) + .eq(reqDTO.getItemId() != null, HisConfigVerifyInfo::getItemId, reqDTO.getItemId()) + .eq(reqDTO.getTpId() != null, HisConfigVerifyInfo::getTpId, reqDTO.getTpId()) + .and(reqDTO.getIdentify() != null, wrapper -> wrapper.eq(HisConfigVerifyInfo::getIdentify, reqDTO.getIdentify()).or().eq(HisConfigVerifyInfo::getModifyAll, true)) + .le(HisConfigVerifyInfo::getGmtVerify, gmtVerify) + .set(HisConfigVerifyInfo::getVerifyStatus, VerifyEnum.VERIFY_INVALID.getVerifyStatus()); + hisConfigVerifyMapper.update(null, invalidUpdateWrapper); + } /**