清单导入

This commit is contained in:
yuezhihang
2022-04-27 19:11:16 +08:00
parent 41b19d1481
commit 44ed3af251
6 changed files with 353 additions and 182 deletions
@@ -27,5 +27,7 @@ public interface StandDataDao extends BaseMapper<StandData> {
List<StandData> searchStandData(SearchStandContext searchStandContext); List<StandData> searchStandData(SearchStandContext searchStandContext);
List<StandData> searchStandDataThree(SearchStandContext searchStandContext);
} }
@@ -59,5 +59,7 @@ public class SearchStandContext implements Serializable {
@ApiModelProperty(value = "项目编号") @ApiModelProperty(value = "项目编号")
private String ItemNumber; private String ItemNumber;
private String standCode;
} }
@@ -36,6 +36,13 @@ public class ExportEmptyModel {
private String compareFlag; private String compareFlag;
private String syrzCode; private String syrzCode;
//国内海外为1 企标为2 政策为3
private String standName;
private String standEnName;
private String sycx;
private String nylx;
private String zrbm;
private String sycpx;
} }
@@ -3,8 +3,12 @@ package com.adc.da.slrs.sarLawsDetailedList.service.impl;
import com.adc.da.att.service.IAttFileEOService; import com.adc.da.att.service.IAttFileEOService;
import com.adc.da.mq.CreateUpdateMQService; import com.adc.da.mq.CreateUpdateMQService;
import com.adc.da.slrs.processModel.utils.ExcelImportUtilByWk; import com.adc.da.slrs.processModel.utils.ExcelImportUtilByWk;
import com.adc.da.slrs.regulations.dao.StandDataDao;
import com.adc.da.slrs.regulations.entity.SearchStandContext;
import com.adc.da.slrs.regulations.entity.StandData;
import com.adc.da.slrs.sarBussionessStand.dao.SarBussionessStandDao; import com.adc.da.slrs.sarBussionessStand.dao.SarBussionessStandDao;
import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand; import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand;
import com.adc.da.slrs.sarBussionessStand.service.ISarBussionessStandService;
import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarLawsAttrDetailedListDao; import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarLawsAttrDetailedListDao;
import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarLawsAttrDetailedList; import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarLawsAttrDetailedList;
import com.adc.da.slrs.sarLawsAttrDetailedList.service.ISarLawsAttrDetailedListService; import com.adc.da.slrs.sarLawsAttrDetailedList.service.ISarLawsAttrDetailedListService;
@@ -15,6 +19,7 @@ import com.adc.da.slrs.sarLawsDetailedList.service.ISarLawsDetailedListService;
import com.adc.da.slrs.sarLawsStandInfo.dao.SarLawsStandInfoDao; import com.adc.da.slrs.sarLawsStandInfo.dao.SarLawsStandInfoDao;
import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfo; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfo;
import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoPage; import com.adc.da.slrs.sarLawsStandInfo.entity.SarLawsStandInfoPage;
import com.adc.da.slrs.sarLawsStandInfo.service.ISarLawsStandInfoService;
import com.adc.da.slrs.sarStandardsInfo.dao.SarStandardsInfoDao; import com.adc.da.slrs.sarStandardsInfo.dao.SarStandardsInfoDao;
import com.adc.da.slrs.sarStandardsInfo.entity.SarBussionessStandEOPage; import com.adc.da.slrs.sarStandardsInfo.entity.SarBussionessStandEOPage;
import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo;
@@ -45,6 +50,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.lang.reflect.Array; import java.lang.reflect.Array;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
import static com.adc.da.login.util.UserUtils.getUserName; import static com.adc.da.login.util.UserUtils.getUserName;
@@ -83,6 +89,10 @@ public class SarLawsDetailedListServiceImpl extends ServiceImpl<SarLawsDetailedL
private SarBussionessStandDao sarBussionessStandDao; private SarBussionessStandDao sarBussionessStandDao;
@Autowired @Autowired
private SarLawsStandInfoDao sarLawsStandInfoDao; private SarLawsStandInfoDao sarLawsStandInfoDao;
@Autowired
private ISarLawsStandInfoService sarLawsStandInfoService;
@Autowired
private ISarBussionessStandService sarBussionessStandService;
//查询数据字典 //查询数据字典
@Autowired @Autowired
private IDicTypeEOService dicTypeEOService; private IDicTypeEOService dicTypeEOService;
@@ -90,6 +100,9 @@ public class SarLawsDetailedListServiceImpl extends ServiceImpl<SarLawsDetailedL
//查询数据字典 //查询数据字典
@Autowired @Autowired
private CreateUpdateMQService createUpdateMQService; private CreateUpdateMQService createUpdateMQService;
//查询数据字典 searchStandDataThree
@Autowired
private StandDataDao standDateDao;
@Override @Override
@@ -102,7 +115,9 @@ public class SarLawsDetailedListServiceImpl extends ServiceImpl<SarLawsDetailedL
List<SarLawsAttrDetailedList> sarLawsAttrDetailedLists = sarLawsAttrDetailedListDao.selectList(wrapper2); List<SarLawsAttrDetailedList> sarLawsAttrDetailedLists = sarLawsAttrDetailedListDao.selectList(wrapper2);
List<String> list1 = new ArrayList<>(); List<String> list1 = new ArrayList<>();
if (sarLawsAttrDetailedLists.size() > 0) { if (sarLawsAttrDetailedLists.size() > 0) {
sarLawsAttrDetailedLists.forEach(sarLawsAttrDetailedList -> {list1.add(sarLawsAttrDetailedList.getStandId());}); sarLawsAttrDetailedLists.forEach(sarLawsAttrDetailedList -> {
list1.add(sarLawsAttrDetailedList.getStandId());
});
} }
wrapper.eq("detailed_list_id", id); wrapper.eq("detailed_list_id", id);
sarLawsAttrDetailedListDao.delete(wrapper); sarLawsAttrDetailedListDao.delete(wrapper);
@@ -851,43 +866,11 @@ public class SarLawsDetailedListServiceImpl extends ServiceImpl<SarLawsDetailedL
if ("".equals(stringBuilder.toString())) { if ("".equals(stringBuilder.toString())) {
int i = 1; int i = 1;
for (ExportEmptyModel exportEmptyModel : res) { for (ExportEmptyModel exportEmptyModel : res) {
SearchStandContext searchStandContext = new SearchStandContext();
//判定是不是存在于国内海外标准中 searchStandContext.setStandCode(exportEmptyModel.getStandNumber());
SarStandardsInfoEOPage infoEOPage = new SarStandardsInfoEOPage(); List<StandData> standData = standDateDao.searchStandDataThree(searchStandContext);
infoEOPage.setUserId(LoginUserUtil.getUserId()); if (null != standData && standData.size() > 0) {
infoEOPage.setPage(1); exportEmptyModel.setId(standData.get(0).getStandId());
infoEOPage.setPageSize(999);
infoEOPage.setValidFlag("0");
infoEOPage.setStandNumber(exportEmptyModel.getStandNumber());
List<SarStandardsInfo> infos=standardsInfoDao.getSarStandardsInfoByNum(infoEOPage ,"0");
if (null!= infos && infos.size()>0){
exportEmptyModel.setId(infos.get(0).getId());
}
if (null==exportEmptyModel.getId()) {
//判断是否在政策里
SarBussionessStandEOPage page = new SarBussionessStandEOPage();
page.setPage(1);
page.setPageSize(999);
page.setValidFlag("0");
page.setUserId(LoginUserUtil.getUserId());
page.setStandCode(exportEmptyModel.getStandNumber());
List<SarBussionessStand> sarBussionessStands = sarBussionessStandDao.getBussionessStandInfoByNum(page);
if (null != sarBussionessStands && sarBussionessStands.size() > 0) {
exportEmptyModel.setId(sarBussionessStands.get(0).getId());
}
}
if (null==exportEmptyModel.getId()) {
//判断是否在企标里 List<SarLawsStandInfo> getSarStandardsInfoPage(SarLawsStandInfoPage page);
SarLawsStandInfoPage lawsStandInfoPage = new SarLawsStandInfoPage();
lawsStandInfoPage.setPage(1);
lawsStandInfoPage.setPageSize(999);
lawsStandInfoPage.setValidFlag("0");
lawsStandInfoPage.setLawsNumber(exportEmptyModel.getStandNumber());
lawsStandInfoPage.setUserId(LoginUserUtil.getUserId());
List<SarLawsStandInfo> sarLawsStandInfos = sarLawsStandInfoDao.getSarStandardsInfoByNum(lawsStandInfoPage);
if (null != sarLawsStandInfos && sarLawsStandInfos.size() > 0) {
exportEmptyModel.setId(sarLawsStandInfos.get(0).getId());
}
} }
if (null == exportEmptyModel.getId() || exportEmptyModel.getId().isEmpty()) { if (null == exportEmptyModel.getId() || exportEmptyModel.getId().isEmpty()) {
stringBuilder.append("第" + i + "行标准号不存在,请检查标准号是否正确;"); stringBuilder.append("第" + i + "行标准号不存在,请检查标准号是否正确;");
@@ -927,11 +910,111 @@ public class SarLawsDetailedListServiceImpl extends ServiceImpl<SarLawsDetailedL
} }
} }
//查询数据并赋值
if (stringBuilder.toString().length() <= 0) {
dealWithData(res);
}
return res; return res;
} else { } else {
return null; return null;
} }
} }
public List<ExportEmptyModel> dealWithData(List<ExportEmptyModel> res) {
List<ExportEmptyModel> result = new ArrayList<>();
//判定是不是存在于国内海外标准中
StringBuilder stringBuilder = new StringBuilder();
Map<String, ExportEmptyModel> map = new HashMap<>();
res.forEach(exportEmptyModel -> {
if (null != exportEmptyModel.getId() && !exportEmptyModel.getId().isEmpty()) {
stringBuilder.append(exportEmptyModel.getId() + ",");
map.put(exportEmptyModel.getId(), exportEmptyModel);
}
});
String[] ids = stringBuilder.toString().substring(0, stringBuilder.toString().length() - 1).split(",");
SarStandardsInfoEOPage infoEOPage = new SarStandardsInfoEOPage();
infoEOPage.setUserId(LoginUserUtil.getUserId());
infoEOPage.setPage(1);
infoEOPage.setPageSize(map.keySet().size() + 1);
infoEOPage.setValidFlag("0");
infoEOPage.setIdlist(ids);
List<SarStandardsInfo> infos = null;
try {
infos = sarStandardsInfoService.getSarStandardsInfoPageBak1(infoEOPage);
} catch (Exception e) {
e.printStackTrace();
}
if (null != infos && infos.size() > 0) {
infos.forEach(sarStandardsInfo -> {
ExportEmptyModel model = map.get(sarStandardsInfo.getId());
model.setStandName(sarStandardsInfo.getStandName());
model.setStandEnName(sarStandardsInfo.getStandEnName());
model.setNylx(null!=sarStandardsInfo.getAttrInfoCaseMap().get("nylx").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("nylx").toString():"");
model.setSycpx(null!=sarStandardsInfo.getAttrInfoCaseMap().get("sycpx").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("sycpx").toString():"");
model.setZrbm(null!=sarStandardsInfo.getAttrInfoCaseMap().get("zrbm").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("zrbm").toString():"");
model.setSycx(null!=sarStandardsInfo.getAttrInfoCaseMap().get("cllx").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("cllx").toString():"");
result.add(model);
});
}
//判断是否在政策里
SarBussionessStandEOPage page = new SarBussionessStandEOPage();
page.setPage(1);
page.setPageSize(map.keySet().size() + 1);
page.setValidFlag("0");
page.setUserId(LoginUserUtil.getUserId());
page.setIdlist(ids);
page.setIsKU("0");
List<SarBussionessStand> sarBussionessStands = null;
try {
sarBussionessStands = sarBussionessStandService.getSarBussionStandPage(page);
} catch (Exception e) {
e.printStackTrace();
}
if (null != sarBussionessStands && sarBussionessStands.size() > 0) {
sarBussionessStands.forEach(sarStandardsInfo -> {
ExportEmptyModel model = map.get(sarStandardsInfo.getId());
model.setStandName(sarStandardsInfo.getStandName());
model.setStandEnName(sarStandardsInfo.getStandEnName());
model.setNylx(null!=sarStandardsInfo.getAttrInfoCaseMap().get("nylx").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("nylx").toString():"");
model.setSycpx(null!=sarStandardsInfo.getAttrInfoCaseMap().get("sycpx").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("sycpx").toString():"");
model.setZrbm(null!=sarStandardsInfo.getAttrInfoCaseMap().get("zrbm").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("zrbm").toString():"");
model.setSycx(null!=sarStandardsInfo.getAttrInfoCaseMap().get("cllx").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("cllx").toString():"");
result.add(model);
});
}
//判断是否在企标里 List<SarLawsStandInfo> getSarStandardsInfoPage(SarLawsStandInfoPage page);
SarLawsStandInfoPage lawsStandInfoPage = new SarLawsStandInfoPage();
lawsStandInfoPage.setPage(1);
lawsStandInfoPage.setPageSize(map.keySet().size() + 1);
lawsStandInfoPage.setValidFlag("0");
lawsStandInfoPage.setIdlist(ids);
lawsStandInfoPage.setUserId(LoginUserUtil.getUserId());
List<SarLawsStandInfo> sarLawsStandInfos = null;
try {
sarLawsStandInfos = sarLawsStandInfoService.getSarStandardsInfoPageBak(lawsStandInfoPage);
} catch (Exception e) {
e.printStackTrace();
}
if (null != sarLawsStandInfos && sarLawsStandInfos.size() > 0) {
sarLawsStandInfos.forEach(sarStandardsInfo -> {
ExportEmptyModel model = map.get(sarStandardsInfo.getId());
model.setStandName(sarStandardsInfo.getLawsName());
model.setStandEnName(sarStandardsInfo.getLawsEnName());
model.setNylx(null!=sarStandardsInfo.getAttrInfoCaseMap().get("nylxlaws").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("nylxlaws").toString():"");
//没有使用产品线
// model.setSycpx(null!=sarStandardsInfo.getLawsSycx() ?sarStandardsInfo.getLawsSycx():"");
model.setZrbm(null!=sarStandardsInfo.getAttrInfoCaseMap().get("zrbmlaws").toString() ?sarStandardsInfo.getAttrInfoCaseMap().get("zrbmlaws").toString():"");
model.setSycx(null!=sarStandardsInfo.getLawsSycx() ?sarStandardsInfo.getLawsSycx():"");
result.add(model);
});
}
return result;
}
} }
@@ -28,10 +28,12 @@
) )
WHERE sar_standards_info.valid_flag = 0 WHERE sar_standards_info.valid_flag = 0
<if test="vppsCode != null and vppsCode != ''"> <if test="vppsCode != null and vppsCode != ''">
and (SAR_STAND_ATTR_INFO.KCCVPPSBM like concat('%',#{vppsCode},'%') or SAR_STAND_ATTR_INFO.CYCVPPSBM like concat('%',#{vppsCode},'%')) and (SAR_STAND_ATTR_INFO.KCCVPPSBM like concat('%',#{vppsCode},'%') or SAR_STAND_ATTR_INFO.CYCVPPSBM like
concat('%',#{vppsCode},'%'))
</if> </if>
<if test="vppsName != null and vppsName != ''"> <if test="vppsName != null and vppsName != ''">
and (SAR_STAND_ATTR_INFO.KCCVPPSCN like concat('%',#{vppsName},'%') or SAR_STAND_ATTR_INFO.CYCVPPSCN like concat('%',#{vppsName},'%')) and (SAR_STAND_ATTR_INFO.KCCVPPSCN like concat('%',#{vppsName},'%') or SAR_STAND_ATTR_INFO.CYCVPPSCN like
concat('%',#{vppsName},'%'))
</if> </if>
UNION UNION
SELECT SELECT
@@ -48,11 +50,86 @@
) )
WHERE sar_bussioness_stand.valid_flag = 0 WHERE sar_bussioness_stand.valid_flag = 0
<if test="vppsCode != null and vppsCode != ''"> <if test="vppsCode != null and vppsCode != ''">
and (sar_buss_stand_attr_info.KCVPPSBMBUSS like concat('%',#{vppsCode},'%') or sar_buss_stand_attr_info.CYCVPPSBMBUSS like concat('%',#{vppsCode},'%')) and (sar_buss_stand_attr_info.KCVPPSBMBUSS like concat('%',#{vppsCode},'%') or
sar_buss_stand_attr_info.CYCVPPSBMBUSS like concat('%',#{vppsCode},'%'))
</if> </if>
<if test="vppsName != null and vppsName != ''"> <if test="vppsName != null and vppsName != ''">
and (sar_buss_stand_attr_info.KCVPPSCNBUSS like concat('%',#{vppsName},'%') or sar_buss_stand_attr_info.CYCVPPSCNBUSS like concat('%',#{vppsName},'%')) and (sar_buss_stand_attr_info.KCVPPSCNBUSS like concat('%',#{vppsName},'%') or
sar_buss_stand_attr_info.CYCVPPSCNBUSS like concat('%',#{vppsName},'%'))
</if> </if>
) t ) t
</select> </select>
<select id="searchStandDataThree" resultMap="BaseResultMap">
SELECT
t.standId,
t.standType
FROM (
SELECT
sar_standards_info.id AS standId,
sar_standards_info.STAND_TYPE AS standType
FROM
sar_standards_info
LEFT JOIN SAR_STAND_ATTR_INFO ON (
SAR_STAND_ATTR_INFO.stand_id = SAR_STANDARDS_INFO.id
AND SAR_STAND_ATTR_INFO.valid_flag = 0
)
WHERE sar_standards_info.valid_flag = 0
<if test="vppsCode != null and vppsCode != ''">
and (SAR_STAND_ATTR_INFO.KCCVPPSBM like concat('%',#{vppsCode},'%') or SAR_STAND_ATTR_INFO.CYCVPPSBM like
concat('%',#{vppsCode},'%'))
</if>
<if test="vppsName != null and vppsName != ''">
and (SAR_STAND_ATTR_INFO.KCCVPPSCN like concat('%',#{vppsName},'%') or SAR_STAND_ATTR_INFO.CYCVPPSCN like
concat('%',#{vppsName},'%'))
</if>
<if test="standCode != null and standCode != ''">
and (
(trim(replace(concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER,'-',
SAR_STANDARDS_INFO.STAND_YEAR),' ','')) like trim(replace(concat(concat('%',#{standCode}),'%'),' ','')) and
SAR_STANDARDS_INFO.STAND_YEAR != '')
or (trim(replace(concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER),' ','')) like
trim(replace(concat(concat('%',#{standCode}),'%'),' ',''))))
</if>
UNION
SELECT
sar_bussioness_stand.id AS standId,
'BUSINESS_STAND' AS standType
FROM
sar_bussioness_stand
LEFT JOIN sar_buss_stand_attr_info ON (
sar_buss_stand_attr_info.stand_id = sar_bussioness_stand.id
AND sar_buss_stand_attr_info.valid_flag = 0
)
WHERE sar_bussioness_stand.valid_flag = 0
<if test="vppsCode != null and vppsCode != ''">
and (sar_buss_stand_attr_info.KCVPPSBMBUSS like concat('%',#{vppsCode},'%') or
sar_buss_stand_attr_info.CYCVPPSBMBUSS like concat('%',#{vppsCode},'%'))
</if>
<if test="vppsName != null and vppsName != ''">
and (sar_buss_stand_attr_info.KCVPPSCNBUSS like concat('%',#{vppsName},'%') or
sar_buss_stand_attr_info.CYCVPPSCNBUSS like concat('%',#{vppsName},'%'))
</if>
<if test="standCode != null" >
and (SAR_BUSSIONESS_STAND.STAND_CODE = #{standCode}
or REPLACE( SAR_BUSSIONESS_STAND.STAND_CODE,' ','') = REPLACE( #{standCode},' ',''))
</if>
UNION
SELECT
SAR_LAWS_STAND_INFO.id AS standId,
'LAWS_TYPE' AS standType
FROM
SAR_LAWS_STAND_INFO
LEFT JOIN sar_laws_attr_info ON (
sar_laws_attr_info.LAWS_ID = SAR_LAWS_STAND_INFO.id
AND sar_laws_attr_info.valid_flag = 0
)
WHERE SAR_LAWS_STAND_INFO.valid_flag = 0
<if test="standCode != null and standCode != ''">
and SAR_LAWS_STAND_INFO.LAWS_NUMBER = #{standCode}
</if>
) t
</select>
</mapper> </mapper>
@@ -668,13 +668,13 @@
<!--<if test="validFlag != null" >--> <!--<if test="validFlag != null" >-->
<!--and SAR_BUSSIONESS_STAND.valid_flag = #{validFlag}--> <!--and SAR_BUSSIONESS_STAND.valid_flag = #{validFlag}-->
<!--</if>--> <!--</if>-->
<!--&lt;!&ndash; 导出数据过程中,选择的id &ndash;&gt;--> <!-- 导出数据过程中,选择的id -->
<!--<if test="idlist != null" >--> <if test="idlist != null" >
<!--and SAR_BUSSIONESS_STAND.id in--> and SAR_BUSSIONESS_STAND.id in
<!--<foreach collection="idlist" index="index" item="item" open="(" separator="," close=")">--> <foreach collection="idlist" index="index" item="item" open="(" separator="," close=")">
<!--#{item}--> #{item}
<!--</foreach>--> </foreach>
<!--</if>--> </if>
<!--<if test="id != null and id != '' " >--> <!--<if test="id != null and id != '' " >-->
<!--and SAR_BUSSIONESS_STAND.id = #{id}--> <!--and SAR_BUSSIONESS_STAND.id = #{id}-->
<!--</if>--> <!--</if>-->