From 6dd3f8979380367d822ed9e239764405cfe2fff6 Mon Sep 17 00:00:00 2001 From: lzh Date: Tue, 9 Nov 2021 16:20:07 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E4=B8=8B=E8=BD=BD?= =?UTF-8?q?=E7=9A=84=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/excel/building_template.xlsx | Bin 12353 -> 12352 bytes .../main/resources/excel/house_template.xlsx | Bin 11451 -> 11401 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/excel/building_template.xlsx b/epmet-module/gov-org/gov-org-server/src/main/resources/excel/building_template.xlsx index 7950169c04a51b0d75d1b1c4d06aabb044c941b6..cffd4abd6996b7481af66336670bc5dd44629a6a 100644 GIT binary patch delta 2886 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 delta 2903 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 delta 2906 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 klH;$4O!t2c@u&q+B?v1&ibw1w_z-nROpw%4 Date: Tue, 9 Nov 2021 16:27:17 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E7=89=A9=E4=B8=9A=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E5=86=85=E5=94=AF=E4=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/IcPropertyManagementFormDTO.java | 18 ++++++++++-------- .../PropertyManagementController.java | 6 ++---- .../com/epmet/dao/IcPropertyManagementDao.java | 3 ++- .../impl/PropertyManagementServiceImpl.java | 7 +++++++ .../mapper/IcPropertyManagementDao.xml | 10 +++++++++- 5 files changed, 30 insertions(+), 14 deletions(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java index cd05a2a13d..63ea329d22 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java @@ -17,9 +17,7 @@ package com.epmet.dto.form; -import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; -import com.epmet.commons.tools.validator.group.UpdateGroup; import lombok.Data; import org.hibernate.validator.constraints.Length; @@ -35,17 +33,21 @@ public class IcPropertyManagementFormDTO implements Serializable { public interface DeleteGroup extends CustomerClientShowGroup { } - @NotBlank(message = "物业id不能为空", groups = { UpdateGroup.class,DeleteGroup.class}) - private String id; + public interface AddShowGroup extends CustomerClientShowGroup { + } + + public interface UpdateShowGroup extends CustomerClientShowGroup { + } + @NotBlank(message = "物业id不能为空", groups = {DeleteGroup.class, UpdateShowGroup.class}) + private String id; /** * 物业名称 */ - @NotBlank(message = "物业名称不能为空", groups = {AddGroup.class, UpdateGroup.class}) - @Length(max=50,message = "物业名称不能超过50个字", groups = {AddGroup.class, UpdateGroup.class}) - private String name; - + @NotBlank(message = "物业名称不能为空", groups = {AddShowGroup.class, UpdateShowGroup.class}) + @Length(max = 50, message = "物业名称不能超过50个字", groups = {AddShowGroup.class}) + private String name; } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/PropertyManagementController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/PropertyManagementController.java index d97e1300e1..6a38dd3e39 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/PropertyManagementController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/PropertyManagementController.java @@ -21,8 +21,6 @@ import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.commons.tools.validator.group.AddGroup; -import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.form.IcPropertyManagementFormDTO; import com.epmet.dto.result.IcPropertyManagementResultDTO; import com.epmet.service.IcPropertyManagementService; @@ -64,7 +62,7 @@ public class PropertyManagementController { @PostMapping("add") public Result add(@LoginUser TokenDto tokenDTO, @RequestBody IcPropertyManagementFormDTO formDTO){ //效验数据 - ValidatorUtils.validateEntity(formDTO, AddGroup.class); + ValidatorUtils.validateEntity(formDTO, IcPropertyManagementFormDTO.AddShowGroup.class); Map map=new HashMap<>(); map.put("propertyId",propertyManagementService.add(formDTO)); return new Result().ok(map); @@ -75,7 +73,7 @@ public class PropertyManagementController { @PostMapping("update") public Result update(@LoginUser TokenDto tokenDTO, @RequestBody IcPropertyManagementFormDTO formDTO){ //效验数据 - ValidatorUtils.validateEntity(formDTO, UpdateGroup.class); + ValidatorUtils.validateEntity(formDTO, IcPropertyManagementFormDTO.UpdateShowGroup.class); propertyManagementService.update(formDTO); return new Result(); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPropertyManagementDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPropertyManagementDao.java index 545bb0c601..b79a5cc3e6 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPropertyManagementDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPropertyManagementDao.java @@ -29,5 +29,6 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface IcPropertyManagementDao extends BaseDao { - + + IcPropertyManagementEntity selectByName(String name); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java index 258a48bd65..bfc46dd0b6 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java @@ -44,6 +44,13 @@ public class PropertyManagementServiceImpl implements PropertyManagementService @Override @Transactional(rollbackFor = Exception.class) public String add(IcPropertyManagementFormDTO formDTO) { + //物业名字平台内唯一 + //如果输入的物业名字已经存在,直接返回物业id + formDTO.setName(formDTO.getName().trim()); + IcPropertyManagementEntity entity = icPropertyManagementDao.selectByName(formDTO.getName()); + if (null != entity) { + return entity.getId(); + } IcPropertyManagementEntity icPropertyManagementEntity = ConvertUtils.sourceToTarget(formDTO, IcPropertyManagementEntity.class); icPropertyManagementDao.insert(icPropertyManagementEntity); return icPropertyManagementEntity.getId(); diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml index b1b707f456..725fdf969f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml @@ -14,5 +14,13 @@ - + \ No newline at end of file From c1ede5dc7feb8ddc708a18daa9ce3c6e03fb2864 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 9 Nov 2021 16:29:11 +0800 Subject: [PATCH 3/8] @NoRepeatSubmit --- .../src/main/java/com/epmet/controller/BuildingController.java | 2 ++ .../src/main/java/com/epmet/controller/HouseController.java | 3 +++ .../main/java/com/epmet/controller/NeighborHoodController.java | 3 +++ 3 files changed, 8 insertions(+) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java index f3edc781e1..198c398843 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java @@ -86,6 +86,7 @@ public class BuildingController { } + @NoRepeatSubmit @PostMapping("buildingadd") public Result buildingAdd(@LoginUser TokenDto tokenDTO, @RequestBody IcBulidingFormDTO formDTO){ //效验数据 @@ -97,6 +98,7 @@ public class BuildingController { return new Result().ok("保存成功"); } + @NoRepeatSubmit @PostMapping("buildingupdate") public Result buildingUpdate(@LoginUser TokenDto tokenDTO, @RequestBody IcBulidingFormDTO formDTO){ //效验数据 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 12295301a1..167c7adce3 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 @@ -20,6 +20,7 @@ package com.epmet.controller; import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; @@ -71,6 +72,7 @@ public class HouseController { } + @NoRepeatSubmit @PostMapping("houseadd") public Result houseAdd(@LoginUser TokenDto tokenDTO, @RequestBody IcHouseFormDTO formDTO){ //效验数据 @@ -82,6 +84,7 @@ public class HouseController { return new Result(); } + @NoRepeatSubmit @PostMapping("houseupdate") public Result houseUpdate(@LoginUser TokenDto tokenDTO, @RequestBody IcHouseFormDTO formDTO){ //效验数据 diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/NeighborHoodController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/NeighborHoodController.java index 6bbab45e12..8442207f1a 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/NeighborHoodController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/NeighborHoodController.java @@ -21,6 +21,7 @@ import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; @@ -84,6 +85,7 @@ public class NeighborHoodController { } + @NoRepeatSubmit @PostMapping("neighborhoodadd") public Result neighborhoodadd(@LoginUser TokenDto tokenDTO, @RequestBody IcNeighborHoodFormDTO formDTO){ //效验数据 @@ -95,6 +97,7 @@ public class NeighborHoodController { return new Result(); } + @NoRepeatSubmit @PostMapping("neighborhoodupdate") public Result neighborhoodupdate(@LoginUser TokenDto tokenDTO, @RequestBody IcNeighborHoodFormDTO formDTO){ //效验数据 From 1a8dbdc52f19bd4409a78f84d3a8a0ed6b844b5b Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 9 Nov 2021 16:49:49 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E6=B7=BB=E5=8A=A0xlsx=E6=A8=A1=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/controller/BuildingController.java | 6 +++--- .../epmet/controller/IcResiUserController.java | 5 +++-- .../main/resources/excel/ic_resi_info_cid.xlsx | Bin 0 -> 38996 bytes .../excel/ic_resi_info_cid_for_easy_excel.xlsx | Bin 0 -> 39499 bytes 4 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 epmet-user/epmet-user-server/src/main/resources/excel/ic_resi_info_cid.xlsx create mode 100644 epmet-user/epmet-user-server/src/main/resources/excel/ic_resi_info_cid_for_easy_excel.xlsx diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java index 198c398843..5f7533dfaa 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java @@ -22,10 +22,10 @@ import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dao.IcBuildingUnitDao; import com.epmet.dto.BuildingTreeLevelDTO; import com.epmet.dto.form.IcBulidingFormDTO; @@ -63,7 +63,7 @@ import java.util.Map; @RestController @RequestMapping("building") public class BuildingController { - + @Autowired private NeighborHoodService neighborHoodService; @@ -224,4 +224,4 @@ public class BuildingController { } -} \ No newline at end of file +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index 044e03f476..d70a7e1ef5 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -223,7 +223,7 @@ public class IcResiUserController { Map> resiMainList = icResiUserService.getDataForExport(otherSheetItems.get(BASE_TABLE_NAME),new HashMap<>(), pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), BASE_TABLE_NAME, pageFormDTO.getConditions()); //resiMainList = (List>)JSON.parse("[{\"IS_BDHJ\":\"1\",\"IS_SPECIAL\":\"1\",\"IS_XFRY\":\"0\",\"REMARKS\":\"beizhu\",\"IS_PARTY\":\"1\",\"icResiUserId\":\"yzmtest2\",\"HOME_ID\":\"中海国际社区一里城1号楼1单元101\",\"HOUSE_TYPE\":\"平房\",\"UNIT_NAME\":\"1单元\",\"GRID_ID\":\"市北区-市北区第三网格3\",\"IS_DB\":\"0\",\"GENDER\":\"男\",\"BIRTHDAY\":\"2021-10-04\",\"IS_VETERANS\":\"0\",\"IS_MB\":\"0\",\"IS_UNEMPLOYED\":\"0\",\"DEMAND_NAME\":null,\"IS_KC\":\"0\",\"IS_ENSURE_HOUSE\":\"0\",\"IS_SD\":\"0\",\"NAME\":\"尹作梅\",\"RDSJ\":null,\"IS_VOLUNTEER\":\"1\",\"GRID_ID_VALUE\":\"e74829ffc43d5470eba6b5e060c11e63\",\"IS_SZ\":\"0\",\"IS_CJ\":\"0\",\"HOME_ID_VALUE\":\"200\",\"DEMAND_CATEGORY_IDS\":null,\"VILLAGE_NAME\":\"中海国际社区一里城\",\"IS_DBH\":\"0\",\"IS_SN\":\"0\",\"BUILD_NAME\":\"1号楼\",\"IS_YLFN\":\"0\",\"IS_UNITED_FRONT\":\"0\",\"ID_CARD\":\"371325199310260529\",\"MOBILE\":\"15764229697\",\"IS_OLD_PEOPLE\":\"0\",\"DOOR_NAME\":\"101\"},{\"IS_SPECIAL\":\"1\",\"IS_XFRY\":\"0\",\"REMARKS\":\"beizhu\",\"IS_PARTY\":\"1\",\"icResiUserId\":\"yzmtest\",\"HOME_ID\":\"中海国际社区一里城1号楼1单元101\",\"HOUSE_TYPE\":\"平房\",\"UNIT_NAME\":\"1单元\",\"GRID_ID\":\"市北区-市北区第三网格3\",\"IS_DB\":\"0\",\"GENDER\":\"男\",\"BIRTHDAY\":\"2021-10-04\",\"IS_VETERANS\":\"0\",\"IS_MB\":\"0\",\"IS_UNEMPLOYED\":\"0\",\"DEMAND_NAME\":\"心理咨询\",\"IS_KC\":\"0\",\"IS_ENSURE_HOUSE\":\"0\",\"IS_SD\":\"0\",\"NAME\":\"尹作梅\",\"RDSJ\":\"2021-10-28 00:00:00\",\"IS_VOLUNTEER\":\"1\",\"GRID_ID_VALUE\":\"e74829ffc43d5470eba6b5e060c11e63\",\"IS_SZ\":\"0\",\"IS_CJ\":\"0\",\"HOME_ID_VALUE\":\"200\",\"DEMAND_CATEGORY_IDS\":\"10180002\",\"VILLAGE_NAME\":\"中海国际社区一里城\",\"IS_DBH\":\"0\",\"IS_SN\":\"0\",\"BUILD_NAME\":\"1号楼\",\"IS_YLFN\":\"0\",\"IS_UNITED_FRONT\":\"0\",\"ID_CARD\":\"371325199310260529\",\"MOBILE\":\"15764229697\",\"IS_OLD_PEOPLE\":\"0\",\"DOOR_NAME\":\"101\"}]"); log.info("resiMainList:{}", JSON.toJSONString(resiMainList)); - String templatePath = "excel/ic_resi_info_cid.xls"; + String templatePath = "excel/ic_resi_info_cid.xlsx"; TemplateExportParams params = new TemplateExportParams(templatePath, true); Map> sheetMap = new HashMap<>(); @@ -251,8 +251,9 @@ public class IcResiUserController { Workbook workbook = ExcelExportUtil.exportExcel(sheetMap, params); workbook.setActiveSheet(0); - String fileName = "居民基本信息.xls"; + String fileName = "居民基本信息.xlsx"; response.setHeader("content-Type", "application/vnd.ms-excel"); + response.setCharacterEncoding("UTF-8"); response.addHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(fileName, "UTF-8")); workbook.write(response.getOutputStream()); } diff --git a/epmet-user/epmet-user-server/src/main/resources/excel/ic_resi_info_cid.xlsx b/epmet-user/epmet-user-server/src/main/resources/excel/ic_resi_info_cid.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..436e337990332d882b6fa3b59ec5ad28a0394e10 GIT binary patch literal 38996 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 literal 0 HcmV?d00001 From 7c99b0c363a5ea3f6016d243155d044d9c3d9f01 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 9 Nov 2021 16:55:19 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E5=AF=BC=E5=87=BA=E6=88=BF=E5=B1=8Bexcel,?= =?UTF-8?q?=E5=8D=95=E5=85=83=E5=8F=B7=E8=B5=8B=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/service/impl/HouseServiceImpl.java | 8 +++----- .../src/main/resources/mapper/IcHouseDao.xml | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) 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 b1930df4b4..d7fa97e9ed 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 @@ -17,9 +17,7 @@ import com.epmet.dto.form.IcHouseFormDTO; import com.epmet.dto.form.ListIcNeighborHoodFormDTO; import com.epmet.dto.result.HouseInfoDTO; import com.epmet.dto.result.IcNeighborHoodResultDTO; -import com.epmet.entity.IcBuildingEntity; import com.epmet.entity.IcHouseEntity; -import com.epmet.entity.IcNeighborHoodEntity; import com.epmet.enums.HousePurposeEnums; import com.epmet.enums.HouseRentFlagEnums; import com.epmet.enums.HouseTypeEnums; @@ -202,9 +200,9 @@ public class HouseServiceImpl implements HouseService { } private List searchAllHouse(ListIcNeighborHoodFormDTO formDTO) { - IcNeighborHoodEntity neighbor = ConvertUtils.sourceToTarget(formDTO, IcNeighborHoodEntity.class); - - IcBuildingEntity building = ConvertUtils.sourceToTarget(formDTO, IcBuildingEntity.class); + //IcNeighborHoodEntity neighbor = ConvertUtils.sourceToTarget(formDTO, IcNeighborHoodEntity.class); + // + //IcBuildingEntity building = ConvertUtils.sourceToTarget(formDTO, IcBuildingEntity.class); IcHouseEntity house = ConvertUtils.sourceToTarget(formDTO, IcHouseEntity.class); 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 0857166540..61aa971630 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 @@ -157,7 +157,7 @@ a.OWNER_ID_CARD as ownerIdCard, b.BUILDING_NAME as buildingName, c.NEIGHBOR_HOOD_NAME as neighborHoodName, - d.UNIT_NUM as unitName + d.UNIT_NUM as buildingUnit from ic_house a INNER JOIN ic_building b on a.BUILDING_ID = b.ID and b.DEL_FLAG = '0' INNER JOIN ic_neighbor_hood c on a.NEIGHBOR_HOOD_ID = c.ID and c.DEL_FLAG = '0' From 10ab91dd0c5bb054bf44156a309b098c2748d394 Mon Sep 17 00:00:00 2001 From: wangxianzhang Date: Tue, 9 Nov 2021 16:57:18 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A-?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/impl/IcResiUserImportServiceImpl.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java index 9b5908dace..8e47f10f01 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java @@ -3,6 +3,7 @@ package com.epmet.service.impl; import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.annotation.Excel; import cn.afterturn.easypoi.excel.entity.ExportParams; +import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcelFactory; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -252,7 +253,8 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res private Object importIcResiBaseInfoFromExcel(String excelPathName, int sheetNo, int headRowNumber, String currUserAgencyId, String currUserAgencyPids, String currentUserId, String tableName) { DynamicEasyExcelListener readListener = new DynamicEasyExcelListener(); - EasyExcelFactory.read(new File(excelPathName)).registerReadListener(readListener).headRowNumber(headRowNumber).sheet(sheetNo).doRead(); + //EasyExcelFactory.read(new File(excelPathName)).registerReadListener(readListener).headRowNumber(headRowNumber).sheet(sheetNo).doRead(); + EasyExcel.read(new File(excelPathName)).registerReadListener(readListener).headRowNumber(headRowNumber).sheet(sheetNo).doRead(); List> headList = readListener.getHeadList(); List> dataList = readListener.getDataList(); @@ -592,7 +594,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res } if (interupt) { - throw new RenException(String.join(",", errorColumnNames) + "的值未填写"); + throw new RenException(String.join(",", errorColumnNames) + "的值未填写,或者所填写信息在系统中未找到"); } } @@ -919,7 +921,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res String fileName = "导入失败条目清单.xls"; response.setHeader("content-Type", "application/vnd.ms-excel"); - response.addHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(fileName, "UTF-8")); + response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(fileName, "UTF-8")); LinkedList list = new LinkedList<>(); for (Map.Entry> entry : errorRows.get().entrySet()) { From 93d48e34d27f11f5dd8aa84117ede991a225d365 Mon Sep 17 00:00:00 2001 From: wangxianzhang Date: Tue, 9 Nov 2021 17:12:00 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=20=E6=9A=B4?= =?UTF-8?q?=E9=9C=B2=EF=BC=9AContent-Disposition=20=E5=A4=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/impl/IcResiUserImportServiceImpl.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java index 8e47f10f01..647f38e8b5 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java @@ -207,10 +207,10 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res } } - String errors = JSON.toJSONString(errorRows.get()); + //String errors = JSON.toJSONString(errorRows.get()); //String skipeds = JSON.toJSONString(skipedRows.get()); - log.error(errors); + //log.error(errors); //log.error(skipeds); try { @@ -920,6 +920,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res //public static final ThreadLocal>> errorRows = new ThreadLocal<>(); String fileName = "导入失败条目清单.xls"; + response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); response.setHeader("content-Type", "application/vnd.ms-excel"); response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(fileName, "UTF-8")); @@ -928,7 +929,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res list.addAll(entry.getValue()); } - list.forEach(row -> {System.out.println(row.getTableName());row.setSheetName(IcResiUserTableEnums.getObjectByTableName(row.tableName).getTableComment());}); + //list.forEach(row -> {System.out.println(row.getTableName());row.setSheetName(IcResiUserTableEnums.getObjectByTableName(row.tableName).getTableComment());}); Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("导入失败的条目列表","导入失败"), ErrorRow.class, list); From 47c8e73d7b1ec7bc7b2b1bce3602d9a4859f42a1 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 9 Nov 2021 17:22:51 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E6=88=BF=E5=B1=8B=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=89=80=E5=B1=9E=E7=BB=84=E7=BB=87=EF=BC=8C?= =?UTF-8?q?=E6=89=80=E5=B1=9E=E7=BD=91=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/excel/IcHouseExcel.java | 6 ++++++ .../main/resources/excel/house_template.xlsx | Bin 11401 -> 10458 bytes 2 files changed, 6 insertions(+) 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 c606388a25..ed555f96f5 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 @@ -95,7 +95,13 @@ public class IcHouseExcel extends ExcelVerifyInfo implements Serializable { @Excel(name = "更新时间") private Date updatedTime;*/ + @Excel(name = "所属组织") + @NotBlank(message = "所属组织不能位空") + private String agencyName; + @Excel(name = "所属网格") + @NotBlank(message = "所属网格不能位空") + private String gridName; @Excel(name = "所属小区") @NotBlank(message = "小区名称不能位空") diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/excel/house_template.xlsx b/epmet-module/gov-org/gov-org-server/src/main/resources/excel/house_template.xlsx index 54d298cd18ae9f37051d4187e628de33f2c0fead..027f37bcad185979d8358f47b5fdff58f2264a32 100644 GIT binary patch literal 10458 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 GdjCJ^VfGjR literal 11401 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 UAXEKWBR~SkfvlaH?&q)n0X_O&pa1{>