diff --git a/doc/epmet-cloud.md b/doc/epmet-cloud.md index e47ddfc70e..18928176dc 100644 --- a/doc/epmet-cloud.md +++ b/doc/epmet-cloud.md @@ -4,17 +4,33 @@ ``` 开发环境已经搭建好了 在最新的代码中: - 默认情况下,所有服务的pom.xml中应该启用dev环境,其他环境的active应该被注释掉(dev-local不再有用,可以删除) + 默认情况下,所有服务的pom.xml中启用local环境,其他环境的active应该被注释掉 根据dev环境中的配置,微服务会注册到nacos,并且调用其他微服务的时候会从nacos中取目标微服务的ip来发送请求 因此,本地电脑不再需要启动所有服务,只需要启动要开发的服务即可;默认情况下,本机的微服务在调用目标微服务的时候,都是调用的服务器,不再请求本地。 例如:有A、B2个服务,并且A调用B,如果我们只需要开发A服务,那本地只启动A服务即可,A调用B的时候,会调用服务器的B服务。 -如果需要开发AB2个服务,那么将A中的FeignClient的url属性指向localhost。 +如果需要开发AB2个服务,那么将A中的FeignClient的url属性指向localhost:[B的端口]。 PS:目前正在测试通过负载均衡器和本地环境变量实现动态修改目标服务IP,成功之后就不需要再修改FeignClient的url,配置一下环境变量即可,到时候具体说 ``` ## 私有化部署 -##### 需要开放哪些域名 +##### 需要对外访问哪些域名 -- epmet-cloud.elinkservice.cn 微信交互代理 -- dysmsapi.aliyuncs.com 阿里云短信 \ No newline at end of file +- epmet-cloud.elinkservice.cn 微信交互代理,第三方,客户等 +- dysmsapi.aliyuncs.com 阿里云短信 +- api.weixin.qq.com 微信直接交互(二维码等) +- oss-cn-qingdao.aliyuncs.com(如果需要用到oss) + + + +#### 腾讯云呼叫中心需要调用,需要开放 +- https://map.qq.com +- https://pr.map.qq.com +- https://webapi.amap.com +- https://tccc.qcloud.com +- https://aegis.qq.com +- https://api.tccc.qcloud.com +- wss://wss.im.qcloud.com +- https://tpstelemetry.tencent.com +- https://ccc.ap-shanghai.tencentcloudapi.com +- https://ccc.tencentcloudapi.com diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/OrgCommonFormDTO.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/OrgCommonFormDTO.java new file mode 100644 index 0000000000..d4be5e3011 --- /dev/null +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/OrgCommonFormDTO.java @@ -0,0 +1,36 @@ +package com.epmet.commons.tools.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description + * @Author yzm + * @Date 2023/5/15 13:44 + */ +@Data +public class OrgCommonFormDTO implements Serializable { + private static final long serialVersionUID = 2261315322260807610L; + + public interface AddUserInternalGroup { + } + + public interface AddUserShowGroup extends CustomerClientShowGroup { + } + + /** + * 组织id或者网格id + */ + @NotBlank(message = "orgId不能为空", groups = AddUserInternalGroup.class) + private String orgId; + /** + * agency + * grid + */ + @NotBlank(message = "orgType不能为空", groups = AddUserInternalGroup.class) + private String orgType; +} + diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ScanContentUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ScanContentUtils.java index e04227d5dc..36f1d8ba12 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ScanContentUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ScanContentUtils.java @@ -27,12 +27,59 @@ import java.util.stream.Collectors; **/ @Slf4j public class ScanContentUtils { + + // 内容审核是否可用。烟台是政务网,无法使用互联网,所以该功能不可用 + public static final Boolean USABLE = false; + + /** + * 模拟sync成功的结果(可以用来模拟,也可以适用于无法使用互联网的环境) + * @author wxz + * @date 2022/12/13 15:37 + * + * * @return Result + */ + public static Result mockSyncSuccessResult() { + Result tempRst = new Result<>(); + SyncScanResult syncScanResult = new SyncScanResult(); + syncScanResult.setAllPass(true); + tempRst.setData(syncScanResult); + return tempRst; + } + + /** + * 模拟async成功的结果(可以用来模拟,也可以适用于无法使用互联网的环境) + * @author wxz + * @date 2022/12/13 15:46 + * + * * @return Result + */ + public static Result mockAsyncSuccessResult() { + Result tempRst = new Result<>(); + AsyncScanResult asyncScanResult = new AsyncScanResult(); + asyncScanResult.setAllSuccess(true); + tempRst.setData(asyncScanResult); + return tempRst; + } + + public static Result mockVideoAsyncSuccessResult() { + Result tempRst = new Result<>(); + VideoAsyncScanResultDTO asyncScanResult = new VideoAsyncScanResultDTO(); + asyncScanResult.setIsAllPass(true); + tempRst.setData(asyncScanResult); + return tempRst; + } + /** * desc:图片同步扫描 * * @return */ public static Result imgSyncScan(String url, ImgScanParamDTO param) { + + if (!USABLE) { + return mockSyncSuccessResult(); + } + //start 测试环境停机了,先这样改试试 EnvEnum currentEnv = EnvEnum.getCurrentEnv(); if(EnvEnum.LOCAL.getCode().equals(currentEnv.getCode())||EnvEnum.DEV.getCode().equals(currentEnv.getCode())){ @@ -68,6 +115,11 @@ public class ScanContentUtils { * @return */ public static Result textSyncScan(String url, TextScanParamDTO param) { + + if (!USABLE) { + return mockSyncSuccessResult(); + } + //start 测试环境停机了,先这样改试试 EnvEnum currentEnv = EnvEnum.getCurrentEnv(); if(EnvEnum.LOCAL.getCode().equals(currentEnv.getCode())||EnvEnum.DEV.getCode().equals(currentEnv.getCode())){ @@ -104,6 +156,11 @@ public class ScanContentUtils { * @return 返回检测对象对应的任务id */ public static Result voiceAsyncScan(String url, VoiceScanParamDTO param){ + + if (!USABLE) { + return mockAsyncSuccessResult(); + } + log.debug("voiceAsyncScan param:{}", JSON.toJSONString(param)); if (StringUtils.isBlank(url) || param == null) { throw new RenException("参数错误"); @@ -164,6 +221,11 @@ public class ScanContentUtils { * @description 异步检测-提交检测任务 **/ public static Result videoAsyncScan(String url, VideoScanParamDTO param){ + + if (!USABLE) { + return mockAsyncSuccessResult(); + } + log.debug("videoAsyncScan param:{}", JSON.toJSONString(param)); if (StringUtils.isBlank(url) || param == null) { throw new RenException("参数错误"); @@ -194,6 +256,11 @@ public class ScanContentUtils { * @description 查询视频检测结果 **/ public static Result videoResults(String url, List taskIds) { + + if (!USABLE) { + return mockVideoAsyncSuccessResult(); + } + if (StringUtils.isBlank(url) || CollectionUtils.isEmpty(taskIds)) { throw new RenException("参数错误"); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/DangerousChemicalsDistributionFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/DangerousChemicalsDistributionFormDTO.java new file mode 100644 index 0000000000..c106a76f18 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/DangerousChemicalsDistributionFormDTO.java @@ -0,0 +1,15 @@ +package com.epmet.dto.form.lingshan; + +import com.epmet.commons.tools.dto.form.OrgCommonFormDTO; +import lombok.Data; + +/** + * @Description 灵山大屏-安全生产-生产企业类型统计,点击饼图,中间地图显示列表 + * @Author yzm + * @Date 2023/5/15 14:59 + */ +@Data +public class DangerousChemicalsDistributionFormDTO extends OrgCommonFormDTO { + private String typeCode; +} + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatDetailDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatDetailDTO.java new file mode 100644 index 0000000000..10dcef96be --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatDetailDTO.java @@ -0,0 +1,56 @@ +package com.epmet.dto.result.lingshan; + +/** + * @Description 灵山大屏-安全生产-生产企业类型统计 点击饼图,列表及详情返参DTO + * @Author yzm + * @Date 2023/5/15 15:00 + */ + +import lombok.Data; + +@Data +public class DangerousChemicalsTypeStatDetailDTO { + /** + * 企业id + */ + private String id; + /** + * 企业名称 + */ + private String name; + /** + * 企业介绍 + */ + private String content; + private String longitude; + private String latitude; + private String addr; + /** + * 联系人 + */ + private String annt; + /** + * 联系电话 + */ + private String phone; + // @JsonIgnore + private String category; + + /** + * 类别名称 + */ + private String type; + /** + * 是否重点企业 + */ + private Boolean zd; + /** + * 包企领导 + */ + private String leader; + /** + * 包企干部 + */ + private String cadre; +} + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatResultDTO.java new file mode 100644 index 0000000000..3c814adf9b --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/DangerousChemicalsTypeStatResultDTO.java @@ -0,0 +1,17 @@ +package com.epmet.dto.result.lingshan; + +import lombok.Data; + +/** + * @Description 灵山大屏-安全生产-生产企业类型统计 + * @Author yzm + * @Date 2023/5/15 13:48 + */ +@Data +public class DangerousChemicalsTypeStatResultDTO { + private String name; + private Integer value; + private String typeCode; + +} + diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcDangerousChemicalsController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcDangerousChemicalsController.java index 5561fdcbaf..3ec91f1896 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcDangerousChemicalsController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcDangerousChemicalsController.java @@ -10,6 +10,7 @@ import com.alibaba.fastjson.JSON; import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.dto.form.OrgCommonFormDTO; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.ExceptionUtils; @@ -23,8 +24,11 @@ import com.epmet.dto.IcDangerousChemicalsDTO; import com.epmet.dto.form.IcDangerousChemicalsAddEditFormDTO; import com.epmet.dto.form.IcDangerousChemicalsListFormDTO; import com.epmet.dto.form.ImportTaskCommonFormDTO; +import com.epmet.dto.form.lingshan.DangerousChemicalsDistributionFormDTO; import com.epmet.dto.result.IcDangerousChemicalsListResultDTO; import com.epmet.dto.result.ImportTaskCommonResultDTO; +import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO; +import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatResultDTO; import com.epmet.excel.IcDangerousChemicalsExcel; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.service.IcDangerousChemicalsService; @@ -288,5 +292,32 @@ public class IcDangerousChemicalsController { return new Result(); } + /** + * 灵山大屏-安全生产-生产企业类型统计 + * + * @param formDto + * @return + */ + @PostMapping("type-stat") + public Result> typeStat(@LoginUser TokenDto tokenDto, @RequestBody OrgCommonFormDTO formDto) { + return new Result>().ok(icDangerousChemicalsService.typeStat(tokenDto.getCustomerId(), + tokenDto.getUserId(), + formDto.getOrgId(), + formDto.getOrgType())); + } + /** + * 灵山大屏-安全生产-生产企业类型统计,点击饼图,查询列表及详情 + * @param tokenDto + * @param formDTO + * @return + */ + @PostMapping("distribution") + public Result> distribution(@LoginUser TokenDto tokenDto, @RequestBody DangerousChemicalsDistributionFormDTO formDTO) { + return new Result>().ok(icDangerousChemicalsService.distribution(tokenDto.getCustomerId(), + tokenDto.getUserId(), + formDTO.getOrgId(), + formDTO.getOrgType(), + formDTO.getTypeCode())); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcDangerousChemicalsDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcDangerousChemicalsDao.java index 1cc152c5f5..194eba8f2f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcDangerousChemicalsDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcDangerousChemicalsDao.java @@ -3,6 +3,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.form.IcDangerousChemicalsListFormDTO; import com.epmet.dto.result.IcDangerousChemicalsListResultDTO; +import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO; import com.epmet.entity.IcDangerousChemicalsEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -24,4 +25,14 @@ public interface IcDangerousChemicalsDao extends BaseDao entityList); + /** + * 灵山大屏-安全生产-生产企业类型统计,点击饼图,查询列表及详情 + * @param customerId + * @param orgIdPath + * @param typeCode + * @return + */ + List selectDistributionList(@Param("customerId") String customerId, + @Param("orgIdPath") String orgIdPath, + @Param("typeCode") String typeCode); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java index 52e7a2a435..baf1cdb4a6 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcBuildingExcel.java @@ -134,6 +134,6 @@ public class IcBuildingExcel extends ExcelVerifyInfo implements Serializable { @Excel(name = "楼长身份证号") private String buildingLeaderIdCard; - @Excel(name = "楼长类型") - private String buildingLeaderType; +/* @Excel(name = "楼长类型") + private String buildingLeaderType;*/ } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/BuildingInfoModel.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/BuildingInfoModel.java index 38df15fe5d..3a72a3f253 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/BuildingInfoModel.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/BuildingInfoModel.java @@ -47,9 +47,6 @@ public class BuildingInfoModel { @ExcelProperty(value = "楼长身份证号") private String buildingLeaderIdCard; - @ExcelProperty(value = "楼长类型") - private String buildingLeaderType; - @ExcelProperty(value = "排序") private BigDecimal sort; diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcDangerousChemicalsService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcDangerousChemicalsService.java index be86798fd5..81e4da7937 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcDangerousChemicalsService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcDangerousChemicalsService.java @@ -7,6 +7,8 @@ import com.epmet.dto.IcDangerousChemicalsDTO; import com.epmet.dto.form.IcDangerousChemicalsAddEditFormDTO; import com.epmet.dto.form.IcDangerousChemicalsListFormDTO; import com.epmet.dto.result.IcDangerousChemicalsListResultDTO; +import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO; +import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatResultDTO; import com.epmet.entity.IcDangerousChemicalsEntity; import java.nio.file.Path; @@ -82,4 +84,23 @@ public interface IcDangerousChemicalsService extends BaseService entityList); IcDangerousChemicalsEntity get(String orgId, String name); + + /** + * 灵山大屏-安全生产-生产企业类型统计 + * @param orgId + * @param orgType + * @return + */ + List typeStat(String customerId,String staffId,String orgId, String orgType); + + /** + * 灵山大屏-安全生产-生产企业类型统计,点击饼图,查询列表及详情 + * @param customerId + * @param userId + * @param orgId + * @param orgType + * @param typeCode + * @return + */ + List distribution(String customerId, String staffId, String orgId, String orgType, String typeCode); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java index 8eb14781f5..c8a7d1fd13 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java @@ -121,6 +121,7 @@ public class BuildingServiceImpl implements BuildingService { IcBuildingDTO icBuildingDTO = ConvertUtils.sourceToTarget(formDTO, IcBuildingDTO.class); icBuildingDTO.setCustomerId(customerId); IcBuildingEntity entity = ConvertUtils.sourceToTarget(icBuildingDTO, IcBuildingEntity.class); + entity.setBuildingLeaderType("0"); icBuildingDao.insert(entity); @@ -735,6 +736,7 @@ public class BuildingServiceImpl implements BuildingService { IcBuildingDTO icBuildingDTO = ConvertUtils.sourceToTarget(formDTO, IcBuildingDTO.class); icBuildingDTO.setId(formDTO.getBuildingId()); icBuildingDTO.setCustomerId(customerId); + icBuildingDTO.setBuildingLeaderType("0"); icBuildingService.update(icBuildingDTO); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcDangerousChemicalsServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcDangerousChemicalsServiceImpl.java index 4bb95cf9a0..d482ea2bf0 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcDangerousChemicalsServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcDangerousChemicalsServiceImpl.java @@ -28,6 +28,8 @@ import com.epmet.dto.form.ImportTaskCommonFormDTO; import com.epmet.dto.result.IcCoverageCategoryDictListResultDTO; import com.epmet.dto.result.IcDangerousChemicalsListResultDTO; import com.epmet.dto.result.UploadImgResultDTO; +import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatDetailDTO; +import com.epmet.dto.result.lingshan.DangerousChemicalsTypeStatResultDTO; import com.epmet.entity.IcDangerousChemicalsEntity; import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; @@ -59,10 +61,7 @@ import java.io.IOException; import java.io.OutputStream; import java.nio.file.Files; import java.nio.file.Path; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.UUID; +import java.util.*; import java.util.stream.Collectors; /** @@ -115,7 +114,7 @@ public class IcDangerousChemicalsServiceImpl extends BaseServiceImpl> statusRes = adminOpenFeignClient.dictMap(DictTypeEnum.IC_DANGER_TYPE.getCode()); Map statusMap = statusRes.success() && MapUtils.isNotEmpty(statusRes.getData()) ? statusRes.getData() : new HashMap<>(); //企业类别字典数据 - List dictList = coverageService.dictMap(formDTO.getCustomerId(), "dangerous_chemicals"); + List dictList = coverageService.dictMap(formDTO.getCustomerId(), CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode()); Map dictMap = dictList.stream().collect(Collectors.toMap(IcCoverageCategoryDictListResultDTO::getValue, IcCoverageCategoryDictListResultDTO::getLabel)); for (IcDangerousChemicalsListResultDTO v : list) { if (StringUtils.isNotBlank(v.getCategory())) { @@ -225,7 +224,7 @@ public class IcDangerousChemicalsServiceImpl extends BaseServiceImpl> statusRes = adminOpenFeignClient.dictMap(DictTypeEnum.IC_DANGER_TYPE.getCode()); Map statusMap = statusRes.success() && MapUtils.isNotEmpty(statusRes.getData()) ? statusRes.getData() : new HashMap<>(); //企业类别字典数据 - List dictList = coverageService.dictMap(formDTO.getCustomerId(), "city_management"); + List dictList = coverageService.dictMap(formDTO.getCustomerId(), CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode()); Map dictMap = dictList.stream().collect(Collectors.toMap(IcCoverageCategoryDictListResultDTO::getValue, IcCoverageCategoryDictListResultDTO::getLabel)); if (StringUtils.isNotBlank(resultDTO.getCategory())) { resultDTO.setCategoryName(dictMap.get(resultDTO.getCategory())); @@ -355,4 +354,89 @@ public class IcDangerousChemicalsServiceImpl extends BaseServiceImpl typeStat(String customerId,String staffId,String orgId, String orgType) { + // 企业类别字典数据 + List dictList = coverageService.dictMap(customerId, CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode()); + if (CollectionUtils.isEmpty(dictList)) { + return new ArrayList<>(); + } + String orgIdPath = queryOrgIdPath(customerId,staffId,orgId, orgType); + if (StringUtils.isBlank(orgIdPath)) { + return new ArrayList<>(); + } + List resultList = new ArrayList<>(); + for (IcCoverageCategoryDictListResultDTO dto : dictList) { + DangerousChemicalsTypeStatResultDTO resultDTO = new DangerousChemicalsTypeStatResultDTO(); + resultDTO.setName(dto.getLabel()); + LambdaQueryWrapper countWrapper = new LambdaQueryWrapper<>(); + countWrapper.eq(IcDangerousChemicalsEntity::getCustomerId, customerId) + .likeRight(IcDangerousChemicalsEntity::getOrgIdPath, orgIdPath) + .eq(IcDangerousChemicalsEntity::getCategory, dto.getValue()); + resultDTO.setValue(baseDao.selectCount(countWrapper)); + resultDTO.setTypeCode(dto.getValue()); + resultList.add(resultDTO); + } + return resultList; + } + + private String queryOrgIdPath(String customerId,String staffId,String orgId, String orgType) { + String orgIdPath = ""; + // 如果没传,默认查询当前工作人员所属组织 + if (StringUtils.isBlank(orgId) && StringUtils.isBlank(orgType)) { + CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, staffId); + orgId = staffInfoCacheResult.getAgencyId(); + orgType = OrgTypeEnum.AGENCY.getCode(); + } + if (OrgTypeEnum.AGENCY.getCode().equals(orgType)) { + CustomerAgencyDTO customerAgencyDTO = SpringContextUtils.getBean(CustomerAgencyService.class).get(orgId); + orgIdPath = PidUtils.convertPid2OrgIdPath(customerAgencyDTO.getId(), customerAgencyDTO.getPids()); + } else if (OrgTypeEnum.GRID.getCode().equals(orgType)) { + CustomerGridDTO customerGridDTO = SpringContextUtils.getBean(CustomerGridService.class).get(orgId); + orgIdPath = PidUtils.convertPid2OrgIdPath(customerGridDTO.getId(), customerGridDTO.getPids()); + } + return orgIdPath; + } + + /** + * 灵山大屏-安全生产-生产企业类型统计,点击饼图,查询列表及详情 + * + * @param customerId + * @param staffId + * @param orgId + * @param orgType + * @param typeCode + * @return + */ + @Override + public List distribution(String customerId, String staffId, String orgId, String orgType, String typeCode) { + // 企业类别字典数据 + List dictList = coverageService.dictMap(customerId, CoveragePlaceTypeEnum.DANGEROUS_CHEMICALS.getCode()); + if (CollectionUtils.isEmpty(dictList)) { + return new ArrayList<>(); + } + Map categoryDictMap = dictList.stream().collect(Collectors.toMap(IcCoverageCategoryDictListResultDTO::getValue, IcCoverageCategoryDictListResultDTO::getLabel)); + + String orgIdPath = queryOrgIdPath(customerId, staffId, orgId, orgType); + if (StringUtils.isBlank(orgIdPath)) { + return new ArrayList<>(); + } + List list = baseDao.selectDistributionList(customerId, orgIdPath, typeCode); + list.forEach(l -> { + // 赋值企业分类名称 + if (MapUtils.isNotEmpty(categoryDictMap) && categoryDictMap.containsKey(l.getCategory())) { + l.setType(categoryDictMap.get(l.getCategory())); + } + }); + return list; + } } \ No newline at end of file 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 f9c10cf973..bc6175f78a 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 @@ -629,14 +629,15 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl - + + \ No newline at end of file