diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 4bed6d78..a21e301a 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test2?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false #spring.datasource.url = jdbc:mysql://10.96.10.171/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root @@ -14,10 +14,10 @@ spring.application.name=FotonLAWSSystem application.code=20200101 application.center=1 #============================================== -##Eruept -#eureka.client.allow-redirects=true -#eureka.client.register-with-eureka=true -#eureka.client.service-url.defaultZone=http://101.36.227.25:8761/eureka/ +#Eruept +eureka.client.allow-redirects=true +eureka.client.register-with-eureka=true +eureka.client.service-url.defaultZone=http://62.234.136.153:8761/eureka/ #============================================== # 邮箱配置1 @@ -64,4 +64,4 @@ OCR.ocrPath=D:/APPSOFT/LAWSOCRDEMO/OCRFILE/ # OCR文件请求下载或在线预览时URL OCR.ocrDownPath=http://106.2.13.189:8089/downfile/ OCR.times=20 -OCR.convertType=BOTH \ No newline at end of file +OCR.convertType=BOTH diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index 3512876a..98a129a5 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -39,7 +39,7 @@ eureka.client.fetch-registry=true #eureka.client.service-url.defaultZone=http://127.0.0.1:8671/eureka/ #eureka.client.service-url.defaultZone=http://10.5.116.172:8672/eureka/ -eureka.client.service-url.defaultZone=http://101.36.227.25:8761/eureka/ +eureka.client.service-url.defaultZone=http://62.234.136.153:8761/eureka/ # 请求连接的超时时间 默认的时间为 1 秒 ribbon.ConnectTimeout=500000 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; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java b/adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java index 164faf75..0ec72890 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java @@ -5,6 +5,7 @@ import com.adc.da.slrs.otSvpps.service.IOtSvppsService; import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; import com.adc.da.slrs.sarStandardsInfo.service.ISarStandardsInfoService; import com.adc.da.slrs.sysInfo.service.SysInfoEOService; +import com.adc.da.utils.util.InitStandAttrUtil; import com.rabbitmq.client.Channel; import net.sf.json.JSONObject; import org.apache.commons.lang.StringUtils; @@ -21,12 +22,8 @@ import org.springframework.stereotype.Component; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; @Component public class SendStandMQService { @@ -73,19 +70,17 @@ public class SendStandMQService { String sarStandards = standMap.get("sarStandards").toString(); JSONObject jsonobject = JSONObject.fromObject(sarStandards); SarStandardsInfo infoEO = (SarStandardsInfo) JSONObject.toBean(jsonobject,SarStandardsInfo.class); - String attr = infoEO.getSarStandAttrEOStr(); - JSONObject jsonobject1 = JSONObject.fromObject(attr); - Map map = (Map)jsonobject1; - String GZZXX = String.valueOf(map.get("GZZXX")); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String sarStandAttrEOStr = infoEO.getSarStandAttrEOStr(); + Map attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); + // 往索引表中插入数据 String getCodeName = ""; Map saveMap = new HashMap<>(); String baseSearchContent = ""; - // 开始存放数据 + // 开始存放数据 -------- 国内外标准 ----------- saveMap.put("id",infoEO.getId()); - saveMap.put("BYYBJ", map.getOrDefault("BYYBJ", "")); - saveMap.put("BDTBH", map.getOrDefault("BDTBH", "")); + saveMap.put("BYYBJ", attrInfoMap.getOrDefault("BYYBJ", "")); + saveMap.put("BDTBH", attrInfoMap.getOrDefault("BDTBH", "")); saveMap.put("country",infoEO.getCountry()); if (StringUtils.isNotEmpty(infoEO.getCountry())) { @@ -109,41 +104,16 @@ public class SendStandMQService { saveMap.put("standEnName",infoEO.getStandEnName()); saveMap.put("stand_en_name",infoEO.getStandEnName()); - if ("1".equals(infoEO.getIsRelateAccess())) { - saveMap.put("isRelateAccess","A" ); - }else{ - saveMap.put("isRelateAccess","B" ); - } if (StringUtils.isNotEmpty(infoEO.getStandState())) { String codeName = sysInfoEOService.getDicNamesByCodes(infoEO.getStandState()); saveMap.put("standstateshow",codeName); } - saveMap.put("issueTime",infoEO.getIssueTime()); + saveMap.put("issueTime",dateFormatToStr(infoEO.getIssueTime())); - String newDate = infoEO.getIssueTime(); - if (StringUtils.isNotBlank(infoEO.getIssueTime()) && StringUtils.isNotBlank(infoEO.getIssueTime().trim()) && infoEO.getIssueTime().trim().length()>10) { - newDate = infoEO.getIssueTime().trim().substring(0,10); - } - - saveMap.put("issue_time",newDate); - Date issue_time_data = null; - if (StringUtils.isNotBlank(infoEO.getIssueTime())) { - try { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - issue_time_data = format.parse(newDate+" 00:00:00"); - } catch (ParseException ignored) { - } - } - if (issue_time_data != null) { - saveMap.put("issue_time_data",issue_time_data.getTime()); - }else{ - saveMap.put("issue_time_data",0L); - } saveMap.put("synopsis",infoEO.getSynopsis()); saveMap.put("standType",infoEO.getStandType()); + // 自定义属性字段 - String sarStandAttrEOStr = infoEO.getSarStandAttrEOStr(); - Map attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); if (attrInfoMap != null && !attrInfoMap.isEmpty()) { attrInfoMap = sysInfoEOService.changeSelectInfo(attrInfoMap, "stand",baseSearchContent); saveMap.putAll(attrInfoMap); @@ -154,109 +124,15 @@ public class SendStandMQService { saveMap.put("content",infoEO.getFileIds()); saveMap.put("CHJL",infoEO.getCHJL()); - String SVPPSSting = ""; - if (attrInfoMap != null) { - if (attrInfoMap.containsKey("SVPPS")){ - String svpps = String.valueOf(attrInfoMap.get("SVPPS")); - List ids = new ArrayList<>(Arrays.asList(svpps.split(","))); - for (String id: ids){ - String num = ""; - try { - OtSvpps otSvppsEO = otSvppsEOService.getById(id); - if (null != otSvppsEO) { - if ("NA".equals(otSvppsEO.getTNum())) { - if ("NA".equals(otSvppsEO.getSNum())) { - num = otSvppsEO.getFNum(); - } else { - num = otSvppsEO.getSNum(); - } - } else { - num = otSvppsEO.getTNum(); - } - } - if ("".equals(SVPPSSting)){ - SVPPSSting = num; - }else { - SVPPSSting = SVPPSSting + "," + num; - } - } catch (Exception e) { - e.printStackTrace(); - } - } - saveMap.put("SVPPSName",SVPPSSting); - } + String fieldInfo = InitStandAttrUtil.queryField; + List fieldInfoList = Arrays.asList(fieldInfo .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); + + // 动态存储属性字段 + for (String field : fieldInfoList) { + saveMap.put(field,attrInfoMap.getOrDefault(field,"")); } - Date XCXSSRQ_data = null; - if (StringUtils.isNotBlank(String.valueOf(saveMap.get("XCXSSRQ")))) { - try { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - if (String.valueOf(saveMap.get("XCXSSRQ")).trim().length()>10) { - XCXSSRQ_data = format.parse(String.valueOf(saveMap.get("XCXSSRQ")).trim().substring(0,10) + " 00:00:00"); - saveMap.put("XCXSSRQ",String.valueOf(saveMap.get("XCXSSRQ")).trim().substring(0,10)); - }else{ - XCXSSRQ_data = format.parse(String.valueOf(saveMap.get("XCXSSRQ")).trim() + " 00:00:00"); - saveMap.put("XCXSSRQ",String.valueOf(saveMap.get("XCXSSRQ")).trim()); - } - } catch (ParseException ignored) { - } - } - if (XCXSSRQ_data != null) { - saveMap.put("XCXSSRQ_data",XCXSSRQ_data.getTime()); - }else{ - saveMap.put("XCXSSRQ_data",0L); - } - saveMap.put("XCXSSRQ",String.valueOf(saveMap.get("XCXSSRQ")+" ")); - - Date ZCCSSRQ_data = null; - if (StringUtils.isNotBlank(String.valueOf(saveMap.get("ZCCSSRQ")))) { - try { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - if (String.valueOf(saveMap.get("ZCCSSRQ")).trim().length()>10) { - ZCCSSRQ_data = format.parse(String.valueOf(saveMap.get("ZCCSSRQ")).trim().substring(0, 10) + " 00:00:00"); - saveMap.put("ZCCSSRQ",String.valueOf(saveMap.get("ZCCSSRQ")).trim().substring(0, 10)); - }else { - ZCCSSRQ_data = format.parse(String.valueOf(saveMap.get("ZCCSSRQ")).trim() + " 00:00:00"); - saveMap.put("ZCCSSRQ",String.valueOf(saveMap.get("ZCCSSRQ")).trim()); - } - } catch (ParseException ignored) { - } - } - if (ZCCSSRQ_data != null) { - saveMap.put("ZCCSSRQ_data",ZCCSSRQ_data.getTime()); - }else{ - saveMap.put("ZCCSSRQ_data",0L); - } - saveMap.put("ZCCSSRQ",String.valueOf(saveMap.get("ZCCSSRQ")+" ")); - - Date EOPSSRQ_data = null; - String ESSRQ= null; - if (StringUtils.isNotBlank(String.valueOf(saveMap.get("EOPSSRQ")))) { - try { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - if (String.valueOf(saveMap.get("EOPSSRQ")).trim().length()>10){ - ESSRQ = String.valueOf(saveMap.get("EOPSSRQ")).trim().substring(0,10); - }else { - ESSRQ = String.valueOf(saveMap.get("EOPSSRQ")).trim(); - } - EOPSSRQ_data = format.parse(ESSRQ + " 00:00:00"); - } catch (ParseException ignored) { - } - map.put("EOPSSRQ",ESSRQ); - } - if (EOPSSRQ_data != null) { - saveMap.put("EOPSSRQ_data",EOPSSRQ_data.getTime()); - }else{ - saveMap.put("EOPSSRQ_data",0L); - } - saveMap.put("EOPSSRQ",String.valueOf(saveMap.get("EOPSSRQ")+" ")); - - if (map.containsKey("DXBZ")){ - saveMap.put("DXBZ",map.get("DXBZ")); - }else{ - saveMap.put("DXBZ",""); - } //当建立代替时,产生的没有文件的问题 if (StringUtils.isBlank(String.valueOf(saveMap.get("content")))) { String context = String.valueOf(saveMap.get("FBGBJBD")) + "," @@ -265,13 +141,13 @@ public class SendStandMQService { + String.valueOf(saveMap.get("BPG")) + "," + String.valueOf(saveMap.get("CA")) + "," + String.valueOf(saveMap.get("SSG")) + "," + + String.valueOf(saveMap.get("JDWJ")) + "," + + String.valueOf(saveMap.get("XGD")) + "," + + String.valueOf(saveMap.get("KWJ")) + "," + String.valueOf(saveMap.get("ZBJBD")); context = context.replace(",,", ","); saveMap.put("content", context); } - if (StringUtils.isNotBlank(String.valueOf(saveMap.get("FO"))) && !"null".equals(String.valueOf(saveMap.get("FO")))){ - saveMap.put("FO",String.valueOf(saveMap.get("FO"))+" "); - } if("add".equals(addOrUpdate)){ sarStandardsInfoService.insertIntoIndexForMap(saveMap); } else { @@ -279,6 +155,20 @@ public class SendStandMQService { } } + private String dateFormatToStr(String dateStr){ + if(dateStr == null || dateStr.equals("")){ + return ""; + } + String dateToStr = ""; + try { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + dateToStr = dateFormat.format(dateFormat.parse(dateStr.trim().substring(0,10))); + }catch (Exception e){ + e.getMessage(); + } + return dateToStr; + } + public Map dealNumberMsg (Map saveMap,SarStandardsInfo infoEO,String getCodeName) { if(StringUtils.isNotEmpty(infoEO.getStandYear())){ String number = getCodeName + " " + infoEO.getStandNumber() + "-" + infoEO.getStandYear(); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaAllController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaAllController.java index cf6e9944..0c2868c0 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaAllController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaAllController.java @@ -52,6 +52,14 @@ public class SarPublicIdeaAllController extends BaseController return Result.success("200",publicList); } + + @ApiOperation(value = "查询全部意见") + @GetMapping("/checkIsShow") + public ResponseMessage checkIsShow(DetAllStandDto detAllStandDto){ + String publicList =sarPublicIdeaAllImpl.checkIsShow(detAllStandDto); + return Result.success("200",publicList); + } + @ApiOperation(value = "增加意见") @PostMapping("/insetStand") public ResponseMessage addAllStand(SarPublicIdeaAll sar){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaController.java index b5a9a254..35f62d53 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/controller/SarPublicIdeaController.java @@ -17,6 +17,7 @@ import com.adc.da.base.web.BaseController; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; /** @@ -68,6 +69,16 @@ public class SarPublicIdeaController extends BaseController { @PostMapping("/addSarPublicIdea") public ResponseMessage addSarPublicIdea(@RequestBody SarPublicIdea sarPublicIdea){ try{ + Calendar c = Calendar.getInstance(); + c.setTime(sarPublicIdea.getStartTime()); + c.add(Calendar.DAY_OF_MONTH, 1);// 今天+1天 + sarPublicIdea.setStartTime(c.getTime()); + + Calendar c2 = Calendar.getInstance(); + c2.setTime(sarPublicIdea.getEndTime()); + c2.add(Calendar.DAY_OF_MONTH, 2);// 今天+1天 + sarPublicIdea.setEndTime(c2.getTime()); + sarPublicIdeaService.save(sarPublicIdea); }catch(Exception e){ return Result.error(); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/DetAllStandDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/DetAllStandDto.java index a7541e83..e0da9d35 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/DetAllStandDto.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/DetAllStandDto.java @@ -9,4 +9,5 @@ public class DetAllStandDto { String cid; String userId; String endTime; + String Account; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java index 65ad075f..dfdb027e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java @@ -26,4 +26,5 @@ public interface ISarPublicIdeaAllService extends IService { String updateById(SarPublicIdeaAll sarPublicIdeaAll, String autUserid); String delete(DelStandDto delStandDto); String del(String id); + String checkIsShow(DetAllStandDto detAllStandDto); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java index 2d75de77..7f34cc6c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java @@ -3,17 +3,17 @@ package com.adc.da.slrs.sarStandIdea.service.Impl; import com.adc.da.slrs.sarLawsDetailedList.Util.BeanConverUtil; import com.adc.da.slrs.sarStandIdea.dao.SarPublicIdeaAllDao; -import com.adc.da.slrs.sarStandIdea.entity.DelStandDto; -import com.adc.da.slrs.sarStandIdea.entity.DetAllStandDto; -import com.adc.da.slrs.sarStandIdea.entity.SarPublicIdeaAll; -import com.adc.da.slrs.sarStandIdea.entity.SarPublicIdeaAllSUD; +import com.adc.da.slrs.sarStandIdea.entity.*; import com.adc.da.slrs.sarStandIdea.service.ISarPublicIdeaAllService; +import com.adc.da.sys.entity.LoginInfoEO; +import com.adc.da.util.LoginUserUtil; import com.adc.da.util.UUIDUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -25,7 +25,7 @@ import java.util.List; /** *

