From 1d37a39f18202b5ceb7727a104eeb32f931dc77d Mon Sep 17 00:00:00 2001 From: zhangyuan Date: Tue, 30 Aug 2022 09:37:50 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/dto/result/BuildingResultDTO.java | 4 ++++ .../src/main/resources/mapper/IcBuildingDao.xml | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java index dc2624e160..14e9e05aa0 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java @@ -28,4 +28,8 @@ public class BuildingResultDTO implements Serializable { private String label; + private String allParentName; + + private String agencyName; + } 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 8d8cc4535e..0b71b79176 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 @@ -458,15 +458,19 @@ n.id AS neighborhoodId, n.NEIGHBOR_HOOD_NAME AS neighborhoodName, n.GRID_ID, - g.GRID_NAME + g.GRID_NAME, + a.ALL_PARENT_NAME, + a.ORGANIZATION_NAME AS AGENCY_NAME FROM ic_building b LEFT JOIN ic_neighbor_hood n ON b.NEIGHBOR_HOOD_ID = n.id LEFT JOIN customer_grid g ON n.GRID_ID = g.id + LEFT JOIN customer_agency a ON a.id = g.pid WHERE n.DEL_FLAG = '0' AND b.DEL_FLAG = '0' AND g.DEL_FLAG = '0' + AND a.DEL_FLAG = '0' AND n.CUSTOMER_ID = #{customerId} AND n.GRID_ID = #{gridId} From 7395b9e4d176770fa27a1e48058c9f1cb0d66e46 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 30 Aug 2022 10:32:47 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E6=96=B0=E5=86=A0=E7=97=85=E6=AF=92?= =?UTF-8?q?=E7=96=AB=E8=8B=97=E6=8E=A5=E7=A7=8D=E4=BA=BA=E5=91=98=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E5=8F=B0=E8=B4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/IcVaccinePrarmeterServiceImpl.java | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java index 08e03f063f..6edf94b941 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java @@ -345,26 +345,26 @@ public class IcVaccinePrarmeterServiceImpl extends BaseServiceImpl Date: Tue, 30 Aug 2022 10:38:27 +0800 Subject: [PATCH 3/9] =?UTF-8?q?=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/service/impl/IcNeighborHoodServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java index 3ca505d172..046b58156d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java @@ -191,7 +191,7 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl Date: Tue, 30 Aug 2022 10:44:35 +0800 Subject: [PATCH 4/9] bug --- .../java/com/epmet/service/impl/IcNeighborHoodServiceImpl.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/IcNeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java index 046b58156d..71f15a0fe4 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java @@ -191,7 +191,7 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl Date: Tue, 30 Aug 2022 11:02:57 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E4=B8=8D=E9=9C=80=E8=A6=81=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/IcNeighborHoodServiceImpl.java | 18 +++++++++--------- .../main/resources/mapper/IcBuildingDao.xml | 8 +++++--- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java index 71f15a0fe4..66658f83f2 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java @@ -214,15 +214,15 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl getNeighborhoodList(TokenDto tokenDto, IcNeighborHoodDTO dto) { dto.setCustomerId(tokenDto.getCustomerId()); - if (StringUtils.isBlank(dto.getAgencyId()) && StringUtils.isEmpty(dto.getGridId())) { - log.info("agencyId与gridId都为空时,默认查询当前工作人员所属组织下的小区"); - CustomerStaffInfoCacheResult result= CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId()); - if (null == result || StringUtils.isBlank(result.getAgencyId())) { - log.error(String.format("staffId:%s,工作人员缓存信息查询异常", tokenDto.getUserId())); - return Collections.emptyList(); - } - dto.setAgencyId(result.getAgencyId()); - } +// if (StringUtils.isBlank(dto.getAgencyId()) && StringUtils.isEmpty(dto.getGridId())) { +// log.info("agencyId与gridId都为空时,默认查询当前工作人员所属组织下的小区"); +// CustomerStaffInfoCacheResult result= CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId()); +// if (null == result || StringUtils.isBlank(result.getAgencyId())) { +// log.error(String.format("staffId:%s,工作人员缓存信息查询异常", tokenDto.getUserId())); +// return Collections.emptyList(); +// } +// dto.setAgencyId(result.getAgencyId()); +// } return icBuildingDao.listBuildingInfo(dto); } 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 0b71b79176..a5e3001d28 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 @@ -478,9 +478,11 @@ AND (n.NEIGHBOR_HOOD_NAME LIKE CONCAT('%', #{buildingName}, '%') OR b.BUILDING_NAME LIKE CONCAT('%', #{buildingName}, '%')) - AND ( - n.AGENCY_ID = #{agencyId} - OR n.AGENCY_PIDS LIKE CONCAT('%', #{agencyId}, '%')) + + AND ( + n.AGENCY_ID = #{agencyId} + OR n.AGENCY_PIDS LIKE CONCAT('%', #{agencyId}, '%')) + From 84a936f3c0cf8ed42362c6405e9e9ba4b9e04156 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 30 Aug 2022 14:27:49 +0800 Subject: [PATCH 6/9] =?UTF-8?q?=E6=96=B0=E5=86=A0=E7=97=85=E6=AF=92?= =?UTF-8?q?=E7=96=AB=E8=8B=97=E6=8E=A5=E7=A7=8D=E4=BA=BA=E5=91=98=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E5=8F=B0=E8=B4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/VaccinePrarmeterListFormDTO.java | 9 +++++++++ .../controller/IcVaccinePrarmeterController.java | 16 +++++++++++++--- .../epmet/service/IcVaccinePrarmeterService.java | 2 +- .../impl/IcVaccinePrarmeterServiceImpl.java | 9 ++++++++- .../resources/mapper/IcVaccinePrarmeterDao.xml | 4 ++++ 5 files changed, 35 insertions(+), 5 deletions(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinePrarmeterListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinePrarmeterListFormDTO.java index 4fbc71217b..859a30a01d 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinePrarmeterListFormDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinePrarmeterListFormDTO.java @@ -30,6 +30,15 @@ public class VaccinePrarmeterListFormDTO extends PageFormDTO implements Serializ */ private String idCard; + /** + * 客户ID + */ + private String customerId; + /** + * 部门ID + */ + private String agencyId; + private String isVaccination; private String gridId; private String villageId; diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java index 674686ca73..cddabc98ad 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java @@ -5,8 +5,10 @@ import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.annotation.MaskResponse; import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.dto.form.PageFormDTO; +import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelPoiUtils; import com.epmet.commons.tools.utils.ExcelUtils; @@ -61,9 +63,9 @@ public class IcVaccinePrarmeterController { @RequestMapping("page") // @MaskResponse(fieldNames = {"MOBILE", "ID_CARD"}, fieldsMaskType = {MaskResponse.MASK_TYPE_MOBILE, MaskResponse.MASK_TYPE_ID_CARD}) - public Result> page(@RequestParam Map params){ + public Result> page(@RequestParam Map params, @LoginUser TokenDto tokenDto){ // PageData page = icVaccinePrarmeterService.page(params); - PageData page = icVaccinePrarmeterService.getPhrasePage(params); + PageData page = icVaccinePrarmeterService.getPhrasePage(params,tokenDto); return new Result>().ok(page); } @@ -75,9 +77,10 @@ public class IcVaccinePrarmeterController { @NoRepeatSubmit @PostMapping("save") - public Result save(@RequestBody IcVaccinePrarmeterDTO dto){ + public Result save(@RequestBody IcVaccinePrarmeterDTO dto, @LoginUser TokenDto tokenDto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + dto.setCustomerId(tokenDto.getCustomerId()); icVaccinePrarmeterService.save(dto); return new Result(); } @@ -116,6 +119,13 @@ public class IcVaccinePrarmeterController { @PostMapping("vaccine-export") public void vaccineExport(HttpServletResponse response, @RequestBody VaccinePrarmeterListFormDTO formDTO, @LoginUser TokenDto tokenDto) throws Exception { ValidatorUtils.validateEntity(formDTO, PageFormDTO.AddUserInternalGroup.class); + formDTO.setCustomerId(tokenDto.getCustomerId()); + // 获取工作人员缓存信息 + CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId()); + if (null == staffInfo) { + throw new EpmetException(String.format("查询工作人员%s缓存信息失败...", tokenDto.getUserId())); + } + formDTO.setAgencyId(staffInfo.getAgencyId()); List list = icVaccinePrarmeterDao.vaccineExport(formDTO); ExcelUtils.exportExcelToTarget(response, null, list, IcVaccinePrarmeterExcel.class); diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcVaccinePrarmeterService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcVaccinePrarmeterService.java index 41137212df..edadf0fabf 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcVaccinePrarmeterService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcVaccinePrarmeterService.java @@ -35,7 +35,7 @@ public interface IcVaccinePrarmeterService extends BaseService getPhrasePage(Map params); + PageData getPhrasePage(Map params, TokenDto tokenDto); /** * 默认查询 diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java index 6edf94b941..1f3e85df9e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccinePrarmeterServiceImpl.java @@ -124,7 +124,14 @@ public class IcVaccinePrarmeterServiceImpl extends BaseServiceImpl getPhrasePage(Map params) { + public PageData getPhrasePage(Map params, TokenDto tokenDto) { + params.put("customerId",tokenDto.getCustomerId()); + // 获取工作人员缓存信息 + CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId()); + if (null == staffInfo) { + throw new EpmetException(String.format("查询工作人员%s缓存信息失败...", tokenDto.getUserId())); + } + params.put("agencyId",staffInfo.getAgencyId()); IPage page = getPage(params); List list = baseDao.getPhrasePage(params); return new PageData<>(list, page.getTotal()); diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcVaccinePrarmeterDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcVaccinePrarmeterDao.xml index b06633761b..ebbebfe289 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcVaccinePrarmeterDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcVaccinePrarmeterDao.xml @@ -78,6 +78,8 @@ CHECK_REASON from ic_vaccine_prarmeter where DEL_FLAG = 0 + and CUSTOMER_ID = #{customerId} + AND (AGENCY_ID = #{agencyId} OR PIDS LIKE CONCAT('%',#{agencyId},'%')) and NAME like CONCAT('%' ,#{name}, '%') @@ -150,6 +152,8 @@ CHECK_REASON from ic_vaccine_prarmeter where DEL_FLAG = 0 + and CUSTOMER_ID = #{customerId} + AND (AGENCY_ID = #{agencyId} OR PIDS LIKE CONCAT('%',#{agencyId},'%')) and NAME like CONCAT('%' ,#{name}, '%') From fc34c58b60eef3828f2113122d91d6b86496a1ed Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 30 Aug 2022 14:48:11 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E6=96=B0=E5=86=A0=E7=97=85=E6=AF=92?= =?UTF-8?q?=E7=96=AB=E8=8B=97=E6=8E=A5=E7=A7=8D=E4=BA=BA=E5=91=98=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E5=8F=B0=E8=B4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/controller/IcVaccinePrarmeterController.java | 1 - 1 file changed, 1 deletion(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java index cddabc98ad..217c0600cf 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccinePrarmeterController.java @@ -80,7 +80,6 @@ public class IcVaccinePrarmeterController { public Result save(@RequestBody IcVaccinePrarmeterDTO dto, @LoginUser TokenDto tokenDto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setCustomerId(tokenDto.getCustomerId()); icVaccinePrarmeterService.save(dto); return new Result(); } From e8d3a2aa3db67dd192bdc58dc49825076d617a78 Mon Sep 17 00:00:00 2001 From: zhangyuan Date: Tue, 30 Aug 2022 15:05:57 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E8=BF=BD=E5=8A=A0=E5=AE=A2=E6=88=B7id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/dto/result/BuildingResultDTO.java | 2 ++ .../gov-org-server/src/main/resources/mapper/IcBuildingDao.xml | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java index 14e9e05aa0..63b6235605 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/BuildingResultDTO.java @@ -32,4 +32,6 @@ public class BuildingResultDTO implements Serializable { private String agencyName; + private String customerId; + } 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 a5e3001d28..02f4b8104d 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 @@ -460,7 +460,8 @@ n.GRID_ID, g.GRID_NAME, a.ALL_PARENT_NAME, - a.ORGANIZATION_NAME AS AGENCY_NAME + a.ORGANIZATION_NAME AS AGENCY_NAME, + n.CUSTOMER_ID FROM ic_building b LEFT JOIN ic_neighbor_hood n ON b.NEIGHBOR_HOOD_ID = n.id From e725886b4210e444bc67ac105f970e09f5d18dd0 Mon Sep 17 00:00:00 2001 From: wangxianzhang Date: Tue, 30 Aug 2022 15:12:44 +0800 Subject: [PATCH 9/9] =?UTF-8?q?=E3=80=90=E9=80=9A=E7=94=A8=E3=80=91?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=AF=B9=E4=B8=AD=E6=96=87=E5=90=8D=E5=AD=97?= =?UTF-8?q?=E7=9A=84=E6=89=93=E7=A0=81=E8=A7=84=E5=88=99=EF=BC=9B=E3=80=90?= =?UTF-8?q?=E4=BA=94=E5=A4=A7=E5=9B=BE=E5=B1=82=E3=80=91=E7=BB=BC=E5=90=88?= =?UTF-8?q?=E6=B2=BB=E7=90=86=E5=9B=BE=E5=B1=82=E5=88=97=E8=A1=A8=E5=AF=B9?= =?UTF-8?q?=E4=B8=AD=E6=96=87=E5=90=8D=E5=AD=97=E6=89=93=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/annotation/MaskResponse.java | 1 + .../tools/processor/MaskProcessor.java | 24 +++++++++++++++++++ .../controller/IcResiUserController.java | 3 ++- 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/annotation/MaskResponse.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/annotation/MaskResponse.java index bb889a5913..26a0e2d01a 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/annotation/MaskResponse.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/annotation/MaskResponse.java @@ -15,6 +15,7 @@ public @interface MaskResponse { */ String MASK_TYPE_ID_CARD = "ID_CARD"; String MASK_TYPE_MOBILE = "MOBILE"; + String MASK_TYPE_CHINESE_NAME = "CHINESE_NAME"; ///** // * 默认的一些字段,如果没有手动指定,就会使用默认的。如果手动指定了,就不再使用默认的 diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/processor/MaskProcessor.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/processor/MaskProcessor.java index 11b5c5ce4f..a3169a2ec6 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/processor/MaskProcessor.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/processor/MaskProcessor.java @@ -133,11 +133,35 @@ public class MaskProcessor { return maskIdCard(originString); } else if (MaskResponse.MASK_TYPE_MOBILE.equals(maskType)) { return maskMobile(originString); + } else if (MaskResponse.MASK_TYPE_CHINESE_NAME.equals(maskType)) { + return maskChineseName(originString); } else { return originString; } } + /** + * 对中文人名进行打码 + * @param originString + * @return + */ + private String maskChineseName(String originString) { + if (StringUtils.isBlank(originString)) { + // 空串,或者只有一个字的,不打码,直接返回 + return originString; + } + + int length = originString.length(); + // 2个字以上的,首位字母明文,中间* + // 中文不能用\\w,要用[\u4e00-\u9fa5] + if (length == 2) { + return originString.replaceAll("^([\\u4e00-\\u9fa5]).*$", "$1*"); + } else { + String maskStr = StrUtil.repeat("*", length - 2); + return originString.replaceAll("^([\\u4e00-\\u9fa5]).*([\\u4e00-\\u9fa5])$", "$1" + maskStr + "$2"); + } + } + /** * 唯一整件号打码,可能是身份证号或者是护照号 * 将明文字符串打码变为掩码。保留前6,后面打码 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 3ef123383f..a62980703a 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 @@ -1365,7 +1365,8 @@ public class IcResiUserController implements ResultDataResolver { * @return */ @PostMapping("listresi-zhzl") - @MaskResponse(fieldNames = {"MOBILE", "ID_CARD"}, fieldsMaskType = {MaskResponse.MASK_TYPE_MOBILE, MaskResponse.MASK_TYPE_ID_CARD}) + @MaskResponse(fieldNames = {"MOBILE", "ID_CARD", "NAME"}, + fieldsMaskType = {MaskResponse.MASK_TYPE_MOBILE, MaskResponse.MASK_TYPE_ID_CARD, MaskResponse.MASK_TYPE_CHINESE_NAME}) public Result>> listResiZhzl(@LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO) { pageFormDTO.setCustomerId(tokenDto.getCustomerId()); pageFormDTO.setStaffId(tokenDto.getUserId());