From 3a19c449919f6e5ca9a6f3fb0669cc02f3a6106b Mon Sep 17 00:00:00 2001
From: super_liu <396572590@qq.com>
Date: Tue, 3 Aug 2021 17:52:08 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=90=9C=E7=B4=A2=E4=B8=AD=E5=BF=83=20?=
=?UTF-8?q?=E5=AD=90=E9=A1=B9=E7=9B=AE=20=E6=B7=BB=E5=8A=A0=20=E7=9B=B8?=
=?UTF-8?q?=E5=85=B3=E4=BE=9D=E8=B5=96=E6=96=87=E4=BB=B6=20=E5=8F=8A=20?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../da/search/entity/SeniorSearchInfoEO.java | 124 +++++++--
.../dao/SarStandAttrDetailsSearchDao.java | 41 +++
.../entity/SarStandAttrDetails.java | 114 +++++++++
.../page/SarStandAttrDetailsEOPage.java | 46 ++++
.../ISarStandAttrDetailsSearchService.java | 24 ++
.../SarStandAttrDetailsSearchServiceImpl.java | 39 +++
.../service/impl/SearchCenterServiceImpl.java | 235 ++----------------
.../search/util/InitStandAttrSearchUtil.java | 219 ++++++++++++++++
.../com/adc/da/search/util/SarTypeEnum.java | 43 ++++
.../adc/da/search/util/StandAttrTypeEnum.java | 28 +++
10 files changed, 679 insertions(+), 234 deletions(-)
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/dao/SarStandAttrDetailsSearchDao.java
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/entity/SarStandAttrDetails.java
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/page/SarStandAttrDetailsEOPage.java
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/ISarStandAttrDetailsSearchService.java
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/impl/SarStandAttrDetailsSearchServiceImpl.java
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/util/InitStandAttrSearchUtil.java
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/util/SarTypeEnum.java
create mode 100644 adc-da-search/src/main/java/com/adc/da/search/util/StandAttrTypeEnum.java
diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java
index 7f2107ed..45e3f4a6 100644
--- a/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java
+++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java
@@ -1,7 +1,9 @@
package com.adc.da.search.entity;
import com.adc.da.base.page.BasePage;
+import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -17,13 +19,103 @@ import java.util.List;
@EqualsAndHashCode(callSuper = true)
@Data
public class SeniorSearchInfoEO extends BasePage {
- private String standType;
+
+ /**
+ * -----------------------------FOTON-------------------------------------
+ * -------------------------- 动态属性字段---------------------------------
+ */
+ @ApiModelProperty(value = "主键")
+ private String id;
+
+ @ApiModelProperty(value = "标准分类")
+ private String standType;
+
+ @ApiModelProperty(value = "国家地区")
+ private String country;
+
+ @ApiModelProperty(value = "标准类别")
+ private String standSort;
+
+ @ApiModelProperty(value = "标准编号")
+ private String standNumber;
+
+ @ApiModelProperty(value = "标准年份")
+ private String standYear;
+
+ @ApiModelProperty(value = "标准名称")
+ private String standName;
+
+ @ApiModelProperty(value = "标准英文名称")
+ private String standEnName;
+
+ @ApiModelProperty(value = "标准状态")
+ private String standState;
+
+ @ApiModelProperty(value = "标准性质")
+ private String standNature;
+
+ @ApiModelProperty(value = "标准发布日期")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date issueTime;
+
+ @ApiModelProperty(value = "实施日期")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date putTime;
+
+ @ApiModelProperty(value = "内容摘要")
+ private String synopsis;
+
+ @ApiModelProperty(value = "代替标准号")
+ private String replaceStandNum;
+
+ @ApiModelProperty(value = "被代替标准号")
+ private String replacedStandNum;
+
+ @ApiModelProperty(value = "代替部分标准号")
+ private String replacePartStandNum;
+
+ @ApiModelProperty(value = "被代替部分标准号")
+ private String replacedPartStandNum;
+
+ private String creationUser;
+
+ @ApiModelProperty(value = "是否有效")
+ private String validFlag;
+
+ @ApiModelProperty(value = "创建时间")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date creationTime;
+
+ @ApiModelProperty(value = "修改时间")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date modifyTime;
+
+ @ApiModelProperty(value = "是否纳入认证清单(0否 1是)")
+ private String isRelateAccess;
+
+
+ @ApiModelProperty(value = "引用标准")
+ private String citeStand;
+
+ @ApiModelProperty(value = "被引用标准")
+ private String citedStand;
+
+ // 新添加字段
+ @ApiModelProperty(value = "文本状态")
+ private String textStatus;
+
+ @ApiModelProperty(value = "标准体系")
+ private String standSystem;
+
+ @ApiModelProperty(value = "新增修改时属性表信息")
+ private String sarStandAttrEOStr;
+
+
+ /**
+ * ---------其他字段------------
+ */
//标准性质
private String nature;
- //国家地区
- private String country;
- //标准类别
- private String standSort;
//标准,文件号
private String numberShow;
//标准,文件名称
@@ -38,10 +130,6 @@ public class SeniorSearchInfoEO extends BasePage {
private String energyKind;
//采标程度
private String adoptExtent;
- //标准状态
- private String standState;
- //发布日期
- private Date issueTime;
//标准大类
private String bussBigClass;
//标准细类
@@ -55,21 +143,8 @@ public class SeniorSearchInfoEO extends BasePage {
private String selectIndex;
//高级搜索
- //标准编号
- private String standNumber;
- //标准年份
- private String standYear;
- //标准英文名称
- private String standEnName;
- //代替标准号 手动输入可以多个,用","隔开
- private String replaceStandNum;
- //被代替标准号
- private String replacedStandNum;
//采用国际标准号
private String interStandNum;
- //实施日期
- @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
- private Date putTime;
//新生产车实施日期
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date newproductPutTime;
@@ -85,8 +160,6 @@ public class SeniorSearchInfoEO extends BasePage {
private String draftingUnit;
//关键词
private String tags;
- //内容摘要
- private String synopsis;
//责任部门
private String responsibleUnit;
//发布单位
@@ -156,4 +229,7 @@ public class SeniorSearchInfoEO extends BasePage {
private String stand_status;
private String isHigh;
+
+
+
}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/dao/SarStandAttrDetailsSearchDao.java b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/dao/SarStandAttrDetailsSearchDao.java
new file mode 100644
index 00000000..d4cfbf6f
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/dao/SarStandAttrDetailsSearchDao.java
@@ -0,0 +1,41 @@
+package com.adc.da.search.sarStandAttrDetails.dao;
+
+import com.adc.da.search.sarStandAttrDetails.entity.SarStandAttrDetails;
+import com.adc.da.search.sarStandAttrDetails.page.SarStandAttrDetailsEOPage;
+import com.adc.da.sys.common.SelectionResult;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ *
+ * Mapper 接口
+ *
+ *
+ * @author super_liu
+ * @since 2021-06-01
+ */
+@Repository
+public interface SarStandAttrDetailsSearchDao extends BaseMapper {
+
+ List queryByPage(SarStandAttrDetailsEOPage page);
+
+ List queryByList(SarStandAttrDetailsEOPage page);
+
+ Integer queryByCount(SarStandAttrDetailsEOPage page);
+
+ int deleteByIds(@Param("idList") List idList);
+
+ String selectAllFieldToStr(SarStandAttrDetailsEOPage page);
+
+ List selectFileFieldForSel(@Param("attrField") String attrField);
+
+ List selectFileFieldForSel1(@Param("attrField") String attrField);
+
+ String selectNameByField(@Param("attrField") String attrField, @Param("sarType") String sarType);
+
+ SarStandAttrDetails selectFieldByName(@Param("attrName") String attrName, @Param("sarType") String sarType);
+
+}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/entity/SarStandAttrDetails.java b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/entity/SarStandAttrDetails.java
new file mode 100644
index 00000000..d3274d6c
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/entity/SarStandAttrDetails.java
@@ -0,0 +1,114 @@
+package com.adc.da.search.sarStandAttrDetails.entity;
+
+import com.adc.da.base.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ *
+ *
+ *
+ *
+ * @author super_liu
+ * @since 2021-06-01
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@ApiModel(value="SarStandAttrDetails对象", description="")
+public class SarStandAttrDetails extends BaseEntity {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "主键")
+ @TableId("ID")
+ private String id;
+
+ @ApiModelProperty(value = "属性字段")
+ @TableField("ATTR_FIELD")
+ private String attrField;
+
+ @ApiModelProperty(value = "属性名称")
+ @TableField("ATTR_NAME")
+ private String attrName;
+
+ @ApiModelProperty(value = "类型(INPUT_STR字符串输入框,INPUT_NUM数字输入框,SELECT_OPTION下拉框,DATE_PICKER日期选择,FILE文件,TEXTAREA文本框)")
+ @TableField("ATTR_TYPE")
+ private String attrType;
+
+ @ApiModelProperty(value = "属性字段长度")
+ @TableField("ATTR_LEN")
+ private Long attrLen;
+
+ @ApiModelProperty(value = "展示顺序")
+ @TableField("ORDER_NUM")
+ private Long orderNum;
+
+ @ApiModelProperty(value = "是否可编辑(0是,1否)")
+ @TableField("IS_EDIT")
+ private String isEdit;
+
+ @TableField("CREATION_USER")
+ private String creationUser;
+
+ @ApiModelProperty(value = "是否有效")
+ @TableField("VALID_FLAG")
+ private String validFlag;
+
+ @ApiModelProperty(value = "创建时间")
+ @TableField("CREATION_TIME")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date creationTime;
+
+ @ApiModelProperty(value = "修改时间")
+ @TableField("MODIFY_TIME")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date modifyTime;
+
+ @ApiModelProperty(value = "是否必填")
+ @TableField("IS_MUST")
+ private String isMust;
+
+ @ApiModelProperty(value = "是否展示")
+ @TableField("IS_SHOW_IMP")
+ private String isShowImp;
+
+ @ApiModelProperty(value = "展示区域")
+ @TableField("SHOW_REGION_ID")
+ private String showRegionId;
+
+ @ApiModelProperty(value = "下拉选项所用的值")
+ @TableField("SEL_VAL")
+ private String selVal;
+
+ @ApiModelProperty(value = "模块类型(STAND标准,LAWS政策)")
+ @TableField("SAR_TYPE")
+ private String sarType;
+
+ @ApiModelProperty(value = "是否作为检索条件")
+ @TableField("IS_SEARCH")
+ private String isSearch;
+
+ @ApiModelProperty(value = "是否预警")
+ @TableField("IS_WARN")
+ private String isWarn;
+
+ @ApiModelProperty(value = "是否检索字段")
+ @TableField("IS_JANSUO")
+ private String isJansuo;
+
+ @TableField(exist = false)
+ private String attrValue;
+
+ @TableField(exist = false)
+ private String areaName;
+
+}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/page/SarStandAttrDetailsEOPage.java b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/page/SarStandAttrDetailsEOPage.java
new file mode 100644
index 00000000..b601f044
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/page/SarStandAttrDetailsEOPage.java
@@ -0,0 +1,46 @@
+package com.adc.da.search.sarStandAttrDetails.page;
+
+import com.adc.da.base.page.BasePage;
+import lombok.Data;
+
+/**
+ * 功能:SAR_STAND_ATTR_DETAILS SarStandAttrDetailsEOPage
+ * 作者:code generator
+ * 日期: 2020-08-17
+ * 版权所有:版权归北京卡达克数据技术中心所有。
+ */
+@Data
+public class SarStandAttrDetailsEOPage extends BasePage {
+
+ private String id;
+ private String idOperator = "=";
+ private String attrField;
+ private String attrFieldOperator = "=";
+ private String attrName;
+ private String attrNameOperator = "=";
+ private String attrType;
+ private String attrTypeOperator = "=";
+ private String orderNum;
+ private String orderNumOperator = "=";
+ private String isEdit;
+ private String isEditOperator = "=";
+ private String creationUser;
+ private String creationUserOperator = "=";
+ private String validFlag;
+ private String validFlagOperator = "=";
+ private String creationTime;
+ private String creationTime1;
+ private String creationTime2;
+ private String creationTimeOperator = "=";
+ private String modifyTime;
+ private String modifyTime1;
+ private String modifyTime2;
+ private String modifyTimeOperator = "=";
+ private String attrLen;
+ private String attrLenOperator = "=";
+ private String[] idList;
+ private String notId;
+ private String sarType;
+ private String isSearch;
+ private String isWarn;
+}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/ISarStandAttrDetailsSearchService.java b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/ISarStandAttrDetailsSearchService.java
new file mode 100644
index 00000000..7676a3e2
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/ISarStandAttrDetailsSearchService.java
@@ -0,0 +1,24 @@
+package com.adc.da.search.sarStandAttrDetails.service;
+
+import com.adc.da.search.sarStandAttrDetails.entity.SarStandAttrDetails;
+import com.adc.da.search.sarStandAttrDetails.page.SarStandAttrDetailsEOPage;
+import com.adc.da.sys.common.SelectionResult;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ *
+ * 服务类
+ *
+ *
+ * @author super_liu
+ * @since 2021-06-01
+ */
+public interface ISarStandAttrDetailsSearchService extends IService {
+
+ List selectFileFieldForSel(String attrField);
+
+ List selectFileFieldForSel1(String attrField);
+
+}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/impl/SarStandAttrDetailsSearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/impl/SarStandAttrDetailsSearchServiceImpl.java
new file mode 100644
index 00000000..1e0e6aa5
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/sarStandAttrDetails/service/impl/SarStandAttrDetailsSearchServiceImpl.java
@@ -0,0 +1,39 @@
+package com.adc.da.search.sarStandAttrDetails.service.impl;
+
+import com.adc.da.search.sarStandAttrDetails.dao.SarStandAttrDetailsSearchDao;
+import com.adc.da.search.sarStandAttrDetails.entity.SarStandAttrDetails;
+import com.adc.da.search.sarStandAttrDetails.service.ISarStandAttrDetailsSearchService;
+import com.adc.da.sys.common.SelectionResult;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+/**
+ *
+ * 服务实现类
+ *
+ *
+ * @author super_liu
+ * @since 2021-06-01
+ */
+@Service
+public class SarStandAttrDetailsSearchServiceImpl extends ServiceImpl implements ISarStandAttrDetailsSearchService {
+
+ private static final Logger logger = LoggerFactory.getLogger(ISarStandAttrDetailsSearchService.class);
+
+ @Autowired
+ private SarStandAttrDetailsSearchDao dao;
+
+ public List selectFileFieldForSel(String attrField){
+ return dao.selectFileFieldForSel(attrField);
+ }
+ public List selectFileFieldForSel1(String attrField){
+ return dao.selectFileFieldForSel1(attrField);
+ }
+
+
+}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java
index 30b27b89..2e100440 100644
--- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java
+++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java
@@ -1,9 +1,8 @@
package com.adc.da.search.service.impl;
-import com.adc.da.person.dao.PersonSearchEODao;
import com.adc.da.search.entity.*;
import com.adc.da.search.service.SearchCenterService;
-import com.alibaba.fastjson.JSONArray;
+import com.adc.da.search.util.InitStandAttrSearchUtil;
import lombok.extern.slf4j.Slf4j;
import net.sf.json.JSONObject;
import org.apache.commons.lang3.StringUtils;
@@ -11,20 +10,14 @@ import org.elasticsearch.action.search.SearchRequestBuilder;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.action.search.SearchType;
import org.elasticsearch.client.transport.TransportClient;
-import org.elasticsearch.common.lucene.search.function.CombineFunction;
-import org.elasticsearch.common.lucene.search.function.FieldValueFactorFunction;
import org.elasticsearch.common.text.Text;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.index.query.RangeQueryBuilder;
-import org.elasticsearch.index.query.functionscore.FieldValueFactorFunctionBuilder;
-import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.aggregations.Aggregation;
import org.elasticsearch.search.aggregations.AggregationBuilders;
-import org.elasticsearch.search.aggregations.bucket.range.Range;
-import org.elasticsearch.search.aggregations.bucket.range.RangeAggregationBuilder;
import org.elasticsearch.search.aggregations.bucket.terms.StringTerms;
import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder;
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder;
@@ -34,9 +27,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
-import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
+import java.util.stream.Collectors;
@Component
@Slf4j
@@ -143,210 +136,32 @@ public class SearchCenterServiceImpl implements SearchCenterService {
return result;
}
- public BoolQueryBuilder querySeniorMsg (SeniorSearchInfoEO searchInfoEO, BoolQueryBuilder boolQueryBuilder) {
+ /**
+ * 自动匹配动态字段条件查询 ES
+ * @param searchInfoEO
+ * @param boolQueryBuilder
+ * @return
+ */
+ private BoolQueryBuilder querySeniorMsg(SeniorSearchInfoEO searchInfoEO, BoolQueryBuilder boolQueryBuilder) {
BoolQueryBuilder boolQueryBuilderMust = new BoolQueryBuilder();
- String advanceStr = searchInfoEO.getAdvanceSearchVOStr();
- List searchVOList = new ArrayList<>();
- if (StringUtils.isNotBlank(advanceStr)) {
- searchVOList = JSONArray.parseArray(advanceStr, SarAdvanceSearchVO.class);
- }
- if (searchVOList != null && !searchVOList.isEmpty()) {
- List sarAdvanceSearchVOS = new ArrayList<>();
- int size = searchVOList.size();
- for (SarAdvanceSearchVO searchVO1 : searchVOList) {
- SarAdvanceSearchVO sarAdvanceSearchVO = new SarAdvanceSearchVO();
- if ("XCXSSRQ".equals(searchVO1.getField())||"ZCCSSRQ".equals(searchVO1.getField())||"EOPSSRQ".equals(searchVO1.getField())){
- sarAdvanceSearchVO.setField(searchVO1.getField()+"1");
- sarAdvanceSearchVO.setConnect("OR");
- sarAdvanceSearchVO.setType("like");
- sarAdvanceSearchVO.setValue("TBD");
- sarAdvanceSearchVOS.add(sarAdvanceSearchVO);
- }
- }
- searchVOList.addAll(sarAdvanceSearchVOS);
- for (SarAdvanceSearchVO searchVO : searchVOList) {
- if ("stand_state".equals(searchVO.getField())){
- searchVO.setType("=");
- }
- String field = searchVO.getField();
- String value = searchVO.getValue();
- if ("WFSPJS".equals(field) || "SVPPS".equals(field)){
- value = value.replace(","," , ");
- }
- //发布时间范围
- if (StringUtils.isNotBlank(searchVO.getField()) &&("issue_time".equals(searchVO.getField()) || "put_time".equals(searchVO.getField()) || "FZRQ".equals(searchVO.getField())|| "FSRQ".equals(searchVO.getField()) ||"XCXSSRQ".equals(searchVO.getField())||"ZCCSSRQ".equals(searchVO.getField())||"EOPSSRQ".equals(searchVO.getField()))) {
- String fieldName = "";
- fieldName = searchVO.getField();
- switch (searchVO.getField()){
- case "issue_time" :
-// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", ""));
- boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword" , "TBD"));
- fieldName = ISSUE_TIME;
- break;
- case "put_time" :
-// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", ""));
- boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD"));
- fieldName = "put_time_data";
- break;
- case "XCXSSRQ" :
-// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", ""));
- boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD"));
- fieldName = "XCXSSRQ_data";
- break;
- case "ZCCSSRQ" :
-// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", ""));
- boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD"));
- fieldName = "ZCCSSRQ_data";
- break;
- case "EOPSSRQ" :
-// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", ""));
- boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD"));
- fieldName = "EOPSSRQ_data";
- break;
- default :
- break;
- }
- Long beginTime = 0L;
- Long endTime = 0L;
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- try {
- beginTime = sdf.parse("1970-01-01 00:00:00").getTime();
- } catch (ParseException e1) {
- e1.printStackTrace();
- }
- try {
- endTime = sdf.parse("2999-01-01 00:00:00").getTime();
- } catch (ParseException e1) {
- e1.printStackTrace();
- }
- Long starttime = 0L;
- Long endtime = 0L;
- try {
- starttime = sdf.parse(searchVO.getTimeSt() +" 00:00:00").getTime();
- starttime--;
- } catch (ParseException e) {
- try {
- starttime = sdf.parse("1970-01-01 00:00:00").getTime();
- } catch (ParseException e1) {
- e1.printStackTrace();
- }
- }
- try {
- endtime = sdf.parse(searchVO.getTimeEd()+" 23:59:59").getTime();
- endtime++;
- } catch (ParseException e) {
- try {
- endtime = sdf.parse("2999-01-01 00:00:00").getTime();
- } catch (ParseException e1) {
- e1.printStackTrace();
- }
- }
- if ("=".equals(searchVO.getType()) || "like".equals(searchVO.getType())) {
- RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(fieldName ).from(starttime).to(endtime).includeLower(true).includeUpper(true);
- if ("AND".equals(searchVO.getConnect())|| StringUtils.isBlank(searchVO.getConnect())) {
-// RangeQueryBuilder rangeQueryBuilder1 = QueryBuilders.rangeQuery(fieldName ).from(1L).to(starttime).includeLower(true).includeUpper(true);
-// RangeQueryBuilder rangeQueryBuilder2 = QueryBuilders.rangeQuery(fieldName ).from(endtime).to(endTime).includeLower(true).includeUpper(true);
-// boolQueryBuilder.mustNot(rangeQueryBuilder1);
-// boolQueryBuilder.mustNot(rangeQueryBuilder2);
-// boolQueryBuilder.mustNot(rangeQueryBuilder3);
- boolQueryBuilderMust.must(rangeQueryBuilder);
- }else{
- boolQueryBuilder.should(rangeQueryBuilder);
- }
- }else{
- if ("!=".equals(searchVO.getType())){
- RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(fieldName ).from(starttime).to(endtime).includeLower(true).includeUpper(true);
- if ("AND".equals(searchVO.getConnect()) || StringUtils.isBlank(searchVO.getConnect())) {
- boolQueryBuilder.mustNot(rangeQueryBuilder);
- }else{
- boolQueryBuilder.should(rangeQueryBuilder);
- }
- }
- }
- continue;
- }
- if (StringUtils.isNotBlank(field) && StringUtils.isNotBlank(value)) {
- String type = searchVO.getType();
- String connect = searchVO.getConnect();
- if ("stand_name".equals(field) || "laws_name".equals(field)) {
- field = "nameshow";
- } else if ("stand_state".equals(field) || "laws_state".equals(field) || "stand_status".equals(field)) {
- field = "statecode";
-// }else if ("FZRQ".equals(field)){
-// field = "FZRQString";
-// }else if ("FSRQ".equals(field)){
-// field = "FSRQString";
- }
- if (("FZRQString".equals(field) || "FSRQString".equals(field))){
- List values = new ArrayList<>(Arrays.asList(value.split("-")));
- if ("=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) {
- for (String va :values){
- boolQueryBuilderMust.must(QueryBuilders.wildcardQuery(field, "*"+va+"*"));
- }
- } else if ("=".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) {
- for (String va :values){
- boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+va+"*"));
- }
-// boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+value+"*"));
- } else if ("!=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) {
- if ("FSRQString".equals(field)){
- boolQueryBuilder.mustNot(QueryBuilders.matchQuery("FSRQDate", "*"+value.replace("-","")+"*"));
- }else{
- boolQueryBuilder.mustNot(QueryBuilders.matchQuery("FZRQDate", "*"+value.replace("-","")+"*"));
- }
-// boolQueryBuilder.mustNot(QueryBuilders.wildcardQuery(field, "*"+value+"*"));
- } else if ("like".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) {
- for (String va :values){
- boolQueryBuilderMust.must(QueryBuilders.wildcardQuery(field, "*"+va+"*"));
- }
-// boolQueryBuilder.must(QueryBuilders.wildcardQuery(field, "*"+value+"*"));
- } else if ("like".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) {
- for (String va :values){
- boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+va+"*"));
- }
-// boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+value+"*"));
- }
- continue;
- }
- if ("XCXSSRQ1".equals(searchVO.getField())||"ZCCSSRQ1".equals(searchVO.getField())||"EOPSSRQ1".equals(searchVO.getField())){
- searchVO.setField(searchVO.getField().substring(0,searchVO.getField().length()-1));
- field = searchVO.getField();
- }
- //外发审批角色的企标 等于 查询
-// if("WFSPJS".equals(field) && "=".equals(type)){
-// field = "WFSPJSField";
-// if (StringUtils.isNotBlank(value)){
-// value = value.replace(" , ","");
-// }
-// }
-// if("ZRBM".equals(field) && "=".equals(type)){
-// field = "ZRBMField";
-// if (StringUtils.isNotBlank(value)){
-// value = value.replace(" , ","");
-// }
-// }
- if ("FO".equals(field)){
- value = value + " ";
- }
-// if (StringUtils.isBlank(connect) && size > 1){
-// connect = "OR";
-// }
- if ("=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) {
- boolQueryBuilderMust.must(QueryBuilders.termQuery(field+".keyword", value));
- } else if ("=".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) {
- boolQueryBuilder.should(QueryBuilders.termQuery(field+".keyword", value));
- } else if ("!=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) {
-// boolQueryBuilder.mustNot(QueryBuilders.termQuery(field+".keyword", value));
- boolQueryBuilder.mustNot(QueryBuilders.wildcardQuery(field+".keyword", "*"+value+"*"));
- } else if ("like".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) {
- boolQueryBuilderMust.must(QueryBuilders.wildcardQuery(field+".keyword", "*"+value+"*"));
-// boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, value));
- } else if ("like".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) {
- boolQueryBuilder.should(QueryBuilders.wildcardQuery(field+".keyword", "*"+value+"*"));
- }
- }
+ String sarStandAttrEOStr = searchInfoEO.getSarStandAttrEOStr();
+ Map sarStandAttrMap = JSONObject.fromObject(sarStandAttrEOStr);
+
+ // MAP通过JAVA8新特性流过滤NULL值或对象
+ Map collectAttrMap = sarStandAttrMap.entrySet().stream().filter((e) -> e.getValue() != null).collect(Collectors.toMap(
+ Map.Entry::getKey,
+ Map.Entry::getValue));
+
+ String fieldInfo = InitStandAttrSearchUtil.queryField;
+ List fieldInfoList = Arrays.asList(fieldInfo .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList());
+
+ // 动态存储属性字段 ---1
+ for (String field : fieldInfoList) {
+ if(collectAttrMap.containsKey(field)){
+ boolQueryBuilderMust.must(QueryBuilders.fuzzyQuery(field, "*"+collectAttrMap.get(field)+"*"));
}
}
+
boolQueryBuilder.should(boolQueryBuilderMust);
return boolQueryBuilder;
}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/util/InitStandAttrSearchUtil.java b/adc-da-search/src/main/java/com/adc/da/search/util/InitStandAttrSearchUtil.java
new file mode 100644
index 00000000..84b94060
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/util/InitStandAttrSearchUtil.java
@@ -0,0 +1,219 @@
+package com.adc.da.search.util;
+
+import com.adc.da.search.sarStandAttrDetails.entity.SarStandAttrDetails;
+import com.adc.da.search.sarStandAttrDetails.service.ISarStandAttrDetailsSearchService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.apache.commons.lang.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.ApplicationArguments;
+import org.springframework.boot.ApplicationRunner;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 启动项目时加载标准属性信息
+ * @Author: super_liu
+ * date: 2020/9/7 10:54
+ */
+
+@Component
+public class InitStandAttrSearchUtil implements ApplicationRunner {
+
+ private static final Logger logger = LoggerFactory.getLogger(InitStandAttrSearchUtil.class);
+
+ @Autowired
+ private ISarStandAttrDetailsSearchService sarStandAttrDetailsEOService;
+
+ private final static List standTypeList = new ArrayList<>();
+ private final static List lawsTypeList = new ArrayList<>();
+ public final static List standStateList = new ArrayList<>();
+ static {
+ standTypeList.add(SarTypeEnum.STAND.getValue());
+ standTypeList.add(SarTypeEnum.INLAND_STAND.getValue());
+ standTypeList.add(SarTypeEnum.FOREIGN_STAND.getValue());
+ lawsTypeList.add(SarTypeEnum.LAWS.getValue());
+ lawsTypeList.add(SarTypeEnum.INLAND_LAWS.getValue());
+ lawsTypeList.add(SarTypeEnum.FOREIGN_LAWS.getValue());
+ standStateList.add("DRAFT");
+ standStateList.add("ADVICE");
+ standStateList.add("RADYSUBMIT");
+ standStateList.add("SUBMIT");
+ standStateList.add("FJNVYX9Q7J");
+ standStateList.add("ZTJJSS");
+ standStateList.add("TOVOID");
+ standStateList.add("ZTXXYX");
+ standStateList.add("5E5Z3CELX6");
+ standStateList.add("N5KLTFLNRC");
+ }
+
+ // 标准属性字段信息
+ public static String queryField = ""; //所有属性表需要查询的字段以逗号分隔
+ public static String queryFieldNames = ""; //所有属性表需要查询的字段名以逗号分隔
+ public static List queryFieldList = new ArrayList<>(); //所有属性表需要查询的字段
+ public static List selectionFieldList = new ArrayList<>(); // 属性表下拉选项类型字段
+ public static List fileFieldList = new ArrayList<>(); // 属性表文件类型字段
+ public static List clobFieldList = new ArrayList<>(); // 属性表clob类型字段
+ public static List timeFieldList = new ArrayList<>(); // 属性表日期类型字段
+ public static List multiTimeFieldList = new ArrayList<>(); // 属性表多个日期类型字段
+ public static List numFieldList = new ArrayList<>(); // 属性表数字类型字段
+ public static List standInlandAttrFieldList = new ArrayList<>(); // 全部国内标准字段属性
+ public static List standForeignAttrFieldList = new ArrayList<>(); // 全部海外标准字段属性
+ public static Map selectFieldMap = new HashMap<>(); // 下拉属性字段及选项值
+
+ // 政策属性字段信息
+ public static String queryFieldLaws = ""; //所有属性表需要查询的字段以逗号分隔
+ public static String queryFieldNamesLaws = ""; //所有属性表需要查询的字段名以逗号分隔
+ public static List queryFieldListLaws = new ArrayList<>(); //所有属性表需要查询的字段
+ public static List selectionFieldListLaws = new ArrayList<>(); // 属性表下拉选项类型字段
+ public static List fileFieldListLaws = new ArrayList<>(); // 属性表文件类型字段
+ public static List clobFieldListLaws = new ArrayList<>(); // 属性表clob类型字段
+ public static List timeFieldListLaws = new ArrayList<>(); // 属性表日期类型字段
+ public static List multiTimeFieldListLaws = new ArrayList<>(); // 属性表多个日期类型字段
+ public static List numFieldListLaws = new ArrayList<>(); // 属性表数字类型字段
+ public static List lawsInlandAttrFieldList = new ArrayList<>(); // 属性表数字类型字段
+ public static List lawsForeignAttrFieldList = new ArrayList<>(); // 全部政策字段属性
+ public static Map selectFieldMapLaws = new HashMap<>(); // 下拉属性字段及选项值
+
+ // 企标属性字段信息
+ public static String queryFieldBuss = ""; //所有属性表需要查询的字段以逗号分隔
+ public static String queryFieldNamesBuss = ""; //所有属性表需要查询的字段名以逗号分隔
+ public static List queryFieldListBuss = new ArrayList<>(); //所有属性表需要查询的字段
+ public static List selectionFieldListBuss = new ArrayList<>(); // 属性表下拉选项类型字段
+ public static List fileFieldListBuss = new ArrayList<>(); // 属性表文件类型字段
+ public static List clobFieldListBuss = new ArrayList<>(); // 属性表clob类型字段
+ public static List timeFieldListBuss = new ArrayList<>(); // 属性表日期类型字段
+ public static List multiTimeFieldListBuss = new ArrayList<>(); // 属性表多个日期类型字段
+ public static List numFieldListBuss = new ArrayList<>(); // 属性表数字类型字段
+ public static List bussAttrFieldList = new ArrayList<>(); // 全部企标字段属性
+ public static Map selectFieldMapBuss = new HashMap<>(); // 下拉属性字段及选项值
+
+ @Override
+ public void run(ApplicationArguments args) throws Exception {
+ logger.info("项目启动时加载-搜索中心-查询标准属性类!");
+ // 属性表需要查询的字段
+ StringBuilder fieldInfoBuilder = new StringBuilder();
+ StringBuilder fieldInfoBuilderLaws = new StringBuilder();
+ StringBuilder fieldInfoBuilderBuss = new StringBuilder();
+ StringBuilder fieldInfoNameBuilder = new StringBuilder();
+ StringBuilder fieldInfoNameBuilderLaws = new StringBuilder();
+ StringBuilder fieldInfoNameBuilderBuss = new StringBuilder();
+ QueryWrapper qw = new QueryWrapper();
+ qw.eq("VALID_FLAG","0");
+ qw.orderByAsc("ORDER_NUM");
+ List getDetailsList = sarStandAttrDetailsEOService.list(qw);
+ if (getDetailsList != null && !getDetailsList.isEmpty()) {
+ logger.info("项目启动时加载-搜索中心-查询标准属性类--查询到" + getDetailsList.size() + "条属性字段数据!");
+ for (SarStandAttrDetails detailsEO : getDetailsList) {
+ String sarType = detailsEO.getSarType();
+ String attrType = detailsEO.getAttrType();
+ if (standTypeList.contains(sarType)) {
+ if (!SarTypeEnum.FOREIGN_STAND.getValue().equals(sarType)) {
+ standInlandAttrFieldList.add(detailsEO);
+ }
+ if (!SarTypeEnum.INLAND_STAND.getValue().equals(sarType)) {
+ standForeignAttrFieldList.add(detailsEO);
+ }
+ fieldInfoBuilder.append(detailsEO.getAttrField() + ",");
+ fieldInfoNameBuilder.append(detailsEO.getAttrName() + ",");
+ queryFieldList.add(detailsEO.getAttrField());
+ if (StandAttrTypeEnum.SELECT_OPTION.getValue().equals(attrType) || StandAttrTypeEnum.SEL_OPTS.getValue().equals(attrType)) {
+ selectionFieldList.add(detailsEO.getAttrField());
+ selectFieldMap.put(detailsEO.getAttrField(),detailsEO.getSelVal());
+ } else if (StandAttrTypeEnum.FILE.getValue().equals(attrType)) {
+ fileFieldList.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.TEXTAREA.getValue().equals(attrType) && detailsEO.getAttrLen() >= 4000) {
+ clobFieldList.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.DATE_PICKER.getValue().equals(attrType)) {
+ timeFieldList.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.DATE_PIC_OPTS.getValue().equals(attrType)) {
+ multiTimeFieldList.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.INPUT_NUM.getValue().equals(attrType)) {
+ numFieldList.add(detailsEO.getAttrField());
+ }
+ } else if (lawsTypeList.contains(sarType)) {
+ if (!SarTypeEnum.FOREIGN_LAWS.getValue().equals(sarType)) {
+ lawsInlandAttrFieldList.add(detailsEO);
+ }
+ if (!SarTypeEnum.INLAND_LAWS.getValue().equals(sarType)) {
+ lawsForeignAttrFieldList.add(detailsEO);
+ }
+ fieldInfoBuilderLaws.append(detailsEO.getAttrField() + ",");
+ fieldInfoNameBuilderLaws.append(detailsEO.getAttrName() + ",");
+ queryFieldListLaws.add(detailsEO.getAttrField());
+ if (StandAttrTypeEnum.SELECT_OPTION.getValue().equals(attrType) || StandAttrTypeEnum.SEL_OPTS.getValue().equals(attrType)) {
+ selectionFieldListLaws.add(detailsEO.getAttrField());
+ selectFieldMapLaws.put(detailsEO.getAttrField(),detailsEO.getSelVal());
+ } else if (StandAttrTypeEnum.FILE.getValue().equals(attrType)) {
+ fileFieldListLaws.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.TEXTAREA.getValue().equals(attrType) && detailsEO.getAttrLen() >= 4000) {
+ clobFieldListLaws.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.DATE_PICKER.getValue().equals(attrType)) {
+ timeFieldListLaws.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.DATE_PIC_OPTS.getValue().equals(attrType)) {
+ multiTimeFieldListLaws.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.INPUT_NUM.getValue().equals(attrType)) {
+ numFieldListLaws.add(detailsEO.getAttrField());
+ }
+ } else if (SarTypeEnum.BUSS.getValue().equals(sarType)) {
+ bussAttrFieldList.add(detailsEO);
+ fieldInfoBuilderBuss.append(detailsEO.getAttrField() + ",");
+ fieldInfoNameBuilderBuss.append(detailsEO.getAttrName() + ",");
+ queryFieldListBuss.add(detailsEO.getAttrField());
+ if (StandAttrTypeEnum.SELECT_OPTION.getValue().equals(attrType) || StandAttrTypeEnum.SEL_OPTS.getValue().equals(attrType)) {
+ selectionFieldListBuss.add(detailsEO.getAttrField());
+ selectFieldMapBuss.put(detailsEO.getAttrField(),detailsEO.getSelVal());
+ } else if (StandAttrTypeEnum.FILE.getValue().equals(attrType)) {
+ fileFieldListBuss.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.TEXTAREA.getValue().equals(attrType) && detailsEO.getAttrLen() >= 4000) {
+ clobFieldListBuss.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.DATE_PICKER.getValue().equals(attrType)) {
+ timeFieldListBuss.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.DATE_PIC_OPTS.getValue().equals(attrType)) {
+ multiTimeFieldListBuss.add(detailsEO.getAttrField());
+ } else if (StandAttrTypeEnum.INPUT_NUM.getValue().equals(attrType)) {
+ numFieldListBuss.add(detailsEO.getAttrField());
+ }
+ }
+ }
+ queryField = fieldInfoBuilder.toString();
+ queryFieldLaws = fieldInfoBuilderLaws.toString();
+ queryFieldBuss = fieldInfoBuilderBuss.toString();
+ if (StringUtils.isNotBlank(queryField)) {
+ queryField = queryField.substring(0,queryField.length()-1);
+ }
+ if (StringUtils.isNotBlank(queryFieldLaws)) {
+ queryFieldLaws = queryFieldLaws.substring(0,queryFieldLaws.length()-1);
+ }
+ if (StringUtils.isNotBlank(queryFieldBuss)) {
+ queryFieldBuss = queryFieldBuss.substring(0,queryFieldBuss.length()-1);
+ }
+ logger.info("项目启动时加载-搜索中心-查询标准属性类--查询到属性字段为:" + queryField);
+ logger.info("项目启动时加载-搜索中心-查询政策属性类--查询到属性字段为:" + queryFieldLaws);
+ logger.info("项目启动时加载-搜索中心-查询企标属性类--查询到属性字段为:" + queryFieldBuss);
+ queryFieldNames = fieldInfoNameBuilder.toString();
+ queryFieldNamesLaws = fieldInfoNameBuilderLaws.toString();
+ queryFieldNamesBuss = fieldInfoNameBuilderBuss.toString();
+ if (StringUtils.isNotBlank(queryFieldNames)) {
+ queryFieldNames = queryFieldNames.substring(0,queryFieldNames.length()-1);
+ }
+ if (StringUtils.isNotBlank(queryFieldNamesLaws)) {
+ queryFieldNamesLaws = queryFieldNamesLaws.substring(0,queryFieldNamesLaws.length()-1);
+ }
+ if (StringUtils.isNotBlank(queryFieldNamesBuss)) {
+ queryFieldNamesBuss = queryFieldNamesBuss.substring(0,queryFieldNamesBuss.length()-1);
+ }
+ logger.info("项目启动时加载-搜索中心-查询标准属性类--查询到属性字段名称为:" + queryFieldNames);
+ logger.info("项目启动时加载-搜索中心-查询政策属性类--查询到属性字段名称为:" + queryFieldNamesLaws);
+ logger.info("项目启动时加载-搜索中心-查询企标属性类--查询到属性字段名称为:" + queryFieldNamesBuss);
+ } else {
+ logger.error("项目启动时加载-搜索中心-查询标准属性类--未查询到属性字段数据!");
+ }
+ }
+
+}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/util/SarTypeEnum.java b/adc-da-search/src/main/java/com/adc/da/search/util/SarTypeEnum.java
new file mode 100644
index 00000000..6a0731ca
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/util/SarTypeEnum.java
@@ -0,0 +1,43 @@
+package com.adc.da.search.util;
+
+/**
+ * 标准法规分类
+ * @author gaoyan
+ * date 2018/09/19
+ */
+public enum SarTypeEnum {
+
+ INLAND_STAND("INLAND_STAND","国内标准法规"),INLAND_LAWS("INLAND_LAWS","国内政策"),
+ FOREIGN_STAND("FOREIGN_STAND","国外标准法规"),FOREIGN_LAWS("FOREIGN_LAWS","国外政策"),
+ STAND("STAND","国内外标准法规"),
+ LAWS("LAWS","国内外政策"),
+ BUSINESS("BUSINESS","企业标准"),
+ BUSS("BUSS","企业标准"),
+ SPLIT("SPLIT","标准拆分"),
+ ACCESS("ACCESS","标准法规清单"),
+ // 增加清单临时分类代码 后续通过同步按钮同步时切换类型
+ INLAND_STAND_ACCESS("INLAND_STAND_ACCESS","国内标准法规清单"),
+ FOREIGN_STAND_ACCESS("FOREIGN_STAND_ACCESS","国外标准法规清单"),
+ FOREIGN_LAWS_ACCESS("FOREIGN_LAWS_ACCESS","国内外政策清单"),
+ BUSS_ACCESS("BUSS","企业标准清单"),
+ PRODUCT("PRODUCT","车型/项目库"),
+ RECORDS("RECORDS","企标备案库");
+
+ private String value;
+ private String lable;
+
+ private SarTypeEnum(String value, String lable) {
+ this.value = value;
+ this.lable = lable;
+ }
+ public String getValue() {
+ return value;
+ }
+ public String getLable() {
+ return lable;
+ }
+
+
+
+
+}
diff --git a/adc-da-search/src/main/java/com/adc/da/search/util/StandAttrTypeEnum.java b/adc-da-search/src/main/java/com/adc/da/search/util/StandAttrTypeEnum.java
new file mode 100644
index 00000000..0d9d6496
--- /dev/null
+++ b/adc-da-search/src/main/java/com/adc/da/search/util/StandAttrTypeEnum.java
@@ -0,0 +1,28 @@
+package com.adc.da.search.util;
+
+/**
+ * @Description: 属性类型枚举类
+ * @Author: super_liu
+ * date: 2020/8/17 17:02
+ */
+public enum StandAttrTypeEnum {
+
+ INPUT_STR("INPUT_STR","输入框(字符串)"),INPUT_NUM("INPUT_NUM","输入框(数字)"),
+ SELECT_OPTION("SEL_OPTION","单选下拉框"),SEL_OPTS("SEL_OPTS","多选下拉框"),DATE_PICKER("DATE_PICKER","日期选择"),
+ DATE_PIC_OPTS("DATE_PIC_OPTS","多日期选择"),FILE("FILE","文件"),
+ TEXTAREA("TEXTAREA","文本框") ;
+
+ private String value;
+ private String lable;
+
+ private StandAttrTypeEnum(String value, String lable) {
+ this.value = value;
+ this.lable = lable;
+ }
+ public String getValue() {
+ return value;
+ }
+ public String getLable() {
+ return lable;
+ }
+}