Merge branch 'develop_migration' into 'develop_master'

Develop migration

See merge request LiuChao/foton-slrs-system-rest!423
This commit is contained in:
super_liu
2022-03-24 22:56:51 +08:00
10 changed files with 882 additions and 27 deletions
@@ -57,6 +57,10 @@ public class SarBussStandAttrInfo extends BaseEntity {
@TableField("TXLBBUSS")
private String txlbbuss;
@ApiModelProperty(value = "被代替企标编号")
@TableField("BDTQBBHBUSS")
private String bdtqbbhbuss;
@TableField(exist = false)
private String glwj;
//
@@ -5,6 +5,7 @@ import com.adc.da.Log.BusinessType;
import com.adc.da.Log.EpcLog;
import com.adc.da.common.ReadExcel;
import com.adc.da.person.service.IPersonCollectEOService;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStandExport;
import com.adc.da.slrs.sarBussionessStand.service.ISarBussionessStandService;
import com.adc.da.slrs.sarResource.entity.TsResource;
import com.adc.da.slrs.sarResource.service.ITsResourceService;
@@ -119,7 +120,7 @@ public class SarBussionessStandController extends BaseController<SarBussionessSt
"attachment; filename=" + ReadExcel.encodeFileName(exportName+".xlsx",request));
response.setContentType("application/force-download");
//导出数据
List<SarBussionessStand> datas = sarBussionessStandEOService.getSarBussionessStand(exportType,exportContent,userId);
List<SarBussionessStandExport> datas = sarBussionessStandEOService.getSarBussionessStand(exportType,exportContent,userId);
workbook = BussStandExportUtil.exportDatas(datas);
os = response.getOutputStream();
workbook.write(os);
@@ -1,6 +1,7 @@
package com.adc.da.slrs.sarBussionessStand.dao;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStandExport;
import com.adc.da.slrs.sarStandardsInfo.entity.RecommendVO;
import com.adc.da.slrs.sarStandardsInfo.entity.SarBussionessStandEOPage;
import com.adc.da.sys.entity.UserEO;
@@ -45,7 +46,7 @@ public interface SarBussionessStandDao extends BaseMapper<SarBussionessStand> {
int getBussionessStandInfoCountByRole(SarBussionessStandEOPage page);
List<SarBussionessStand> getSarBussionessStand(SarBussionessStandEOPage page);
List<SarBussionessStandExport> getSarBussionessStand(SarBussionessStandEOPage page);
//liwenxuan:标准法规更新数量及清单:企业标准
Integer selectBussionessStandardsCount(Date visitTime);
//liwenxuan:标准法规更新数量及清单:企业标准All
@@ -54,8 +55,6 @@ public interface SarBussionessStandDao extends BaseMapper<SarBussionessStand> {
List<SarBussionessStand> selectSarBussionesDownloadFileInfo(String id);
List<SarBussionessStand> selectStandardsByStandnumber(SarBussionessStand sarStandardsInfoEO);
List<SarBussionessStand> selectStandByStandNumber(@Param("standCode") String standCode);
/**
@@ -130,6 +130,12 @@ public class SarBussionessStand extends BaseEntity {
@TableField(exist = false)
private String DTQBBHBUSS;
/**
* 代替企标标准号
*/
@TableField(exist = false)
private String BDTQBBHBUSS;
@TableField(exist = false)
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private String firstPutTime;
@@ -0,0 +1,608 @@
package com.adc.da.slrs.sarBussionessStand.entity;
import com.adc.da.att.vo.AttFileVo;
import com.adc.da.base.entity.BaseEntity;
import com.adc.da.slrs.standardSplit.entity.SarStandAttrDetailsEO;
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.*;
/**
* <p>
* 企业标准信息表
* </p>
*
* @author super_liu
* @since 2021-07-13
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="SarBussionessStand对象", description="企业标准信息表")
public class SarBussionessStandExport extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键")
@TableId("ID")
private String id;
@ApiModelProperty(value = "企标标准号")
@TableField("STAND_CODE")
private String standCode;
@ApiModelProperty(value = "标准编号")
@TableField("STAND_NUMBER")
private String standNumber;
@ApiModelProperty(value = "标准名称")
@TableField("STAND_NAME")
private String standName;
@ApiModelProperty(value = "标准英文名称")
@TableField("STAND_EN_NAME")
private String standEnName;
@ApiModelProperty(value = "发布日期")
@TableField("ISSUE_TIME")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
private String issueTime;
@ApiModelProperty(value = "实施日期")
@TableField("PUT_TIME")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
private String putTime;
@ApiModelProperty(value = "代替标准号")
@TableField("REPLACE_STAND_NUM")
private String replaceStandNum;
@ApiModelProperty(value = "被代替标准号")
@TableField("REPLACED_STAND_NUM")
private String replacedStandNum;
@ApiModelProperty(value = "标准状态")
@TableField("STAND_STATUS")
private String standStatus;
@ApiModelProperty(value = "适用国家/地区")
@TableField("APPLY_COUNTRY")
private String applyCountry;
@ApiModelProperty(value = "标准性质")
@TableField("STAND_NATURE")
private String standNature;
@ApiModelProperty(value = "标准类别")
@TableField("STAND_SORT")
private String standSort;
@ApiModelProperty(value = "标准年份")
@TableField("STAND_YEAR")
private String standYear;
@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 = "文本状态")
@TableField("TEXT_STATUS_BUSS")
private String textStatusBuss;
@ApiModelProperty(value = "计划库制定状态 0 默认 1 制定 2修订")
@TableField("REVISE_STATUS")
private String reviseStatus;
@ApiModelProperty(value = "标准顺序号")
@TableField("STAND_SN")
private String standSn;
// 非表字段
@TableField(exist = false)
private String newStandSn;
@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;
@TableField(exist = false)
private String processNum;//流程编号
//目录ID 非标准信息表中的字段
@TableField(exist = false)
private String menuId;
@TableField(exist = false)
private String menuParentId;
@TableField(exist = false)
private String textStatusBussShow;
@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<AttFileVo> standFileList = new ArrayList<AttFileVo>();
@TableField(exist = false)
private List<AttFileVo> opinionFilesList = new ArrayList<AttFileVo>();
@TableField(exist = false)
private List<AttFileVo> relevanceFileList = new ArrayList<AttFileVo>();
@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<String, Object> attrInfoMap = new LinkedHashMap<>(); //属性表字段与值
@TableField(exist = false)
private Map<String, Object> attrInfoCaseMap = new LinkedHashMap<>(); //属性表字段与值小写前端带入渲染
@TableField(exist = false)
private Map<String, Object> attrInfoProcessMap = new LinkedHashMap<>(); //属性表字段与值小写前端带入渲染
@TableField(exist = false)
private String sarStandAttrEOStr; //新增修改时属性表信息
@TableField(exist = false)
private String fileIds; //全部文件ID
@TableField(exist = false)
private List<SarStandAttrDetailsEO> attrInfoList = new ArrayList<>();
/**
* 新增条件字段
* @return
*/
@TableField(exist = false)
private String reviewTime;
@TableField(exist = false)
private String issueTimeStart;
@TableField(exist = false)
private String issueTimeEnd;
@TableField(exist = false)
private String prcCreateUser;
private String FZRQBUSS;
private String FSRQBUSS;
private String FBGBUSS;
private String BZSMBUSS;
private String LSBBBUSS;
private String QTWJBUSS;
private String QCDW;
private String QCRBUSS;
private String WJSCRYBUSS;
private String SYCXCLASS;
private String NYLXCLASS;
private String SYCPXCLASS;
private String TXLBBUSS;
private String VPPSBMBUSS;
private String VPPSCNBUSS;
private String DTQBBHBUSS;
private String BDTQBBHBUSS;
private String XGJLBUSS;
private String XGLC;
private String GLWJBUSS;
private String XCSJBUSS;
private String LLCS;
private String CS;
private String CYCVPPSBMBUSS;
private String CYCVPPSCNBUSS;
private String KCVPPSBMBUSS;
private String KCVPPSCNBUSS;
private String DYBXHBUSS;
private String DYMCBUSS;
private String YYBZ;
private String CBCD;
private String CYCD;
private String CYBZ;
private String BARQ;
private String XGD;
private String CSZD;
private String CDZD;
private String CYCDYBXHBUSS;
private String CYCDYMCBUSS;
public static long getSerialVersionUID() {
return serialVersionUID;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getStandCode() {
return standCode;
}
public void setStandCode(String standCode) {
this.standCode = standCode;
}
public String getStandName() {
return standName;
}
public void setStandName(String standName) {
this.standName = standName;
}
public String getStandEnName() {
return standEnName;
}
public void setStandEnName(String standEnName) {
this.standEnName = standEnName;
}
public String getIssueTime() {
return issueTime;
}
public void setIssueTime(String issueTime) {
this.issueTime = issueTime;
}
public String getPutTime() {
return putTime;
}
public void setPutTime(String putTime) {
this.putTime = putTime;
}
public String getReplaceStandNum() {
return replaceStandNum;
}
public void setReplaceStandNum(String replaceStandNum) {
this.replaceStandNum = replaceStandNum;
}
public String getReplacedStandNum() {
return replacedStandNum;
}
public void setReplacedStandNum(String replacedStandNum) {
this.replacedStandNum = replacedStandNum;
}
public String getStandStatus() {
return standStatus;
}
public void setStandStatus(String standStatus) {
this.standStatus = standStatus;
}
public String getApplyCountry() {
return applyCountry;
}
public void setApplyCountry(String applyCountry) {
this.applyCountry = applyCountry;
}
public String getStandNature() {
return standNature;
}
public void setStandNature(String standNature) {
this.standNature = standNature;
}
public String getStandSort() {
return standSort;
}
public void setStandSort(String standSort) {
this.standSort = standSort;
}
public String getStandYear() {
return standYear;
}
public void setStandYear(String standYear) {
this.standYear = standYear;
}
public Integer getValidFlag() {
return validFlag;
}
public void setValidFlag(Integer validFlag) {
this.validFlag = validFlag;
}
public Date getCreationTime() {
return creationTime;
}
public void setCreationTime(Date creationTime) {
this.creationTime = creationTime;
}
public Date getModifyTime() {
return modifyTime;
}
public void setModifyTime(Date modifyTime) {
this.modifyTime = modifyTime;
}
public String getTextStatusBuss() {
return textStatusBuss;
}
public void setTextStatusBuss(String textStatusBuss) {
this.textStatusBuss = textStatusBuss;
}
public String getFirstPutTime() {
return firstPutTime;
}
public void setFirstPutTime(String firstPutTime) {
this.firstPutTime = firstPutTime;
}
public String getPutTimeShow() {
return putTimeShow;
}
public void setPutTimeShow(String putTimeShow) {
this.putTimeShow = putTimeShow;
}
public String getIssueTimeShow() {
return issueTimeShow;
}
public void setIssueTimeShow(String issueTimeShow) {
this.issueTimeShow = issueTimeShow;
}
public String getIssueTimeStr() {
return issueTimeStr;
}
public void setIssueTimeStr(String issueTimeStr) {
this.issueTimeStr = issueTimeStr;
}
public String getPutTimeStr() {
return putTimeStr;
}
public void setPutTimeStr(String putTimeStr) {
this.putTimeStr = putTimeStr;
}
public String getMenuId() {
return menuId;
}
public void setMenuId(String menuId) {
this.menuId = menuId;
}
public String getMenuParentId() {
return menuParentId;
}
public void setMenuParentId(String menuParentId) {
this.menuParentId = menuParentId;
}
public String getStandStatusShow() {
return standStatusShow;
}
public void setStandStatusShow(String standStatusShow) {
this.standStatusShow = standStatusShow;
}
public String getStandNatrueShow() {
return standNatrueShow;
}
public void setStandNatrueShow(String standNatrueShow) {
this.standNatrueShow = standNatrueShow;
}
public String getStandSortShow() {
return standSortShow;
}
public void setStandSortShow(String standSortShow) {
this.standSortShow = standSortShow;
}
public String getApplyCountryShow() {
return applyCountryShow;
}
public void setApplyCountryShow(String applyCountryShow) {
this.applyCountryShow = applyCountryShow;
}
public List<AttFileVo> getStandFileList() {
return standFileList;
}
public void setStandFileList(List<AttFileVo> standFileList) {
this.standFileList = standFileList;
}
public List<AttFileVo> getOpinionFilesList() {
return opinionFilesList;
}
public void setOpinionFilesList(List<AttFileVo> opinionFilesList) {
this.opinionFilesList = opinionFilesList;
}
public List<AttFileVo> getRelevanceFileList() {
return relevanceFileList;
}
public void setRelevanceFileList(List<AttFileVo> relevanceFileList) {
this.relevanceFileList = relevanceFileList;
}
public String getCollectId() {
return collectId;
}
public void setCollectId(String collectId) {
this.collectId = collectId;
}
public String getStandFileClassify() {
return standFileClassify;
}
public void setStandFileClassify(String standFileClassify) {
this.standFileClassify = standFileClassify;
}
public String getAttId() {
return attId;
}
public void setAttId(String attId) {
this.attId = attId;
}
public int getUpReplaceNumFlag() {
return upReplaceNumFlag;
}
public void setUpReplaceNumFlag(int upReplaceNumFlag) {
this.upReplaceNumFlag = upReplaceNumFlag;
}
public int getUpNumFlag() {
return upNumFlag;
}
public void setUpNumFlag(int upNumFlag) {
this.upNumFlag = upNumFlag;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Map<String, Object> getAttrInfoMap() {
return attrInfoMap;
}
public void setAttrInfoMap(Map<String, Object> attrInfoMap) {
this.attrInfoMap = attrInfoMap;
}
public Map<String, Object> getAttrInfoCaseMap() {
return attrInfoCaseMap;
}
public void setAttrInfoCaseMap(Map<String, Object> attrInfoCaseMap) {
this.attrInfoCaseMap = attrInfoCaseMap;
}
public String getSarStandAttrEOStr() {
return sarStandAttrEOStr;
}
public void setSarStandAttrEOStr(String sarStandAttrEOStr) {
this.sarStandAttrEOStr = sarStandAttrEOStr;
}
public String getFileIds() {
return fileIds;
}
public void setFileIds(String fileIds) {
this.fileIds = fileIds;
}
public List<SarStandAttrDetailsEO> getAttrInfoList() {
return attrInfoList;
}
public void setAttrInfoList(List<SarStandAttrDetailsEO> attrInfoList) {
this.attrInfoList = attrInfoList;
}
}
@@ -3,6 +3,7 @@ package com.adc.da.slrs.sarBussionessStand.service;
import com.adc.da.http.ResponseMessage;
import com.adc.da.search.entity.SarBussionessStandEO;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStandExport;
import com.adc.da.slrs.sarStandardsInfo.entity.SarBussionessStandEOPage;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -24,7 +25,7 @@ public interface ISarBussionessStandService extends IService<SarBussionessStand>
ResponseMessage<SarBussionessStand> deleteSarBussionessStand(SarBussionessStandEOPage page) throws Exception;
List<SarBussionessStand> getSarBussionessStand(String exportType, String exportContent,String userId) throws Exception;
List<SarBussionessStandExport> getSarBussionessStand(String exportType, String exportContent, String userId) throws Exception;
SarBussionessStand updateSarBussionessStand(SarBussionessStand sarBussionessStandEO) throws Exception;
@@ -1,5 +1,6 @@
package com.adc.da.slrs.sarBussionessStand.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.adc.da.att.entity.AttFileEO;
import com.adc.da.att.service.IAttFileEOService;
import com.adc.da.common.ConvertMqEO;
@@ -14,6 +15,7 @@ import com.adc.da.person.dao.PersonCollectEODao;
import com.adc.da.person.entity.TsPersonCollect;
import com.adc.da.person.page.PersonCollectEOPage;
import com.adc.da.person.service.IPersonCollectEOService;
import com.adc.da.search.entity.SarBussionessStandEO;
import com.adc.da.search.entity.StandLawsEO;
import com.adc.da.search.service.StandLawsSearchService;
import com.adc.da.slrs.otConvertMq.dao.OtConvertMqDao;
@@ -29,6 +31,7 @@ import com.adc.da.slrs.sarBussStandVal.dao.SarBussStandValDao;
import com.adc.da.slrs.sarBussStandVal.entity.SarBussStandVal;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand;
import com.adc.da.slrs.sarBussionessStand.dao.SarBussionessStandDao;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStandExport;
import com.adc.da.slrs.sarBussionessStand.service.ISarBussionessStandService;
import com.adc.da.slrs.sarResource.entity.TsResource;
import com.adc.da.slrs.sarResource.service.ITsResourceService;
@@ -52,6 +55,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.slf4j.Logger;
@@ -246,7 +250,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
@Override
public List<SarBussionessStand> getSarBussionessStand(String exportType, String exportContent,String userId) throws Exception {
public List<SarBussionessStandExport> getSarBussionessStand(String exportType, String exportContent, String userId) throws Exception {
SarBussionessStandEOPage page = new SarBussionessStandEOPage();
if ("apart".equals(exportType)) {
page.setIdlist(exportContent.split(","));
@@ -321,7 +325,39 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
nowOrderFunc(page);
}
List<SarBussionessStand> getList = sarBussionessStandEODao.getSarBussionessStand(page);
String fieldInfo = InitStandAttrUtil.queryFieldBuss;
List<String> list = Arrays.asList(fieldInfo.split(",")).stream().map(s -> String.format("SAR_BUSS_STAND_ATTR_INFO."+s.trim())).collect(Collectors.toList());
List<String> 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);
}
//配置列表显示的数据权限
if ("1".equals(page.getIsKU())) {
List<String> access = tsUserService.getResourceDataUserId(page.getUserId());
if (null == page.getMenuId() && null == page.getMenuAllChildrenIdList()) {
page.setMenuAllChildrenIdList(access);
page.setMenuId("");
} else if (page.getMenuId().equals("3")) {
page.setMenuAllChildrenIdList(access);
}
List<String> finalData = page.getMenuAllChildrenIdList().stream().filter(s -> access.contains(s)).collect(Collectors.toList());
if (finalData.size() > 0) {
page.setMenuAllChildrenIdList(finalData);
if (null == page.getMenuId() && null == page.getMenuAllChildrenIdList()) {
page.setMenuAllChildrenIdList(access);
}
}
}
List<SarBussionessStandExport> getList = sarBussionessStandEODao.getSarBussionessStand(page);
attrInfoShowExport(getList);
return getList;
}
@@ -405,7 +441,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
}
}
public void attrInfoShowExport (List<SarBussionessStand> sarlist) throws Exception {
public void attrInfoShowExport (List<SarBussionessStandExport> sarlist) throws Exception {
//查询字典表,形成Hash映射提升速度
List<DicTypeEO> dicInfo = dicTypeEODao.getDicInfo("dic_type_code", "dic_type_name");
@@ -413,7 +449,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
.filter(item-> !item.getDicTypeCode().isEmpty())
.collect(Collectors.toMap(DicTypeEO::getDicTypeCode,DicTypeEO::getDicTypeName,(value1, value2 )->value2));
for(SarBussionessStand row : sarlist){
for(SarBussionessStandExport row : sarlist){
attrInfoDetailsExport(row);
Map<String, Object> getAttrMap = row.getAttrInfoMap();
Map<String, Object> getNewMap = new LinkedHashMap<>();
@@ -507,10 +543,11 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
}
}
createStandAttrInfo(sarBussionessStandEO);
// 根据代替标准号 ,修改代替标准号标准中的,被代替标准号
updateReplaceConnect(sarBussionessStandEO);
//修改收藏分享编号名称
updateCollectAndShare(sarBussionessStandEO);
updateCiteStand(sarBussionessStandEO, null, "DTQBBHBUSS", "BDTQBBHBUSS");
// 记录修改日志
saveUpdateLog(sarBussionessStandEO,beforeStandEO);
if (elasflag) {
@@ -584,6 +621,158 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
return str == null ? "" : str;
}
// 新增修改标准过程中,根据代替标准号,修改被代替标准号对应的标准
public void updateCiteStand(SarBussionessStand sarBussionessStandEO, SarStandardsInfo beforeSarStandardsInfo, String upField, String beUpedField) throws Exception {
// 记录要被代替标准号的数据
// SarStandardsInfoEO chageEO= new SarStandardsInfoEO();
SarBussionessStand sarStandardsSelectEO = new SarBussionessStand();
String addStrandNumber = "";
String beforeStrandNumber = "";
if (StringUtils.isNotEmpty(sarBussionessStandEO.getStandYear())) {
addStrandNumber = sarBussionessStandEO.getStandSort() + " " + sarBussionessStandEO.getStandNumber() + "-" + sarBussionessStandEO.getStandYear();
} else {
addStrandNumber = sarBussionessStandEO.getStandSort() + " " + sarBussionessStandEO.getStandNumber();
}
if (beforeSarStandardsInfo != null) {
if (StringUtils.isNotEmpty(beforeSarStandardsInfo.getStandYear())) {
beforeStrandNumber = beforeSarStandardsInfo.getStandSort() + " " + beforeSarStandardsInfo.getStandNumber() + "-" + beforeSarStandardsInfo.getStandYear();
} else {
beforeStrandNumber = beforeSarStandardsInfo.getStandSort() + " " + beforeSarStandardsInfo.getStandNumber();
}
}
// 以“,”分隔查看之前是否有 ,如果有不修改,如果没有,追加修改
String newCiteStand = "";
if ("DTQBBHBUSS".equals(upField)) {
newCiteStand = sarBussionessStandEO.getReplaceStandNum();
} else if ("BDTQBBHBUSS".equals(upField)) {
newCiteStand = sarBussionessStandEO.getReplacedStandNum();
}
if (StringUtils.isNotEmpty(newCiteStand) && newCiteStand.split(",").length > 0) {
// 主要逻辑处理新增的
String nowEOrepNums[] = newCiteStand.split(",");
for (String citeStand : nowEOrepNums) {
sarStandardsSelectEO.setStandCode(citeStand);
// if (StringUtils.isNotBlank(sarStandardsSelectEO.getStandNumber())) {
// String sort = "";
// if (sarStandardsSelectEO.getStandNumber().length() > 3) {
// sort = sarStandardsSelectEO.getStandNumber().substring(0, 3);
// }
// if ("ECE".equals(sort)) {
// int length = sarStandardsSelectEO.getStandNumber().length();
// String number = sarStandardsSelectEO.getStandNumber().substring(3, length);
// sarStandardsSelectEO.setStandNumber("UN(ECE)" + number);
// }
// }
List<SarBussionessStand> result = this.baseMapper.selectStandardsByStandNumber(sarStandardsSelectEO);
if (result != null && result.size() > 0) {
String standId = result.get(0).getId();
String field = beUpedField;
String citedStand = sarBussStandAttrInfoEODao.selectFieldValByStandId(field, result.get(0).getId());
String changeCitedStand = "";
if (StringUtils.isNotBlank(citedStand)) {
String[] beforeReplacedStandNumStr = citedStand.split(",");
if (Arrays.asList(beforeReplacedStandNumStr).contains(addStrandNumber)) {
continue;
} else {
changeCitedStand = citedStand + "," + addStrandNumber;
}
sarBussStandAttrInfoEODao.updateStandInfo(standId, field, changeCitedStand);
} else {
changeCitedStand = addStrandNumber;
String sarStandAttrEOStr = sarBussionessStandEO.getSarStandAttrEOStr();
String mustFields = FieldConvertUtil.mustFields;
String mustValues = FieldConvertUtil.mustValues(standId);
// 将字符串转为map进行解析
Map<String,String> sarStandAttrMap = JSONObject.fromObject(sarStandAttrEOStr);
StringBuilder fieldsBuilder = new StringBuilder();
StringBuilder valuesBuilder = new StringBuilder();
for (Map.Entry<String,String> entry : sarStandAttrMap.entrySet()) {
String attrKey = entry.getKey();
String attrValue = "";
if (InitStandAttrUtil.queryFieldListBuss != null && !InitStandAttrUtil.queryFieldListBuss.isEmpty()) {
if (InitStandAttrUtil.queryFieldListBuss.contains(attrKey)) {
if("BDTQBBHBUSS".equals(attrKey)){
valuesBuilder.append(",").append("'").append(changeCitedStand).append("'");
}else {
valuesBuilder.append(",").append("'").append(attrValue).append("'");
}
fieldsBuilder.append(",").append(attrKey);
}
}
}
String insertField = mustFields + fieldsBuilder.toString();
String insertValue = mustValues + valuesBuilder.toString();
sarBussStandAttrInfoEODao.insertStandAttr(insertField,insertValue);
}
}
}
// 如果id不为空,说明是修改,有逻辑删除的执行以下语句,存在之前是三项,现在修改成两项的情况
if (null != beforeSarStandardsInfo) {
String oldCiteStand = String.valueOf(beforeSarStandardsInfo.getAttrInfoMap().get(upField));
if (StringUtils.isNotEmpty(oldCiteStand)) {
String[] beforeEOrepNums = oldCiteStand.split(",");
for (String beforeStr : beforeEOrepNums) {
// 如果再旧的中包含,在新的中没有,需要删除
if (!Arrays.asList(nowEOrepNums).contains(beforeStr)) {
sarStandardsSelectEO.setStandNumber(beforeStr);
List<SarBussionessStand> result = this.baseMapper.selectStandardsByStandNumber(sarStandardsSelectEO);
if (result != null && result.size() > 0) {
String standId = result.get(0).getId();
String field = beUpedField;
String citedStand = sarBussStandAttrInfoEODao.selectFieldValByStandId(field, result.get(0).getId());
String changeCitedStand = "";
if (StringUtils.isNotBlank(citedStand)) {
String[] beforerepalced = citedStand.split(",");
ArrayList beforlist = new ArrayList<>(Arrays.asList(beforerepalced));
if (beforlist.contains(beforeStrandNumber)) {
beforlist.remove(beforeStrandNumber);
changeCitedStand = org.apache.commons.lang3.StringUtils.join(beforlist.toArray(), ",");
} else {
continue;
}
sarBussStandAttrInfoEODao.updateStandInfo(standId, field, changeCitedStand);
}
}
}
}
}
}
} else {
// 如果为空,判断是否为修改
if (null != beforeSarStandardsInfo) {
String oldCiteStand = String.valueOf(beforeSarStandardsInfo.getAttrInfoMap().get("YYBJ"));
if (StringUtils.isNotEmpty(oldCiteStand)) {
String[] beforeEOrepNums = oldCiteStand.split(",");
for (String beforeStr : beforeEOrepNums) {
// 如果再旧的中包含,在新的中没有,需要删除,相关数据取第一条是因为标准号是唯一的
sarStandardsSelectEO.setStandNumber(beforeStr);
List<SarBussionessStand> result = this.baseMapper.selectStandardsByStandNumber(sarStandardsSelectEO);
if (result != null && result.size() > 0) {
String standId = result.get(0).getId();
String field = "BYYBJ";
String citedStand = sarBussStandAttrInfoEODao.selectFieldValByStandId(field, result.get(0).getId());
String changeCitedStand = "";
if (StringUtils.isNotBlank(citedStand)) {
String[] beforerepalced = citedStand.split(",");
ArrayList beforlist = new ArrayList<>(Arrays.asList(beforerepalced));
if (beforlist.contains(beforeStrandNumber)) {
beforlist.remove(beforeStrandNumber);
changeCitedStand = StringUtils.join(beforlist.toArray(), ",");
} else {
continue;
}
sarBussStandAttrInfoEODao.updateStandInfo(standId, field, changeCitedStand);
}
}
}
}
}
}
}
public void updateCollectAndShare(SarBussionessStand sarBussionessStandEO) throws Exception {
//修改收藏表中
String number = sarBussionessStandEO.getStandCode()+ "";
@@ -1347,11 +1536,14 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
}
}
public void attrInfoDetailsExport (SarBussionessStand row) throws Exception {
public void attrInfoDetailsExport (SarBussionessStandExport row) throws Exception {
String fieldInfo = InitStandAttrUtil.queryFieldBuss;
// 查询属性表数据
if (StringUtils.isNotBlank(fieldInfo)) {
Map<String, Object> getAttrMap = sarBussStandAttrInfoEODao.selectStandFieldAndData(fieldInfo,row.getId());
List<String> list = Arrays.asList(fieldInfo.split(",")).stream().map(s -> String.format(s.trim())).collect(Collectors.toList());
Map<String, Object> getAttrMap = BeanUtils.describe(row);
if (InitStandAttrUtil.clobFieldListBuss != null && !InitStandAttrUtil.clobFieldListBuss.isEmpty()) {
// 遍历修改所有clob类型的值
for (String clobField : InitStandAttrUtil.clobFieldListBuss) {
@@ -1365,6 +1557,11 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
if(getAttrMap != null){
for (Map.Entry<String,Object> entry : getAttrMap.entrySet()) {
String name = entry.getKey();
List<String> 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("");
@@ -170,6 +170,25 @@ public class SarBussionessStandEOPage extends BasePage {
private String CYBZ;
private String isKU;
private String exportAllAttrInfo;
private String exportAllResult;
public String getExportAllResult() {
return exportAllResult;
}
public void setExportAllResult(String exportAllResult) {
this.exportAllResult = exportAllResult;
}
public String getExportAllAttrInfo() {
return exportAllAttrInfo;
}
public void setExportAllAttrInfo(String exportAllAttrInfo) {
this.exportAllAttrInfo = exportAllAttrInfo;
}
public String getIsKU() {
return isKU;
}
@@ -1,6 +1,7 @@
package com.adc.da.utils.util;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStandExport;
import com.adc.da.slrs.sarStandAttrDetails.entity.SarStandAttrDetails;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.ss.usermodel.*;
@@ -24,7 +25,7 @@ public class BussStandExportUtil {
private static final Logger logger = LoggerFactory.getLogger(BussStandExportUtil.class);
public static Workbook exportDatas (List<SarBussionessStand> datas) {
public static Workbook exportDatas (List<SarBussionessStandExport> datas) {
Workbook workbook = new XSSFWorkbook();
try {
StringBuilder attrBud = new StringBuilder();
@@ -62,13 +63,13 @@ public class BussStandExportUtil {
}
}
public static void createDatas(Workbook workbook,Sheet sheet,List<SarBussionessStand> datas,
public static void createDatas(Workbook workbook,Sheet sheet,List<SarBussionessStandExport> datas,
String header,Map<String,String> attrInfoMap) throws Exception{
CellStyle cellStyle = workbook.createCellStyle();//初始化单元格格式对象
cellStyle.setAlignment(HorizontalAlignment.CENTER);
if (datas != null && !datas.isEmpty()) {
for (int i=0;i < datas.size(); i++) {
SarBussionessStand sarStandardsInfoEO = datas.get(i);
SarBussionessStandExport sarStandardsInfoEO = datas.get(i);
Row row = sheet.createRow(i+1);
String[] headerArr = header.split(",");
int sheetNum = 0;
@@ -85,7 +86,7 @@ public class BussStandExportUtil {
}
// 根据表头返回相应值
public static String getValueByName (String name,SarBussionessStand sarStandardsInfoEO,Map<String,String> attrInfoMap) throws Exception{
public static String getValueByName (String name,SarBussionessStandExport sarStandardsInfoEO,Map<String,String> attrInfoMap) throws Exception{
String value = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Map<String,Object> attrValueMap = sarStandardsInfoEO.getAttrInfoMap();
@@ -117,12 +118,6 @@ public class BussStandExportUtil {
}
value = putTime;
break;
case "代替企标编号":
value = verifyBean(sarStandardsInfoEO.getReplaceStandNum());
break;
case "被代替企标编号":
value = verifyBean(sarStandardsInfoEO.getReplacedStandNum());
break;
case "发布日期":
String issueTime="";
if(sarStandardsInfoEO.getIssueTime() != null){
@@ -25,7 +25,7 @@
<result column="DTQBBHBUSS" property="DTQBBHBUSS"/>
</resultMap>
<resultMap id="BaseResultMapExcel" type="com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand" >
<resultMap id="BaseResultMapExcel" type="com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStandExport" >
<result column="replaced_stand_num" property="replacedStandNum" />
<result column="replace_stand_num" property="replaceStandNum" />
<result column="put_time" property="putTime" />
@@ -55,6 +55,22 @@
stand_name, stand_code,SAR_BUSSIONESS_STAND.id,SAR_BUSSIONESS_STAND.text_status_buss,SAR_BUSSIONESS_STAND.stand_number
</sql>
<sql id="Base_Column_List_show_Export" >
DISTINCT SAR_BUSSIONESS_STAND.id,SAR_BUSSIONESS_STAND.modify_time,
SAR_BUSSIONESS_STAND.creation_time, SAR_BUSSIONESS_STAND.valid_flag,
SAR_BUSSIONESS_STAND.apply_country, SAR_BUSSIONESS_STAND.stand_nature,SAR_BUSSIONESS_STAND.stand_sort,SAR_BUSSIONESS_STAND.stand_year,
stand_status, replaced_stand_num,replace_stand_num,put_time,issue_time,stand_en_name,
stand_name, stand_code,SAR_BUSSIONESS_STAND.text_status_buss,SAR_BUSSIONESS_STAND.stand_number
</sql>
<sql id="Base_Column_List_show_ExportResult" >
DISTINCT tmp_tb.id,tmp_tb.modify_time,
tmp_tb.creation_time, tmp_tb.valid_flag,
tmp_tb.apply_country, tmp_tb.stand_nature,tmp_tb.stand_sort,tmp_tb.stand_year,
tmp_tb.stand_status, tmp_tb.replaced_stand_num,tmp_tb.replace_stand_num,tmp_tb.put_time,tmp_tb.issue_time,tmp_tb.stand_en_name,
tmp_tb.stand_name, tmp_tb.stand_code,tmp_tb.text_status_buss,tmp_tb.stand_number
</sql>
<sql id="Group_Column_List_show" >
stand_status, replaced_stand_num, replace_stand_num,put_time,
issue_time, stand_en_name, stand_name, stand_code,stand_status,
@@ -575,6 +591,9 @@
<if test="standSort != null" >
and SAR_BUSSIONESS_STAND.stand_sort = #{standSort}
</if>
<if test="standYear != null" >
and SAR_BUSSIONESS_STAND.stand_year = #{standYear}
</if>
<if test="replaceStandNum != null" >
and replace_stand_num like concat(concat('%',#{replaceStandNum}),'%')
</if>
@@ -754,11 +773,17 @@
<!-- 条件查询后,用于导出标准信息数据-->
<select id="getSarBussionessStand" resultMap="BaseResultMapExcel" parameterType="com.adc.da.slrs.sarStandardsInfo.entity.SarBussionessStandEOPage">
SELECT * FROM (
select <include refid="Base_Column_List_show" />
SELECT <include refid="Base_Column_List_show_ExportResult" />
<if test="exportAllResult != null">
, ${exportAllResult}
</if>
FROM (
select <include refid="Base_Column_List_show_Export" />
<if test="exportAllAttrInfo != null">
, ${exportAllAttrInfo}
</if>
from SAR_BUSSIONESS_STAND
<include refid="SarBussionInfo_Where_Clause"/>
GROUP BY <include refid="Group_Column_List_show"/>
) tmp_tb
<include refid="standSort_in"/>
</select>