diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index 8412c5be..27bb37f1 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -137,7 +137,7 @@ file.path=D:/uploadfile/bus # 文件下载地址参数 file.downloadUrl=http://39.98.140.126:10001/uploadPath #上传文件白名单-以,分隔 -upload.file.white.lists = doc,docx,xls,xlsx,pdf,PDF,png,jpg +upload.file.white.lists = doc,docx,xls,xlsx,pdf,PDF,png,jpg,pptx,ppt # ============================================================================= # elasticsearch 配置 diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java index 3af95a89..8879dfb8 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java @@ -120,7 +120,7 @@ public class ElasticsearchServiceImpl implements ElasticsearchService { } /** - * 指定ID数据添加接口实现, + * 指定ID数据添加接口实现 * @param jsonObject 要增加的数据 * @param index 索引,类似数据库 * @param type 类型,类似表 (自6.0改版以后,一个索引里只允许有一种类型, 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 51136ac1..9302e1f1 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 @@ -3,6 +3,8 @@ package com.adc.da.search.service.impl; import com.adc.da.search.entity.*; import com.adc.da.search.service.SearchCenterService; import com.adc.da.search.util.InitStandAttrSearchUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -23,6 +25,7 @@ import org.elasticsearch.search.aggregations.bucket.terms.StringTerms; import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder; import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder; import org.elasticsearch.search.fetch.subphase.highlight.HighlightField; +import org.elasticsearch.search.sort.SortOrder; import org.json.JSONTokener; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -31,6 +34,8 @@ import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import java.text.SimpleDateFormat; import java.util.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import java.util.stream.Collectors; @Component @@ -75,6 +80,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) + .addSort("issueTime", SortOrder.DESC) .setSize(searchInfoEO.getPageSize()); if(searchInfoEO.getSelectIndex().equals("stand")) { @@ -89,13 +95,22 @@ public class SearchCenterServiceImpl implements SearchCenterService { QueryBuilder multiQueryBuilder; switch (searchInfoEO.getSelectIndex()){ case "stand": + if (isRqFormat(searchInfoEO.getSelectValue())) { + Long starttime = dateFormatToStr(searchInfoEO.getSelectValue()).getTime(); + Long endtime = dateFormatToStr(searchInfoEO.getSelectValue()).getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(ISSUE_TIME).format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryShould.should(rangeQueryBuilder); + } boolQueryShould.should(QueryBuilders.wildcardQuery("standSort.keyword", "*"+searchInfoEO.getSelectValue()+"*")) .should(QueryBuilders.wildcardQuery("standNumber.keyword", "*"+searchInfoEO.getSelectValue()+"*")) .should(QueryBuilders.wildcardQuery("standYear.keyword", "*"+searchInfoEO.getSelectValue()+"*")) .should(QueryBuilders.wildcardQuery("stand_name.keyword", "*"+searchInfoEO.getSelectValue()+"*")) .should(QueryBuilders.wildcardQuery("standEnName.keyword", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("standNature.keyword", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("textStatus.keyword", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("standNatureName.keyword", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("textStatusName.keyword", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("isRelateAccessName.keyword", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("numbershow.keyword", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("content.keyword", "*"+searchInfoEO.getSelectValue()+"*")) .should(QueryBuilders.wildcardQuery("standSystem.keyword", "*"+searchInfoEO.getSelectValue()+"*")); break; case "laws": @@ -201,6 +216,30 @@ public class SearchCenterServiceImpl implements SearchCenterService { return result; } + private Date dateFormatToStr(String dateStr){ + Date date = new Date(); + try { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + date = dateFormat.parse(dateStr.trim().substring(0,10)); + }catch (Exception e){ + e.getMessage(); + } + return date; + } + + public static boolean isRqFormat(String mes){ + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + try { + if (mes.equals(sdf.format(sdf.parse(mes)))) { + return true; + } + }catch (Exception e){ + return false; + } + + return false; + } + /** * 自动匹配动态字段条件查询 ES * @param searchInfoEO @@ -217,6 +256,23 @@ public class SearchCenterServiceImpl implements SearchCenterService { Map.Entry::getKey, Map.Entry::getValue)); + if(sarStandAttrEOStr == null){ + collectAttrMap = new TreeMap<>(); + + if(searchInfoEO.getCYSD() != null && StringUtils.isNotBlank(searchInfoEO.getCYSD())){ + List fieldList = Arrays.asList(searchInfoEO.getCYSD() .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); + JSONArray array= JSONArray.parseArray(JSON.toJSONString(fieldList)); + collectAttrMap.put("CYSD",array); + } + + if(searchInfoEO.getCLLX() != null && StringUtils.isNotBlank(searchInfoEO.getCLLX())){ + List fieldList = Arrays.asList(searchInfoEO.getCLLX() .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); + JSONArray array= JSONArray.parseArray(JSON.toJSONString(fieldList)); + collectAttrMap.put("CLLX",array); + } + + } + String fieldInfo = InitStandAttrSearchUtil.queryField; List fieldInfoList = Arrays.asList(fieldInfo .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); @@ -224,8 +280,9 @@ public class SearchCenterServiceImpl implements SearchCenterService { for (String field : fieldInfoList) { // 关键字查询属性字段 String keyWordField = field + ".keyword"; + String keyWordField2 = field + "Name.keyword"; if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue())){ - boolQueryBuilderMust.should(QueryBuilders.wildcardQuery(keyWordField, "*"+searchInfoEO.getSelectValue()+"*")); + boolQueryBuilderMust.should(QueryBuilders.wildcardQuery(keyWordField2, "*"+searchInfoEO.getSelectValue()+"*")); }else { if(collectAttrMap.containsKey(field)){ List fields = new ArrayList<>(); @@ -233,7 +290,9 @@ public class SearchCenterServiceImpl implements SearchCenterService { if(json instanceof org.json.JSONArray){ fields = JSONObject.parseArray(collectAttrMap.get(field).toString(),String.class); }else { - fields.add(collectAttrMap.get(field).toString()); + if(!json.equals("null")){ + fields.add(collectAttrMap.get(field).toString()); + } } if(!fields.isEmpty()){ for (String str : fields) { @@ -967,7 +1026,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue())){ QueryBuilder multiQueryBuilder = QueryBuilders.multiMatchQuery(""); multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), - "title","textContent","issue_time" + "title","textContent" ).minimumShouldMatch("100%").field("title",10f); boolQueryBuilder.must(multiQueryBuilder); // boolQueryBuilder.should() @@ -1067,11 +1126,10 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); QueryBuilder multiQueryBuilder; multiQueryBuilder = QueryBuilders.multiMatchQuery(value, - "title","textContent","issue_time").minimumShouldMatch("100%").field("title",1f); + "title","textContent").minimumShouldMatch("100%").field("title",1f); boolQueryMust.must(multiQueryBuilder); boolQueryShould.should(QueryBuilders.wildcardQuery("title", "*"+searchInfoEO.getSelectValue()+"*").boost(10f)) .should(QueryBuilders.wildcardQuery("textContent", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) .should(multiQueryBuilder); boolQueryBuilder.should(boolQueryShould); //在结果中检索 diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java index ad72d012..fe9eca50 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java @@ -152,10 +152,10 @@ public class StandLawsSearchServiceImpl implements StandLawsSearchService { contentBuilder.append("标准年份:").append(attrInfoMap.get("standYear")).append(" "); contentBuilder.append("标准名称:").append(attrInfoMap.get("standName")).append(" "); contentBuilder.append("标准英文名称:").append(attrInfoMap.get("standEnName")).append(" "); - contentBuilder.append("标准性质:").append(attrInfoMap.get("standNature")).append(" "); - contentBuilder.append("文本状态:").append(attrInfoMap.get("textStatus")).append(" "); + contentBuilder.append("标准性质:").append(attrInfoMap.get("standNatureName")).append(" "); + contentBuilder.append("文本状态:").append(attrInfoMap.get("textStatusName")).append(" "); contentBuilder.append("标准发布日期:").append(attrInfoMap.get("issueTime")).append(" "); - contentBuilder.append("是否纳入认证清单:").append(attrInfoMap.get("isRelateAccess")).append(" "); + contentBuilder.append("是否纳入认证清单:").append(attrInfoMap.get("isRelateAccessName")).append(" "); // 区分国内、海外 if (isForeign) { @@ -164,48 +164,48 @@ public class StandLawsSearchServiceImpl implements StandLawsSearchService { }else { contentBuilder.append("标准体系:").append(attrInfoMap.get("standSystem")).append(" "); if (StringUtils.isBlank(String.valueOf(attrInfoMap.get("BDTBH")))){ - contentBuilder.append("被代替标准编号: ").append(attrInfoMap.get("BDTBH")).append(" "); + contentBuilder.append("被代替标准编号: ").append(attrInfoMap.get("BDTBHName")).append(" "); }else { - contentBuilder.append("被代替标准编号: ").append(attrInfoMap.get("BDTBZBH")).append(" "); + contentBuilder.append("被代替标准编号: ").append(attrInfoMap.get("BDTBZBHName")).append(" "); } } - contentBuilder.append("实施日期(标准文本):").append(attrInfoMap.get("SSRQ")).append(" "); - contentBuilder.append("新车型实施日期(标准文本):").append(attrInfoMap.get("XCXSSRQ")).append(" "); - contentBuilder.append("在产车实施日期(标准文本):").append(attrInfoMap.get("ZCCSSRQ")).append(" "); + contentBuilder.append("实施日期(标准文本):").append(attrInfoMap.get("SSRQName")).append(" "); + contentBuilder.append("新车型实施日期(标准文本):").append(attrInfoMap.get("XCXSSRQName")).append(" "); + contentBuilder.append("在产车实施日期(标准文本):").append(attrInfoMap.get("ZCCSSRQName")).append(" "); if (isForeign) { - contentBuilder.append("体系类别:").append(attrInfoMap.get("TXLB")).append(" "); + contentBuilder.append("体系类别:").append(attrInfoMap.get("TXLBName")).append(" "); }else { - contentBuilder.append("归口管理部门:").append(attrInfoMap.get("GKDW")).append(" "); - contentBuilder.append("起草单位:").append(attrInfoMap.get("FBJG")).append(" "); - contentBuilder.append("我司署名人:").append(attrInfoMap.get("WSSMR")).append(" "); - contentBuilder.append("我司参与深度:").append(attrInfoMap.get("CYSD")).append(" "); - contentBuilder.append("我司参与制标排名:").append(attrInfoMap.get("CYZBPM")).append(" "); + contentBuilder.append("归口管理部门:").append(attrInfoMap.get("GKDWName")).append(" "); + contentBuilder.append("起草单位:").append(attrInfoMap.get("FBJGName")).append(" "); + contentBuilder.append("我司署名人:").append(attrInfoMap.get("WSSMRName")).append(" "); + contentBuilder.append("我司参与深度:").append(attrInfoMap.get("CYSDName")).append(" "); + contentBuilder.append("我司参与制标排名:").append(attrInfoMap.get("CYZBPMName")).append(" "); } - contentBuilder.append("适用车型:").append(attrInfoMap.get("CLLX")).append(" "); - contentBuilder.append("能源类型:").append(attrInfoMap.get("NYLX")).append(" "); - contentBuilder.append("适用产品线:").append(attrInfoMap.get("SYCPX")).append(" "); - contentBuilder.append("适用认证:").append(attrInfoMap.get("SYRZ")).append(" "); - contentBuilder.append("责任部门:").append(attrInfoMap.get("ZRBM")).append(" "); - contentBuilder.append("责任工程师:").append(attrInfoMap.get("ZRGCS")).append(" "); - contentBuilder.append("关联模块--乘用车VPPS编码:").append(attrInfoMap.get("CYCVPPSBM")).append(" "); - contentBuilder.append("关联模块--乘用车vpps中文名称:").append(attrInfoMap.get("CYCVPPSCN")).append(" "); - contentBuilder.append("关联模块--卡车VPPS编码:").append(attrInfoMap.get("KCCVPPSBM")).append(" "); - contentBuilder.append("关联模块--卡车vpps中文名称:").append(attrInfoMap.get("KCCVPPSCN")).append(" "); - contentBuilder.append("模块结构单元变型号:").append(attrInfoMap.get("DYBXH")).append(" "); - contentBuilder.append("模块结构单元名称:").append(attrInfoMap.get("DYMC")).append(" "); + contentBuilder.append("适用车型:").append(attrInfoMap.get("CLLXName")).append(" "); + contentBuilder.append("能源类型:").append(attrInfoMap.get("NYLXName")).append(" "); + contentBuilder.append("适用产品线:").append(attrInfoMap.get("SYCPXName")).append(" "); + contentBuilder.append("适用认证:").append(attrInfoMap.get("SYRZName")).append(" "); + contentBuilder.append("责任部门:").append(attrInfoMap.get("ZRBMName")).append(" "); + contentBuilder.append("责任工程师:").append(attrInfoMap.get("ZRGCSName")).append(" "); + contentBuilder.append("关联模块--乘用车VPPS编码:").append(attrInfoMap.get("CYCVPPSBMName")).append(" "); + contentBuilder.append("关联模块--乘用车vpps中文名称:").append(attrInfoMap.get("CYCVPPSCNName")).append(" "); + contentBuilder.append("关联模块--卡车VPPS编码:").append(attrInfoMap.get("KCCVPPSBMName")).append(" "); + contentBuilder.append("关联模块--卡车vpps中文名称:").append(attrInfoMap.get("KCCVPPSCNName")).append(" "); + contentBuilder.append("模块结构单元变型号:").append(attrInfoMap.get("DYBXHName")).append(" "); + contentBuilder.append("模块结构单元名称:").append(attrInfoMap.get("DYMCName")).append(" "); - contentBuilder.append("代替标准号:").append(attrInfoMap.get("DTBJH")).append(" "); - contentBuilder.append("引用标准:").append(attrInfoMap.get("YYBJ")).append(" "); - contentBuilder.append("被引用标准:").append(attrInfoMap.get("BYYBJ")).append(" "); + contentBuilder.append("代替标准号:").append(attrInfoMap.get("DTBJHName")).append(" "); + contentBuilder.append("引用标准:").append(attrInfoMap.get("YYBJName")).append(" "); + contentBuilder.append("被引用标准:").append(attrInfoMap.get("BYYBJName")).append(" "); if (isForeign) { - contentBuilder.append("体系类别:").append(attrInfoMap.get("TXLB")).append(" "); + contentBuilder.append("体系类别:").append(attrInfoMap.get("TXLBName")).append(" "); }else { - contentBuilder.append("采标编号:").append(attrInfoMap.get("CBBH")).append(" "); - contentBuilder.append("采标程度:").append(attrInfoMap.get("CBCD")).append(" "); - contentBuilder.append("部分代替标准号:").append(attrInfoMap.get("BFDTBZ")).append(" "); - contentBuilder.append("被部分代替标准号:").append(attrInfoMap.get("BBFDTBZ")).append(" "); + contentBuilder.append("采标编号:").append(attrInfoMap.get("CBBHName")).append(" "); + contentBuilder.append("采标程度:").append(attrInfoMap.get("CBCDName")).append(" "); + contentBuilder.append("部分代替标准号:").append(attrInfoMap.get("BFDTBZName")).append(" "); + contentBuilder.append("被部分代替标准号:").append(attrInfoMap.get("BBFDTBZName")).append(" "); } if (attrInfoMap.containsKey("content")){ 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 16cb5288..87e5343d 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,10 +5,12 @@ 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.sys.dao.DicTypeEODao; import com.adc.da.utils.util.InitStandAttrUtil; import com.rabbitmq.client.Channel; import net.sf.json.JSONObject; import org.apache.commons.lang.StringUtils; +import org.json.JSONTokener; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.amqp.rabbit.annotation.Exchange; @@ -34,6 +36,9 @@ public class SendStandMQService { @Autowired private SysInfoEOService sysInfoEOService; + @Autowired + private DicTypeEODao dicTypeEODao; + @Autowired private IOtSvppsService otSvppsEOService; @@ -72,6 +77,7 @@ public class SendStandMQService { SarStandardsInfo infoEO = (SarStandardsInfo) JSONObject.toBean(jsonobject,SarStandardsInfo.class); String sarStandAttrEOStr = infoEO.getSarStandAttrEOStr(); Map attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); + Map infoMap = infoEO.getAttrInfoMap(); // 往索引表中插入数据 String getCodeName = ""; @@ -110,11 +116,45 @@ public class SendStandMQService { saveMap.put("standstateshow",codeName); } saveMap.put("issueTime",dateFormatToStr(infoEO.getIssueTime())); - + 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(dateFormatToStr(infoEO.getIssueTime())+" 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",-1000000000000000000L); + } + String standNatureName = ""; + if(infoEO.getStandNature() != null && StringUtils.isNotBlank(infoEO.getStandNature())){ + List valArr = Arrays.asList(infoEO.getStandNature().split(",")); + standNatureName = dicTypeEODao.getDicNamesByCodes(valArr); + } + saveMap.put("standNature",infoEO.getStandNature()); + saveMap.put("standNatureName",standNatureName); saveMap.put("synopsis",infoEO.getSynopsis()); saveMap.put("standType",infoEO.getStandType()); + String textStatusName = ""; + if(infoEO.getTextStatus() != null && StringUtils.isNotBlank(infoEO.getTextStatus())){ + List valArr = Arrays.asList(infoEO.getTextStatus().split(",")); + textStatusName = dicTypeEODao.getDicNamesByCodes(valArr); + } saveMap.put("textStatus",infoEO.getTextStatus()); + saveMap.put("textStatusName",textStatusName); + String isRelateAccessName = ""; + if(infoEO.getIsRelateAccess() != null && StringUtils.isNotBlank(infoEO.getIsRelateAccess())){ + if(infoEO.getIsRelateAccess().equals("1")){ + isRelateAccessName = "是"; + }else { + isRelateAccessName = "否"; + } + } saveMap.put("isRelateAccess",infoEO.getIsRelateAccess()); + saveMap.put("isRelateAccessName",isRelateAccessName); saveMap.put("standSystem",infoEO.getStandSystem()); // 自定义属性字段 @@ -134,21 +174,29 @@ public class SendStandMQService { // 动态存储属性字段 for (String field : fieldInfoList) { saveMap.put(field,attrInfoMap.getOrDefault(field,"")); + Object json= new JSONTokener(infoMap.get(field).toString()).nextValue(); + String fieldValue = ""; + if(!json.toString().equals("null")){ + fieldValue = infoMap.get(field).toString(); + } + saveMap.put(field+"Name",fieldValue); } //当建立代替时,产生的没有文件的问题 if (StringUtils.isBlank(String.valueOf(saveMap.get("content")))) { - String context = String.valueOf(saveMap.get("FBGBJBD")) + "," - + String.valueOf(saveMap.get("XXZLXX")) + "," - + String.valueOf(saveMap.get("ZQYJG")) + "," - + 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")); + List list = new ArrayList<>(); + + String context = filterStringIsNotBlank(String.valueOf(saveMap.get("FBGBJBD")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("XXZLXX")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("ZQYJG")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("BPG")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("CA")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("SSG")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("JDWJ")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("XGD")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("KWJ")),true) + + filterStringIsNotBlank(String.valueOf(saveMap.get("ZBJBD")),false); context = context.replace(",,", ","); saveMap.put("content", context); } @@ -159,6 +207,11 @@ public class SendStandMQService { } } + private String filterStringIsNotBlank(String str,boolean boo){ + String f = ","; + return (str == null || str.equals("") || str.equals("null")) ? "" : (boo ? str+f : str); + } + private String dateFormatToStr(String dateStr){ if(dateStr == null || dateStr.equals("")){ return ""; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java index 6dba1030..2ff5fc7c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java @@ -30,7 +30,8 @@ public interface SarLawsAttrDetailedListDao extends BaseMapper selectLawsByIdE(@Param("param1") List LawsIds); //根据标准id查出数据 - List selectLawsByIdC(@Param("param1") List LawsIds, @Param("standName") String standName,@Param("standType")String standType); + List selectLawsByIdC(@Param("start")Integer start,@Param("end")Integer end,@Param("param1") List LawsIds, @Param("standName") String standName,@Param("standType")String standType,@Param("fileType")String fileType); + List selectLawsByIdCount(@Param("param1") List LawsIds, @Param("standName") String standName,@Param("standType")String standType,@Param("fileType")String fileType); //查询时间 List selectTimes(String standId); List selectLawsId2(String standId); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/SarPublicIdea.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/SarPublicIdea.java index 0e8f9a0a..37c296ba 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/SarPublicIdea.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/entity/SarPublicIdea.java @@ -60,5 +60,8 @@ public class SarPublicIdea extends BaseEntity { @TableField("stand_id") private String standId; + @TableField("stand_type") + private String standType; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/controller/SarStandItemsController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/controller/SarStandItemsController.java index 7a3136fc..85bf0364 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/controller/SarStandItemsController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/controller/SarStandItemsController.java @@ -5,9 +5,7 @@ import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.slrs.sarLawsAttrDetailedList.entity.LawsDto; -import com.adc.da.slrs.sarStandItems.entity.FindStandDto; -import com.adc.da.slrs.sarStandItems.entity.SarItemsTime; -import com.adc.da.slrs.sarStandItems.entity.SarStandItemsDto; +import com.adc.da.slrs.sarStandItems.entity.*; import com.adc.da.slrs.sarStandItems.service.impl.SarStandItemsServiceImpl; import com.adc.da.util.UUIDUtils; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -15,7 +13,6 @@ import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import com.adc.da.slrs.sarStandItems.entity.SarStandItems; import io.swagger.annotations.Api; import com.adc.da.base.web.BaseController; @@ -55,6 +52,17 @@ public class SarStandItemsController extends BaseController { } } + @ApiOperation(value = "分解单查询") + @GetMapping("/querySarItemAndInterpretation") + public ResponseMessage querySarItemAndInterpretation(FindSarItemsPageReqDTO page){ + List sarItemVOS = ServiceImpl.querySarItemAndInterpretation(page); + + return Result.success("200",sarItemVOS); + } + + + + @ApiOperation(value = "分解单查询(带时间)") @GetMapping("/findAllItemsTimes") public List findAllItemsTimes(@RequestParam("type") String type,@RequestParam("ids") String ids){ @@ -70,7 +78,7 @@ public class SarStandItemsController extends BaseController { } - @ApiOperation(value = "标准查询") + @ApiOperation(value = "标准批量保存") @PostMapping("/saveBatch") public String saveBatch(@RequestBody List findStandDto){ findStandDto.forEach(sarStandItems -> sarStandItems.setId(UUIDUtils.randomUUID(32))); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/dao/SarStandItemsDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/dao/SarStandItemsDao.java index 0f5aa0d4..f37ea8b3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/dao/SarStandItemsDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/dao/SarStandItemsDao.java @@ -1,8 +1,6 @@ package com.adc.da.slrs.sarStandItems.dao; -import com.adc.da.slrs.sarStandItems.entity.SarStandItems; -import com.adc.da.slrs.sarStandItems.entity.SarStandItemsDto; -import com.adc.da.slrs.sarStandItems.entity.StandsTimeDto; +import com.adc.da.slrs.sarStandItems.entity.*; import com.adc.da.slrs.sarStandItems.page.SarStandItemsEOPage; import com.adc.da.sys.common.SelectionResult; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -24,6 +22,8 @@ import java.util.Set; @Mapper public interface SarStandItemsDao extends BaseMapper { + List querySarItemAndInterpretation(FindSarItemsPageReqDTO page); + List querySarStandItemsList(SarStandItemsEOPage page); int querySarStandItemsListCount(SarStandItemsEOPage page); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/FindSarItemsPageReqDTO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/FindSarItemsPageReqDTO.java new file mode 100644 index 00000000..5ed30c32 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/FindSarItemsPageReqDTO.java @@ -0,0 +1,36 @@ +package com.adc.da.slrs.sarStandItems.entity; + +import com.adc.da.base.page.BasePage; +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + + +@Data +public class FindSarItemsPageReqDTO { + + private static final long serialVersionUID = 1L; + private Integer page = 1; + private Integer pageSize = 20; + + + @ApiModelProperty(value = "标准id") + private String standId; + + @ApiModelProperty(value = "条款名称") + private String itemsName; + + @ApiModelProperty(value = "新车型实施日期") + @DateTimeFormat(pattern = "yyy-MM-dd") + private Date XCXSSRQ; + + @ApiModelProperty(value = "在产车实施日期") + @DateTimeFormat(pattern = "yyy-MM-dd") + private Date ZCCSSRQ; + + @ApiModelProperty(value = "文件类型") + private String fileType; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/FindStandDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/FindStandDto.java index 48409480..09d43f4b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/FindStandDto.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/FindStandDto.java @@ -14,4 +14,5 @@ public class FindStandDto { private int size; private String standName; private String standType; + private String fileType; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarItemVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarItemVO.java new file mode 100644 index 00000000..ac471308 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarItemVO.java @@ -0,0 +1,67 @@ +package com.adc.da.slrs.sarStandItems.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +@Data +@ApiModel(value="标准分解单显示对象", description="") +public class SarItemVO extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + private String id; + + + @ApiModelProperty(value = "标准ID") + private String standId; + + @ApiModelProperty(value = "条款号") + private String itemsNum; + + @ApiModelProperty(value = "条款名称") + private String itemsName; + + @ApiModelProperty(value = "条款内容") + private String itemsTitle; + + @ApiModelProperty(value = "解读内容--条款要求") + private String termsConditions; + + @ApiModelProperty(value = "新车实施日期") + @DateTimeFormat + private Date XCXSSRQ; + + @ApiModelProperty(value = "在产车实施日期") + @DateTimeFormat + private Date ZCCSSRQ; + + @ApiModelProperty(value = "适用车型") + private String applyArctic; + + + @ApiModelProperty(value = "责任部门") + private String responsibleUnit; + + + @ApiModelProperty(value = "责任工程师") + private String dutyEngineer; + + @ApiModelProperty(value = "相对于上一版本变化点") + private String comparedWithPrevious; + + @ApiModelProperty(value = "合规性分析") + private String complianceState; + + @ApiModelProperty(value = "符合性要求-符合性状态") + private String complianceRequire; + + @ApiModelProperty(value = "文件类型") + private String fileType; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItems.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItems.java index b05f19aa..fb6929d3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItems.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItems.java @@ -172,5 +172,14 @@ public class SarStandItems extends BaseEntity { private String responsibleEngineer; + @ApiModelProperty(value = "相对于上一版本变化点") + @TableField("compared_with_previous") + private String comparedWithPrevious; + + @ApiModelProperty(value = "合规性分析") + @TableField("compliance_state") + private String complianceState; + + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItemsDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItemsDto.java index e6292810..c1268581 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItemsDto.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/entity/SarStandItemsDto.java @@ -44,4 +44,8 @@ public class SarStandItemsDto { @ApiModelProperty(value = "覆盖关系") private String busStandCover; + private String xcxssrq; + + private String zccssrq; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/service/impl/SarStandItemsServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/service/impl/SarStandItemsServiceImpl.java index 65be9704..dce6e79b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/service/impl/SarStandItemsServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandItems/service/impl/SarStandItemsServiceImpl.java @@ -85,8 +85,8 @@ public class SarStandItemsServiceImpl extends ServiceImpl page1=new Page<>(); page1.setRecords(list); - page1.setTotal(dao.selectToken()); + page1.setTotal(sarLawsAttrDetailedListDao.selectLawsByIdCount(standId,findStandDto.getStandName(),findStandDto.getStandType(),findStandDto.getFileType()).size()); return page1; } @@ -189,4 +189,9 @@ public class SarStandItemsServiceImpl extends ServiceImpl findAllItems(String type,String[] ids){ return dao.selectAllItemsByIds(type,ids); } + + + public List querySarItemAndInterpretation(FindSarItemsPageReqDTO page){ + return dao.querySarItemAndInterpretation(page); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java index 93f687c7..f3e013d9 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.sarStandProjectLibrary.dao; import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibrary; import com.adc.da.slrs.sarStandProjectLibrary.entity.StandProjectRelationDto; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -19,4 +20,6 @@ public interface SarStandProjectLibraryDao extends BaseMapper queryProjectManagerPage(@Param("current") int current, @Param("pageSize") int pageSize); void deleteByIds(@Param("ids") List ids); void batchInsert(@Param("list") List list); + List selectPages(@Param("page")Integer page, @Param("size")Integer size,@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); + Integer selectCount(@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/StandAttrInfoDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/StandAttrInfoDto.java index c07db780..140d8fd6 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/StandAttrInfoDto.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/StandAttrInfoDto.java @@ -27,6 +27,8 @@ public class StandAttrInfoDto { private String standSort; //标准年份 private String standYear; + //标准类型 + private String standType; //中文名称 @ExcelProperty("中文名称") private String standName; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java index 510130bc..8284537b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java @@ -64,21 +64,8 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl wrapper = new QueryWrapper<>(); - wrapper.inSql("id", "select project_id from sar_stand_project_relation") - .like(StringUtils.isNotEmpty(sar.getProjectPlatfor()),"project_platfor",sar.getProjectPlatfor()) - .like(StringUtils.isNotEmpty(sar.getProjectNumber()),"project_number",sar.getProjectNumber()) - .like(StringUtils.isNotEmpty(sar.getProjectName()),"project_name",sar.getProjectName()) - .like(StringUtils.isNotEmpty(sar.getProjectGroup()),"project_group",sar.getProjectGroup()) - .like(StringUtils.isNotEmpty(sar.getProjectClassification()),"project_classification",sar.getProjectClassification()) - .like(StringUtils.isNotEmpty(sar.getProjectStatus()),"project_status",sar.getProjectStatus()) - .like(StringUtils.isNotEmpty(sar.getCurrentNode()),"current_node",sar.getCurrentNode()) - .like(StringUtils.isNotEmpty(sar.getProjectLevel()),"project_level",sar.getProjectLevel()) - .like(StringUtils.isNotEmpty(sar.getProjectManager()),"project_manager",sar.getProjectManager()) - .like(StringUtils.isNotEmpty(sar.getProductLine()),"product_line",sar.getProductLine()) - .ge(sar.getProjectStartDate()!=null,"project_start_date",sar.getProjectStartDate()) - .le(sar.getProjectEndDate()!=null,"project_end_date",sar.getProjectEndDate()); - return getSarStandProjectLibraryIPage(current, pageSize, wrapper); + int flag=2; + return getSarStandProjectLibraryIPage(current, pageSize, sar,flag); } @Override public IPage queryNotMaintenanceProject(int current, int pageSize, @@ -106,21 +93,8 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl wrapper = new QueryWrapper<>(); - wrapper.notInSql("id", "select project_id from sar_stand_project_relation") - .like(StringUtils.isNotEmpty(sar.getProjectPlatfor()),"project_platfor",sar.getProjectPlatfor()) - .like(StringUtils.isNotEmpty(sar.getProjectNumber()),"project_number",sar.getProjectNumber()) - .like(StringUtils.isNotEmpty(sar.getProjectName()),"project_name",sar.getProjectName()) - .like(StringUtils.isNotEmpty(sar.getProjectGroup()),"project_group",sar.getProjectGroup()) - .like(StringUtils.isNotEmpty(sar.getProjectClassification()),"project_classification",sar.getProjectClassification()) - .like(StringUtils.isNotEmpty(sar.getProjectStatus()),"project_status",sar.getProjectStatus()) - .like(StringUtils.isNotEmpty(sar.getCurrentNode()),"current_node",sar.getCurrentNode()) - .like(StringUtils.isNotEmpty(sar.getProjectLevel()),"project_level",sar.getProjectLevel()) - .like(StringUtils.isNotEmpty(sar.getProjectManager()),"project_manager",sar.getProjectManager()) - .like(StringUtils.isNotEmpty(sar.getProductLine()),"product_line",sar.getProductLine()) - .ge(sar.getProjectStartDate()!=null,"project_start_date",sar.getProjectStartDate()) - .le(sar.getProjectEndDate()!=null,"project_end_date",sar.getProjectEndDate()); - return getSarStandProjectLibraryIPage(current, pageSize, wrapper); + int flag=1; + return getSarStandProjectLibraryIPage(current, pageSize, sar,flag); } @Override public List queryById(String id) { @@ -158,7 +132,7 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl queryStandInfo(int current, int pageSize, String standId) { QueryWrapper wrapper1 = new QueryWrapper<>(); - wrapper1.select("ID","STAND_NUMBER","STAND_SORT","STAND_YEAR","STAND_NAME","STAND_EN_NAME"); + wrapper1.select("ID","STAND_NUMBER","STAND_SORT","STAND_YEAR","STAND_NAME","STAND_EN_NAME","STAND_TYPE"); wrapper1.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_standards_info.ID WHERE r.project_id ='"+ standId+"'"); Page page1 = new Page<>(current, pageSize); IPage userIPage1 = SarStandardsInfoDao.selectPage(page1, wrapper1); @@ -181,6 +155,7 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl getSarStandProjectLibraryIPage(int current, int pageSize, QueryWrapper wrapper) { + private IPage getSarStandProjectLibraryIPage(int current, int pageSize,SarStandProjectLibrary wrapper,int flag) { Page page = new Page<>(current, pageSize); - IPage userIPage = sarStandProjectLibraryDao.selectPage(page, wrapper); - System.out.println("总条数"+userIPage.getTotal()); - System.out.println("总页数"+userIPage.getPages()); + IPage userIPage = new Page<>(); + List sarStandProjectLibraries=sarStandProjectLibraryDao.selectPages(current,pageSize,wrapper,flag); + Integer count = sarStandProjectLibraryDao.selectCount(wrapper,flag); + userIPage.setCurrent(current); + userIPage.setSize(pageSize); + userIPage.setRecords(sarStandProjectLibraries); + userIPage.setTotal(count); return userIPage; } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java index 0a99a2cc..36f7e23c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java @@ -83,6 +83,7 @@ public class SarStandardComplianceAssessResultController { queryWrapper.like("STAND_NUMBER",eo.getStandNumber().trim()); } IPage page = iSarInterpretationNationalStandardService.page(iPage, queryWrapper); + while(page.getRecords().remove(null)); return Result.success(page); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java index 7a8f4972..94acce6d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java @@ -5,11 +5,13 @@ import java.time.LocalDateTime; import java.util.Date; import com.baomidou.mybatisplus.annotation.TableField; +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 org.springframework.format.annotation.DateTimeFormat; /** *

