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 d8cf9a8265..cc7d144f48 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 @@ -22,6 +22,11 @@ public class CustomerStaffInfoCacheResult implements Serializable { */ private String agencyId; + /** + * 工作人员所属组织ID的pids + */ + private String agencyPIds; + /** * 工作人员所属组织名称 */ 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 0196f02f44..320f275136 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 @@ -212,6 +212,15 @@ public class RedisKeys { return rootPrefix.concat("gov:agency:").concat(agencyId); } + /** + * 网格信息key + * @param gridId + * @return + */ + public static String getGridByIdKey(String gridId) { + return rootPrefix.concat("gov:grid:").concat(gridId); + } + /** * 客户标签排行 缓存Key * @param customerId diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java index 577bdf3910..98adecdc97 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java @@ -22,6 +22,11 @@ public class CustomerStaffInfoCache implements Serializable { */ private String agencyId; + /** + * 工作人员所属组织ID的pids + */ + private String agencyPIds; + /** * 工作人员所属组织名称 */ diff --git a/epmet-gateway/pom.xml b/epmet-gateway/pom.xml index 1e9334b0b0..ee2c68962d 100644 --- a/epmet-gateway/pom.xml +++ b/epmet-gateway/pom.xml @@ -233,6 +233,9 @@ lb://epmet-openapi-adv-server + + lb://tduck-api + https://oapi.dingtalk.com/robot/send?access_token=e894e5690f9d6a527722974c71548ff6c0fe29bd956589a09e21b16442a35ed4 SECfcc020bdc83bb17a2c00f39977b1fbc409ef4188c7beaea11c5caa90eeaf87fd @@ -364,6 +367,9 @@ lb://epmet-openapi-adv-server + + lb://tduck-api + https://oapi.dingtalk.com/robot/send?access_token=e894e5690f9d6a527722974c71548ff6c0fe29bd956589a09e21b16442a35ed4 SECfcc020bdc83bb17a2c00f39977b1fbc409ef4188c7beaea11c5caa90eeaf87fd @@ -461,6 +467,8 @@ lb://epmet-ext-server lb://data-aggregator-server + + lb://tduck-api lb://epmet-openapi-adv-server @@ -561,6 +569,8 @@ lb://epmet-openapi-adv-server + + lb://tduck-api https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1 diff --git a/epmet-gateway/src/main/java/com/epmet/filter/CpAuthGatewayFilterFactory.java b/epmet-gateway/src/main/java/com/epmet/filter/CpAuthGatewayFilterFactory.java index 538467d2e1..ee9125db57 100644 --- a/epmet-gateway/src/main/java/com/epmet/filter/CpAuthGatewayFilterFactory.java +++ b/epmet-gateway/src/main/java/com/epmet/filter/CpAuthGatewayFilterFactory.java @@ -105,10 +105,10 @@ public class CpAuthGatewayFilterFactory extends AbstractGatewayFilterFactory().error(e.getCode(), e.getMessage())); } catch (Exception e) { - logger.error("CpAuthGatewayFilterFactory认证出错,错误信息:{}", ExceptionUtils.getErrorStackTrace(e)); + logger.error("CpAuthGatewayFilterFactory认证出错Exception,错误信息:{}", ExceptionUtils.getErrorStackTrace(e)); return response(exchange, new Result<>().error(e.getMessage())); } diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index 4f65034c7d..ca78ab64aa 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -336,12 +336,20 @@ spring: # 宣传服务 - id: epmet-openapi-adv-server uri: @gateway.routes.epmet-openapi-adv-server.url@ - order: 35 + order: 36 predicates: - Path=${server.servlet.context-path}/adv/** filters: - StripPrefix=1 - CpAuth=true + - id: tduck-api + uri: @gateway.routes.tduck-api.url@ + order: 37 + predicates: + - Path=${server.servlet.context-path}/tduck-api/** + filters: + - StripPrefix=1 + - CpAuth=true nacos: discovery: server-addr: @nacos.server-addr@ @@ -472,6 +480,7 @@ epmet: - /epmetuser/customerstaff/customerlist - /gov/project/project/platformcallback - /oper/customize/customerstartpage/homestartpage + - /tduck-api/** # 外部应用认证,使用AccessToken等头进行认证 externalOpenUrls: 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-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java index b12ea53fec..a03406f0d0 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java @@ -21,6 +21,11 @@ public class CustomerStaffResultDTO implements Serializable { */ private String agencyId; + /** + * 工作人员所属组织ID的pids + */ + private String agencyPIds; + /** * 工作人员所属组织名称 */ 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 c1c8c9ec4f..2d187fdd59 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/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index 649ab17806..a131ca29dd 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -600,6 +600,7 @@ public class EpmetUserServiceImpl implements EpmetUserService { } result.setAgencyId(agencyDTO.getId()); result.setAgencyName(agencyDTO.getOrganizationName()); + result.setAgencyPIds(agencyDTO.getPids()); StaffOrgRelationResultDTO fromOrgTypeDto = govOrgService.getStaffFromOrgType(staffId); String fromOrgType = OrgTypeEnum.AGENCY.getCode(); if (fromOrgTypeDto != null){ 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,'%') + + ) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java index 7e7de0e4b2..39d15fb9a5 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java @@ -427,4 +427,16 @@ public interface GovOrgOpenFeignClient { */ @PostMapping("/gov/org/customeragency/getAgencyInfo") Result getAgencyInfo(@RequestBody OrgFormDTO formDTO); + + + /** + * desc: 获取网格基础数据 + * + * @param customerGridFormDTO + * @return com.epmet.commons.tools.utils.Result + * @author LiuJanJun + * @date 2021/4/19 11:19 上午 + */ + @PostMapping("/gov/org/grid/getbaseinfo") + Result getGridBaseInfoByGridId(CustomerGridFormDTO customerGridFormDTO); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java index 38f5df4626..306ea49022 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java @@ -261,6 +261,11 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getAgencyInfo", formDTO); } + @Override + public Result getGridBaseInfoByGridId(CustomerGridFormDTO customerGridFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridBaseInfoByGridId", customerGridFormDTO); + } + @Override public Result selectPidsByGridId(String gridId) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "selectPidsByGridId", gridId); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java index daf3c835cc..ce24000220 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java @@ -179,6 +179,7 @@ public class GridController { */ @PostMapping("getbaseinfo") public Result getBaseInfo(@RequestBody CustomerGridFormDTO customerGridFormDTO) { - return customerGridService.getBaseInfo(customerGridFormDTO); + CustomerGridDTO gridInfo = customerGridService.getBaseInfo(customerGridFormDTO); + return new Result().ok(gridInfo); } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java index 78221d8fa8..91525436ba 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java @@ -286,7 +286,7 @@ public interface CustomerGridService extends BaseService { * @author LiuJanJun * @date 2021/4/19 11:53 上午 */ - Result getBaseInfo(CustomerGridFormDTO customerGridFormDTO); + CustomerGridDTO getBaseInfo(CustomerGridFormDTO customerGridFormDTO); /** * @Description 根据网格ID查询pids 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 dae768cbf9..4c9b98b288 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 @@ -17,6 +17,7 @@ package com.epmet.service.impl; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; @@ -26,6 +27,8 @@ import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; +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.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; @@ -77,6 +80,9 @@ public class CustomerGridServiceImpl extends BaseServiceImpl page(Map params) { IPage page = baseDao.selectPage( @@ -712,13 +718,23 @@ public class CustomerGridServiceImpl extends BaseServiceImpl getBaseInfo(CustomerGridFormDTO customerGridFormDTO) { - CustomerGridDTO restltDTO = ConvertUtils.sourceToTarget(baseDao.selectById(customerGridFormDTO.getGridId()), CustomerGridDTO.class); - if (null != restltDTO) { - CustomerAgencyEntity entity = customerAgencyService.selectById(restltDTO.getPid()); - restltDTO.setAgencyName(null != entity ? entity.getOrganizationName() : ""); + public CustomerGridDTO getBaseInfo(CustomerGridFormDTO customerGridFormDTO) { + String redisKey = RedisKeys.getGridByIdKey(customerGridFormDTO.getGridId()); + Map gridCache = redisUtils.hGetAll(redisKey); + if (gridCache != null && gridCache.size() > 0) { + // 直接取缓存中的 + CustomerGridDTO gridInfo = BeanUtil.mapToBean(gridCache, CustomerGridDTO.class, true); + return gridInfo; } - return new Result().ok(restltDTO); + + CustomerGridDTO gridInfo = ConvertUtils.sourceToTarget(baseDao.selectById(customerGridFormDTO.getGridId()), CustomerGridDTO.class); + if (null != gridInfo) { + CustomerAgencyEntity entity = customerAgencyService.selectById(gridInfo.getPid()); + gridInfo.setAgencyName(null != entity ? entity.getOrganizationName() : ""); + } + + redisUtils.hMSet(redisKey, BeanUtil.beanToMap(gridInfo)); + return gridInfo; } /** diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java index 7d4a258ccb..a2e6405300 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java @@ -47,7 +47,7 @@ public interface GovOrgFeignClient { * @author LiuJanJun * @date 2021/4/19 11:19 上午 */ - @PostMapping("/gov/org/grid/getbaseinfo") - Result getGridBaseInfoByGridId(CustomerGridFormDTO customerGridFormDTO); + //@PostMapping("/gov/org/grid/getbaseinfo") + //Result getGridBaseInfoByGridId(CustomerGridFormDTO customerGridFormDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java index 2fbcf49452..2366577ef6 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/GovOrgFeignClientFallBack.java @@ -29,8 +29,8 @@ public class GovOrgFeignClientFallBack implements GovOrgFeignClient { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridStaffs", gridIdFormDTO); } - @Override - public Result getGridBaseInfoByGridId(CustomerGridFormDTO customerGridFormDTO) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridBaseInfoByGridId", customerGridFormDTO); - } + //@Override + //public Result getGridBaseInfoByGridId(CustomerGridFormDTO customerGridFormDTO) { + // return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridBaseInfoByGridId", customerGridFormDTO); + //} } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java index 2d1a9df160..0e0a8ef246 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java @@ -40,6 +40,7 @@ import com.epmet.dto.result.UserRoleResultDTO; import com.epmet.entity.RegisterRelationEntity; import com.epmet.entity.UserCustomerEntity; import com.epmet.feign.GovOrgFeignClient; +import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.GridVisitedService; import com.epmet.service.RegisterRelationService; import com.epmet.util.ModuleConstant; @@ -72,6 +73,9 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl gridDTOResult = govOrgFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); + Result gridDTOResult = govOrgOpenFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); if(gridDTOResult.success() && null != gridDTOResult.getData()){ resultObj.setCurrentGridName(gridDTOResult.getData().getGridName()); resultObj.setOrgId(resultObj.getCurrentGridId()); diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java index 7d6aa5e196..12255c1153 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffPatrolRecordServiceImpl.java @@ -24,6 +24,7 @@ import com.epmet.entity.StaffPatrolDetailEntity; import com.epmet.entity.StaffPatrolRecordEntity; import com.epmet.entity.StatsStaffPatrolRecordDailyEntity; import com.epmet.feign.GovOrgFeignClient; +import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.feign.GovProjectOpenFeignClient; import com.epmet.service.StaffPatrolDetailService; import com.epmet.service.StaffPatrolRecordService; @@ -56,6 +57,9 @@ public class StaffPatrolRecordServiceImpl extends BaseServiceImpl gridResult = govOrgFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); + Result gridResult = govOrgOpenFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); if (!gridResult.success() || null == gridResult.getData()) { //查询网格名称失败 log.error(String.format("查找网格信息失败,网格Id:【%s】", entity.getGrid())); @@ -141,7 +145,7 @@ public class StaffPatrolRecordServiceImpl extends BaseServiceImpl gridResult = govOrgFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); + Result gridResult = govOrgOpenFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); if (!gridResult.success() || null == gridResult.getData()) { //查询网格名称失败 log.error(String.format("查找网格信息失败,网格Id:【%s】", formDTO.getGridId()));