Commit 199af075 authored by tianyiming's avatar tianyiming

bug修改

parent bf868e37
...@@ -20,13 +20,13 @@ public enum ConditionEnum { ...@@ -20,13 +20,13 @@ public enum ConditionEnum {
numberEq("等于", "eq", TechnicalParameter.ParamType.BIG_DECIMAL), numberEq("等于", "eq", TechnicalParameter.ParamType.BIG_DECIMAL),
numberGt("大于", "gt", TechnicalParameter.ParamType.BIG_DECIMAL), numberGt("大于", "gt", TechnicalParameter.ParamType.BIG_DECIMAL),
numberLt("小于", "lt", TechnicalParameter.ParamType.BIG_DECIMAL), numberLt("小于", "lt", TechnicalParameter.ParamType.BIG_DECIMAL),
numberGe("大于等于", "ge", TechnicalParameter.ParamType.BIG_DECIMAL), numberGe("大于等于", "gte", TechnicalParameter.ParamType.BIG_DECIMAL),
numberLe("小于等于", "le", TechnicalParameter.ParamType.BIG_DECIMAL), numberLe("小于等于", "lte", TechnicalParameter.ParamType.BIG_DECIMAL),
dateEq("等于", "eq", TechnicalParameter.ParamType.DATE), dateEq("等于", "eq", TechnicalParameter.ParamType.DATE),
dateGt("大于", "gt", TechnicalParameter.ParamType.DATE), dateGt("大于", "gt", TechnicalParameter.ParamType.DATE),
dateLt("小于", "lt", TechnicalParameter.ParamType.DATE), dateLt("小于", "lt", TechnicalParameter.ParamType.DATE),
dateGe("大于等于", "ge", TechnicalParameter.ParamType.DATE), dateGe("大于等于", "gte", TechnicalParameter.ParamType.DATE),
dateLe("小于等于", "le", TechnicalParameter.ParamType.DATE), dateLe("小于等于", "lte", TechnicalParameter.ParamType.DATE),
in("包含","in", null), in("包含","in", null),
notIn("不包含","notIn", null), notIn("不包含","notIn", null),
eq("等于","eq", null), eq("等于","eq", null),
......
...@@ -41,7 +41,7 @@ public enum DataQualityScoreEnum { ...@@ -41,7 +41,7 @@ public enum DataQualityScoreEnum {
for (DataQualityScoreEnum e : DataQualityScoreEnum.values()) { for (DataQualityScoreEnum e : DataQualityScoreEnum.values()) {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
jsonObject.put("label",e.name); jsonObject.put("label",e.name);
jsonObject.put("value",e.name); jsonObject.put("value",e.code);
jsonObject.put("key",e.code); jsonObject.put("key",e.code);
jsonArray.add(jsonObject); jsonArray.add(jsonObject);
} }
......
...@@ -24,7 +24,7 @@ public enum EquipAdvanceSearchEnum { ...@@ -24,7 +24,7 @@ public enum EquipAdvanceSearchEnum {
PRODUCT_NAME("设备名称", "PRODUCT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword), PRODUCT_NAME("设备名称", "PRODUCT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword),
TECH_PARAM("技术参数", "techParam", null, "/statistics/comprehensiveStatisticalAnalysis/select/queryTechParam", null, "EQU_LIST_CODE,EQU_CATEGORY_CODE,EQU_DEFINE_CODE,WHETHER_VEHICLE_CYLINDER,QZ_OR_TANK", FieldType.Auto), TECH_PARAM("技术参数", "techParam", null, "/statistics/comprehensiveStatisticalAnalysis/select/queryTechParam", null, "EQU_LIST_CODE,EQU_CATEGORY_CODE,EQU_DEFINE_CODE,WHETHER_VEHICLE_CYLINDER,QZ_OR_TANK", FieldType.Auto),
PARAM_RANGE("参数范围", "paramRange", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Auto), PARAM_RANGE("参数范围", "paramRange", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Auto),
NEXT_INSPECT_DATE("检验有效期", "NEXT_INSPECT_DATE", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), NEXT_INSPECT_DATE("检验有效期", "NEXT_INSPECT_DATE", null, "/statistics/comprehensiveStatisticalAnalysis/select/queryInspectionDate", null, null, FieldType.Date),
EQU_STATE("设备状态", "EQU_STATE", null, "/statistics/comprehensiveStatisticalAnalysis/select/queryEquState", null, null, FieldType.Integer), EQU_STATE("设备状态", "EQU_STATE", null, "/statistics/comprehensiveStatisticalAnalysis/select/queryEquState", null, null, FieldType.Integer),
WHETHER_VEHICLE_CYLINDER("是否车用气瓶", "WHETHER_VEHICLE_CYLINDER", null, "/statistics/comprehensiveStatisticalAnalysis/select/vehicleCylinder", null, null, FieldType.Keyword), WHETHER_VEHICLE_CYLINDER("是否车用气瓶", "WHETHER_VEHICLE_CYLINDER", null, "/statistics/comprehensiveStatisticalAnalysis/select/vehicleCylinder", null, null, FieldType.Keyword),
QZ_OR_TANK("是否撬装球罐", "QZ_OR_TANK", null, "/statistics/comprehensiveStatisticalAnalysis/select/qzOrTank", null, null, FieldType.Auto), QZ_OR_TANK("是否撬装球罐", "QZ_OR_TANK", null, "/statistics/comprehensiveStatisticalAnalysis/select/qzOrTank", null, null, FieldType.Auto),
...@@ -37,13 +37,13 @@ public enum EquipAdvanceSearchEnum { ...@@ -37,13 +37,13 @@ public enum EquipAdvanceSearchEnum {
PRODUCE_UNIT_NAME("制造单位名称", "PRODUCE_UNIT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword), PRODUCE_UNIT_NAME("制造单位名称", "PRODUCE_UNIT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword),
DESIGN_UNIT_NAME("设计单位名称", "designUnitName", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Text), DESIGN_UNIT_NAME("设计单位名称", "designUnitName", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Text),
ME_UNIT_NAME("维保单位名称", "MAINTAIN_UNIT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword), ME_UNIT_NAME("维保单位名称", "MAINTAIN_UNIT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword),
AZUSC_UNIT_NAME("安改维单位名称", "USC_UNIT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Text), AZUSC_UNIT_NAME("安装改造维修单位名称", "USC_UNIT_NAME", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Text),
CODE96333("96333识别码", "CODE96333", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword), CODE96333("96333识别码", "CODE96333", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword),
SUPERVISORY_CODE("监管码", "SUPERVISORY_CODE", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword), SUPERVISORY_CODE("监管码", "SUPERVISORY_CODE", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword),
EQU_TYPE("设备型号", "EQU_TYPE", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Text), EQU_TYPE("设备型号", "EQU_TYPE", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Text),
PRODUCE_DATE("制造日期", "PRODUCE_DATE", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), PRODUCE_DATE("制造日期", "PRODUCE_DATE", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
designDate("设计日期", "designDate", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), designDate("设计日期", "designDate", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
use_date("投用如期", "USE_DATE", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), use_date("投用日期", "use_date", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
ISSUE_DATE("使用登记证日期", "issueDate", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), ISSUE_DATE("使用登记证日期", "issueDate", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
JDJY("监督检验日期", "JDJY", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), JDJY("监督检验日期", "JDJY", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
DQJY("定期检验日期", "DQJY", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), DQJY("定期检验日期", "DQJY", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
...@@ -51,8 +51,8 @@ public enum EquipAdvanceSearchEnum { ...@@ -51,8 +51,8 @@ public enum EquipAdvanceSearchEnum {
DTJY("电梯检测日期", "DTJY", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), DTJY("电梯检测日期", "DTJY", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
nextInspectDate("下次检验日期", "nextInspectDate", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date), nextInspectDate("下次检验日期", "nextInspectDate", TechnicalParameter.ParamType.DATE, "", null, null, FieldType.Date),
// PRODUCE_DATE("是否进口", "PRODUCE_DATE", TechnicalParameter.ParamType.DATE,""), // PRODUCE_DATE("是否进口", "PRODUCE_DATE", TechnicalParameter.ParamType.DATE,""),
USE_PLACE_CODE("使用地点", "USE_PLACE_CODE", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword), USE_PLACE_CODE("使用地点", "USE_PLACE", TechnicalParameter.ParamType.STRING, "", null, null, FieldType.Keyword),
USE_PLACE("使用场所", "USE_PLACE", null, "/statistics/comprehensiveStatisticalAnalysis/select/queryDicData?type={type}", "ADDRESS", null, FieldType.Keyword), USE_PLACE("使用场所", "USE_SITE_CODE", null, "/statistics/comprehensiveStatisticalAnalysis/select/queryDicData?type={type}", "ADDRESS", null, FieldType.Keyword),
; ;
......
...@@ -439,4 +439,15 @@ public class ComprehensiveStatisticalAnalysisController extends BaseController { ...@@ -439,4 +439,15 @@ public class ComprehensiveStatisticalAnalysisController extends BaseController {
public ResponseModel<JSONArray> queryExpiryDate() { public ResponseModel<JSONArray> queryExpiryDate() {
return ResponseHelper.buildResponse(statisticalAnalysisService.queryExpiryDate()); return ResponseHelper.buildResponse(statisticalAnalysisService.queryExpiryDate());
} }
/**
* @param
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/select/queryInspectionDate")
@ApiOperation(httpMethod = "GET", value = "高级搜索检验有效期", notes = "高级搜索检验有效期")
public ResponseModel<JSONArray> queryInspectionDate() {
return ResponseHelper.buildResponse(statisticalAnalysisService.queryInspectionDate());
}
} }
...@@ -115,7 +115,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -115,7 +115,7 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
// 大屏统计图片路径后缀 // 大屏统计图片路径后缀
private final String dpEquipPhotoSuffix = ".png"; private final String dpEquipPhotoSuffix = ".png";
private final List<String> equipHandleOtherFields = Arrays.asList("techParam", "paramRange", "JDJY", "DQJY", "SCJY", "DTJY", "QZ_OR_TANK"); private final List<String> equipHandleOtherFields = Arrays.asList("techParam", "paramRange", "JDJY", "DQJY", "SCJY", "DTJY", "QZ_OR_TANK", "EQU_STATE", "NEXT_INSPECT_DATE", "registerStatus");
private final List<String> companyHandleOtherFields = Arrays.asList("itemCode", "subItemCode", "permitStatus", "equipCategory", "regulatoryLabels", "unitType"); private final List<String> companyHandleOtherFields = Arrays.asList("itemCode", "subItemCode", "permitStatus", "equipCategory", "regulatoryLabels", "unitType");
private final List<String> personHandleOtherFields = Arrays.asList("newPost", "subPost", "certNo", "expiryDate", "certType", "permissionLevel", "jobItem", "permissionItem", "issueDate", "equipType"); private final List<String> personHandleOtherFields = Arrays.asList("newPost", "subPost", "certNo", "expiryDate", "certType", "permissionLevel", "jobItem", "permissionItem", "issueDate", "equipType");
...@@ -300,9 +300,10 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -300,9 +300,10 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
JSONObject filterParams = null; JSONObject filterParams = null;
String licensesStatusStr = ""; String licensesStatusStr = "";
String filterType = filter.getString("filterType");
if (!ObjectUtils.isEmpty(filter.get("filterParams"))) { if (!ObjectUtils.isEmpty(filter.get("filterParams"))) {
filterParams = JSONObject.parseObject(JSONObject.toJSONString(filter.get("filterParams"))); filterParams = JSONObject.parseObject(JSONObject.toJSONString(filter.get("filterParams")));
String filterType = filter.getString("filterType");
// 组装人员过滤条件 // 组装人员过滤条件
this.getPersonBoolQueryBuilder(filterParams, boolMust, filterType); this.getPersonBoolQueryBuilder(filterParams, boolMust, filterType);
// 资质判断 // 资质判断
...@@ -316,6 +317,12 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -316,6 +317,12 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
} }
} }
} }
if ("custom".equals(filterType)) {
JSONArray leftGroup = filterParams.getJSONArray("group1");
JSONArray rightGroup = filterParams.getJSONArray("group2");
licensesStatusStr = getFilterPermitStatusOrLicensesStatus(leftGroup, rightGroup, StatisticalAnalysisEnum.person.getCode());
}
// 组装人员排序条件 // 组装人员排序条件
this.getPersonBoolQuerySort(filter, builder); this.getPersonBoolQuerySort(filter, builder);
...@@ -622,8 +629,9 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -622,8 +629,9 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode)); boolMust.must(QueryBuilders.prefixQuery("superviseOrgCode.keyword", orgCode));
JSONObject filterParams = JSONObject.parseObject(JSONObject.toJSONString(filter.get("filterParams"))); JSONObject filterParams = JSONObject.parseObject(JSONObject.toJSONString(filter.get("filterParams")));
String filterType = filter.getString("filterType");
if (!ObjectUtils.isEmpty(filter.get("filterParams"))) { if (!ObjectUtils.isEmpty(filter.get("filterParams"))) {
String filterType = filter.getString("filterType");
getCompanyBoolQueryBuilder(filterParams, filterType, boolMust); getCompanyBoolQueryBuilder(filterParams, filterType, boolMust);
} }
...@@ -638,6 +646,12 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -638,6 +646,12 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
} }
} }
if ("custom".equals(filterType)) {
JSONArray leftGroup = filterParams.getJSONArray("group1");
JSONArray rightGroup = filterParams.getJSONArray("group2");
permitStatusStr = getFilterPermitStatusOrLicensesStatus(leftGroup, rightGroup, StatisticalAnalysisEnum.company.getCode());
}
// 排序 // 排序
if (!ObjectUtils.isEmpty(filter.get("sort"))) { if (!ObjectUtils.isEmpty(filter.get("sort"))) {
JSONObject sort = JSONObject.parseObject(JSONObject.toJSONString(filter.get("sort"))); JSONObject sort = JSONObject.parseObject(JSONObject.toJSONString(filter.get("sort")));
...@@ -871,6 +885,30 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -871,6 +885,30 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
} }
} }
private String getFilterPermitStatusOrLicensesStatus(JSONArray leftGroup, JSONArray rightGroup, String code) {
String filed = code.equals(StatisticalAnalysisEnum.company.getCode()) ? "permitStatus" : "expiryDate";
List<Object> leftPermitList = leftGroup.stream().filter(e -> filed.equals(((JSONObject) e).getString("field")) && ((JSONObject) e).containsKey("value")).collect(Collectors.toList());
List<Object> rightPermitList = rightGroup.stream().filter(e -> filed.equals(((JSONObject) e).getString("field")) && ((JSONObject) e).containsKey("value")).collect(Collectors.toList());
int count = 0;
Boolean isLeft = false;
Boolean isRight = false;
if (!ObjectUtils.isEmpty(leftPermitList) && leftPermitList.size() == 1) {
count += 1;
isLeft = true;
}
if (!ObjectUtils.isEmpty(rightPermitList) && rightPermitList.size() == 1) {
count += 1;
isRight = true;
}
String statusStr = "";
if (count == 1 && isLeft) {
statusStr = ((JSONObject) leftPermitList.get(0)).getString("value");
} else if (count == 1 && isRight) {
statusStr = ((JSONObject) rightPermitList.get(0)).getString("value");
}
return statusStr;
}
private void deleteUnitCategory(JSONObject filterParams) { private void deleteUnitCategory(JSONObject filterParams) {
if (filterParams.containsKey("unitType") && !filterParams.getString("unitType").contains("all") && !filterParams.getString("unitType").contains("[]")) { if (filterParams.containsKey("unitType") && !filterParams.getString("unitType").contains("all") && !filterParams.getString("unitType").contains("[]")) {
filterParams.remove("unitCategory"); filterParams.remove("unitCategory");
...@@ -917,6 +955,8 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -917,6 +955,8 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
field = "ORG_BRANCH_CODE"; field = "ORG_BRANCH_CODE";
} else if (field.equals("USE_UNIT_NAME")) { } else if (field.equals("USE_UNIT_NAME")) {
field = "USE_UNIT_CREDIT_CODE"; field = "USE_UNIT_CREDIT_CODE";
} else if (field.equals("inspectStatus")) {
field = "NEXT_INSPECT_DATE";
} }
builder.sort(field, sort.getString("order").equals("desc") ? SortOrder.DESC : SortOrder.ASC); builder.sort(field, sort.getString("order").equals("desc") ? SortOrder.DESC : SortOrder.ASC);
} }
...@@ -1591,10 +1631,12 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -1591,10 +1631,12 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
private void getItemQuery(String field, String itemCondition, Object value, String isOr, EnhancedDynamicQueryBuilder builder, String type) { private void getItemQuery(String field, String itemCondition, Object value, String isOr, EnhancedDynamicQueryBuilder builder, String type) {
// 如果包含需要特殊处理的字段,则调用对应的处理方法,否则调用通用处理方法 // 如果包含需要特殊处理的字段,则调用对应的处理方法,否则调用通用处理方法
if (equipHandleOtherFields.contains(field) || companyHandleOtherFields.contains(field) || personHandleOtherFields.contains(field)) { if ((equipHandleOtherFields.contains(field) && StatisticalAnalysisEnum.equip.getCode().equals(type))
|| (companyHandleOtherFields.contains(field) && StatisticalAnalysisEnum.company.getCode().equals(type))
|| (personHandleOtherFields.contains(field) && StatisticalAnalysisEnum.person.getCode().equals(type))) {
handleOtherField(field, itemCondition, value, isOr, builder); handleOtherField(field, itemCondition, value, isOr, builder);
} else { } else {
field = field.equals("nextInspectDate") ? "NEXT_INSPECT_DATE" : field; field = field.equals("nextInspectDate") ? "NEXT_INSPECT_DATE" : field.equals("use_date") ? "USE_DATE" : field;
String finalField = field; String finalField = field;
if (itemCondition.contains("like")) { if (itemCondition.contains("like")) {
FieldType esType; FieldType esType;
...@@ -1942,27 +1984,39 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -1942,27 +1984,39 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
private void equipFieldHandle(String field, String itemCondition, Object value, String isOr, EnhancedDynamicQueryBuilder builder) { private void equipFieldHandle(String field, String itemCondition, Object value, String isOr, EnhancedDynamicQueryBuilder builder) {
if (field.equals("NEXT_INSPECT_DATE")) { if (field.equals("NEXT_INSPECT_DATE")) {
if (value.equals(overdue)) { BoolQueryBuilder overdueQuery = QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).lt(LocalDate.now().format(formatter)));
// 超期:小于当前日期 BoolQueryBuilder nearQuery = QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).gte(LocalDate.now().format(formatter)).lte(LocalDate.now().plusDays(30).format(formatter)));
if (itemCondition.equals("eq") || itemCondition.equals("in")) { BoolQueryBuilder normalQuery = QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).gt(LocalDate.now().plusDays(30).format(formatter)));
builder.add(QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).lt(LocalDate.now().format(formatter))), isOr); BoolQueryBuilder noneQuery = QueryBuilders.boolQuery().mustNot(existsQuery(field));
} else { DynamicQueryBuilder builders = new DynamicQueryBuilder();
builder.add(QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).gt(LocalDate.now().format(formatter))), isOr); if (itemCondition.equals("eq") || itemCondition.equals("in")) {
} if (value.equals(overdue)) {
} else if (value.equals(near)) { builder.add(overdueQuery, isOr);
// 临期:小于等于当前日期加上30天 } else if (value.equals(near)) {
if (itemCondition.equals("eq") || itemCondition.equals("in")) { builder.add(nearQuery, isOr);
builder.add(QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).gte(LocalDate.now().format(formatter)).lte(LocalDate.now().plusDays(30).format(formatter))), isOr); } else if (value.equals(normal)) {
builder.add(normalQuery, isOr);
} else { } else {
builder.add(QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).lt(LocalDate.now().format(formatter))), or); builder.add(noneQuery, isOr);
builder.add(QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).gt(LocalDate.now().plusDays(30).format(formatter))), or);
} }
} else { } else {
// 正常:大于当前日期加上30天 if (value.equals(overdue)) {
if (itemCondition.equals("eq") || itemCondition.equals("in")) { builders.or(nearQuery);
builder.add(QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).gt(LocalDate.now().plusDays(30).format(formatter))), isOr); builders.or(normalQuery);
builders.or(noneQuery);
builder.add(builders.build(), isOr);
} else if (value.equals(near)) {
builders.or(overdueQuery);
builders.or(normalQuery);
builders.or(noneQuery);
builder.add(builders.build(), isOr);
} else if (value.equals(normal)) {
builders.or(overdueQuery);
builders.or(nearQuery);
builders.or(noneQuery);
builder.add(builders.build(), isOr);
} else { } else {
builder.add(QueryBuilders.boolQuery().filter(QueryBuilders.rangeQuery(field).lt(LocalDate.now().plusDays(30).format(formatter))), isOr); builder.add(QueryBuilders.boolQuery().must(existsQuery(field)), isOr);
} }
} }
} else if (field.equals("USE_DATE")) { } else if (field.equals("USE_DATE")) {
...@@ -2007,12 +2061,13 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -2007,12 +2061,13 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
} else { } else {
queryBuilder.must(QueryBuilders.termsQuery(typeField, field)); queryBuilder.must(QueryBuilders.termsQuery(typeField, field));
} }
EnhancedDynamicQueryBuilder queryBuilders = new EnhancedDynamicQueryBuilder();
NestedQueryBuilder fieldQuery = QueryBuilders.nestedQuery( NestedQueryBuilder fieldQuery = QueryBuilders.nestedQuery(
path, path,
queryBuilder, queryBuilder,
ScoreMode.None ScoreMode.None
); );
builder.add(fieldQuery, and); queryBuilders.add(fieldQuery, and);
BoolQueryBuilder query = QueryBuilders.boolQuery(); BoolQueryBuilder query = QueryBuilders.boolQuery();
switch (itemCondition) { switch (itemCondition) {
case "lt": case "lt":
...@@ -2033,7 +2088,8 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -2033,7 +2088,8 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
query, query,
ScoreMode.None ScoreMode.None
); );
builder.add(dateQuery, isOr); queryBuilders.add(dateQuery, and);
builder.add(queryBuilders.build(), isOr);
} else if (field.equals("QZ_OR_TANK")) { } else if (field.equals("QZ_OR_TANK")) {
if (!"".equals(value) && value != null) { if (!"".equals(value) && value != null) {
if (itemCondition.equals("eq") || itemCondition.equals("in")) { if (itemCondition.equals("eq") || itemCondition.equals("in")) {
...@@ -2044,10 +2100,13 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -2044,10 +2100,13 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
} }
} else if (field.equals("registerStatus")) { } else if (field.equals("registerStatus")) {
BoolQueryBuilder registerQuery = QueryBuilders.boolQuery().must(QueryBuilders.termsQuery("IS_INTO_MANAGEMENT", Boolean.TRUE)) BoolQueryBuilder registerQuery = QueryBuilders.boolQuery().must(QueryBuilders.termsQuery("IS_INTO_MANAGEMENT", Boolean.TRUE))
.must(existsQuery("USE_ORG_CODE")); .must(existsQuery("USE_ORG_CODE"))
BoolQueryBuilder noRegisterQuery = QueryBuilders.boolQuery().should(QueryBuilders.boolQuery().mustNot(existsQuery("IS_INTO_MANAGEMENT"))) .mustNot(QueryBuilders.termQuery("USE_ORG_CODE", ""));
.should(QueryBuilders.matchQuery("IS_INTO_MANAGEMENT", Boolean.FALSE)) BoolQueryBuilder noRegisterQuery = QueryBuilders.boolQuery()
.should(QueryBuilders.boolQuery().mustNot(existsQuery("IS_INTO_MANAGEMENT")))
.should(QueryBuilders.termQuery("IS_INTO_MANAGEMENT", Boolean.FALSE))
.should(QueryBuilders.boolQuery().mustNot(existsQuery("USE_ORG_CODE"))) .should(QueryBuilders.boolQuery().mustNot(existsQuery("USE_ORG_CODE")))
.should(QueryBuilders.termQuery("USE_ORG_CODE", ""))
.minimumShouldMatch(1); .minimumShouldMatch(1);
if (itemCondition.equals("eq") || itemCondition.equals("in")) { if (itemCondition.equals("eq") || itemCondition.equals("in")) {
if (value.equals("1")) { if (value.equals("1")) {
...@@ -2062,6 +2121,23 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -2062,6 +2121,23 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
builder.add(registerQuery, isOr); builder.add(registerQuery, isOr);
} }
} }
} else if (field.equals("EQU_STATE")) {
if (itemCondition.equals("eq") || itemCondition.equals("in")) {
if (!value.equals("99")) {
builder.add(QueryBuilders.termQuery(field, value), isOr);
} else {
builder.add(QueryBuilders.boolQuery().mustNot(existsQuery(field)), isOr);
}
} else {
if (!value.equals("99")) {
DynamicQueryBuilder dynamicQueryBuilder = new DynamicQueryBuilder();
dynamicQueryBuilder.or(QueryBuilders.boolQuery().mustNot(QueryBuilders.termQuery(field, value)));
dynamicQueryBuilder.or(QueryBuilders.boolQuery().mustNot(existsQuery(field)));
builder.add(dynamicQueryBuilder.build(), isOr);
} else {
builder.add(QueryBuilders.boolQuery().must(existsQuery(field)), isOr);
}
}
} }
} }
...@@ -2741,6 +2817,34 @@ public class ComprehensiveStatisticalAnalysisServiceImpl { ...@@ -2741,6 +2817,34 @@ public class ComprehensiveStatisticalAnalysisServiceImpl {
return permissionStatus; return permissionStatus;
} }
public JSONArray queryInspectionDate() {
//资质状态
JSONArray permissionStatus = new JSONArray();
for (int i = 0; i < 4; i++) {
JSONObject object = new JSONObject();
if (0 == i) {
object.put("key", normal);
object.put("value", normal);
object.put("label", inspectionStatusMap.get(normal));
} else if (1 == i) {
object.put("key", near);
object.put("value", near);
object.put("label", inspectionStatusMap.get(near));
} else if (2 == i) {
object.put("key", overdue);
object.put("value", overdue);
object.put("label", inspectionStatusMap.get(overdue));
} else {
object.put("key", none);
object.put("value", none);
object.put("label", inspectionStatusMap.get(none));
}
permissionStatus.add(object);
}
return permissionStatus;
}
public JSONArray queryVehicleCylinder() { public JSONArray queryVehicleCylinder() {
//是否车用气瓶 //是否车用气瓶
JSONArray vehicleCylinder = new JSONArray(); JSONArray vehicleCylinder = new JSONArray();
......
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