@@ -84,6 +86,8 @@ public class SarInterpretationNationalStandard extends BaseEntity { @ApiModelProperty(value = "评估时间") @TableField("INTERPRETATION_TIME") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") private Date interpretationTime; @TableField("ID") diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java index 7156a35f..b65b6539 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java @@ -24,8 +24,8 @@ import java.util.List; @Service public class SarInterpretationNationalStandardServiceImpl extends ServiceImpl implements ISarInterpretationNationalStandardService { - @Autowired - SarStandardComplianceProductAssessDao sarStandardComplianceProductAssessDao; +// @Autowired +// SarStandardComplianceProductAssessDao sarStandardComplianceProductAssessDao; @Override public String saveBath(List sarInterpretationNationalStandards) { @@ -34,18 +34,18 @@ public class SarInterpretationNationalStandardServiceImpl extends ServiceImpl { QueryWrapper queryWrapper=new QueryWrapper<>(); queryWrapper.eq("stand_id",sarInterpretationNationalStandard.getStandId()); - List assessList = sarStandardComplianceProductAssessDao.selectList(queryWrapper); - if (assessList.isEmpty()){ - SarStandardComplianceProductAssess sar=new SarStandardComplianceProductAssess(); - sar.setId(UUIDUtils.randomUUID(32)); - sar.setStandId(sarInterpretationNationalStandard.getStandId()); - sar.setStandNumber(sarInterpretationNationalStandard.getStandNumber()); - sar.setStandType(sarInterpretationNationalStandard.getStandType()); - sar.setStandName(sarInterpretationNationalStandard.getStandName()); - sar.setStandType(sarInterpretationNationalStandard.getStandType()); - sar.setInterpretationTime(sarInterpretationNationalStandard.getInterpretationTime()); - sarStandardComplianceProductAssessDao.insert(sar); - } +// List assessList = sarStandardComplianceProductAssessDao.selectList(queryWrapper); +// if (assessList.isEmpty()){ +// SarStandardComplianceProductAssess sar=new SarStandardComplianceProductAssess(); +// sar.setId(UUIDUtils.randomUUID(32)); +// sar.setStandId(sarInterpretationNationalStandard.getStandId()); +// sar.setStandNumber(sarInterpretationNationalStandard.getStandNumber()); +// sar.setStandType(sarInterpretationNationalStandard.getStandType()); +// sar.setStandName(sarInterpretationNationalStandard.getStandName()); +// sar.setStandType(sarInterpretationNationalStandard.getStandType()); +// sar.setInterpretationTime(sarInterpretationNationalStandard.getInterpretationTime()); +// sarStandardComplianceProductAssessDao.insert(sar); +// } }); String res = flag ? "1":"0"; return res; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java index d9b5d1c2..dfcf8fca 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java @@ -119,7 +119,7 @@ public class SarStandardsInfo extends BaseEntity { @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") private Date modifyTime; - @ApiModelProperty(value = "是否纳入认证清单(0否 1是)") + @ApiModelProperty(value = "是否纳入认证清单(2否 1是)") @TableField("IS_RELATE_ACCESS") private String isRelateAccess; 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 f939742f..2eaa3968 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 @@ -382,6 +382,30 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getAttrMap = sarStandAttrInfoEODao.selectStandFieldAndData(fieldInfo, row.getId()); + if (InitStandAttrUtil.clobFieldList != null && !InitStandAttrUtil.clobFieldList.isEmpty()) { + // 遍历修改所有clob类型的值 + for (String clobField : InitStandAttrUtil.clobFieldList) { + Clob clobValue = (Clob) getAttrMap.get(clobField); + String fieldValue = FieldConvertUtil.ClobToString(clobValue); + getAttrMap.put(clobField, fieldValue); + } + } + + if (getAttrMap != null && !getAttrMap.isEmpty()) { + row.setAttrInfoCaseMap(transformUpperCase(getAttrMap)); + } + + row.setAttrInfoMap(getAttrMap); + } + } + private Map transformUpperCase(Map orgMap) { Map resultMap = new HashMap<>(); @@ -428,6 +452,25 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getAttrMap = row.getAttrInfoMap(); + if (getAttrMap != null && getAttrMap.size() > 0) { + for (Map.Entry entry : getAttrMap.entrySet()) { + String name = entry.getKey(); + String value = ""; + if (entry.getValue() != null && InitStandAttrUtil.selectionFieldList != null && InitStandAttrUtil.selectionFieldList.size() > 0 && InitStandAttrUtil.selectionFieldList.contains(name)) { + value = entry.getValue().toString(); + List valArr = Arrays.asList(value.split(",")); + value = dicTypeEODao.getDicNamesByCodes(valArr); + entry.setValue(value); + } + } + } + } + } + public void attrInfoShow(List sarlist) throws Exception { for (SarStandardsInfo row : sarlist) { attrInfoDetails(row); @@ -1099,7 +1142,8 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl bhs = new ArrayList<>(Arrays.asList(String.valueOf(map.get("DTBJH")).split(","))); for (String bh :bhs) { @@ -2059,14 +2103,14 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl keys = attrInfoMap.keySet(); for (String key:keys) { String value = String.valueOf(attrInfoMap.get(key)); - if (com.adc.da.util.utils.StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key)){ + if (StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key)){ value = value.replace(" , ",","); value = value.replace(","," , "); attrInfoMap.put(key,value); } } // 根据文件attid 读取文件内容 - if (org.apache.commons.lang.StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { + if (StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { String[] attidlist = String.valueOf(attrInfoMap.get("content")).split(" , "); StringBuilder content = new StringBuilder(""); for (int i = 0; i < attidlist.length; i++) { diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandItems/SarStandItemsMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandItems/SarStandItemsMapper.xml index eb3ce0d5..f66c5ee1 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandItems/SarStandItemsMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandItems/SarStandItemsMapper.xml @@ -2,65 +2,82 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + SAR_STAND_ITEMS.modify_time, SAR_STAND_ITEMS.creation_time, SAR_STAND_ITEMS.creation_user, SAR_STAND_ITEMS.valid_flag, SAR_STAND_ITEMS.remarks, SAR_STAND_ITEMS.responsible_unit, SAR_STAND_ITEMS.energy_kind, SAR_STAND_ITEMS.apply_arctic, tack_time, parts, SAR_STAND_ITEMS.items_name, SAR_STAND_ITEMS.items_num, SAR_STAND_ITEMS.stand_id, SAR_STAND_ITEMS.id ,TS_ORG.org_name as responsibleUnitShow,SAR_STAND_ITEMS.MAINPOINTS_IMPEMENTATION,SAR_STAND_ITEMS.TERMS_CONDITIONS,tsFo.UNAME as foShow,SAR_STAND_ITEMS.duty_engineer,SAR_STAND_ITEMS.svpps, SAR_STAND_ITEMS.claim_type,SAR_STAND_ITEMS.bus_stand_cover,SAR_STAND_ITEMS.file_type,dicClaimType.DIC_TYPE_NAME as claimTypeShow,tsdutyEngineer.UNAME as dutyEngineerShow,SAR_STAND_ITEMS.fo - + SAR_STAND_ITEMS.modify_time, SAR_STAND_ITEMS.creation_time, SAR_STAND_ITEMS.creation_user, SAR_STAND_ITEMS.valid_flag, SAR_STAND_ITEMS.remarks, SAR_STAND_ITEMS.responsible_unit, SAR_STAND_ITEMS.energy_kind, SAR_STAND_ITEMS.apply_arctic, tack_time, parts, SAR_STAND_ITEMS.items_name, SAR_STAND_ITEMS.items_num, SAR_STAND_ITEMS.stand_id, SAR_STAND_ITEMS.id ,SAR_STAND_ITEMS.MAINPOINTS_IMPEMENTATION,SAR_STAND_ITEMS.TERMS_CONDITIONS,SAR_STAND_ITEMS.duty_engineer,SAR_STAND_ITEMS.svpps, @@ -69,91 +86,97 @@ - left join SAR_STANDARDS_INFO on (SAR_STANDARDS_INFO.id = SAR_STAND_ITEMS.stand_id and SAR_STANDARDS_INFO.valid_flag=0) - left join TS_DICTYPE dicClaimType on (dicClaimType.dic_type_code = SAR_STAND_ITEMS.claim_type and dicClaimType.dic_id is + left join SAR_STANDARDS_INFO on (SAR_STANDARDS_INFO.id = SAR_STAND_ITEMS.stand_id and + SAR_STANDARDS_INFO.valid_flag=0) + left join TS_DICTYPE dicClaimType on (dicClaimType.dic_type_code = SAR_STAND_ITEMS.claim_type and + dicClaimType.dic_id is not null and dicClaimType.valid_flag = 0) - left join TS_USER tsdutyEngineer on (tsdutyEngineer.USID = SAR_STAND_ITEMS.duty_engineer and tsdutyEngineer.valid_flag=0 + left join TS_USER tsdutyEngineer on (tsdutyEngineer.USID = SAR_STAND_ITEMS.duty_engineer and + tsdutyEngineer.valid_flag=0 and tsdutyEngineer.DISABLE_FLAG=0) - left join TS_USER tsFo on (tsFo.USID = SAR_STAND_ITEMS.fo and tsFo.valid_flag=0 + left join TS_USER tsFo on (tsFo.USID = SAR_STAND_ITEMS.fo and tsFo.valid_flag=0 and tsFo.DISABLE_FLAG=0) where 1=1 - - + + and SAR_STAND_ITEMS.file_type = #{fileType} - + and SAR_STAND_ITEMS.modify_time ${modifyTimeOperator} #{modifyTime} - + and SAR_STAND_ITEMS.modify_time >= #{modifyTime1} - + and SAR_STAND_ITEMS.modify_time <= #{modifyTime2} - + and SAR_STAND_ITEMS.creation_time ${creationTimeOperator} #{creationTime} - + and SAR_STAND_ITEMS.creation_time >= #{creationTime1} - + and SAR_STAND_ITEMS.creation_time <= #{creationTime2} - + and SAR_STAND_ITEMS.creation_user ${creationUserOperator} #{creationUser} - + and SAR_STAND_ITEMS.valid_flag ${validFlagOperator} #{validFlag} - + and SAR_STAND_ITEMS.remarks ${remarksOperator} #{remarks} - + and SAR_STAND_ITEMS.responsible_unit = #{responsibleUnit} - + and SAR_STAND_ITEMS.energy_kind ${energyKindOperator} #{energyKind} - + and SAR_STAND_ITEMS.apply_arctic ${applyArcticOperator} #{applyArctic} - + and SAR_STAND_ITEMS.tack_time ${tackTimeOperator} #{tackTime} - + and SAR_STAND_ITEMS.tack_time >= #{tackTime1} - + and SAR_STAND_ITEMS.tack_time <= #{tackTime2} - + and SAR_STAND_ITEMS.parts like concat(concat('%', #{parts}),'%') - - and (SAR_STAND_ITEMS.items_name like concat(concat('%', #{nameOrRequest}),'%') or SAR_STAND_ITEMS.TERMS_CONDITIONS like concat(concat('%', #{nameOrRequest}),'%')) + + and (SAR_STAND_ITEMS.items_name like concat(concat('%', #{nameOrRequest}),'%') or + SAR_STAND_ITEMS.TERMS_CONDITIONS like concat(concat('%', #{nameOrRequest}),'%')) - + and SAR_STAND_ITEMS.items_name ${itemsNameOperator} #{itemsName} - + and SAR_STAND_ITEMS.items_num ${itemsNumOperator} #{itemsNum} - + and SAR_STAND_ITEMS.stand_id ${standIdOperator} #{standId} - + and ((SAR_STANDARDS_INFO.STAND_SORT || ' ' || SAR_STANDARDS_INFO.STAND_NUMBER || '-' || - SAR_STANDARDS_INFO.STAND_YEAR like concat(concat('%',#{standNum}),'%') and SAR_STANDARDS_INFO.STAND_YEAR is not null) - or (SAR_STANDARDS_INFO.STAND_SORT || ' ' || SAR_STANDARDS_INFO.STAND_NUMBER like concat(concat('%',#{standNum}),'%') + SAR_STANDARDS_INFO.STAND_YEAR like concat(concat('%',#{standNum}),'%') and SAR_STANDARDS_INFO.STAND_YEAR + is not null) + or (SAR_STANDARDS_INFO.STAND_SORT || ' ' || SAR_STANDARDS_INFO.STAND_NUMBER like + concat(concat('%',#{standNum}),'%') and SAR_STANDARDS_INFO.STAND_YEAR is null)) - + and SAR_STAND_ITEMS.id ${idOperator} #{id} - + and SAR_STAND_ITEMS.id != #{noId} - + and SAR_PRODUCT_SAR_STATE.product_id = #{productId} @@ -162,7 +185,7 @@ #{item} - + and (SAR_STAND_ITEMS.claim_type='L7N7EEDAPR' or SAR_STAND_ITEMS.claim_type='RENVECPFGT') @@ -178,66 +201,66 @@ - + insert into SAR_STAND_ITEMS - - modify_time, - creation_time, - creation_user, - valid_flag, - remarks, - responsible_unit, - energy_kind, - apply_arctic, - tack_time, - parts, - items_name, - items_num, - stand_id, - id, + + modify_time, + creation_time, + creation_user, + valid_flag, + remarks, + responsible_unit, + energy_kind, + apply_arctic, + tack_time, + parts, + items_name, + items_num, + stand_id, + id, MAINPOINTS_IMPEMENTATION, TERMS_CONDITIONS, - fo, - duty_engineer, - svpps, - claim_type, + fo, + duty_engineer, + svpps, + claim_type, bus_stand_cover, file_type - - #{modifyTime, jdbcType=TIMESTAMP}, - #{creationTime, jdbcType=TIMESTAMP}, - #{creationUser, jdbcType=VARCHAR}, - #{validFlag, jdbcType=INTEGER}, - #{remarks, jdbcType=VARCHAR}, - #{responsibleUnit, jdbcType=VARCHAR}, - #{energyKind, jdbcType=VARCHAR}, - #{applyArctic, jdbcType=VARCHAR}, - #{tackTime, jdbcType=TIMESTAMP}, - #{parts, jdbcType=VARCHAR}, - #{itemsName, jdbcType=VARCHAR}, - #{itemsNum, jdbcType=VARCHAR}, - #{standId, jdbcType=VARCHAR}, - #{id, jdbcType=VARCHAR}, + + #{modifyTime, jdbcType=TIMESTAMP}, + #{creationTime, jdbcType=TIMESTAMP}, + #{creationUser, jdbcType=VARCHAR}, + #{validFlag, jdbcType=INTEGER}, + #{remarks, jdbcType=VARCHAR}, + #{responsibleUnit, jdbcType=VARCHAR}, + #{energyKind, jdbcType=VARCHAR}, + #{applyArctic, jdbcType=VARCHAR}, + #{tackTime, jdbcType=TIMESTAMP}, + #{parts, jdbcType=VARCHAR}, + #{itemsName, jdbcType=VARCHAR}, + #{itemsNum, jdbcType=VARCHAR}, + #{standId, jdbcType=VARCHAR}, + #{id, jdbcType=VARCHAR}, #{mainPointImplementation,jdbcType=VARCHAR}, #{termsConditions,jdbcType=CLOB}, - #{fo, jdbcType=VARCHAR}, - #{dutyEngineer, jdbcType=VARCHAR}, - #{svpps, jdbcType=VARCHAR}, - #{claimType, jdbcType=VARCHAR}, - #{busStandCover, jdbcType=VARCHAR}, - #{fileType, jdbcType=VARCHAR} + #{fo, jdbcType=VARCHAR}, + #{dutyEngineer, jdbcType=VARCHAR}, + #{svpps, jdbcType=VARCHAR}, + #{claimType, jdbcType=VARCHAR}, + #{busStandCover, jdbcType=VARCHAR}, + #{fileType, jdbcType=VARCHAR} - + update SAR_STAND_ITEMS set modify_time = #{modifyTime}, creation_time = #{creationTime}, @@ -258,69 +281,69 @@ update SAR_STAND_ITEMS - - + + modify_time = #{modifyTime}, - + creation_time = #{creationTime}, - + creation_user = #{creationUser}, - + valid_flag = #{validFlag}, - + remarks = #{remarks}, - + responsible_unit = #{responsibleUnit}, - + energy_kind = #{energyKind}, - + apply_arctic = #{applyArctic}, - + tack_time = #{tackTime}, tack_time = null, - + parts = #{parts}, - + items_name = #{itemsName}, - + items_num = #{itemsNum}, - + stand_id = #{standId}, - + MAINPOINTS_IMPEMENTATION = #{mainPointImplementation}, - + TERMS_CONDITIONS = #{termsConditions,jdbcType=CLOB}, - + fo = #{fo}, - + duty_engineer = #{dutyEngineer}, - + svpps = #{svpps}, - + claim_type = #{claimType}, - + bus_stand_cover = #{busStandCover}, @@ -329,7 +352,8 @@ + + @@ -492,7 +563,7 @@ @@ -524,39 +595,39 @@ update SAR_STAND_ITEMS - - + + svpps = #{item.svpps}, - + fo = #{item.fo}, - + file_type = #{item.fileType}, - + modify_time = #{item.modifyTime}, - + remarks = #{item.remarks}, - + apply_arctic = #{item.applyArctic}, - + items_name = #{item.itemsName}, - + items_num = #{item.itemsNum}, - + stand_id = #{item.standId}, - + TERMS_CONDITIONS = #{item.termsConditions,jdbcType=CLOB}, - where id = #{item.id, jdbcType=VARCHAR} + where id = #{item.id, jdbcType=VARCHAR} ; @@ -613,7 +684,8 @@ - select stand_id as label,claim_type as value from SAR_STAND_ITEMS where valid_flag = 0 and claim_type != '' @@ -627,7 +699,8 @@ - select stand_id as label,svpps as value from SAR_STAND_ITEMS where valid_flag = 0 and svpps != '' @@ -643,14 +716,14 @@ + + + + + SELECT + count(sar_stand_project_library.id ) as total + FROM + sar_stand_project_library + LEFT JOIN ts_user tu ON project_manager = tu.USID + WHERE + ( + id NOT IN ( SELECT project_id FROM sar_stand_project_relation ) + + + AND project_number LIKE concat(concat('%',#{qu.projectNumber}),'%') + + + AND project_name LIKE concat(concat('%',#{qu.projectName}),'%') + + + AND project_classification LIKE concat(concat('%',#{qu.projectClassification}),'%') + + + AND project_platfor LIKE concat(concat('%',#{qu.projectPlatfor}),'%') + + + AND project_group LIKE concat(concat('%',#{qu.projectGroup}),'%') + + + AND project_status LIKE concat(concat('%',#{qu.projectStatus}),'%') + + + AND current_node LIKE concat(concat('%',#{qu.currentNode}),'%') + + + AND project_level LIKE concat(concat('%',#{qu.projectLevel}),'%') + + + AND project_manager LIKE concat(concat('%',#{qu.projectManager}),'%') + + + AND product_line LIKE concat(concat('%',#{qu.productLine}),'%') + + + AND project_start_date >= #{qu.projectStartDate} + + + AND project_end_date <= #{qu.projectEndDate} + + + ) + + +