diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index c6cf30ea..9db6f7e2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3577,6 +3577,12 @@ public class CuMemberServiceImpl extends ServiceImpl i CheckRegionVO checkRegionVO = this.getRegionForBack(param); BdArea province = iAreaServiceApi.getArea(param.getProvince()).getData(); CuMemberRegionExt cuMemberRegionExt = iCuMemberRegionService.getRegionByMember(userId, param.getType()); + + LambdaQueryWrapper cuMemberRegionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getDelFlag, EDelFlag.UN_DELETE.getValue()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getEffective, EEffective.EFFECTIVE.getValue()); + + if(ObjectUtil.isNotEmpty(cuMemberRegionExt)){ return AjaxResult.error("已选择区域, 不允许重复添加!"); } @@ -3584,6 +3590,9 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error("选择区域省不存在,请重新选择"); } if (param.getType() == 1 && checkRegionVO.isProvince()) { + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getProvince, param.getProvince()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCity, 0); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCounty, 0); param.setCity(0); param.setCounty(0); } else if (param.getType() == 2 && checkRegionVO.isCity()) { @@ -3594,6 +3603,8 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error("选择区域市不存在,请重新选择"); } } + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCity, param.getCity()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCounty, 0); param.setCounty(0); } else if (param.getType() == 3 && checkRegionVO.isCounty()) { // 校验区是否存在 @@ -3603,6 +3614,11 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error("选择区域区不存在,请重新选择"); } } + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCounty, param.getCounty()); + } + int count = iCuMemberRegionService.count(cuMemberRegionLambdaQueryWrapper); + if(count > 0){ + return AjaxResult.error("该区域已被选择, 不允许重复添加!"); } if (ObjectUtil.isNotEmpty(cuMemberRegionExt)) { param.setPkId(cuMemberRegionExt.getPkId());