Commit 9c62d23e authored by tianyiming's avatar tianyiming

1、大屏综合统计-新增检验检测机构、检验检测机构人员

2、新增查询监管部门树返回List格式
parent 0729a724
...@@ -19,7 +19,7 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest; ...@@ -19,7 +19,7 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.LinkedHashMap; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -189,4 +189,10 @@ public class ZLDPStatisticsController { ...@@ -189,4 +189,10 @@ public class ZLDPStatisticsController {
public ResponseModel<Object> getRegulatorUnitTree(){ public ResponseModel<Object> getRegulatorUnitTree(){
return ResponseHelper.buildResponse(statisticsService.getRegulatorUnitTree()); return ResponseHelper.buildResponse(statisticsService.getRegulatorUnitTree());
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getTree")
@ApiOperation(httpMethod = "GET", value = "查询监管部门树", notes = "查询监管部门树")
public ResponseModel<Object> getTree(){
return ResponseHelper.buildResponse(Collections.singletonList(statisticsService.getRegulatorUnitTree()));
}
} }
...@@ -20,8 +20,8 @@ import com.yeejoin.amos.boot.biz.common.utils.RequestContextWrapper; ...@@ -20,8 +20,8 @@ import com.yeejoin.amos.boot.biz.common.utils.RequestContextWrapper;
import com.yeejoin.amos.boot.module.common.api.dao.EsEquipmentDao; import com.yeejoin.amos.boot.module.common.api.dao.EsEquipmentDao;
import com.yeejoin.amos.boot.module.common.api.dto.TechParamItem; import com.yeejoin.amos.boot.module.common.api.dto.TechParamItem;
import com.yeejoin.amos.boot.module.common.api.entity.ESEquipmentInfo; import com.yeejoin.amos.boot.module.common.api.entity.ESEquipmentInfo;
import com.yeejoin.amos.boot.module.common.biz.service.impl.TZSCommonServiceImpl;
import com.yeejoin.amos.boot.module.common.api.enums.UnitTypeNewEnum; import com.yeejoin.amos.boot.module.common.api.enums.UnitTypeNewEnum;
import com.yeejoin.amos.boot.module.common.biz.service.impl.TZSCommonServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.utils.TechParamUtil; import com.yeejoin.amos.boot.module.common.biz.utils.TechParamUtil;
import com.yeejoin.amos.boot.module.statistcs.biz.utils.JsonUtils; import com.yeejoin.amos.boot.module.statistcs.biz.utils.JsonUtils;
import com.yeejoin.amos.boot.module.statistcs.biz.utils.MinioUtils; import com.yeejoin.amos.boot.module.statistcs.biz.utils.MinioUtils;
...@@ -3031,9 +3031,15 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3031,9 +3031,15 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
} else if (StatisticalAnalysisEnum.company.getCode().equals(businessType)) { } else if (StatisticalAnalysisEnum.company.getCode().equals(businessType)) {
boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode)); boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode));
data = queryDpCompanyStatistics(filter, request, builder, boolMust, tabTotalMap); data = queryDpCompanyStatistics(filter, request, builder, boolMust, tabTotalMap);
} else { } else if (StatisticalAnalysisEnum.person.getCode().equals(businessType)) {
boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode", orgCode)); boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode", orgCode));
data = queryDpPersonStatistics(filter, request, builder, boolMust, tabTotalMap); data = queryDpPersonStatistics(filter, request, builder, boolMust, tabTotalMap);
} else if (StatisticalAnalysisEnum.inspectionCompany.getCode().equals(businessType)) {
boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode));
data = queryDpInspectionCompanyStatistics(filter, request, builder, boolMust, tabTotalMap);
} else {
boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode", orgCode));
data = queryDpInspectionPersonStatistics(filter, request, builder, boolMust, tabTotalMap);
} }
getTypeCount(businessType, tabTotalMap, orgCode, data); getTypeCount(businessType, tabTotalMap, orgCode, data);
...@@ -3043,6 +3049,87 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3043,6 +3049,87 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
return result; return result;
} }
private List<Map<String, Object>> queryDpInspectionPersonStatistics(JSONObject filter, SearchRequest request, SearchSourceBuilder builder, BoolQueryBuilder boolMust, Map<String, Object> tabTotalMap) {
request.indices(StatisticalAnalysisEnum.inspectionPerson.getKey());
JSONObject filterParams = JSONObject.parseObject(JSONObject.toJSONString(filter.get("filterParams")));
String filterType = "advanced";
// 组装人员过滤条件
this.getPersonBoolQueryBuilder(filterParams, boolMust, filterType);
// 通过是否传参 unitType 单位类型 区分一二级查询
boolean is2LeveFlag = Optional.of(filter)
.map(obj -> obj.getJSONObject("filterParams"))
.map(filterParamsObj -> filterParams.getJSONArray("unitType"))
.map(unitTypeObj -> !unitTypeObj.isEmpty())
.orElse(false);
Map<String, Object> result = new HashMap<>();
boolMust.mustNot(QueryBuilders.wildcardQuery("unitType.keyword", "*检验检测机构*"));
// 一级统计
if (!is2LeveFlag) {
BoolQueryBuilder companyUnitTypeBoolMust = QueryBuilders.boolQuery();
companyUnitTypeBoolMust
.should(QueryBuilders.wildcardQuery("unitType.keyword", "*检验机构*"))
.should(QueryBuilders.wildcardQuery("unitType.keyword", "*检测机构*"))
.minimumShouldMatch(1);
boolMust.must(companyUnitTypeBoolMust);
result = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.inspectionPerson);
} else {
tabTotalMap.put(StatisticalAnalysisEnum.inspectionPerson.getCode(), this.queryDpStatisticsTotalByIndex(boolMust, StatisticalAnalysisEnum.inspectionPerson.getKey()));
JSONObject expiryDateStatus = this.getExpiryDateStatusGroupStatistics(boolMust);
JSONObject personType = this.getPersonTypeGroupStatistics(boolMust);
result.put("tabTotalMap", new JSONObject()
.fluentPut("expiryDateStatusTotal", this.sumWithJSONObjectValues(expiryDateStatus))
.fluentPut("personTypeTotal", this.sumWithJSONObjectValues(personType)));
result.put("datas", new JSONObject()
.fluentPut("expiryDateStatus", expiryDateStatus)
.fluentPut("personType", personType));
}
return Collections.singletonList(result);
}
private List<Map<String, Object>> queryDpInspectionCompanyStatistics(JSONObject filter, SearchRequest request, SearchSourceBuilder builder, BoolQueryBuilder boolMust, Map<String, Object> tabTotalMap) {
request.indices(StatisticalAnalysisEnum.inspectionCompany.getKey());
JSONObject filterParams = JSONObject.parseObject(JSONObject.toJSONString(filter.get("filterParams")));
// 构造企业查询条件
filter.put("filterType", "advanced");
if (!ObjectUtils.isEmpty(filter.get("filterParams"))) {
String filterType = filter.getString("filterType");
getCompanyBoolQueryBuilder(filterParams, filterType, boolMust);
}
boolean is2LeveFlag = Optional.of(filter)
.map(obj -> obj.getJSONObject("filterParams"))
.map(filterParamsObj -> filterParamsObj.getJSONArray("unitType"))
.map(unitTypeObj -> !unitTypeObj.isEmpty())
.orElse(false);
Map<String, Object> result = new HashMap<>();
// 一级统计
boolMust.mustNot(QueryBuilders.wildcardQuery("unitType.keyword", "*检验检测机构*"));
if (!is2LeveFlag) {
BoolQueryBuilder companyUnitTypeBoolMust = QueryBuilders.boolQuery();
companyUnitTypeBoolMust
.should(QueryBuilders.wildcardQuery("unitType.keyword", "*检验机构*"))
.should(QueryBuilders.wildcardQuery("unitType.keyword", "*检测机构*"))
.minimumShouldMatch(1);
boolMust.must(companyUnitTypeBoolMust);
result = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.inspectionCompany);
} else {
Long companyCount = getStatisticCount(boolMust, StatisticalAnalysisEnum.inspectionCompany.getKey());
getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.inspectionCompany);
JSONObject permitStatus = getPermitStatusGroupStatistics(boolMust);
result.put("datas", new JSONObject()
.fluentPut("permitStatus", permitStatus));
result.put("tabTotalMap", new JSONObject()
.fluentPut("permitStatusTotal", companyCount));
}
return Collections.singletonList(result);
}
private void getTypeCount(String businessType, Map<String, Object> tabTotalMap, String orgCode, List<Map<String, Object>> data) { private void getTypeCount(String businessType, Map<String, Object> tabTotalMap, String orgCode, List<Map<String, Object>> data) {
BoolQueryBuilder equipBoolMust = QueryBuilders.boolQuery(); BoolQueryBuilder equipBoolMust = QueryBuilders.boolQuery();
equipBoolMust.must(QueryBuilders.prefixQuery("ORG_BRANCH_CODE", orgCode)); equipBoolMust.must(QueryBuilders.prefixQuery("ORG_BRANCH_CODE", orgCode));
...@@ -3050,35 +3137,121 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3050,35 +3137,121 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
equipBoolMust.mustNot(QueryBuilders.termQuery("EQU_CATEGORY_CODE", "2300")); equipBoolMust.mustNot(QueryBuilders.termQuery("EQU_CATEGORY_CODE", "2300"));
equipBoolMust.mustNot(QueryBuilders.termQuery("EQU_LIST_CODE", "8000")); equipBoolMust.mustNot(QueryBuilders.termQuery("EQU_LIST_CODE", "8000"));
equipBoolMust.must(QueryBuilders.termsQuery("EQU_LIST_CODE", Arrays.asList("1000", "2000", "3000", "4000", "5000", "6000", "9000"))); equipBoolMust.must(QueryBuilders.termsQuery("EQU_LIST_CODE", Arrays.asList("1000", "2000", "3000", "4000", "5000", "6000", "9000")));
String sydwName = "*" + UnitTypeEnum.sydw.getName() + "*";
String grztName = "*" + UnitTypeEnum.grzt.getName() + "*";
String zzdwName = "*" + UnitTypeEnum.zzdw.getName() + "*";
String sjdwName = "*" + UnitTypeEnum.sjdw.getName() + "*";
String azgzwxdwName = "*" + UnitTypeEnum.azgzwxdw.getName() + "*";
String czdwName = "*" + UnitTypeEnum.czdw.getName() + "*";
BoolQueryBuilder companyUnitTypeBoolMust = QueryBuilders.boolQuery();
companyUnitTypeBoolMust
.should(QueryBuilders.wildcardQuery("unitType.keyword", sydwName))
.should(QueryBuilders.wildcardQuery("unitType.keyword", grztName))
.should(QueryBuilders.wildcardQuery("unitType.keyword", zzdwName))
.should(QueryBuilders.wildcardQuery("unitType.keyword", sjdwName))
.should(QueryBuilders.wildcardQuery("unitType.keyword", azgzwxdwName))
.should(QueryBuilders.wildcardQuery("unitType.keyword", czdwName))
.minimumShouldMatch(1);
String jyjgName = "*" + UnitTypeEnum.jyjg.getName() + "*";
String jcjgName = "*" + UnitTypeEnum.jcjg.getName() + "*";
BoolQueryBuilder inspectionUnitTypeBoolMust = QueryBuilders.boolQuery();
inspectionUnitTypeBoolMust
.should(QueryBuilders.wildcardQuery("unitType.keyword", jyjgName))
.should(QueryBuilders.wildcardQuery("unitType.keyword", jcjgName))
.minimumShouldMatch(1);
BoolQueryBuilder companyBoolMust = QueryBuilders.boolQuery(); BoolQueryBuilder companyBoolMust = QueryBuilders.boolQuery();
companyBoolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode)); companyBoolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode));
companyBoolMust.must(companyUnitTypeBoolMust);
BoolQueryBuilder personBoolMust = QueryBuilders.boolQuery(); BoolQueryBuilder personBoolMust = QueryBuilders.boolQuery();
personBoolMust.must(QueryBuilders.prefixQuery("superviseOrgCode", orgCode)); personBoolMust.must(QueryBuilders.prefixQuery("superviseOrgCode", orgCode));
personBoolMust.must(companyUnitTypeBoolMust);
BoolQueryBuilder inspectionCompanyBoolMust = QueryBuilders.boolQuery();
inspectionCompanyBoolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode));
inspectionCompanyBoolMust.must(inspectionUnitTypeBoolMust);
inspectionCompanyBoolMust.mustNot(QueryBuilders.wildcardQuery("unitType.keyword", "*检验检测机构*"));
BoolQueryBuilder inspectionPersonBoolMust = QueryBuilders.boolQuery();
inspectionPersonBoolMust.must(QueryBuilders.prefixQuery("superviseOrgCode", orgCode));
inspectionPersonBoolMust.must(inspectionUnitTypeBoolMust);
inspectionPersonBoolMust.mustNot(QueryBuilders.wildcardQuery("unitType.keyword", "*检验检测机构*"));
String equipIndex = StatisticalAnalysisEnum.equip.getKey(); String equipIndex = StatisticalAnalysisEnum.equip.getKey();
String companyIndex = StatisticalAnalysisEnum.company.getKey(); String companyIndex = StatisticalAnalysisEnum.company.getKey();
String personIndex = StatisticalAnalysisEnum.person.getKey(); String personIndex = StatisticalAnalysisEnum.person.getKey();
if (businessType.equals(StatisticalAnalysisEnum.equip.getCode())) { if (businessType.equals(StatisticalAnalysisEnum.equip.getCode())) {
// 获取企业总数 // 获取企业总数
Long companyCount = getStatisticCount(companyBoolMust, companyIndex); Long companyCount = getStatisticCount(companyBoolMust, companyIndex);
// 获取人员总数 // 获取人员总数
Long personCount = getStatisticCount(personBoolMust, personIndex); Long personCount = getStatisticCount(personBoolMust, personIndex);
// 获取检验检测机构总数
Long inspectionCompanyCount = getStatisticCount(inspectionCompanyBoolMust, companyIndex);
// 获取检验检测机构人员总数
Long inspectionPersonCount = getStatisticCount(inspectionPersonBoolMust, personIndex);
tabTotalMap.put(StatisticalAnalysisEnum.company.getCode(), companyCount); tabTotalMap.put(StatisticalAnalysisEnum.company.getCode(), companyCount);
tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), personCount); tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), personCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionCompany.getCode(), inspectionCompanyCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionPerson.getCode(), inspectionPersonCount);
} else if (businessType.equals(StatisticalAnalysisEnum.company.getCode())) { } else if (businessType.equals(StatisticalAnalysisEnum.company.getCode())) {
// 获取设备总数 // 获取设备总数
Long equipCount = getStatisticCount(equipBoolMust, equipIndex); Long equipCount = getStatisticCount(equipBoolMust, equipIndex);
// 获取人员总数 // 获取人员总数
Long personCount = getStatisticCount(personBoolMust, personIndex); Long personCount = getStatisticCount(personBoolMust, personIndex);
// 获取检验检测机构总数
Long inspectionCompanyCount = getStatisticCount(inspectionCompanyBoolMust, companyIndex);
// 获取检验检测机构人员总数
Long inspectionPersonCount = getStatisticCount(inspectionPersonBoolMust, personIndex);
tabTotalMap.put(StatisticalAnalysisEnum.equip.getCode(), equipCount);
tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), personCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionCompany.getCode(), inspectionCompanyCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionPerson.getCode(), inspectionPersonCount);
} else if (businessType.equals(StatisticalAnalysisEnum.person.getCode())) {
// 获取设备总数
Long equipCount = getStatisticCount(equipBoolMust, equipIndex);
// 获取企业总数
Long companyCount = getStatisticCount(companyBoolMust, companyIndex);
// 获取检验检测机构总数
Long inspectionCompanyCount = getStatisticCount(inspectionCompanyBoolMust, companyIndex);
// 获取检验检测机构人员总数
Long inspectionPersonCount = getStatisticCount(inspectionPersonBoolMust, personIndex);
tabTotalMap.put(StatisticalAnalysisEnum.equip.getCode(), equipCount);
tabTotalMap.put(StatisticalAnalysisEnum.company.getCode(), companyCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionCompany.getCode(), inspectionCompanyCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionPerson.getCode(), inspectionPersonCount);
} else if (businessType.equals(StatisticalAnalysisEnum.inspectionCompany.getCode())) {
// 获取设备总数
Long equipCount = getStatisticCount(equipBoolMust, equipIndex);
// 获取企业总数
Long companyCount = getStatisticCount(companyBoolMust, companyIndex);
// 获取人员总数
Long personCount = getStatisticCount(personBoolMust, personIndex);
// 获取检验检测机构人员总数
Long inspectionPersonCount = getStatisticCount(inspectionPersonBoolMust, personIndex);
tabTotalMap.put(StatisticalAnalysisEnum.equip.getCode(), equipCount); tabTotalMap.put(StatisticalAnalysisEnum.equip.getCode(), equipCount);
tabTotalMap.put(StatisticalAnalysisEnum.company.getCode(), companyCount);
tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), personCount); tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), personCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionPerson.getCode(), inspectionPersonCount);
} else { } else {
// 获取设备总数 // 获取设备总数
Long equipCount = getStatisticCount(equipBoolMust, equipIndex); Long equipCount = getStatisticCount(equipBoolMust, equipIndex);
// 获取企业总数 // 获取企业总数
Long companyCount = getStatisticCount(companyBoolMust, companyIndex); Long companyCount = getStatisticCount(companyBoolMust, companyIndex);
// 获取人员总数
Long personCount = getStatisticCount(personBoolMust, personIndex);
// 获取检验检测机构总数
Long inspectionCompanyCount = getStatisticCount(inspectionCompanyBoolMust, companyIndex);
tabTotalMap.put(StatisticalAnalysisEnum.equip.getCode(), equipCount); tabTotalMap.put(StatisticalAnalysisEnum.equip.getCode(), equipCount);
tabTotalMap.put(StatisticalAnalysisEnum.company.getCode(), companyCount); tabTotalMap.put(StatisticalAnalysisEnum.company.getCode(), companyCount);
tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), personCount);
tabTotalMap.put(StatisticalAnalysisEnum.inspectionCompany.getCode(), inspectionCompanyCount);
} }
} }
...@@ -3109,24 +3282,24 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3109,24 +3282,24 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
// 一级统计 // 一级统计
if (!is2LeveFlag) { if (!is2LeveFlag) {
// 计算总数 // 计算总数
boolMust.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.sydw.getName())) boolMust.should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.sydw.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.grzt.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.grzt.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.zzdw.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.zzdw.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.sjdw.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.sjdw.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.azgzwxdw.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.azgzwxdw.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.czdw.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.czdw.getName() + "*"))
.minimumShouldMatch(1); .minimumShouldMatch(1);
Map<String, Object> dats = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.person); Map<String, Object> dats = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.person);
result = getUseAndProductAndFillingStatistics(dats); result = getUseAndProductAndFillingStatistics(dats);
} else if (!is3LeveFlag) { } else if (!is3LeveFlag) {
if (unitCategory.equals(UnitCategoryEnum.use.getCode())) { if (unitCategory.equals(UnitCategoryEnum.use.getCode())) {
boolMust.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.sydw.getName())) boolMust.should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.sydw.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.grzt.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.grzt.getName() + "*"))
.minimumShouldMatch(1); .minimumShouldMatch(1);
} else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) { } else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) {
boolMust.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.zzdw.getName())) boolMust.should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.zzdw.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.sjdw.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.sjdw.getName() + "*"))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.azgzwxdw.getName())) .should(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.azgzwxdw.getName() + "*"))
.minimumShouldMatch(1); .minimumShouldMatch(1);
} else { } else {
boolMust.must(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.czdw.getName() + "*")); boolMust.must(QueryBuilders.wildcardQuery("unitType.keyword", "*" + UnitTypeEnum.czdw.getName() + "*"));
...@@ -3143,19 +3316,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3143,19 +3316,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
} else { } else {
JSONArray threeLevel = filterParams.getJSONArray("threeLevel"); JSONArray threeLevel = filterParams.getJSONArray("threeLevel");
String filterCode = threeLevel.getString(0); String filterCode = threeLevel.getString(0);
String unitType; boolMust.must(QueryBuilders.wildcardQuery("unitType.keyword", "*" + filterCode + "*"));
if (filterCode.equals("use")) {
unitType = UnitTypeEnum.sydw.getName();
} else if (filterCode.equals("person")) {
unitType = UnitTypeEnum.grzt.getName();
} else if (filterCode.equals("design")) {
unitType = UnitTypeEnum.sjdw.getName();
} else if (filterCode.equals("factory")) {
unitType = UnitTypeEnum.zzdw.getName();
} else {
unitType = UnitTypeEnum.azgzwxdw.getName();
}
boolMust.must(QueryBuilders.wildcardQuery("unitType.keyword", "*" + unitType + "*"));
tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), this.queryDpStatisticsTotalByIndex(boolMust, StatisticalAnalysisEnum.person.getKey())); tabTotalMap.put(StatisticalAnalysisEnum.person.getCode(), this.queryDpStatisticsTotalByIndex(boolMust, StatisticalAnalysisEnum.person.getKey()));
JSONObject expiryDateStatus = this.getExpiryDateStatusGroupStatistics(boolMust); JSONObject expiryDateStatus = this.getExpiryDateStatusGroupStatistics(boolMust);
JSONObject personType = this.getPersonTypeGroupStatistics(boolMust); JSONObject personType = this.getPersonTypeGroupStatistics(boolMust);
...@@ -3261,7 +3422,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3261,7 +3422,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
.map(threeLevelObj -> !threeLevelObj.isEmpty()) .map(threeLevelObj -> !threeLevelObj.isEmpty())
.orElse(false); .orElse(false);
// 一级统计 // 一级统计
if (!is2LeveFlag && !is3LeveFlag) { if (!is2LeveFlag) {
// 计算总数 // 计算总数
boolMust.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.sydw.getName())) boolMust.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.sydw.getName()))
.should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.grzt.getName())) .should(QueryBuilders.matchQuery("unitType", UnitTypeEnum.grzt.getName()))
...@@ -3272,7 +3433,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3272,7 +3433,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
.minimumShouldMatch(1); .minimumShouldMatch(1);
Map<String, Object> datas = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company); Map<String, Object> datas = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company);
return Collections.singletonList(getUseAndProductAndFillingStatistics(datas)); return Collections.singletonList(getUseAndProductAndFillingStatistics(datas));
} else if (is2LeveFlag && !is3LeveFlag) { } else if (!is3LeveFlag) {
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
Long companyCount = getStatisticCount(boolMust, StatisticalAnalysisEnum.company.getKey()); Long companyCount = getStatisticCount(boolMust, StatisticalAnalysisEnum.company.getKey());
JSONObject industrySupervisor = this.getItemGroupStatisticsByItemName(boolMust, JSONObject industrySupervisor = this.getItemGroupStatisticsByItemName(boolMust,
...@@ -3306,6 +3467,9 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3306,6 +3467,9 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
result.put("datas", new JSONObject() result.put("datas", new JSONObject()
.fluentPut("regulatoryLabels", levelControlMap) .fluentPut("regulatoryLabels", levelControlMap)
.fluentPut("industrySupervisor", industrySupervisor)); .fluentPut("industrySupervisor", industrySupervisor));
result.put("tabTotalMap", new JSONObject()
.fluentPut("regulatoryLabelsTotal", companyCount)
.fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor)));
} else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) { } else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) {
Map<String, Object> datas = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company); Map<String, Object> datas = getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company);
Map<String, Object> productMap = new HashMap<>(); Map<String, Object> productMap = new HashMap<>();
...@@ -3315,16 +3479,19 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3315,16 +3479,19 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
result.put("datas", new JSONObject() result.put("datas", new JSONObject()
.fluentPut("companyType", productMap) .fluentPut("companyType", productMap)
.fluentPut("industrySupervisor", industrySupervisor)); .fluentPut("industrySupervisor", industrySupervisor));
result.put("tabTotalMap", new JSONObject()
.fluentPut("companyTotal", companyCount)
.fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor)));
} else if (unitCategory.equals(UnitCategoryEnum.filling.getCode())) { } else if (unitCategory.equals(UnitCategoryEnum.filling.getCode())) {
getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company); getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company);
JSONObject permitStatus = getPermitStatusGroupStatistics(boolMust); JSONObject permitStatus = getPermitStatusGroupStatistics(boolMust);
result.put("datas", new JSONObject() result.put("datas", new JSONObject()
.fluentPut("permitStatus", permitStatus) .fluentPut("permitStatus", permitStatus)
.fluentPut("industrySupervisor", industrySupervisor)); .fluentPut("industrySupervisor", industrySupervisor));
}
result.put("tabTotalMap", new JSONObject() result.put("tabTotalMap", new JSONObject()
.fluentPut("regulatoryLabelsTotal", companyCount) .fluentPut("permitStatusTotal", companyCount)
.fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor))); .fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor)));
}
return Collections.singletonList(result); return Collections.singletonList(result);
} else if (is3LeveFlag) { } else if (is3LeveFlag) {
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
...@@ -3353,8 +3520,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3353,8 +3520,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
companyMap.put("grzt", datas.get("grzt")); companyMap.put("grzt", datas.get("grzt"));
} }
} else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) { } else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) {
String unitType = filterCode.equals("design") ? UnitTypeNewEnum.sjdw.getLabel() : filterCode.equals("factory") ? UnitTypeNewEnum.zzdw.getLabel() : UnitTypeNewEnum.azgzwxdw.getLabel(); boolMust.must(QueryBuilders.wildcardQuery("unitType.keyword", "*" + filterCode + "*"));
boolMust.must(QueryBuilders.wildcardQuery("unitType.keyword", "*" + unitType + "*"));
getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company); getTotalAggMapsByUnitType(request, builder, boolMust, tabTotalMap, StatisticalAnalysisEnum.company);
permitStatus = getPermitStatusGroupStatistics(boolMust); permitStatus = getPermitStatusGroupStatistics(boolMust);
} }
...@@ -3369,19 +3535,26 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3369,19 +3535,26 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
result.put("datas", new JSONObject() result.put("datas", new JSONObject()
.fluentPut("regulatoryLabels", levelControlMap) .fluentPut("regulatoryLabels", levelControlMap)
.fluentPut("industrySupervisor", industrySupervisor)); .fluentPut("industrySupervisor", industrySupervisor));
result.put("tabTotalMap", new JSONObject()
.fluentPut("regulatoryLabelsTotal", companyCount)
.fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor)));
} else { } else {
result.put("datas", new JSONObject() result.put("datas", new JSONObject()
.fluentPut("company", companyMap) .fluentPut("company", companyMap)
.fluentPut("industrySupervisor", industrySupervisor)); .fluentPut("industrySupervisor", industrySupervisor));
result.put("tabTotalMap", new JSONObject()
.fluentPut("regulatoryLabelsTotal", companyCount)
.fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor)));
} }
} else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) { } else if (unitCategory.equals(UnitCategoryEnum.produce.getCode())) {
result.put("datas", new JSONObject() result.put("datas", new JSONObject()
.fluentPut("permitStatus", permitStatus) .fluentPut("permitStatus", permitStatus)
.fluentPut("industrySupervisor", industrySupervisor)); .fluentPut("industrySupervisor", industrySupervisor));
}
result.put("tabTotalMap", new JSONObject() result.put("tabTotalMap", new JSONObject()
.fluentPut("regulatoryLabelsTotal", companyCount) .fluentPut("permitStatusTotal", companyCount)
.fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor))); .fluentPut("industrySupervisorTotal", this.sumWithJSONObjectValues(industrySupervisor)));
}
return Collections.singletonList(result); return Collections.singletonList(result);
} }
...@@ -3617,7 +3790,6 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -3617,7 +3790,6 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
map.put("key", i); map.put("key", i);
map.put("code", i); map.put("code", i);
map.put("noChild", Boolean.TRUE); map.put("noChild", Boolean.TRUE);
map.put("noDetails", Boolean.TRUE);
map.put("noBottom", Boolean.TRUE); map.put("noBottom", Boolean.TRUE);
map.put("fieldKey", "DATA_QUALITY_SCORE"); map.put("fieldKey", "DATA_QUALITY_SCORE");
String imgUrl = String.format("/upload/tzs/dpscreen/statistic/datalevel%s.png", i); String imgUrl = String.format("/upload/tzs/dpscreen/statistic/datalevel%s.png", i);
......
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