From 29fb0c83e909d441840a737bc0babca325e6dbc1 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 10 Nov 2021 09:53:02 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=88=BF=E5=B1=8B=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E8=B0=83=E6=95=B4=20=20=E5=AF=BC=E5=85=A5=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/controller/HouseController.java | 3 +- .../java/com/epmet/excel/IcBuildingExcel.java | 18 +++++------ .../java/com/epmet/excel/IcHouseExcel.java | 26 ++++++++-------- .../com/epmet/excel/IcNeighborHoodExcel.java | 12 +++---- .../java/com/epmet/service/HouseService.java | 3 +- .../epmet/service/impl/HouseServiceImpl.java | 31 +++++++++++++++++-- 6 files changed, 59 insertions(+), 34 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 167c7adce3..1807565cee 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -153,8 +153,7 @@ public class HouseController { } List result =importResult.getList(); - houseService.importExcel(customerId,result); - return new Result().ok("导入成功"); + return new Result().ok(houseService.importExcel(customerId,result,tokenDTO.getUserId())); } @PostMapping( "queryListHouseInfo") diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java index fbb0f28254..ed1afb786a 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java @@ -93,35 +93,35 @@ public class IcBuildingExcel extends ExcelVerifyInfo implements Serializable { private Date updatedTime;*/ @Excel(name = "所属组织") - @NotBlank(message = "所属组织不能位空") + @NotBlank(message = "不能为空") private String agencyName; @Excel(name = "所属网格") - @NotBlank(message = "所属网格不能位空") + @NotBlank(message = "不能为空") private String gridName; @Excel(name = "小区名称") - @NotBlank(message = "小区名称不能位空") - @Length(max=50,message = "小区名称不能超过50个字") + @NotBlank(message = "不能为空") + @Length(max=50,message = "不能超过50个字") private String neighborHoodName; @Excel(name = "楼栋名称") - @NotBlank(message = "楼栋名称不能位空") + @NotBlank(message = "不能为空") private String buildingName; @Excel(name = "楼栋类型") - @NotBlank(message = "楼栋类型不能位空") + @NotBlank(message = "不能为空") private String type; @Excel(name = "单元数") - @NotNull(message = "单元数不能位空") + @NotNull(message = "不能为空") private Integer totalUnitNum; @Excel(name = "层数") - @NotNull(message = "层数不能位空") + @NotNull(message = "不能为空") private Integer totalFloorNum; @Excel(name = "户数") - @NotNull(message = "户数不能位空") + @NotNull(message = "不能为空") private Integer totalHouseNum; } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseExcel.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseExcel.java index ed555f96f5..be6ba11d2f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseExcel.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseExcel.java @@ -96,52 +96,52 @@ public class IcHouseExcel extends ExcelVerifyInfo implements Serializable { private Date updatedTime;*/ @Excel(name = "所属组织") - @NotBlank(message = "所属组织不能位空") + @NotBlank(message = "不能为空") private String agencyName; @Excel(name = "所属网格") - @NotBlank(message = "所属网格不能位空") + @NotBlank(message = "不能为空") private String gridName; @Excel(name = "所属小区") - @NotBlank(message = "小区名称不能位空") - @Length(max=50,message = "小区名称不能超过50个字") + @NotBlank(message = "不能为空") + @Length(max=50,message = "不能超过50个字") private String neighborHoodName; @Excel(name = "所属楼栋") - @NotBlank(message = "楼栋名称不能位空") + @NotBlank(message = "不能为空") private String buildingName; @Excel(name = "单元号") - @NotNull(message = "单元号不能位空") + @NotNull(message = "不能为空") private Integer buildingUnit; @Excel(name = "门牌号") - @NotBlank(message = "门牌号不能位空") + @NotBlank(message = "不能为空") private String doorName; @Excel(name = "房屋类型") - @NotBlank(message = "房屋类型不能位空") + @NotBlank(message = "不能为空") private String houseType; @Excel(name = "房屋用途") - @NotBlank(message = "房屋用途不能位空") + @NotBlank(message = "不能为空") private String purpose; @Excel(name = "出租") - @NotBlank(message = "出租不能位空") + @NotBlank(message = "不能为空") private String rentFlag; @Excel(name = "房主姓名") - @NotBlank(message = "房主姓名不能位空") + @NotBlank(message = "不能为空") private String ownerName; @Excel(name = "房主电话") - @NotBlank(message = "房主电话不能位空") + @NotBlank(message = "不能为空") private String ownerPhone; @Excel(name = "房主身份证") - @NotBlank(message = "房主身份证号不能位空") + @NotBlank(message = "不能为空") private String ownerIdCard; } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcNeighborHoodExcel.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcNeighborHoodExcel.java index 71fcec8379..72c57047e0 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcNeighborHoodExcel.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcNeighborHoodExcel.java @@ -98,27 +98,27 @@ public class IcNeighborHoodExcel extends ExcelVerifyInfo implements Serializable @Excel(name = "所属组织") - @NotBlank(message = "所属组织不能位空") + @NotBlank(message = "不能为空") private String agencyName; @Excel(name = "所属网格") - @NotBlank(message = "所属网格不能位空") + @NotBlank(message = "不能为空") private String gridName; @Excel(name = "小区名称") - @NotBlank(message = "小区名称不能位空") - @Length(max=50,message = "小区名称不能超过50个字") + @NotBlank(message = "不能为空") + @Length(max=50,message = "不能超过50个字") private String neighborHoodName; @Excel(name = "关联物业") private String propertyName; @Excel(name = "详细地址") - @NotBlank(message = "详细地址不能位空") + @NotBlank(message = "不能为空") private String address; @Excel(name = "备注") - @Length(max=500,message = "备注不能超过500个字") + @Length(max=500,message = "不能超过500个字") private String remark; } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index 5bd4a78b65..0fd98dc3df 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -17,6 +17,7 @@ package com.epmet.service; +import com.epmet.commons.tools.utils.Result; import com.epmet.dto.form.IcHouseFormDTO; import com.epmet.dto.form.ListIcNeighborHoodFormDTO; import com.epmet.dto.result.HouseInfoDTO; @@ -47,7 +48,7 @@ public interface HouseService { void delHouse(String houseId); - void importExcel(String customerId, List list); + Result importExcel(String customerId, List list, String staffId); IcNeighborHoodResultDTO listNeighborhood(ListIcNeighborHoodFormDTO formDTO); 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 d7fa97e9ed..2a0ce1465d 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,9 +3,12 @@ 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.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.Result; import com.epmet.dao.IcBuildingDao; import com.epmet.dao.IcBuildingUnitDao; import com.epmet.dao.IcHouseDao; @@ -21,6 +24,7 @@ import com.epmet.entity.IcHouseEntity; import com.epmet.enums.HousePurposeEnums; import com.epmet.enums.HouseRentFlagEnums; import com.epmet.enums.HouseTypeEnums; +import com.epmet.excel.IcBuildingExcel; import com.epmet.excel.IcHouseExcel; import com.epmet.service.HouseService; import com.epmet.service.IcBuildingService; @@ -119,10 +123,23 @@ public class HouseServiceImpl implements HouseService { } @Override - public void importExcel(String customerId, List list) { + public Result importExcel(String customerId, List list, String staffId) { + //2021.11.10 需求变更 当前工作人员只能导致自己所属组织下数据,对应不上的数据舍弃【注:需求就这样】 sun + CustomerStaffInfoCacheResult staffInfoCache = CustomerStaffRedis.getStaffInfo(customerId, staffId); + //组织名称不一样的数据舍弃 + Iterator iterator = list.iterator(); + while (iterator.hasNext()) { + IcHouseExcel obj = iterator.next(); + if (!obj.getAgencyName().trim().equals(staffInfoCache.getAgencyName())) { + iterator.remove(); + } + } + //用于存储匹配不上的数据给前端的提示 如南宁社区不存在 + StringBuffer str = new StringBuffer(""); + //end sun //导入 if(CollectionUtils.isEmpty(list)){ - return ; + return new Result(); } //获取所有小区 list // List neighborNameList = list.stream().map(item -> item.getNeighborHoodName()).collect(Collectors.toList()); @@ -155,7 +172,10 @@ public class HouseServiceImpl implements HouseService { entity.setBuildingId(String.valueOf(Optional.ofNullable(item).map(u->u.get("buildingId")).orElse(""))); entity.setBuildingUnitId(String.valueOf(Optional.ofNullable(item).map(u->u.get("buildingUnitId")).orElse(""))); entity.setHouseName(icHouseExcel.getBuildingName()+"-"+icHouseExcel.getBuildingUnit()+"-"+icHouseExcel.getDoorName()); - + if ("".equals(entity.getNeighborHoodId()) || "".equals(entity.getBuildingId()) || "".equals(entity.getBuildingUnitId())) { + str.append("".equals(str) ? icHouseExcel.getBuildingName() + icHouseExcel.getBuildingUnit() : str.append("、").append(icHouseExcel.getBuildingName() + icHouseExcel.getBuildingUnit())); + continue; + } entity.setDoorName(icHouseExcel.getDoorName()); entity.setHouseType(HouseTypeEnums.getKeyByValue(icHouseExcel.getHouseType())); entity.setPurpose(HousePurposeEnums.getKeyByValue(icHouseExcel.getPurpose())); @@ -173,6 +193,11 @@ public class HouseServiceImpl implements HouseService { //3.保存 icHouseService.insertBatch(houseEntityList); + if(!"".equals(str)){ + return new Result().error(9999, str.append("不存在").toString()); + } + return new Result(); + } @Override From 511bd9d8f07bd8f9b97a46646a0d67d8fb552409 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 10 Nov 2021 10:08:26 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=8F=90=E7=A4=BA=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/service/impl/NeighborHoodServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 fd19173837..4e36375890 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 @@ -279,7 +279,7 @@ public class NeighborHoodServiceImpl implements NeighborHoodService { //同一客户下,小区名称唯一 Integer count = icNeighborHoodDao.checkNameUq(customerId,icNeighborHoodExcel.getNeighborHoodName(),null); if (null != count && count > 0) { - throw new RenException(EpmetErrorCode.NEIGHBOOR_NAME_EXITED.getCode(), EpmetErrorCode.NEIGHBOOR_NAME_EXITED.getMsg()); + throw new RenException(EpmetErrorCode.NEIGHBOOR_NAME_EXITED.getCode(), icNeighborHoodExcel.getNeighborHoodName()+EpmetErrorCode.NEIGHBOOR_NAME_EXITED.getMsg()); } IcNeighborHoodEntity entity = new IcNeighborHoodEntity();