From 2adf5b628046f44509fb3e58720afc2d3fcbfe1d Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Mon, 8 Nov 2021 17:12:53 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=90=8C=E4=B8=80=E5=B0=8F=E5=8C=BA?= =?UTF-8?q?=E5=86=85=E6=A5=BC=E6=A0=8B=E5=90=8D=E7=A7=B0=E4=B8=8D=E5=85=81?= =?UTF-8?q?=E8=AE=B8=E9=87=8D=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/exception/EpmetErrorCode.java | 2 +- .../java/com/epmet/dao/IcBuildingDao.java | 6 +---- .../service/impl/BuildingServiceImpl.java | 18 ++++++++----- .../main/resources/mapper/IcBuildingDao.xml | 27 ++++++------------- 4 files changed, 21 insertions(+), 32 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index a38091fa60..32c906e323 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -79,7 +79,7 @@ public enum EpmetErrorCode { GUIDE_CATEGORY_NAME_EXITS(8212,"分类已存在"), CUSTOMER_FORM_NOT_EXITS(8213,"客户未配置表单"), RESI_NOT_FOUND(8214,"居民信息找不到"), - + BUILDING_NAME_EXITED(8215,"楼栋名称已存在"), REQUIRE_PERMISSION(8301, "您没有足够的操作权限"), THIRD_PLAT_REQUEST_ERROR(8302, "请求第三方平台错误"), diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java index accf59bb87..7b45531a0d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java @@ -17,16 +17,12 @@ package com.epmet.dao; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Constants; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.result.BaseInfoFamilyBuildingResultDTO; -import com.epmet.dto.result.BuildingResultDTO; import com.epmet.entity.CustomerAgencyEntity; import com.epmet.entity.IcBuildingEntity; import com.epmet.entity.IcHouseEntity; -import com.epmet.entity.IcNeighborHoodEntity; import com.epmet.excel.IcBuildingExcel; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -71,5 +67,5 @@ public interface IcBuildingDao extends BaseDao { */ List baseInfoFamilyBuilding(@Param("neighborHoodId")String neighborHoodId); - List buildingListByIds(@Param("buildingIdList") List buildingIdList); + Integer checkBuildName(@Param("neighborHoodId") String neighborHoodId,@Param("buildingName")String buildingName, @Param("buildingId")String buildingId); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java index ef09973b53..a63374684f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java @@ -13,7 +13,6 @@ import com.epmet.dto.CustomerStaffAgencyDTO; import com.epmet.dto.IcBuildingDTO; import com.epmet.dto.form.IcBulidingFormDTO; import com.epmet.dto.form.ListIcNeighborHoodFormDTO; -import com.epmet.dto.result.BuildingResultDTO; import com.epmet.dto.result.IcNeighborHoodResultDTO; import com.epmet.entity.*; import com.epmet.enums.BuildingTypeEnums; @@ -68,6 +67,11 @@ public class BuildingServiceImpl implements BuildingService { @Override @Transactional(rollbackFor = Exception.class) public void AddBuilding(String customerId, IcBulidingFormDTO formDTO) { + //同一小区下不能存在楼栋名字一样的 + Integer count = icBuildingDao.checkBuildName(formDTO.getNeighborHoodId(),formDTO.getBuildingName(),null); + if (null != count && count > 0) { + throw new RenException(EpmetErrorCode.BUILDING_NAME_EXITED.getCode(),EpmetErrorCode.BUILDING_NAME_EXITED.getMsg()); + } IcBuildingDTO icBuildingDTO= ConvertUtils.sourceToTarget(formDTO, IcBuildingDTO.class); icBuildingDTO.setCustomerId(customerId); IcBuildingEntity entity = ConvertUtils.sourceToTarget(icBuildingDTO, IcBuildingEntity.class); @@ -279,12 +283,6 @@ public class BuildingServiceImpl implements BuildingService { ExcelPoiUtils.exportExcel(templatePath ,map,"楼宇信息录入表",response); return ; } - - @Override - public List buildingListByIds(List buildingIdList) { - return icBuildingDao.buildingListByIds(buildingIdList); - } - private List searchAllBuilding(ListIcNeighborHoodFormDTO formDTO) { // QueryWrapper neighborHoodEntityQueryWrapper = new QueryWrapper<>(); @@ -377,6 +375,12 @@ public class BuildingServiceImpl implements BuildingService { @Override @Transactional(rollbackFor = Exception.class) public void UpdateBuilding(String customerId, IcBulidingFormDTO formDTO) { + //同一小区下不能存在楼栋名字一样的 + Integer count = icBuildingDao.checkBuildName(formDTO.getNeighborHoodId(),formDTO.getBuildingName(),formDTO.getBuildingId()); + if (null != count && count > 0) { + throw new RenException(EpmetErrorCode.BUILDING_NAME_EXITED.getCode(),EpmetErrorCode.BUILDING_NAME_EXITED.getMsg()); + } + IcBuildingDTO icBuilding= icBuildingService.get(formDTO.getBuildingId()); if(!icBuilding.getNeighborHoodId().equals(formDTO.getNeighborHoodId())){ diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml index 6be098c62c..e937bff689 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml @@ -300,25 +300,14 @@ AND b.NEIGHBOR_HOOD_ID = #{neighborHoodId} - + select count(*) from ic_building b + where b.del_flag='0' + AND b.NEIGHBOR_HOOD_ID = #{neighborHoodId} + and b.BUILDING_NAME=#{buildingName} + + and b.id !=#{buildingId} + - \ No newline at end of file From 5d880c618daaaefebd1497af0b8381bfec3fe4eb Mon Sep 17 00:00:00 2001 From: lzh Date: Mon, 8 Nov 2021 19:31:36 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=BB=99=E8=A6=86?= =?UTF-8?q?=E7=9B=96=E4=BA=86=EF=BC=8C=E9=87=8D=E6=96=B0=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/dao/IcBuildingDao.java | 2 ++ .../service/impl/BuildingServiceImpl.java | 5 +++++ .../main/resources/mapper/IcBuildingDao.xml | 20 +++++++++++++++++++ 3 files changed, 27 insertions(+) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java index 7b45531a0d..e0fce5c740 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java @@ -20,6 +20,7 @@ package com.epmet.dao; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.result.BaseInfoFamilyBuildingResultDTO; +import com.epmet.dto.result.BuildingResultDTO; import com.epmet.entity.CustomerAgencyEntity; import com.epmet.entity.IcBuildingEntity; import com.epmet.entity.IcHouseEntity; @@ -68,4 +69,5 @@ public interface IcBuildingDao extends BaseDao { List baseInfoFamilyBuilding(@Param("neighborHoodId")String neighborHoodId); Integer checkBuildName(@Param("neighborHoodId") String neighborHoodId,@Param("buildingName")String buildingName, @Param("buildingId")String buildingId); + List buildingListByIds(@Param("buildingIdList") List buildingIdList); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java index a63374684f..97e77a066e 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java @@ -13,6 +13,7 @@ import com.epmet.dto.CustomerStaffAgencyDTO; import com.epmet.dto.IcBuildingDTO; import com.epmet.dto.form.IcBulidingFormDTO; import com.epmet.dto.form.ListIcNeighborHoodFormDTO; +import com.epmet.dto.result.BuildingResultDTO; import com.epmet.dto.result.IcNeighborHoodResultDTO; import com.epmet.entity.*; import com.epmet.enums.BuildingTypeEnums; @@ -283,6 +284,10 @@ public class BuildingServiceImpl implements BuildingService { ExcelPoiUtils.exportExcel(templatePath ,map,"楼宇信息录入表",response); return ; } + @Override + public List buildingListByIds(List buildingIdList) { + return icBuildingDao.buildingListByIds(buildingIdList); + } private List searchAllBuilding(ListIcNeighborHoodFormDTO formDTO) { // QueryWrapper neighborHoodEntityQueryWrapper = new QueryWrapper<>(); diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml index e937bff689..3c4022ea6f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml @@ -310,4 +310,24 @@ + + \ No newline at end of file From c7a1d433ab18be17a055260be4922655cb769494 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 9 Nov 2021 09:00:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E5=90=8D=E5=92=8C?= =?UTF-8?q?=E9=97=A8=E7=89=8C=E5=8F=B7=E5=94=AF=E4=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../commons/tools/exception/EpmetErrorCode.java | 2 ++ .../src/main/java/com/epmet/dao/IcHouseDao.java | 5 +++++ .../main/java/com/epmet/dao/IcNeighborHoodDao.java | 7 ++++--- .../com/epmet/service/impl/HouseServiceImpl.java | 13 ++++++++++++- .../epmet/service/impl/NeighborHoodServiceImpl.java | 11 +++++++++++ .../src/main/resources/mapper/IcHouseDao.xml | 13 +++++++++++++ .../src/main/resources/mapper/IcNeighborHoodDao.xml | 12 +++++++++++- 7 files changed, 58 insertions(+), 5 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index 32c906e323..b57a5c8584 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -80,6 +80,8 @@ public enum EpmetErrorCode { CUSTOMER_FORM_NOT_EXITS(8213,"客户未配置表单"), RESI_NOT_FOUND(8214,"居民信息找不到"), BUILDING_NAME_EXITED(8215,"楼栋名称已存在"), + DOOR_NAME_EXITED(8216,"门牌号已存在"), + NEIGHBOOR_NAME_EXITED(8217,"小区名称已存在"), REQUIRE_PERMISSION(8301, "您没有足够的操作权限"), THIRD_PLAT_REQUEST_ERROR(8302, "请求第三方平台错误"), diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java index 07ca76c21c..1553cccc9d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java @@ -61,4 +61,9 @@ public interface IcHouseDao extends BaseDao { */ List selectHouseInfoByIdCard(@Param("idCard") String idCard); + Integer checkDoorNameUq(@Param("neighborHoodId") String neighborHoodId, + @Param("buildingId")String buildingId, + @Param("buildingUnitId")String buildingUnitId, + @Param("doorName")String doorName, + @Param("houseId")String houseId); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java index 4da3423f9d..19e30210ae 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java @@ -17,9 +17,7 @@ package com.epmet.dao; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Constants; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.entity.IcHouseEntity; import com.epmet.entity.IcNeighborHoodEntity; @@ -29,7 +27,6 @@ import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; -import java.util.Set; /** * 小区表 @@ -49,4 +46,8 @@ public interface IcNeighborHoodDao extends BaseDao { List selectListByName(@Param("neighborNameList")List neighborNameList, @Param("agencyNameList") List agencyNameList, @Param("gridNameList") List gridNameList); + + Integer checkNameUq(@Param("customerId") String customerId, + @Param("neighborHoodName")String neighborHoodName, + @Param("neighborId")String neighborId); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index b481f048e0..25ccc57ca9 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -3,7 +3,8 @@ package com.epmet.service.impl; import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.epmet.commons.tools.enums.HouseTypeEnum; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.dao.IcBuildingDao; import com.epmet.dao.IcBuildingUnitDao; @@ -63,6 +64,11 @@ public class HouseServiceImpl implements HouseService { @Override @Transactional(rollbackFor = Exception.class) public void addHouse(String customerId, IcHouseFormDTO formDTO) { + //同一楼栋,单元内,房屋名称唯一 + Integer count = icHouseDao.checkDoorNameUq(formDTO.getNeighborHoodId(), formDTO.getBuildingId(), formDTO.getBuildingUnitId(), formDTO.getDoorName(),null); + if (null != count && count > 0) { + throw new RenException(EpmetErrorCode.DOOR_NAME_EXITED.getCode(), EpmetErrorCode.DOOR_NAME_EXITED.getMsg()); + } IcHouseDTO icHouseDTO= ConvertUtils.sourceToTarget(formDTO, IcHouseDTO.class); icHouseDTO.setCustomerId(customerId); // icHouseDTO.setRentFlag(formDTO.getRentFlag()); @@ -89,6 +95,11 @@ public class HouseServiceImpl implements HouseService { @Override @Transactional(rollbackFor = Exception.class) public void updateHouse(String customerId, IcHouseFormDTO formDTO) { + //同一楼栋,单元内,房屋名称唯一 + Integer count = icHouseDao.checkDoorNameUq(formDTO.getNeighborHoodId(), formDTO.getBuildingId(), formDTO.getBuildingUnitId(),formDTO.getDoorName(), formDTO.getHouseId()); + if (null != count && count > 0) { + throw new RenException(EpmetErrorCode.DOOR_NAME_EXITED.getCode(), EpmetErrorCode.DOOR_NAME_EXITED.getMsg()); + } IcHouseDTO icHouseDTO = ConvertUtils.sourceToTarget(formDTO, IcHouseDTO.class); icHouseDTO.setId(formDTO.getHouseId()); icHouseDTO.setCustomerId(customerId); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java index 00d96f74f6..d6615145dd 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java @@ -69,6 +69,11 @@ public class NeighborHoodServiceImpl implements NeighborHoodService { @Override @Transactional(rollbackFor = Exception.class) public void AddNeighborhood(String customerId, IcNeighborHoodFormDTO formDTO) { + //同一客户下,小区名称唯一 + Integer count = icNeighborHoodDao.checkNameUq(customerId,formDTO.getNeighborHoodName(),null); + if (null != count && count > 0) { + throw new RenException(EpmetErrorCode.DOOR_NAME_EXITED.getCode(), EpmetErrorCode.DOOR_NAME_EXITED.getMsg()); + } IcNeighborHoodDTO icNeighborHoodDTO = ConvertUtils.sourceToTarget(formDTO, IcNeighborHoodDTO.class); icNeighborHoodDTO.setCustomerId(customerId); Result customerAgencyResult = govOrgOpenFeignClient.getAgencyById(icNeighborHoodDTO.getAgencyId()); @@ -153,6 +158,12 @@ public class NeighborHoodServiceImpl implements NeighborHoodService { @Override @Transactional(rollbackFor = Exception.class) public void UpdateNeighborhood(String customerId, IcNeighborHoodFormDTO formDTO) { + //同一客户下,小区名称唯一 + Integer count = icNeighborHoodDao.checkNameUq(customerId,formDTO.getNeighborHoodName(),formDTO.getNeighborHoodId()); + if (null != count && count > 0) { + throw new RenException(EpmetErrorCode.DOOR_NAME_EXITED.getCode(), EpmetErrorCode.DOOR_NAME_EXITED.getMsg()); + } + IcNeighborHoodDTO icNeighborHoodDTO = ConvertUtils.sourceToTarget(formDTO, IcNeighborHoodDTO.class); icNeighborHoodDTO.setId(formDTO.getNeighborHoodId()); icNeighborHoodDTO.setCustomerId(customerId); diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index e150566f8a..08cf9c92a5 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -264,4 +264,17 @@ WHERE ih.DEL_FLAG = '0' AND ih.OWNER_ID_CARD = #{idCard} + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml index 342b567ba7..6b8df1f796 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml @@ -200,5 +200,15 @@ - + \ No newline at end of file