From e7aca98d094e1f0339ff7410fbb4174f0113cee3 Mon Sep 17 00:00:00 2001 From: ganhao Date: Sat, 16 May 2026 19:44:48 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=89=A7=E6=B3=95=E6=89=A7?= =?UTF-8?q?=E6=B3=95=E8=AF=84=E4=BB=B7=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/EnterpriseEvaluateServiceImpl.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseEvaluateServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseEvaluateServiceImpl.java index bfc06900..7a7cb9e5 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseEvaluateServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseEvaluateServiceImpl.java @@ -115,7 +115,7 @@ public class EnterpriseEvaluateServiceImpl implements IEnterpriseEvaluateService @Override public Boolean insertByBo(EnterpriseEvaluateBo bo) { EnterpriseEvaluate add = MapstructUtils.convert(bo, EnterpriseEvaluate.class); - validEntityBeforeSave(add); + validEntityBeforeSave(add, true); // 新增时需要校验重复评价 boolean flag =false; flag= baseMapper.insert(add) > 0; @@ -140,15 +140,25 @@ public class EnterpriseEvaluateServiceImpl implements IEnterpriseEvaluateService @Override public Boolean updateByBo(EnterpriseEvaluateBo bo) { EnterpriseEvaluate update = MapstructUtils.convert(bo, EnterpriseEvaluate.class); - validEntityBeforeSave(update); + validEntityBeforeSave(update, false); // 更新时不需要校验重复评价 return baseMapper.updateById(update) > 0; } /** * 保存前的数据校验 + * @param entity 待保存的实体 + * @param isNew 是否为新增操作 */ - private void validEntityBeforeSave(EnterpriseEvaluate entity){ - //TODO 做一些数据校验,如唯一约束 + private void validEntityBeforeSave(EnterpriseEvaluate entity, boolean isNew){ + // 仅在新增时校验enforcementId是否已存在评价记录,防止重复评价 + if (isNew && StringUtils.isNotBlank(entity.getEnforcementId())) { + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(EnterpriseEvaluate::getEnforcementId, entity.getEnforcementId()); + long count = baseMapper.selectCount(lqw); + if (count > 0) { + throw new RuntimeException("该执法案件已评价过,不支持二次评价"); + } + } } /**