Commit a2e32306 authored by tianbo's avatar tianbo

三库建设-按监管单位统计调整-RegionModelDto替换RegionModel

parent 0340cae6
package com.yeejoin.amos.boot.module.statistics.api.dto;
import lombok.Builder;
import lombok.Data;
/**
* 监管单位三库统计实体
*/
@Data
public class RegionModelDto {
/**
* 区域-code
*/
private String regionCode;
/**
* 区域-name
*/
private String regionName;
private String level;
}
\ No newline at end of file
......@@ -23,6 +23,11 @@ public class SkjsEquipCountItemDto {
*/
private String superviseKey;
/*
* 监管单位-org code
*/
private String orgBranchCode;
/**
* 电梯
*/
......
......@@ -33,10 +33,7 @@ import com.yeejoin.amos.boot.module.jg.api.entity.SafetyProblemTracing;
import com.yeejoin.amos.boot.module.jg.api.enums.*;
import com.yeejoin.amos.boot.module.jg.api.mapper.*;
import com.yeejoin.amos.boot.module.statistcs.biz.utils.JsonUtils;
import com.yeejoin.amos.boot.module.statistics.api.dto.SkjsCompanyCountItemDto;
import com.yeejoin.amos.boot.module.statistics.api.dto.SkjsCountItemDto;
import com.yeejoin.amos.boot.module.statistics.api.dto.SkjsEquipCountItemDto;
import com.yeejoin.amos.boot.module.statistics.api.dto.SkjsUserCountItemDto;
import com.yeejoin.amos.boot.module.statistics.api.dto.*;
import com.yeejoin.amos.boot.module.statistics.api.enums.RegulatoryUnitLevelEnum;
import com.yeejoin.amos.boot.module.statistics.api.mapper.CylinderBusinessStatisticsMapper;
import com.yeejoin.amos.boot.module.statistics.api.mapper.JGStatisticsMapper;
......@@ -3655,17 +3652,25 @@ public class JGDPStatisticsServiceImpl {
public Map<String, Object> querySkjsDetail(DPFilterParamDto dpFilterParamDto) {
String orgCodeP = stCommonService.getAndSetOrgCode(dpFilterParamDto);
List<RegionModel> regionModels = stCommonService.setRegionIfRootParentAndNoAccessIf3Level(dpFilterParamDto);
List<RegionModelDto> regionModelsDto = new ArrayList<>();
regionModels.forEach(r -> {
RegionModelDto regionModelDto = new RegionModelDto();
regionModelDto.setRegionCode(r.getRegionCode().toString());
regionModelDto.setRegionName(r.getRegionName());
regionModelDto.setLevel(r.getLevel());
regionModelsDto.add(regionModelDto);
});
if (orgCodeP == null || regionModels.isEmpty()) {
return this.getDefaultSkjsDetail();
}
Map<String, Object> result = new HashMap<>();
// 设备上线情况
result.put("equipOnLineInfo", this.getEquipOnLineInfo(regionModels));
result.put("equipOnLineInfo", this.getEquipOnLineInfo(regionModelsDto));
// 企业上线情况
result.put("companyOnLineInfo", this.getCompanyOnLineInfo(regionModels));
result.put("companyOnLineInfo", this.getCompanyOnLineInfo(regionModelsDto));
// 人员上线情况
result.put("userOnLineInfo", this.getUserOnLineInfo(regionModels));
result.put("userOnLineInfo", this.getUserOnLineInfo(regionModelsDto));
return result;
}
......@@ -3680,15 +3685,15 @@ public class JGDPStatisticsServiceImpl {
return result;
}
private Object getEquipOnLineInfo(List<RegionModel> regionModels) {
private Object getEquipOnLineInfo(List<RegionModelDto> regionModels) {
// 多线程处理
Map<String, SkjsEquipCountItemDto> countItemMap = regionModels.parallelStream().map(r -> {
String regionCode = r.getRegionCode().toString();
String regionCode = r.getRegionCode();
String orgCode = stCommonService.getAndSetOrgCode(regionCode);
SkjsEquipCountItemDto countItemDto = new SkjsEquipCountItemDto();
countItemDto.setRegionCode(regionCode);
countItemDto.setRegionName(r.getRegionName());
countItemDto.setSuperviseKey(regionCode + "_" + r.getRegionName());
countItemDto.setOrgBranchCode(orgCode);
if (!ValidationUtil.isEmpty(orgCode)) {
Map<String, Object> data = new HashMap<>();
// 是否按监管机构代码精确匹配
......@@ -3719,10 +3724,10 @@ public class JGDPStatisticsServiceImpl {
return countItemDtos;
}
private Object getCompanyOnLineInfo(List<RegionModel> regionModels) {
private Object getCompanyOnLineInfo(List<RegionModelDto> regionModels) {
// 多线程处理
Map<String, SkjsCompanyCountItemDto> companyCountItemDtoMap = regionModels.parallelStream().map(r -> {
String regionCode = r.getRegionCode().toString();
String regionCode = r.getRegionCode();
String conditionRegionCode = regionCode;
String orgCode = stCommonService.getAndSetOrgCode(regionCode);
// 按管辖机构统计企业数量时:检验检测机构直接归属省局管辖,则只有省局才统计检验检测机构数量。其他地市区县不统计
......@@ -3765,7 +3770,7 @@ public class JGDPStatisticsServiceImpl {
}
private Object getUserOnLineInfo(List<RegionModel> regionModels) {
private Object getUserOnLineInfo(List<RegionModelDto> regionModels) {
// 多线程处理
Map<String, SkjsUserCountItemDto> userCountItemDtoMap = regionModels.parallelStream().map(r -> {
String regionCode = r.getRegionCode().toString();
......@@ -3981,19 +3986,19 @@ public class JGDPStatisticsServiceImpl {
String orgCodeP = stCommonService.getAndSetOrgCode(dpFilterParamDto);
Map<String, Object> parentModel = getSuperviseTreeByLoginUnitCode(orgCodeP).get(0);
List<Map<String, Object>> childrenRegionModelList = (List<Map<String, Object>>) parentModel.get("children");
List<RegionModel> regionModels = Lists.newArrayList();
List<RegionModelDto> regionModels = Lists.newArrayList();
if (childrenRegionModelList != null) {
childrenRegionModelList.forEach(r -> {
RegionModel regionModel = new RegionModel();
regionModel.setRegionCode(Integer.parseInt(r.get("companyCode").toString()));
RegionModelDto regionModel = new RegionModelDto();
regionModel.setRegionCode(r.get("companyCode").toString());
regionModel.setRegionName((String) r.get("companyName"));
regionModels.add(regionModel);
});
}
// 如果是省局、地市局、区县局查看,则把各对应省局、地市局、区县局数据单独添加到列表中
if (!ValidationUtil.isEmpty(RegulatoryUnitLevelEnum.getEnumByCode((String) parentModel.get("level")))) {
RegionModel regionModel = new RegionModel();
regionModel.setRegionCode(Integer.parseInt(parentModel.get("companyCode").toString()));
RegionModelDto regionModel = new RegionModelDto();
regionModel.setRegionCode(parentModel.get("companyCode").toString());
regionModel.setRegionName((String) parentModel.get("companyName"));
// 设置等级字段是为了区分本级监管单位在查询时是否需要精确匹配
regionModel.setLevel((String) parentModel.get("level"));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment