diff --git a/adc-da-slrs/src/main/java/com/adc/da/common/SarTypeEnum.java b/adc-da-slrs/src/main/java/com/adc/da/common/SarTypeEnum.java index d41522ac..ccf9bb73 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/common/SarTypeEnum.java +++ b/adc-da-slrs/src/main/java/com/adc/da/common/SarTypeEnum.java @@ -8,7 +8,7 @@ package com.adc.da.common; public enum SarTypeEnum { INLAND_STAND("INLAND_STAND","国内标准法规"),INLAND_LAWS("INLAND_LAWS","国内政策"), - FOREIGN_STAND("FOREIGN_STAND","国外标准法规"),FOREIGN_LAWS("FOREIGN_LAWS","国外政策"), + FOREIGN_STAND("FOREIGN_STAND","国外标准法规"),FOREIGN_LAWS("FOREIGN_LAWS","国内外政策"), STAND("STAND","国内外标准法规"), LAWS("LAWS","国内外政策"), LAWS_STAND("LAWS_STAND","国内外政策"), diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java index 34a6d875..9620fbbb 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java @@ -4,6 +4,7 @@ package com.adc.da.slrs.sarLawsStandInfo.controller; import com.adc.da.common.ReadExcel; import com.adc.da.exception.AdcDaBaseException; import com.adc.da.person.service.IPersonCollectEOService; +import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoExport; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoPage; import com.adc.da.slrs.sarLawsStandInfo.service.ISarLawsStandInfoService; import com.adc.da.slrs.sarResource.service.ITsResourceService; @@ -191,7 +192,7 @@ public class SarLawsStandInfoController extends BaseController @GetMapping(value = "/exportStandardsInfoExcel") public void exportStandardsInfoExcel(String exportContent, String exportType, String exportName,String userId, HttpServletResponse response, HttpServletRequest request) throws Exception { - List data = sarLawsInfoEOService.getExportData(exportType,exportContent,userId); + List data = sarLawsInfoEOService.getExportData(exportType,exportContent,userId); OutputStream os = null; Workbook workbook = null; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/dao/SarLawsStandInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/dao/SarLawsStandInfoDao.java index 8ca5a2a3..12f498f7 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/dao/SarLawsStandInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/dao/SarLawsStandInfoDao.java @@ -1,6 +1,7 @@ package com.adc.da.slrs.sarLawsStandInfo.dao; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfo; +import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoExport; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; @@ -24,7 +25,7 @@ public interface SarLawsStandInfoDao extends BaseMapper { List selectStandardsInfoByKey(String id); - List getSarStandardsExportInfo(SarLawsStandInfoPage page); + List getSarStandardsExportInfo(SarLawsStandInfoPage page); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoExport.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoExport.java new file mode 100644 index 00000000..ab53c4bc --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoExport.java @@ -0,0 +1,298 @@ +package com.adc.da.slrs.sarLawsStandInfo.entity; + +import com.adc.da.att.vo.AttFileVo; +import com.adc.da.base.entity.BaseEntity; +import com.adc.da.slrs.sarStandItems.entity.SarStandItems; +import com.adc.da.slrs.standardSplit.entity.SarStandAttrDetailsEO; +import com.adc.da.sys.entity.DicTypeEO; +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.*; + +/** + *

+ * + *

+ * + * @author super_liu + * @since 2021-10-25 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarLawsStandInfo对象", description="") +public class SarLawsStandInfoExport extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + + @ApiModelProperty(value = "政策分类 共四级,逐级选择-配置管理中维护") + @TableField("LAWS_TYPE") + private String lawsType; + + @ApiModelProperty(value = "政策编号") + @TableField("LAWS_NUMBER") + private String lawsNumber; + + @ApiModelProperty(value = "中文名称") + @TableField("LAWS_NAME") + private String lawsName; + + @ApiModelProperty(value = "英文名称") + @TableField("LAWS_EN_NAME") + private String lawsEnName; + + @ApiModelProperty(value = "政策文号") + @TableField("LAWS_NO") + private String lawsNo; + + @ApiModelProperty(value = "发文日期") + @TableField("ISSUE_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String issueTime; + + @ApiModelProperty(value = "发文单位") + @TableField("ISSUE_COMPANY") + private String issueCompany; + + @ApiModelProperty(value = "征集意见周期-起始时间") + @TableField("COMMENT_CYCLE_START") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String commentCycleStart; + + @ApiModelProperty(value = "征集意见周期-结束时间") + @TableField("COMMENT_CYCLE_END") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String commentCycleEnd; + + @ApiModelProperty(value = "文件状态-配置管理中维护") + @TableField("LAWS_TEXT_STATE") + private String lawsTextState; + + @ApiModelProperty(value = "适用区域-配置管理中维护") + @TableField("LAWS_SYQY") + private String lawsSyqy; + + @ApiModelProperty(value = "适用车型-配置管理中维护") + @TableField("LAWS_SYCX") + private String lawsSycx; + + @ApiModelProperty(value = "是/否(选择否,只有政策、政策中文名称是必填项目)") + @TableField("IS_RELATE_ACCESS") + private String isRelateAccess; + + @ApiModelProperty(value = "年度-可在配置管理中维护,根据发布日期自动带入可手动修改") + @TableField("LAWS_YEAR") + private String lawsYear; + + @ApiModelProperty(value = "福田转发通知文号") + @TableField("LAWS_NOTISYNC_NUM") + private String lawsNotisyncNum; + + @ApiModelProperty(value = "信息简报 xxx期次xxx板块") + @TableField("LAWS_BULLETIN") + private String lawsBulletin; + + @ApiModelProperty(value = "标签-可在配置管理中维护") + @TableField("LAWS_LABEL") + private String lawsLabel; + + @ApiModelProperty(value = "备注") + @TableField("LAWS_REMARK") + private String lawsRemark; + + @ApiModelProperty(value = "国家地区") + @TableField("COUNTRY") + private String country; + + @TableField("CREATION_USER") + private String creationUser; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private Integer validFlag; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date modifyTime; + + @ApiModelProperty(value = "参数1") + @TableField("PARAM1") + private Long param1; + + @ApiModelProperty(value = "参数2") + @TableField("PARAM2") + private String param2; + + // 非表字段 + @ApiModelProperty(value = "代替文件号") + @TableField(exist = false) + private String replaceFileNum; + + @ApiModelProperty(value = "被代替文件号") + @TableField(exist = false) + private String replacedFileNum; + + @TableField(exist = false) + private String processNum;//流程编号 + + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private String firstPutTime; + + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String putTimeShow; + + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String issueTimeShow; + + @TableField(exist = false) + private String issueTimeStr; + + @TableField(exist = false) + private String putTimeStr; + + //目录ID 非标准信息表中的字段 + @TableField(exist = false) + private String menuId; + + @TableField(exist = false) + private String menuParentId; + + @TableField(exist = false) + private String standStatusShow; // 标准状态下拉框 --单选 + + @TableField(exist = false) + private String standNatrueShow; + + @TableField(exist = false) + private String standSortShow; + + @TableField(exist = false) + private String applyCountryShow; + + @TableField(exist = false) + private List standFileList = new ArrayList(); + + @TableField(exist = false) + private List opinionFilesList = new ArrayList(); + + @TableField(exist = false) + private List relevanceFileList = new ArrayList(); + + @TableField(exist = false) + private String collectId; + + //文件的类型 + @TableField(exist = false) + private String standFileClassify; + + //文件的下载id + @TableField(exist = false) + private String attId; + + //记录是否修改了替代文件号 + @TableField(exist = false) + private int upReplaceNumFlag; + //记录是否修改了文件号 + @TableField(exist = false) + private int upNumFlag; + // 数据库新加的字段 + + @TableField(exist = false) + private String remark;//备注 + + @TableField(exist = false) + private Map attrInfoMap = new LinkedHashMap<>(); //属性表字段与值 + + @TableField(exist = false) + private Map attrInfoCaseMap = new LinkedHashMap<>(); //属性表字段与值小写前端带入渲染 + + @TableField(exist = false) + private String sarStandAttrEOStr; //新增修改时属性表信息 + + @TableField(exist = false) + private String fileIds; //全部文件ID + + @TableField(exist = false) + private List attrInfoList = new ArrayList<>(); + + @TableField(exist = false) + private String standTextStatusShow; // 标准文本状态显示名称 + // 以下为非表中字段 + @TableField(exist = false) + private String countryShow; //国家地区显示名称 + @TableField(exist = false) + private String standStateShow; // 标准状态显示名称 + @TableField(exist = false) + private String standNatureShow; // 标准性质显示名称 + @TableField(exist = false) + private List dicTypeList = new ArrayList(); // 记录标准涉及到的所有数据字典数据 + + @TableField(exist = false) + private List itemsList = new ArrayList<>(); + @ApiModelProperty(value = "分解单条款内容") + @TableField(exist = false) + private Map mapItems = new TreeMap<>(); + + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String XCXSSRQLAWS; // 新车实施日期 + + @TableField(exist = false) + private String SSRQLAWS; + @TableField(exist = false) + private String ZCXSSRQLAWS; + @TableField(exist = false) + private String ZCWBLAWS; + @TableField(exist = false) + private String GCWBLAWS; + @TableField(exist = false) + private String JDWJLAWS; + @TableField(exist = false) + private String CYSDLAWS; + @TableField(exist = false) + private String TGRLAWS; + @TableField(exist = false) + private String TGDWLAWS; + @TableField(exist = false) + private String NYLXLAWS; + @TableField(exist = false) + private String YYRZLAWS; + @TableField(exist = false) + private String ZRBMLAWS; + @TableField(exist = false) + private String ZRGCSLAWS; + @TableField(exist = false) + private String DTWJHLAWS; + @TableField(exist = false) + private String BDTWJHLAWS; + @TableField(exist = false) + private String YYBZZCLAWS; + @TableField(exist = false) + private String XGLC; + @TableField(exist = false) + private String CHJLLAWS; + @TableField(exist = false) + private String GLWJLAWS; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java index c75c082d..0753b998 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java @@ -274,4 +274,9 @@ public class SarLawsStandInfoPage extends BasePage { @TableField(exist = false) private String order1 = ""; + @TableField(exist = false) + private String exportAllAttrInfo; + @TableField(exist = false) + private String exportAllResult; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/ISarLawsStandInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/ISarLawsStandInfoService.java index a4a7b022..70a7fd55 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/ISarLawsStandInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/ISarLawsStandInfoService.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarLawsStandInfo.service; import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfo; +import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoExport; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoPage; import com.adc.da.slrs.sarStandardsInfo.entity.SarBussionessStandEOPage; import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; @@ -32,7 +33,7 @@ public interface ISarLawsStandInfoService extends IService { SarLawsStandInfoPage updateStandardsMenu(SarLawsStandInfoPage standardsInfoEO); - List getExportData(String exportType, String exportContent,String userId) throws Exception; + List getExportData(String exportType, String exportContent, String userId) throws Exception; List getSarStandardsInfoPage(SarLawsStandInfoPage page) throws Exception; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java index 13582396..da5cafee 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java @@ -36,6 +36,7 @@ import com.adc.da.slrs.sarLawsMenu.dao.SarLawsMenuDao; import com.adc.da.slrs.sarLawsMenu.entity.SarLawsMenu; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfo; import com.adc.da.slrs.sarLawsStandInfo.dao.SarLawsStandInfoDao; +import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoExport; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoPage; import com.adc.da.slrs.sarLawsStandInfo.service.ISarLawsStandInfoService; import com.adc.da.slrs.sarLawsVal.dao.SarLawsValDao; @@ -60,6 +61,7 @@ import com.adc.da.utils.util.SarAdvanceSearchUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import net.sf.json.JSONObject; +import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.lang.StringUtils; import org.json.JSONTokener; import org.springframework.beans.factory.annotation.Autowired; @@ -145,8 +147,11 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl getSarStandardsInfoPage(SarLawsStandInfoPage page) throws Exception { //查询当前登录人角色拥有权限的菜单 - String userId = UserUtils.getUserId(); - if(page.getMenuId() != null && page.getUserId() != null && StringUtils.isNotBlank(userId)){ + if(page.getUserId() == null || page.getUserId().equals("")){ + page.setUserId(LoginUserUtil.getUserId()); + } + + if(page.getMenuId() != null && page.getUserId() != null && StringUtils.isNotBlank(page.getUserId())){ QueryWrapper qw = new QueryWrapper<>(); qw.eq("ID",page.getMenuId()); qw.isNull("PARENT_ID"); @@ -320,11 +325,13 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl getAttrMap = sarLawsAttrInfoDao.selectLawsFieldAndData(fieldInfo,row.getId()); + List list = Arrays.asList(fieldInfo.split(",")).stream().map(s -> String.format(s.trim())).collect(Collectors.toList()); + + Map getAttrMap = BeanUtils.describe(row); if (InitStandAttrUtil.clobFieldListLaws != null && !InitStandAttrUtil.clobFieldListLaws.isEmpty()) { // 遍历修改所有clob类型的值 for (String clobField : InitStandAttrUtil.clobFieldListLaws) { @@ -338,7 +345,13 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl entry : getAttrMap.entrySet()) { String name = entry.getKey(); + List filterList = list.stream().filter(a -> name.equals(a)).collect(Collectors.toList()); + if(filterList.isEmpty()){ + newMap.remove(name); + continue; + } Object value1 = entry.getValue(); + if (value1 != null && value1.toString().equals("\"null\"")){ entry.setValue(""); } @@ -437,7 +450,7 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl getExportData(String exportType, String exportContent,String userId) throws Exception { + public List getExportData(String exportType, String exportContent,String userId) throws Exception { SarLawsStandInfoPage page = new SarLawsStandInfoPage(); if ("apart".equals(exportType)) { page.setIdlist(exportContent.split(",")); @@ -486,7 +499,21 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl rows = this.baseMapper.getSarStandardsExportInfo(page); + String fieldInfo = InitStandAttrUtil.queryFieldLaws; + + List list = Arrays.asList(fieldInfo.split(",")).stream().map(s -> String.format("SAR_LAWS_ATTR_INFO."+s.trim())).collect(Collectors.toList()); + List listSelect = Arrays.asList(fieldInfo.split(",")).stream().map(s -> String.format("tmp_tb."+s.trim())).collect(Collectors.toList()); + String exportAllAttrInfo = list.stream().collect(Collectors.joining(",")); + String exportAllResult = listSelect.stream().collect(Collectors.joining(",")); + if(StringUtils.isNotBlank(exportAllAttrInfo)){ + page.setExportAllAttrInfo(exportAllAttrInfo); + } + + if(StringUtils.isNotBlank(exportAllResult)){ + page.setExportAllResult(exportAllResult); + } + + List rows = this.baseMapper.getSarStandardsExportInfo(page); attrInfoShowExport(rows); return rows; } @@ -560,8 +587,15 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl sarlist) throws Exception { - for(SarLawsStandInfo row : sarlist){ + public void attrInfoShowExport (List sarlist) throws Exception { + + //查询字典表,形成Hash映射提升速度 + List dicInfo = dicTypeEODao.getDicInfo("dic_type_code", "dic_type_name"); + Map dicMap = dicInfo.stream() + .filter(item-> !item.getDicTypeCode().isEmpty()) + .collect(Collectors.toMap(DicTypeEO::getDicTypeCode,DicTypeEO::getDicTypeName,(value1, value2 )->value2)); + + for(SarLawsStandInfoExport row : sarlist){ attrInfoDetailsExport(row); Map getAttrMap = row.getAttrInfoMap(); Map getNewMap = new LinkedHashMap<>(); @@ -571,11 +605,11 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl 0 && InitStandAttrUtil.fileFieldListLaws.contains(name)) { - value = entry.getValue().toString(); - if (StringUtils.isNotBlank(value)) { - List fileObj = attFileEOService.getMultiFileInfos(value); - entry.setValue(fileObj); - } +// value = entry.getValue().toString(); +// if (StringUtils.isNotBlank(value)) { +// List fileObj = attFileEOService.getMultiFileInfos(value); +// entry.setValue(fileObj); +// } } else if (entry.getValue() != null && InitStandAttrUtil.selectionFieldListLaws != null && InitStandAttrUtil.selectionFieldListLaws.size() > 0 && InitStandAttrUtil.selectionFieldListLaws.contains(name)) { value = entry.getValue().toString(); String selVal = InitStandAttrUtil.selectFieldMapLaws.get(name); @@ -589,7 +623,21 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl valArr = Arrays.asList(value.split(",")); - value = dicTypeEODao.getDicNamesByCodes(valArr,""); + if(entry.getValue()!=null) { + StringBuilder builder = new StringBuilder(""); + for (String s : valArr) { + if (dicMap.containsKey(s) && !"ZRBM".equals(name)){ + builder.append(dicMap.get(s)+","); + } + + } + + if (builder.toString().isEmpty()){ + value = entry.getValue().toString(); + }else { + value = builder.toString(); + } + } } entry.setValue(value); } @@ -759,7 +807,7 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl changeMap (SarLawsStandInfo sarStandardsInfoEO,Map map) { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUpdLog/service/impl/SarUpdLogServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUpdLog/service/impl/SarUpdLogServiceImpl.java index e3c5eaeb..e84b5393 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUpdLog/service/impl/SarUpdLogServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUpdLog/service/impl/SarUpdLogServiceImpl.java @@ -220,14 +220,20 @@ public class SarUpdLogServiceImpl extends ServiceImpl i public String changeLawsName (String field,String sarType) throws Exception{ switch (field) { - case "country": return "适用区域"; - case "isRelateAccess": return "重要度"; - case "issueTime": return "发布日期"; - case "standEnName": return "英文名称"; + case "lawsType": return "政策分类"; + case "lawsNumber": return "政策编号"; + case "lawsName": return "政策名称"; + case "lawsEnName": return "英文名称"; case "standName": return "中文名称"; - case "standNumber": return "政策编号"; - case "standState": return "政策状态"; - case "replaceStandNum": return "代替政策编号"; + case "lawsNo": return "政策文号"; + case "issueTime": return "发文日期"; + case "issueCompany": return "发文单位"; + case "lawsTextState": return "文本状态"; + case "lawsSyqy": return "适用区域"; + case "lawsSycx": return "适用车型"; + case "lawsYear": return "年度"; + case "lawsNotisyncNum": return "福田转发通知文号"; + case "lawsBulletin": return "信息简报"; default: String name = sarStandAttrDetailsEODao.selectNameByField(field,sarType); return name; diff --git a/adc-da-slrs/src/main/java/com/adc/da/utils/util/FieldConvertUtil.java b/adc-da-slrs/src/main/java/com/adc/da/utils/util/FieldConvertUtil.java index 8541ab3b..18a5bf30 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/utils/util/FieldConvertUtil.java +++ b/adc-da-slrs/src/main/java/com/adc/da/utils/util/FieldConvertUtil.java @@ -47,8 +47,8 @@ public class FieldConvertUtil { "EOP实施日期(文本),责任部门,相关部门,SVPPS,FO,项目评估角色,法规维护人,代替标准编号," + "对应其他标准,文字描述,等效标准,引用标准,被引用标准,覆盖关系"; - public static String exportBaseFieldNamesLaws = "政策分类,政策编号,中文名称,英文名称,政策文号,发文日期,发文单位,征集意见周期-起始时间,征集意见周期-结束时间,文本状态," + - "适用区域,适用车型,是否纳入认证清单,年度,福田转发通知文号,信息简报,标签,备注"; + public static String exportBaseFieldNamesLaws = "政策分类,政策编号,政策名称,英文名称,政策文号,发文日期,发文单位,征集意见周期-起始时间,征集意见周期-结束时间,文本状态," + + "适用区域,适用车型,是否纳入认证清单,年度,福田转发通知文号,信息简报,标签,备注(最终政策发布)"; public static String exportAttrFieldNamesLaws = "适用车辆类型,要求类型," + "个性化标签,政策文本,过程稿件,新车型实施日期(文本),在产车实施日期(文本),EOP实施日期(文本),SVPPS," + diff --git a/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java b/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java index e7c63cfa..bd2845cf 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java +++ b/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java @@ -2,6 +2,7 @@ package com.adc.da.utils.util; import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfo; +import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoExport; import com.adc.da.slrs.sarStandAttrDetails.entity.SarStandAttrDetails; import org.apache.commons.lang.StringUtils; import org.apache.poi.ss.usermodel.*; @@ -10,10 +11,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; /** * @Description: 标准导出工具 @@ -24,11 +23,11 @@ public class LawsStandExportUtil { private static final Logger logger = LoggerFactory.getLogger(LawsStandExportUtil.class); - public static Workbook exportDatas (List datas) { + public static Workbook exportDatas (List datas) { Workbook workbook = new XSSFWorkbook(); try { StringBuilder attrBud = new StringBuilder(); - List detailsEOList = InitStandAttrUtil.lawsStandAttrFieldList; + List detailsEOList = InitStandAttrUtil.lawsForeignAttrFieldList; Map attrInfoMap = new HashMap<>(); for (SarStandAttrDetails detailsEO : detailsEOList) { if (!InitStandAttrUtil.fileFieldListLaws.contains(detailsEO.getAttrField())) { @@ -62,13 +61,13 @@ public class LawsStandExportUtil { } } - public static void createDatas(Workbook workbook,Sheet sheet,List datas, + public static void createDatas(Workbook workbook,Sheet sheet,List datas, String header,Map attrInfoMap) throws Exception{ CellStyle cellStyle = workbook.createCellStyle();//初始化单元格格式对象 cellStyle.setAlignment(HorizontalAlignment.CENTER); if (datas != null && !datas.isEmpty()) { for (int i=0;i < datas.size(); i++) { - SarLawsStandInfo sarStandardsInfoEO = datas.get(i); + SarLawsStandInfoExport sarStandardsInfoEO = datas.get(i); Row row = sheet.createRow(i+1); String[] headerArr = header.split(","); int sheetNum = 0; @@ -85,7 +84,7 @@ public class LawsStandExportUtil { } // 根据表头返回相应值 - public static String getValueByName (String name,SarLawsStandInfo sarStandardsInfoEO,Map attrInfoMap) throws Exception{ + public static String getValueByName (String name,SarLawsStandInfoExport sarStandardsInfoEO,Map attrInfoMap) throws Exception{ String value = ""; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Map attrValueMap = sarStandardsInfoEO.getAttrInfoMap(); @@ -96,7 +95,7 @@ public class LawsStandExportUtil { case "政策编号": value = verifyBean(sarStandardsInfoEO.getLawsNumber()); break; - case "中文名称": + case "政策名称": value = verifyBean(sarStandardsInfoEO.getLawsName()); break; case "英文名称": @@ -114,6 +113,11 @@ public class LawsStandExportUtil { issueTime=sarStandardsInfoEO.getIssueTime(); } value = issueTime; + if(StringUtils.isNotBlank(value)){ + if (value.length()>10){ + value = value.substring(0,10); + } + } break; case "发文单位": value = verifyBean(sarStandardsInfoEO.getIssueCompany()); @@ -126,6 +130,11 @@ public class LawsStandExportUtil { commentCycleStart=sarStandardsInfoEO.getCommentCycleStart(); } value = commentCycleStart; + if(StringUtils.isNotBlank(value)){ + if (value.length()>10){ + value = value.substring(0,10); + } + } break; case "征集意见周期-结束时间": String commentCycleEnd=""; @@ -135,6 +144,11 @@ public class LawsStandExportUtil { commentCycleEnd=sarStandardsInfoEO.getCommentCycleEnd(); } value = commentCycleEnd; + if(StringUtils.isNotBlank(value)){ + if (value.length()>10){ + value = value.substring(0,10); + } + } break; case "文本状态": value = verifyBean(sarStandardsInfoEO.getStandStatusShow()); @@ -160,14 +174,25 @@ public class LawsStandExportUtil { case "标签": value = verifyBean(sarStandardsInfoEO.getLawsLabel()); break; - case "备注": + case "备注(最终政策发布)": value = verifyBean(sarStandardsInfoEO.getLawsRemark()); break; default: + List list = new ArrayList<>(); + List dateList = InitStandAttrUtil.timeFieldListLaws; + List dateList2 = InitStandAttrUtil.multiTimeFieldListLaws; + list.addAll(dateList); + list.addAll(dateList2); String field = attrInfoMap.get(name); if (attrValueMap != null) { + List finalData = list.stream().filter(field::contains).collect(Collectors.toList()); value = String.valueOf(attrValueMap.get(field)); - } + if (!finalData.isEmpty()) { + if (value.length()>10){ + value = value.substring(0,10); + } + } + } break; } return value; diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsStandInfo/SarLawsStandInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsStandInfo/SarLawsStandInfoMapper.xml index 459621b6..9ebd7e9a 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsStandInfo/SarLawsStandInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsStandInfo/SarLawsStandInfoMapper.xml @@ -6,7 +6,7 @@ - + @@ -178,7 +178,7 @@ and SAR_LAWS_STAND_INFO.id in ( select COLLECT_RES_ID from TS_PERSON_COLLECT where TS_PERSON_COLLECT.VALID_FLAG=0 - and (collect_type='INLAND_STAND' or collect_type='FOREIGN_STAND') + and (collect_type='FOREIGN_LAWS') and TS_PERSON_COLLECT.user_id=#{userId} ) @@ -280,9 +280,7 @@ GROUP BY SAR_LAWS_STAND_INFO.id) a - + SELECT + + , ${exportAllResult} + + FROM ( + select + + , ${exportAllAttrInfo} + + from SAR_LAWS_STAND_INFO + + ) tmp_tb order by ${orderByA} ${order1}, - SAR_LAWS_STAND_INFO.id + tmp_tb.issue_time is null,tmp_tb.issue_time desc,tmp_tb.id @@ -322,21 +378,33 @@ AND dicstandTextStatus.dic_id IS NOT NULL AND dicstandTextStatus.valid_flag = 0 ) + + LEFT JOIN TS_DICTYPE laws_year_show ON ( + laws_year_show.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_YEAR + AND dicstandTextStatus.dic_id IS NOT NULL + AND dicstandTextStatus.valid_flag = 0 + ) + + LEFT JOIN TS_DICTYPE laws_label_show ON ( + laws_label_show.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_LABEL + AND dicstandTextStatus.dic_id IS NOT NULL + AND dicstandTextStatus.valid_flag = 0 + ) LEFT JOIN TS_DICTYPE laws_sycx_show ON ( - dicstandTextStatus.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_SYCX + laws_sycx_show.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_SYCX AND dicstandTextStatus.dic_id IS NOT NULL AND dicstandTextStatus.valid_flag = 0 ) LEFT JOIN TS_DICTYPE laws_syqy_show ON ( - dicstandTextStatus.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_SYQY + laws_syqy_show.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_SYQY AND dicstandTextStatus.dic_id IS NOT NULL AND dicstandTextStatus.valid_flag = 0 ) LEFT JOIN TS_DICTYPE laws_type_show ON ( - dicstandTextStatus.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_TYPE + laws_type_show.dic_type_code = SAR_LAWS_STAND_INFO.LAWS_TYPE AND dicstandTextStatus.dic_id IS NOT NULL AND dicstandTextStatus.valid_flag = 0 ) @@ -433,7 +501,7 @@ and SAR_LAWS_STAND_INFO.id in ( select COLLECT_RES_ID from TS_PERSON_COLLECT where TS_PERSON_COLLECT.VALID_FLAG=0 - and (collect_type='INLAND_STAND' or collect_type='FOREIGN_STAND') + and (collect_type='FOREIGN_LAWS') and TS_PERSON_COLLECT.user_id=#{userId} ) diff --git a/adc-da-sys/src/main/java/com/adc/da/person/service/impl/PersonCollectEOServiceImpl.java b/adc-da-sys/src/main/java/com/adc/da/person/service/impl/PersonCollectEOServiceImpl.java index bb0cd153..7b96410a 100644 --- a/adc-da-sys/src/main/java/com/adc/da/person/service/impl/PersonCollectEOServiceImpl.java +++ b/adc-da-sys/src/main/java/com/adc/da/person/service/impl/PersonCollectEOServiceImpl.java @@ -15,6 +15,7 @@ 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.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; @@ -137,8 +138,9 @@ public class PersonCollectEOServiceImpl extends ServiceImpl ids = new ArrayList<>(Arrays.asList(modeType.split(","))); + wrapper.in("collect_type",ids); } if (pageNo != null) {