From 5c0a41e624ae3aaadd32aa21c5c3d77901580820 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Thu, 23 Sep 2021 17:03:09 +0800 Subject: [PATCH 01/16] =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataaggre/constant/TDuckConstant.java | 17 +++++ .../dto/epmettduck/form/TDuckListFormDTO.java | 7 ++- .../controller/EpmetTDuckController.java | 1 + .../dao/epmettduck/PrUserProjectDao.java | 2 +- .../impl/PrUserProjectServiceImpl.java | 62 ++++++++++++++++++- .../mapper/epmettduck/PrUserProjectDao.xml | 6 +- 6 files changed, 90 insertions(+), 5 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/TDuckConstant.java diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/TDuckConstant.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/TDuckConstant.java new file mode 100644 index 0000000000..87ef2de7cb --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/TDuckConstant.java @@ -0,0 +1,17 @@ +package com.epmet.dataaggre.constant; + +/** + * @Author zxc + * @DateTime 2021/9/23 4:06 下午 + * @DESC + */ +public interface TDuckConstant { + + String CLIENT_GOV = "gov"; + String CLIENT_RESI = "resi"; + + String ORG_TYPE_AGENCY = "agency"; + String ORG_TYPE_GRID = "grid"; + String ORG_TYPE_DEPT = "dept"; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckListFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckListFormDTO.java index b8165ee2ce..83fc43fd6f 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckListFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckListFormDTO.java @@ -30,11 +30,14 @@ public class TDuckListFormDTO implements Serializable { @NotNull(message = "pageSize不能为空",groups = TDuckListForm.class) private Integer pageSize; - @NotBlank(message = "orgIds不能为空",groups = TDuckListForm.class) - private String orgIds; + private String orgId; + + private String orgType; @NotBlank(message = "client不能为空",groups = TDuckListForm.class) private String client; private String userId; + + private String customerId; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java index 38956e9129..5a34f9d7a8 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java @@ -81,6 +81,7 @@ public class EpmetTDuckController { public Result> queryProjectList(@RequestBody TDuckListFormDTO formDTO,@LoginUser TokenDto tokenDto){ ValidatorUtils.validateEntity(formDTO,TDuckListFormDTO.TDuckListForm.class); formDTO.setUserId(tokenDto.getUserId()); + formDTO.setCustomerId(tokenDto.getCustomerId()); return new Result>().ok(prUserProjectService.queryProjectList(formDTO)); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectDao.java index ed30a5246c..68f185ad89 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectDao.java @@ -55,7 +55,7 @@ public interface PrUserProjectDao extends BaseDao { * @author zxc * @date 2021/9/17 2:16 下午 */ - List selectProjectKey(@Param("orgIds")String orgIds); + List selectProjectKey(@Param("orgIds")List orgIds); /** * @Description 根据keys查询project diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 1030c10c32..d9f1627508 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -27,10 +27,16 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; +import com.epmet.commons.tools.dto.form.IdAndNameDTO; +import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; +import com.epmet.commons.tools.exception.RenException; 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.ConvertUtils; +import com.epmet.commons.tools.utils.Result; import com.epmet.dataaggre.constant.DataSourceConstant; +import com.epmet.dataaggre.constant.TDuckConstant; import com.epmet.dataaggre.dao.epmettduck.PrUserProjectDao; import com.epmet.dataaggre.dao.epmettduck.PrVistRecordDao; import com.epmet.dataaggre.dto.epmettduck.PrPublishRangeDTO; @@ -49,6 +55,9 @@ import com.epmet.dataaggre.service.epmettduck.PrPublishRangeService; import com.epmet.dataaggre.service.epmettduck.PrUserProjectService; import com.epmet.dataaggre.service.epmettduck.PrVistRecordService; import com.epmet.dataaggre.service.govorg.GovOrgService; +import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.form.CustomerGridFormDTO; +import com.epmet.feign.GovOrgOpenFeignClient; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import lombok.extern.slf4j.Slf4j; @@ -83,6 +92,8 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl page(Map params) { @@ -157,7 +168,39 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl queryProjectList(TDuckListFormDTO formDTO) { - List projectKeys = baseDao.selectProjectKey(formDTO.getOrgIds()); + List orgIds = new ArrayList<>(); + if (formDTO.getClient().equals(TDuckConstant.CLIENT_GOV)){ + CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); + String pids = staffInfo.getAgencyPIds(); + String agencyId = staffInfo.getAgencyId(); + if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_DEPT)){ + List deptList = staffInfo.getDeptList(); + if (CollectionUtils.isEmpty(deptList)){ + return new ArrayList<>(); + } + orgIds = joint(pids,agencyId,deptList); + }else if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_GRID)){ + List gridList = staffInfo.getGridList(); + if (CollectionUtils.isEmpty(gridList)){ + return new ArrayList<>(); + } + orgIds = joint(pids,agencyId,gridList); + }else { + String selfOrg = pids + ":" + agencyId; + orgIds.add(selfOrg); + } + }else { + CustomerGridFormDTO customerGridFormDTO = new CustomerGridFormDTO(); + customerGridFormDTO.setGridId(formDTO.getOrgId()); + Result gridResult = govOrgOpenFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); + if (!gridResult.success()){ + throw new RenException("查询网格信息失败了..."); + } + CustomerGridDTO data = gridResult.getData(); + String oneOrg = data.getPids() + ":" + data.getId(); + orgIds.add(oneOrg); + } + List projectKeys = baseDao.selectProjectKey(orgIds); if (CollectionUtils.isEmpty(projectKeys)){ return new ArrayList<>(); } @@ -177,6 +220,23 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl joint(String pids, String agencyId, List list){ + List orgIds = new ArrayList<>(); + list.forEach(l -> { + String oneOrg = pids + ":" + agencyId + ":" + l.getId(); + orgIds.add(oneOrg); + }); + return orgIds; + } + /** * 分析报告 * diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectDao.xml index 228419ebea..b9e54b758b 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectDao.xml @@ -73,7 +73,11 @@ DISTINCT project_key FROM pr_publish_range WHERE del_flag = 0 - AND #{orgIds} LIKE CONCAT(org_ids,'%') + AND ( + + #{orgId} LIKE CONCAT(org_ids,'%') + + ) From c18d4f4c7e6ca47b5fbaf40bd247661f3388b65b Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Thu, 23 Sep 2021 17:10:16 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E7=BA=A7=E8=81=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dataaggre/dto/epmettduck/result/CascaderDTO.java | 1 + .../service/epmettduck/impl/PrUserProjectServiceImpl.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/CascaderDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/CascaderDTO.java index 44e8edac6f..3b5888a543 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/CascaderDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/CascaderDTO.java @@ -35,5 +35,6 @@ public class CascaderDTO implements Serializable { * 全路径名字 */ private List labels; + public String pathName; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 1030c10c32..c1c8c9ec4f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -385,7 +385,8 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl resMap = new HashMap<>(); for (PrUserProjectResultEntity res : resultList) { - JSONObject originalData = JSON.parseObject(res.getOriginalData()); + //级联组件,用processdata特殊处理下 + JSONObject originalData = JSON.parseObject(res.getProcessData()); if(originalData.containsKey(key)){ List dtoList = JSON.parseArray(originalData.get(key).toString(), CascaderDTO.class); if(CollectionUtils.isEmpty(dtoList)){ From 1f442f897be90bdf1344313224bdaf5b1b79fadc Mon Sep 17 00:00:00 2001 From: jianjun Date: Thu, 23 Sep 2021 17:29:24 +0800 Subject: [PATCH 03/16] =?UTF-8?q?=E5=88=A0=E9=99=A4=E7=BD=91=E6=A0=BC?= =?UTF-8?q?=E6=97=B6=20=E5=88=A0=E9=99=A4=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/service/impl/CustomerGridServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java index 4c9b98b288..fbb937f2ba 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java @@ -297,6 +297,7 @@ public class CustomerGridServiceImpl extends BaseServiceImpl userIdDTOS = baseDao.selectUserIdByGrid(deleteGridFormDTO.getGridId()); deleteGridFormDTO.setUserId(tokenDto.getUserId()); if (userIdDTOS.size()==0){ From 8a208b7f12d1ce9c0813d8a726350444bb487f70 Mon Sep 17 00:00:00 2001 From: jianjun Date: Thu, 23 Sep 2021 17:42:59 +0800 Subject: [PATCH 04/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=93=AA=E9=87=8C?= =?UTF-8?q?=E6=9D=A5=E7=9A=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/dto/result/CustomerStaffInfoCacheResult.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java index cc7d144f48..c5db9c6718 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java @@ -62,6 +62,11 @@ public class CustomerStaffInfoCacheResult implements Serializable { */ private String headPhoto; + /** + * 工作人员是从哪中组织添加的 组织Id + */ + private String fromOrgId; + /** * 工作人员是从哪中组织类型添加的 3个值:agency,grid,dept * @see com.epmet.commons.tools.enums.OrgTypeEnum From 3256e5b0e65a438e48aea99bc7e57d875fe28eaf Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Thu, 23 Sep 2021 17:44:05 +0800 Subject: [PATCH 05/16] orgName --- .../epmettduck/result/TDuckListResultDTO.java | 8 +++++++ .../impl/PrUserProjectServiceImpl.java | 24 +++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java index 267df6a5f2..0874011bce 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java @@ -79,6 +79,13 @@ public class TDuckListResultDTO implements Serializable { */ private Integer recycled; + /** + * 组织名 + */ + private String orgName; + + private String createdBy; + public TDuckListResultDTO() { this.customerId = ""; this.key = ""; @@ -92,5 +99,6 @@ public class TDuckListResultDTO implements Serializable { this.client = ""; this.createdTime = ""; this.fillStatus = false; + this.orgName = ""; } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 2d187fdd59..19815e12b1 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -217,6 +217,30 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl { + CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), r.getCreatedBy()); + String orgName = ""; + if (null != staffInfo){ + if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_AGENCY)){ + orgName = staffInfo.getAgencyName(); + }else if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_GRID)){ + for (IdAndNameDTO g : staffInfo.getGridList()) { + if (g.getId().equals(staffInfo.getFromOrgId())){ + orgName = g.getName(); + continue; + } + } + }else if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_DEPT)){ + for (IdAndNameDTO d : staffInfo.getDeptList()) { + if (d.getId().equals(staffInfo.getFromOrgId())){ + orgName = d.getName(); + continue; + } + } + } + } + r.setOrgName(orgName); + }); return result; } From 34ff292b02a65b48acede0def3063271ac2c7e7b Mon Sep 17 00:00:00 2001 From: wxz Date: Thu, 23 Sep 2021 22:47:49 +0800 Subject: [PATCH 06/16] =?UTF-8?q?wxz=E6=9C=AC=E5=9C=B0=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/commons/tools/redis/RedisKeys.java | 13 ++ .../epmettduck/form/TDuckDetailFormDTO.java | 10 +- .../result/PermissionValidateResultDTO.java | 9 ++ .../controller/EpmetTDuckController.java | 47 ++++++- .../service/QuestionnaireService.java | 9 ++ .../epmettduck/PrUserProjectService.java | 10 ++ .../impl/PrUserProjectServiceImpl.java | 7 + .../impl/QuestionnaireServiceImpl.java | 128 ++++++++++++++++++ 8 files changed, 228 insertions(+), 5 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/PermissionValidateResultDTO.java create mode 100644 epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/QuestionnaireService.java create mode 100644 epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java index 320f275136..a6a83e64e7 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java @@ -543,4 +543,17 @@ public class RedisKeys { public static String getGridInfoKey(String gridId) { return rootPrefix.concat("gov:grid:").concat(gridId); } + + /** + * @description 调查问卷accessKey + * + * @param userId + * @param qKey + * @return + * @author wxz + * @date 2021.09.23 17:38:37 + */ + public static String getQuestionnaireAccessKey(String userId, String qKey) { + return rootPrefix.concat("questionnaire:accesskey:").concat(userId).concat(":").concat(qKey); + } } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java index 8796d3291b..bd5ac26e8e 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java @@ -17,15 +17,23 @@ public class TDuckDetailFormDTO implements Serializable { private static final long serialVersionUID = 3793280475377993346L; public interface TDuckDetailForm{} + public interface PermissionValidate{} /** * 项目key */ - @NotBlank(message = "项目key不能为空",groups = TDuckDetailForm.class) + @NotBlank(message = "项目key不能为空",groups = { TDuckDetailForm.class, PermissionValidate.class }) private String key; /** * 是否显示类型 */ @NotNull(message = "是否显示类型不能为空",groups = TDuckDetailForm.class) private Boolean displayType; + + /** 当前操作人所在的组织的类型(grid:网格,agency:单位) */ + @NotBlank(message = "当前操作人所在的Org类型不能为空",groups = { PermissionValidate.class }) + private String orgType; + + /** 当前操作人所在的组织的ID(当orgType为grid的时候必填,为agency的时候留空) */ + private String orgId; } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/PermissionValidateResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/PermissionValidateResultDTO.java new file mode 100644 index 0000000000..45897428d9 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/PermissionValidateResultDTO.java @@ -0,0 +1,9 @@ +package com.epmet.dataaggre.dto.epmettduck.result; + +import lombok.Data; + +@Data +public class PermissionValidateResultDTO { + private Boolean permitted; + private String accessKey; +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java index 38956e9129..f5b8d05117 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java @@ -1,6 +1,10 @@ package com.epmet.dataaggre.controller; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.constant.AppClientConstant; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.exception.ValidateException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; @@ -9,14 +13,15 @@ import com.epmet.dataaggre.dto.epmettduck.form.*; import com.epmet.dataaggre.dto.epmettduck.result.*; import com.epmet.dataaggre.entity.epmettduck.PrUserProjectEntity; import com.epmet.dataaggre.entity.epmettduck.PrUserProjectItemEntity; +import com.epmet.dataaggre.service.QuestionnaireService; import com.epmet.dataaggre.service.epmettduck.PrUserProjectItemService; import com.epmet.dataaggre.service.epmettduck.PrUserProjectService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import sun.tools.jstat.Token; +import javax.validation.constraints.NotBlank; import java.util.List; /** @@ -31,6 +36,8 @@ public class EpmetTDuckController { private PrUserProjectService prUserProjectService; @Autowired private PrUserProjectItemService projectItemService; + @Autowired + private QuestionnaireService questionnaireService; /** @@ -142,4 +149,36 @@ public class EpmetTDuckController { public Result redPoint(@LoginUser TokenDto tokenDto) { return new Result().ok(prUserProjectService.redPoint(tokenDto)); } + + /** + * @description 校验权限,并且获取accesskey + * + * @param input + * @return + * @author wxz + * @date 2021.09.23 15:13:53 + */ + @PostMapping("/permission-validate") + public Result permissionValidate(@RequestBody TDuckDetailFormDTO input, @LoginUser TokenDto loginUserInfo, @RequestHeader("customerId") String customerId) { + ValidatorUtils.validateEntity(input, TDuckDetailFormDTO.PermissionValidate.class); + // 所用端的类型:gov:工作端,resi居民端 + String app = loginUserInfo.getApp(); + String orgId = input.getOrgId(); + String projectKey = input.getKey(); + String userId = loginUserInfo.getUserId(); + + PermissionValidateResultDTO r = null; + if (AppClientConstant.APP_RESI.equals(app)) { + if (StringUtils.isBlank(orgId)) { + // 居民端,orgId是网格id,必填 + throw new ValidateException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(), "缺少orgId参数"); + } + r = questionnaireService.resiPermissionValidate(projectKey, userId, orgId); + } else if (AppClientConstant.APP_GOV.equals(app)) { + // 工作端 + r = questionnaireService.govPermissionValidate(projectKey, userId, customerId); + } + + return new Result().ok(r); + } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/QuestionnaireService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/QuestionnaireService.java new file mode 100644 index 0000000000..c23f7f1245 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/QuestionnaireService.java @@ -0,0 +1,9 @@ +package com.epmet.dataaggre.service; + +import com.epmet.dataaggre.dto.epmettduck.result.PermissionValidateResultDTO; + +public interface QuestionnaireService { + PermissionValidateResultDTO resiPermissionValidate(String projectKey, String userId, String gridId); + + PermissionValidateResultDTO govPermissionValidate(String projectKey, String staffId, String customerId); +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrUserProjectService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrUserProjectService.java index 2a35aa5ac1..93e437a043 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrUserProjectService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrUserProjectService.java @@ -174,4 +174,14 @@ public interface PrUserProjectService extends BaseService { * @Date 2021/9/23 10:05 */ RedPointResultDTO redPoint(TokenDto tokenDto); + + /** + * @description 根据key查询问卷 + * + * @param key + * @return + * @author wxz + * @date 2021.09.23 22:25:57 + */ + PrUserProjectEntity getProjectEntityBykey(String key); } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 1030c10c32..e4daf90485 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -706,4 +706,11 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl query = new LambdaQueryWrapper<>(); + query.eq(PrUserProjectEntity::getKey, key); + return baseDao.selectOne(query); + } } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java new file mode 100644 index 0000000000..ad4b5cb6a9 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java @@ -0,0 +1,128 @@ +package com.epmet.dataaggre.service.impl; + +import com.epmet.commons.tools.constant.AppClientConstant; +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.dto.form.IdAndNameDTO; +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.feign.ResultDataResolver; +import com.epmet.commons.tools.redis.RedisKeys; +import com.epmet.commons.tools.redis.RedisUtils; +import com.epmet.commons.tools.redis.common.CustomerStaffRedis; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dataaggre.dto.epmettduck.result.PermissionValidateResultDTO; +import com.epmet.dataaggre.entity.epmettduck.PrUserProjectEntity; +import com.epmet.dataaggre.service.QuestionnaireService; +import com.epmet.dataaggre.service.epmettduck.PrPublishRangeService; +import com.epmet.dataaggre.service.epmettduck.PrUserProjectService; +import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.form.CustomerGridFormDTO; +import com.epmet.feign.GovOrgOpenFeignClient; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.UUID; + +@Service +public class QuestionnaireServiceImpl implements QuestionnaireService, ResultDataResolver { + + @Autowired + private PrUserProjectService prUserProjectService; + + @Autowired + private PrPublishRangeService prPublishRangeService; + + @Autowired + private GovOrgOpenFeignClient govOrgOpenFeignClient; + + @Autowired + private RedisUtils redisUtils; + + @Autowired + private CustomerStaffRedis customerStaffRedis; + + /** + * @description 居民端调查问卷权限校验 + * + * @param projectKey + * @param userId + * @param gridId + * @return + * @author wxz + * @date 2021.09.23 17:45:25 + */ + public PermissionValidateResultDTO resiPermissionValidate(String projectKey, String userId, String gridId) { + + PrUserProjectEntity projectEntity = prUserProjectService.getProjectEntityBykey(projectKey); + if (!AppClientConstant.APP_RESI.equals(projectEntity.getClient())) { + throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), + String.format("【调查问卷详情权限校验】该调查问卷发布端为[%s],当前用户为[%s]", projectEntity.getClient(), AppClientConstant.APP_RESI)); + } + + CustomerGridFormDTO form = new CustomerGridFormDTO(); + form.setGridId(gridId); + Result gridInfoResult = govOrgOpenFeignClient.getGridBaseInfoByGridId(form); + CustomerGridDTO gridInfo = getResultDataOrThrowsException(gridInfoResult, ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【调查问卷】校验访问权限,查询网格信息失败"); + // 网格父级ID列表:网格ID(拼接起来,冒号分割) + String gridIdPath = gridInfo.getPids().concat(":").concat(gridInfo.getId()); + List rangeList = prPublishRangeService.getRangeOrgList(projectKey); + PermissionValidateResultDTO r = new PermissionValidateResultDTO(); + for (String range : rangeList) { + if (gridIdPath.contains(range)) { + r.setPermitted(true); + r.setAccessKey(generateQuestionnaireAccessKey(userId, projectKey)); + return r; + } + } + r.setPermitted(false); + return r; + } + + /** + * @description 生成调查问卷accessKey + * + * @param userId + * @param qKey + * @return + * @author wxz + * @date 2021.09.23 17:43:50 + */ + private String generateQuestionnaireAccessKey(String userId, String qKey) { + String accessKey = UUID.randomUUID().toString(); + redisUtils.set(RedisKeys.getQuestionnaireAccessKey(userId, qKey), accessKey); + return accessKey; + } + + @Override + public PermissionValidateResultDTO govPermissionValidate(String projectKey, String staffId, String customerId) { + CustomerStaffInfoCacheResult staffInfo = customerStaffRedis.getStaffInfo(customerId, staffId); + PermissionValidateResultDTO r = null; + //if ("agency".equals(staffInfo.getFromOrgType())) { + // // 来自agency + // + //} else if ("grid".equals(staffInfo.getFromOrgType())) { + // List belongGridList = staffInfo.getGridList(); + // + //} else if ("dept".equals(staffInfo.getFromOrgType())) { + // + //} + + String agencyId = staffInfo.getAgencyId(); + + List gridList = staffInfo.getGridList(); + for (IdAndNameDTO gridIdAndName : gridList) { + + } + + return r; + } + + //private CustomerGridDTO getGridInfoById(String gridId) { + // CustomerGridFormDTO gridInfoForm = new CustomerGridFormDTO(); + // gridInfoForm.setGridId(gridId); + // Result result = govOrgOpenFeignClient.getGridBaseInfoByGridId(gridInfoForm); + // return getResultDataOrThrowsException(result, ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【调查问卷】获取网格信息失败"); + //} +} From 33321ce46866bac59672f6a01c7265f6e4e1d3f7 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 24 Sep 2021 12:39:20 +0800 Subject: [PATCH 07/16] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=20=E3=80=90?= =?UTF-8?q?=E8=B0=83=E6=9F=A5=E9=97=AE=E5=8D=B7=E3=80=91=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E8=AE=BF=E9=97=AE=E6=9D=83=E9=99=90=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E6=8E=A5=E5=8F=A3=20/data/aggregator/questionnaire/pe?= =?UTF-8?q?rmission-validate?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmettduck/form/TDuckDetailFormDTO.java | 1 - .../controller/EpmetTDuckController.java | 4 +- .../epmettduck/PrPublishRangeService.java | 10 ++ .../impl/PrPublishRangeServiceImpl.java | 7 + .../impl/QuestionnaireServiceImpl.java | 131 +++++++++++++----- 5 files changed, 117 insertions(+), 36 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java index bd5ac26e8e..3a9b934b69 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/form/TDuckDetailFormDTO.java @@ -31,7 +31,6 @@ public class TDuckDetailFormDTO implements Serializable { private Boolean displayType; /** 当前操作人所在的组织的类型(grid:网格,agency:单位) */ - @NotBlank(message = "当前操作人所在的Org类型不能为空",groups = { PermissionValidate.class }) private String orgType; /** 当前操作人所在的组织的ID(当orgType为grid的时候必填,为agency的时候留空) */ diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java index d12a151996..bcffe238d4 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java @@ -170,9 +170,9 @@ public class EpmetTDuckController { PermissionValidateResultDTO r = null; if (AppClientConstant.APP_RESI.equals(app)) { - if (StringUtils.isBlank(orgId)) { + if (StringUtils.isBlank(orgId) || !"grid".equals(input.getOrgType())) { // 居民端,orgId是网格id,必填 - throw new ValidateException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(), "缺少orgId参数"); + throw new ValidateException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(), "【调查问卷】校验访问权限-居民端 orgId不能为空,且orgType需要为[grid]"); } r = questionnaireService.resiPermissionValidate(projectKey, userId, orgId); } else if (AppClientConstant.APP_GOV.equals(app)) { diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrPublishRangeService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrPublishRangeService.java index d238150f46..66a2dbb79e 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrPublishRangeService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/PrPublishRangeService.java @@ -102,6 +102,16 @@ public interface PrPublishRangeService extends BaseService */ List getRangeOrgList(String projectKey); + /** + * @description 使用projectKey查询发布范围entity + * + * @param projectKey + * @return + * @author wxz + * @date 2021.09.23 23:04:23 + */ + List getPublishRangeEntity(String projectKey); + /** * @Description 获取组织范围内的问卷 * @Param orgList diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrPublishRangeServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrPublishRangeServiceImpl.java index d669cc59c8..6865f8764e 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrPublishRangeServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrPublishRangeServiceImpl.java @@ -125,6 +125,13 @@ public class PrPublishRangeServiceImpl extends BaseServiceImpl getPublishRangeEntity(String projectKey) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(PrPublishRangeEntity::getProjectKey, projectKey); + return baseDao.selectList(wrapper); + } + /** * @param orgList * @Description 获取组织范围内的问卷 diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java index ad4b5cb6a9..1c6aab452d 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/QuestionnaireServiceImpl.java @@ -12,6 +12,7 @@ import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.utils.Result; import com.epmet.dataaggre.dto.epmettduck.result.PermissionValidateResultDTO; +import com.epmet.dataaggre.entity.epmettduck.PrPublishRangeEntity; import com.epmet.dataaggre.entity.epmettduck.PrUserProjectEntity; import com.epmet.dataaggre.service.QuestionnaireService; import com.epmet.dataaggre.service.epmettduck.PrPublishRangeService; @@ -19,15 +20,22 @@ import com.epmet.dataaggre.service.epmettduck.PrUserProjectService; import com.epmet.dto.CustomerGridDTO; import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.feign.GovOrgOpenFeignClient; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; import java.util.UUID; @Service +@Slf4j public class QuestionnaireServiceImpl implements QuestionnaireService, ResultDataResolver { + /** 调查问卷有效期 15min */ + public static final long QUESTIONNAIRE_EXPIRE_SECONDS = 15 * 60; + @Autowired private PrUserProjectService prUserProjectService; @@ -55,10 +63,11 @@ public class QuestionnaireServiceImpl implements QuestionnaireService, ResultDat */ public PermissionValidateResultDTO resiPermissionValidate(String projectKey, String userId, String gridId) { - PrUserProjectEntity projectEntity = prUserProjectService.getProjectEntityBykey(projectKey); - if (!AppClientConstant.APP_RESI.equals(projectEntity.getClient())) { - throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), - String.format("【调查问卷详情权限校验】该调查问卷发布端为[%s],当前用户为[%s]", projectEntity.getClient(), AppClientConstant.APP_RESI)); + PrUserProjectEntity project = prUserProjectService.getProjectEntityBykey(projectKey); + if (project == null || !AppClientConstant.APP_RESI.equals(project.getClient())) { + // 工作端只能看到发布到居民端的 + log.warn("【调查问卷】居民端无法查看发布到工作端的调查问卷,staffId:{}, projectKey:{}", userId, projectKey); + return generateValidateResult(userId, projectKey, false); } CustomerGridFormDTO form = new CustomerGridFormDTO(); @@ -67,36 +76,44 @@ public class QuestionnaireServiceImpl implements QuestionnaireService, ResultDat CustomerGridDTO gridInfo = getResultDataOrThrowsException(gridInfoResult, ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【调查问卷】校验访问权限,查询网格信息失败"); // 网格父级ID列表:网格ID(拼接起来,冒号分割) String gridIdPath = gridInfo.getPids().concat(":").concat(gridInfo.getId()); - List rangeList = prPublishRangeService.getRangeOrgList(projectKey); + List publishRangeEntity = prPublishRangeService.getPublishRangeEntity(projectKey); PermissionValidateResultDTO r = new PermissionValidateResultDTO(); - for (String range : rangeList) { - if (gridIdPath.contains(range)) { - r.setPermitted(true); - r.setAccessKey(generateQuestionnaireAccessKey(userId, projectKey)); - return r; + for (PrPublishRangeEntity rangeEntity : publishRangeEntity) { + if (gridIdPath.contains(rangeEntity.getOrgIds())) { + return generateValidateResult(userId, projectKey, true); } } r.setPermitted(false); return r; } - /** - * @description 生成调查问卷accessKey - * - * @param userId - * @param qKey - * @return - * @author wxz - * @date 2021.09.23 17:43:50 - */ - private String generateQuestionnaireAccessKey(String userId, String qKey) { - String accessKey = UUID.randomUUID().toString(); - redisUtils.set(RedisKeys.getQuestionnaireAccessKey(userId, qKey), accessKey); - return accessKey; - } - @Override public PermissionValidateResultDTO govPermissionValidate(String projectKey, String staffId, String customerId) { + PrUserProjectEntity project = prUserProjectService.getProjectEntityBykey(projectKey); + if (project == null || !"gov".equals(project.getClient())) { + // 工作端只能看到发布到工作端的 + log.warn("【调查问卷】工作端无法查看发布到居民端的调查问卷,staffId:{}, projectKey:{}", staffId, projectKey); + return generateValidateResult(staffId, projectKey, false); + } + + List gridRangeOrgIds = new ArrayList<>(); + List agencyRangeOrgIds = new ArrayList<>(); + List deptRangeOrgIds = new ArrayList<>(); + + // 将发布范围分别放到3个不同的列表中 + List publishRangeEntitys = prPublishRangeService.getPublishRangeEntity(projectKey); + publishRangeEntitys.forEach(rangeEntity -> { + if ("grid".equals(rangeEntity.getOrgType())) { + gridRangeOrgIds.add(rangeEntity.getOrgIds()); + } else if ("agency".equals(rangeEntity.getOrgType())) { + agencyRangeOrgIds.add(rangeEntity.getOrgIds()); + } else if ("dept".equals(rangeEntity.getOrgType())) { + deptRangeOrgIds.add(rangeEntity.getOrgIds()); + } else { + throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), String.format("【调查问卷】未知的发布范围类型:%s", rangeEntity.getOrgType())); + } + }); + CustomerStaffInfoCacheResult staffInfo = customerStaffRedis.getStaffInfo(customerId, staffId); PermissionValidateResultDTO r = null; //if ("agency".equals(staffInfo.getFromOrgType())) { @@ -110,19 +127,67 @@ public class QuestionnaireServiceImpl implements QuestionnaireService, ResultDat //} String agencyId = staffInfo.getAgencyId(); + String agencyPIds = staffInfo.getAgencyPIds(); + + // 网格范围内的权限判断 + List staffGridList = staffInfo.getGridList(); + for (IdAndNameDTO gridIdAndName : staffGridList) { + // 工作人员所属的 父orgId路径:网格id + String staffGridIdPath = (StringUtils.isEmpty(agencyPIds) ? "" : agencyPIds.concat(":")).concat(agencyId).concat(":").concat(gridIdAndName.getId()); + for (String gridRangeOrgId : gridRangeOrgIds) { + if (staffGridIdPath.contains(gridRangeOrgId)) { + r = generateValidateResult(staffId, projectKey, true); + return r; + } + } + } - List gridList = staffInfo.getGridList(); - for (IdAndNameDTO gridIdAndName : gridList) { + // dept范围内的权限判断 + List staffDeptList = staffInfo.getDeptList(); + for (IdAndNameDTO deptIdAndName : staffDeptList) { + // 工作人员所属的 父orgId路径:网格id + String staffDeptIdPath = (StringUtils.isEmpty(agencyPIds) ? "" : agencyPIds.concat(":")).concat(agencyId).concat(":").concat(deptIdAndName.getId()); + for (String deptRangeOrgIdPath : deptRangeOrgIds) { + if (staffDeptIdPath.contains(deptRangeOrgIdPath)) { + r = generateValidateResult(staffId, projectKey, true); + return r; + } + } + } + // agency范围内的权限判断 + String staffAgencyIdPath = (StringUtils.isEmpty(agencyPIds) ? "" : agencyPIds.concat(":")).concat(agencyId); + for (String agencyRangeOrgId : agencyRangeOrgIds) { + if (staffAgencyIdPath.contains(agencyRangeOrgId)) { + r = generateValidateResult(staffId, projectKey, true); + return r; + } } + // 如果上述范围中都不能判断通过,那么返回一个不通过的结果给到前端 + r = generateValidateResult(staffId, projectKey, false); return r; } - //private CustomerGridDTO getGridInfoById(String gridId) { - // CustomerGridFormDTO gridInfoForm = new CustomerGridFormDTO(); - // gridInfoForm.setGridId(gridId); - // Result result = govOrgOpenFeignClient.getGridBaseInfoByGridId(gridInfoForm); - // return getResultDataOrThrowsException(result, ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【调查问卷】获取网格信息失败"); - //} + /** + * @description 生成权限允许的返回结果 + * + * @param userId + * @param projectKey + * @param permitted 是否允许访问 + * @return + * @author wxz + * @date 2021.09.23 23:19:17 + */ + private PermissionValidateResultDTO generateValidateResult(String userId, String projectKey, Boolean permitted) { + PermissionValidateResultDTO d = new PermissionValidateResultDTO(); + d.setPermitted(permitted); + if (permitted) { + String accessKey = UUID.randomUUID().toString().replace("-", ""); + redisUtils.set(RedisKeys.getQuestionnaireAccessKey(userId, projectKey), accessKey, QUESTIONNAIRE_EXPIRE_SECONDS); + d.setAccessKey(accessKey); + } + return d; + } + } From 0c5d5bbb39d7e312c83bf01c1fbe772cb091d5ee Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 24 Sep 2021 13:41:38 +0800 Subject: [PATCH 08/16] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=20=E3=80=90?= =?UTF-8?q?=E8=B0=83=E6=9F=A5=E9=97=AE=E5=8D=B7=E3=80=91=E5=8E=BB=E6=8E=89?= =?UTF-8?q?=E6=97=A0=E6=95=88=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dataaggre/controller/EpmetTDuckController.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java index bcffe238d4..101313d56c 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetTDuckController.java @@ -3,7 +3,6 @@ package com.epmet.dataaggre.controller; import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.constant.AppClientConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; -import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.exception.ValidateException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; @@ -19,9 +18,6 @@ import com.epmet.dataaggre.service.epmettduck.PrUserProjectService; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import sun.tools.jstat.Token; - -import javax.validation.constraints.NotBlank; import java.util.List; /** From 8f60af53f3bdc7c6935ec77592277db5d4b0be72 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 24 Sep 2021 15:55:17 +0800 Subject: [PATCH 09/16] =?UTF-8?q?=E5=A4=87=E6=B3=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/epmettduck/impl/PrUserProjectServiceImpl.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 89f03e8545..23579dd5d2 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -169,16 +169,20 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl queryProjectList(TDuckListFormDTO formDTO) { List orgIds = new ArrayList<>(); + // 工作端不需要传orgId if (formDTO.getClient().equals(TDuckConstant.CLIENT_GOV)){ + // 根据 客户ID 和 人ID 从redis获取信息 CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); String pids = staffInfo.getAgencyPIds(); String agencyId = staffInfo.getAgencyId(); + // 来源于 部门 if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_DEPT)){ List deptList = staffInfo.getDeptList(); if (CollectionUtils.isEmpty(deptList)){ return new ArrayList<>(); } orgIds = joint(pids,agencyId,deptList); + // 来源于 网格 }else if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_GRID)){ List gridList = staffInfo.getGridList(); if (CollectionUtils.isEmpty(gridList)){ @@ -192,6 +196,7 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl gridResult = govOrgOpenFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); if (!gridResult.success()){ throw new RenException("查询网格信息失败了..."); @@ -200,12 +205,14 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl projectKeys = baseDao.selectProjectKey(orgIds); if (CollectionUtils.isEmpty(projectKeys)){ return new ArrayList<>(); } PageInfo projectPageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.queryProjectList(projectKeys, formDTO.getStatus(), formDTO.getClient())); List result = projectPageInfo.getList(); + // 查询此人已填写过的问卷 并赋值已填写字段 List records = visitRecordDao.selectVisitRecordByUserId(formDTO.getUserId()); if (!CollectionUtils.isEmpty(records)){ for (String r : records) { @@ -217,6 +224,7 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl { CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), r.getCreatedBy()); String orgName = ""; From 4d46b8d15f6fb4046ff6abd7644054ecacaf8aeb Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 24 Sep 2021 16:51:31 +0800 Subject: [PATCH 10/16] =?UTF-8?q?=E5=A1=AB=E5=86=99=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataaggre/dao/epmettduck/PrUserProjectResultDao.java | 7 ++++++- .../epmet/dataaggre/dao/epmettduck/PrVistRecordDao.java | 2 +- .../service/epmettduck/impl/PrUserProjectServiceImpl.java | 5 +++-- .../resources/mapper/epmettduck/PrUserProjectResultDao.xml | 5 +++++ .../main/resources/mapper/epmettduck/PrVistRecordDao.xml | 6 ------ 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectResultDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectResultDao.java index 15ae5f7c3a..eac14a49b8 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectResultDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrUserProjectResultDao.java @@ -3,6 +3,9 @@ package com.epmet.dataaggre.dao.epmettduck; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dataaggre.entity.epmettduck.PrUserProjectResultEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 项目表单项 @@ -12,5 +15,7 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface PrUserProjectResultDao extends BaseDao { - + + List selectFillRecordByUserId(@Param("userId")String userId); + } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrVistRecordDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrVistRecordDao.java index 279884c678..5714df590e 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrVistRecordDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmettduck/PrVistRecordDao.java @@ -16,6 +16,6 @@ import java.util.List; @Mapper public interface PrVistRecordDao extends BaseDao { - List selectVisitRecordByUserId(@Param("userId")String userId); + } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 23579dd5d2..5d22f94772 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -38,6 +38,7 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.dataaggre.constant.DataSourceConstant; import com.epmet.dataaggre.constant.TDuckConstant; import com.epmet.dataaggre.dao.epmettduck.PrUserProjectDao; +import com.epmet.dataaggre.dao.epmettduck.PrUserProjectResultDao; import com.epmet.dataaggre.dao.epmettduck.PrVistRecordDao; import com.epmet.dataaggre.dto.epmettduck.PrPublishRangeDTO; import com.epmet.dataaggre.dto.epmettduck.PrUserProjectDTO; @@ -85,7 +86,7 @@ import java.util.stream.Stream; public class PrUserProjectServiceImpl extends BaseServiceImpl implements PrUserProjectService { @Autowired - private PrVistRecordDao visitRecordDao; + private PrUserProjectResultDao prUserProjectResultDao; @Resource private PrPublishRangeService prPublishRangeService; @Resource @@ -213,7 +214,7 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl projectPageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.queryProjectList(projectKeys, formDTO.getStatus(), formDTO.getClient())); List result = projectPageInfo.getList(); // 查询此人已填写过的问卷 并赋值已填写字段 - List records = visitRecordDao.selectVisitRecordByUserId(formDTO.getUserId()); + List records = prUserProjectResultDao.selectFillRecordByUserId(formDTO.getUserId()); if (!CollectionUtils.isEmpty(records)){ for (String r : records) { for (TDuckListResultDTO t : result) { diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectResultDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectResultDao.xml index 21518172dc..76fc783368 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectResultDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectResultDao.xml @@ -3,4 +3,9 @@ + \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrVistRecordDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrVistRecordDao.xml index 77f2f5c68a..8ea675b0e9 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrVistRecordDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrVistRecordDao.xml @@ -3,10 +3,4 @@ - - \ No newline at end of file From 98952a8142bb16f2aad6b1277100dc75554a3086 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 24 Sep 2021 17:11:20 +0800 Subject: [PATCH 11/16] fill --- .../dto/epmettduck/result/TDuckListResultDTO.java | 4 ++++ .../epmettduck/impl/PrUserProjectServiceImpl.java | 2 +- .../mapper/epmettduck/PrUserProjectDao.xml | 13 +++++++------ 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java index 0874011bce..b58d156a3d 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java @@ -1,6 +1,7 @@ package com.epmet.dataaggre.dto.epmettduck.result; import com.epmet.commons.tools.constant.NumConstant; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import javax.validation.constraints.NotBlank; @@ -86,6 +87,9 @@ public class TDuckListResultDTO implements Serializable { private String createdBy; + @JsonIgnore + private Integer isEveryoneWriteOnceUid; + public TDuckListResultDTO() { this.customerId = ""; this.key = ""; diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 5d22f94772..6d78893d55 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -218,7 +218,7 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl \ No newline at end of file From 812ed27eadff3f331d394fadadb92925b020e6c8 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 24 Sep 2021 17:27:15 +0800 Subject: [PATCH 12/16] fill --- .../dataaggre/dto/epmettduck/result/TDuckListResultDTO.java | 6 ++++++ .../service/epmettduck/impl/PrUserProjectServiceImpl.java | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java index b58d156a3d..ee412e8ad3 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java @@ -75,6 +75,11 @@ public class TDuckListResultDTO implements Serializable { */ private Boolean fillStatus; + /** + * 是否还能填写问卷,能:true,不能:false + */ + private Boolean isFillQuestion; + /** * 回收状态 0:未回收;1已回收 */ @@ -103,6 +108,7 @@ public class TDuckListResultDTO implements Serializable { this.client = ""; this.createdTime = ""; this.fillStatus = false; + this.isFillQuestion = true; this.orgName = ""; } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java index 6d78893d55..8f8176d5dd 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java @@ -219,8 +219,10 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl Date: Fri, 24 Sep 2021 19:35:58 +0800 Subject: [PATCH 13/16] =?UTF-8?q?wxz=20=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-module/gov-org/gov-org-server/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/gov-org/gov-org-server/pom.xml b/epmet-module/gov-org/gov-org-server/pom.xml index c0b1e136a9..65626c09a4 100644 --- a/epmet-module/gov-org/gov-org-server/pom.xml +++ b/epmet-module/gov-org/gov-org-server/pom.xml @@ -161,7 +161,7 @@ false - true + false false From 89969b7f756d9f1c571d5569e58dbfff4b8702c3 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 24 Sep 2021 19:40:13 +0800 Subject: [PATCH 14/16] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=20=E5=B0=91?= =?UTF-8?q?=E4=BA=86=E5=88=86=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/service/impl/CustomerGridServiceImpl.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/CustomerGridServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java index fbb937f2ba..727d1536da 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java @@ -297,7 +297,7 @@ public class CustomerGridServiceImpl extends BaseServiceImpl userIdDTOS = baseDao.selectUserIdByGrid(deleteGridFormDTO.getGridId()); deleteGridFormDTO.setUserId(tokenDto.getUserId()); if (userIdDTOS.size()==0){ From 57c4bdb324b918bddf634293b71981723346bd60 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 24 Sep 2021 19:43:32 +0800 Subject: [PATCH 15/16] =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-gateway/pom.xml | 2 +- epmet-module/gov-org/gov-org-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-gateway/pom.xml b/epmet-gateway/pom.xml index 8465f6b39f..875ef12cb3 100644 --- a/epmet-gateway/pom.xml +++ b/epmet-gateway/pom.xml @@ -134,7 +134,7 @@ false - true + false diff --git a/epmet-module/gov-org/gov-org-server/pom.xml b/epmet-module/gov-org/gov-org-server/pom.xml index 65626c09a4..c0b1e136a9 100644 --- a/epmet-module/gov-org/gov-org-server/pom.xml +++ b/epmet-module/gov-org/gov-org-server/pom.xml @@ -161,7 +161,7 @@ false - false + true false From a8ff5e172a1051baa9cb263b0c31c063cfbe9039 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 24 Sep 2021 19:49:58 +0800 Subject: [PATCH 16/16] =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-gateway/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-gateway/pom.xml b/epmet-gateway/pom.xml index 875ef12cb3..8465f6b39f 100644 --- a/epmet-gateway/pom.xml +++ b/epmet-gateway/pom.xml @@ -134,7 +134,7 @@ false - false + true