- * 服务实现类 + * 服务实现类 *

* * @author super_liu @@ -38,10 +38,9 @@ public class SarPublicIdeaAllServiceImpl extends ServiceImpl selectAll(DetAllStandDto detAllStandDto){ - if (detAllStandDto.getEndTime()!=null){ + public IPage selectAll(DetAllStandDto detAllStandDto) { + if (detAllStandDto.getEndTime() != null) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date Time = null; try { @@ -50,18 +49,24 @@ public class SarPublicIdeaAllServiceImpl extends ServiceImpl wrapper = new QueryWrapper<>(); - wrapper.eq("CID",detAllStandDto.getCid()); - Page page = new Page<>(detAllStandDto.getPage(),detAllStandDto.getSize()); + wrapper.eq("CID", detAllStandDto.getCid()); + Page page = new Page<>(detAllStandDto.getPage(), detAllStandDto.getSize()); IPage userIPage = sarPublicIdeaAllDao.selectPage(page, wrapper); - System.out.println("总条数"+userIPage.getTotal()); - System.out.println("总页数"+userIPage.getPages()); - List list= userIPage.getRecords(); + System.out.println("总条数" + userIPage.getTotal()); + System.out.println("总页数" + userIPage.getPages()); + List list = userIPage.getRecords(); List list1 = new ArrayList<>(); - list1 = BeanConverUtil.converList(list, SarPublicIdeaAllSUD.class); - for (SarPublicIdeaAllSUD sud:list1){ - if (Time.compareTo(new Date())>=0)sud.setIdeaKey(0); - else {sud.setIdeaKey(1);} - } + List partTwo = new ArrayList<>(); + list.forEach(sarPublicIdeaAll -> { + SarPublicIdeaAllSUD sarPublicIdeaAllSUD=new SarPublicIdeaAllSUD(); + BeanUtils.copyProperties(sarPublicIdeaAll,sarPublicIdeaAllSUD); + if (sarPublicIdeaAll.getUserId().equals(detAllStandDto.getUserId())){ + list1.add(sarPublicIdeaAllSUD); + }else { + partTwo.add(sarPublicIdeaAllSUD); + } + }); + list1.addAll(partTwo); IPage userIPage1 = new Page<>(); userIPage1.setPages(userIPage.getPages()); userIPage1.setSize(userIPage.getSize()); @@ -69,19 +74,26 @@ public class SarPublicIdeaAllServiceImpl extends ServiceImpl wrapper = new QueryWrapper<>(); - wrapper.eq("CID",detAllStandDto.getCid()); - Page page = new Page<>(detAllStandDto.getPage(),detAllStandDto.getSize()); + wrapper.eq("CID", detAllStandDto.getCid()); + Page page = new Page<>(detAllStandDto.getPage(), detAllStandDto.getSize()); IPage userIPage = sarPublicIdeaAllDao.selectPage(page, wrapper); - System.out.println("总条数"+userIPage.getTotal()); - System.out.println("总页数"+userIPage.getPages()); - List list= userIPage.getRecords(); + System.out.println("总条数" + userIPage.getTotal()); + System.out.println("总页数" + userIPage.getPages()); + List list = userIPage.getRecords(); List list1 = new ArrayList<>(); - list1 = BeanConverUtil.converList(list, SarPublicIdeaAllSUD.class); - for (SarPublicIdeaAllSUD sud:list1){ - sud.setIdeaKey(0); - } + List partTwo = new ArrayList<>(); + list.forEach(sarPublicIdeaAll -> { + SarPublicIdeaAllSUD sarPublicIdeaAllSUD=new SarPublicIdeaAllSUD(); + BeanUtils.copyProperties(sarPublicIdeaAll,sarPublicIdeaAllSUD); + if (sarPublicIdeaAll.getUserId().equals(detAllStandDto.getUserId())){ + list1.add(sarPublicIdeaAllSUD); + }else { + partTwo.add(sarPublicIdeaAllSUD); + } + }); + list1.addAll(partTwo); IPage userIPage1 = new Page<>(); userIPage1.setPages(userIPage.getPages()); userIPage1.setSize(userIPage.getSize()); @@ -90,9 +102,23 @@ public class SarPublicIdeaAllServiceImpl extends ServiceImpl= 0) return "0"; + else { + return "1"; + } } @Override @@ -105,10 +131,10 @@ public class SarPublicIdeaAllServiceImpl extends ServiceImpl menuIds; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java index 9c296ee7..9a84c0db 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java @@ -157,7 +157,9 @@ public class SarStandardsInfoController extends BaseController page.setAdvanceSearchStr(null); } } - page.setUserId(LoginUserUtil.getUserId()); + if(page.getUserId() == null || page.getUserId().equals("")){ + page.setUserId(LoginUserUtil.getUserId()); + } List rows = sarStandardsInfoEOService.getSarStandardsInfoPage(page); return Result.success(getPageInfo(page.getPager(), rows)); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 500854cf..f939742f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -110,6 +110,9 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl selectionMap = new HashMap<>(); Map fileMap = new HashMap<>(); Map multiTimeMap = new HashMap<>(); - String fileIds = ""; + List fileIds = new ArrayList<>(); for (Map.Entry entry : sarStandAttrMap.entrySet()) { String attrKey = entry.getKey(); String attrValue = String.valueOf(entry.getValue()); @@ -571,7 +574,10 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl list= Arrays.asList(attrValue .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); + fileIds.addAll(list); +// String attrValueStr = String.join(",", list); +// fileIds += attrValueStr + ","; if (attrKey.equals("XXZLXX")) { // this.saveMsgDynamicInfo(attrValue,sarStandardsInfoEO.getStandName(),sarStandardsInfoEO.getId(),sarStandardsInfoEO.getStandSort()+" "+sarStandardsInfoEO.getStandNumber()+"-"+sarStandardsInfoEO.getStandYear()); } @@ -589,10 +595,14 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl rows = sarFileSplitInfoEODao.queryByPageOwn(page); + Map map = new HashMap<>(); + map.put("CA","草稿"); + map.put("ZQYJG","征求意见稿"); + map.put("BPG","报批稿"); + map.put("SSG","送审稿"); + map.put("FBGBJBD","发布稿(必读)"); + if (rows != null && !rows.isEmpty()) { for (SarFileSplitInfoEO infoEO : rows) { + infoEO.setFileTypeShow(String.valueOf(map.get(infoEO.getFileType()))); // if (!infoEO.getSplitStatus().equals("0") && infoEO.getShowNumber() == null){ // SarLawsInfoEOPage sarLawsInfoEOPage = new SarLawsInfoEOPage(); // sarLawsInfoEOPage.setId(infoEO.getStandId()); diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/standardSplit/SarStandFileEOMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/standardSplit/SarStandFileEOMapper.xml index 8a7744c1..3d7f4b6b 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/standardSplit/SarStandFileEOMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/standardSplit/SarStandFileEOMapper.xml @@ -147,7 +147,7 @@