企业标准导入优化

This commit is contained in:
SUNJIABIN
2023-03-31 00:27:07 +08:00
parent 4bc7957261
commit 7932c3d986
2 changed files with 102 additions and 65 deletions
@@ -2045,7 +2045,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
return Result.error("请选择需要导入的目录");
}
//给出头部信息
String[] headerExcel = {"*企标类别,*标准年份,企标编号,*中文名称,英文名称,*文本状态,发布日期,企标实施日期,企标制修订状态,起草部门,代替企标编号,复审日期,起草人,采用标准,采标程度,引用标准,适用车型,能源类型,适用产品线,体系类别,备案日期,关联模块-乘用车VPPS编码,关联模块--卡车VPPS编码,发布稿附件,编制说明附件,历史版本附件,其他文件附件,修改单附件,关联文件附件,"};
String[] headerExcel = {"*企标类别,企标编号,*标准年份,*企标名称,企标英文名称,*文本状态,发布日期,企标实施日期,起草部门,起草人,适用车型,能源类型,适用产品线,体系类别,关联模块-乘用车VPPS编码,关联模块--卡车VPPS编码,代替企标编号,采用标准,采标程度,引用标准,发布稿附件,编制说明附件,历史版本附件,其他文件附件,修改单附件,关联文件附件,"};
//获取文件全称
String fileNameStr = file.getOriginalFilename();
@@ -2099,7 +2099,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
StringBuilder sb = new StringBuilder();
Row row = sheet.getRow(1);
for (int i = 0; i < 29; i++) {
for (int i = 0; i <= 25; i++) {
sb.append(row.getCell(i).getStringCellValue()).append(",");
}
@@ -2277,6 +2277,9 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
return Result.error("企标类别不能为空");
}
String standNumber = rowList.get("企标编号");
sarBussStandAttrInfo.setStandNumber(standNumber);
String standYear = rowList.get("*标准年份");
if (StringUtils.isNotBlank(standYear)) {
if (standYear.length() > 100) {
@@ -2287,20 +2290,17 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
return Result.error("标准年份不能为空");
}
String standNumber = rowList.get("企标编号");
sarBussStandAttrInfo.setStandNumber(standNumber);
String standName = rowList.get("*中文名称");
String standName = rowList.get("*企标名称");
if (StringUtils.isNotBlank(standName)) {
if (standName.length() > 100) {
return Result.error("输入的标名称过长");
return Result.error("输入的标名称过长");
}
sarBussStandAttrInfo.setStandName(standName);
} else {
return Result.error("中文名称不能为空");
return Result.error("企标名称不能为空");
}
String standEnName = rowList.get("英文名称");
String standEnName = rowList.get("企标英文名称");
sarBussStandAttrInfo.setStandEnName(standEnName);
String textStatusBuss = rowList.get("*文本状态");
@@ -2308,7 +2308,6 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
if (textStatusBuss.length() > 200) {
return Result.error("输入的文本状态过长");
}
switch (textStatusBuss) {
case "发布":
sarBussStandAttrInfo.setTextStatusBuss("6jnqba2mby");
@@ -2356,9 +2355,6 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
}
String revisionStatus = rowList.get("企标制修订状态");
sarBussStandAttrInfo.setRevisionStatus(revisionStatus);
String qcdw = rowList.get("起草部门");
if (StringUtils.isNotBlank(qcdw)) {
if (qcdw.length() > 100) {
@@ -2367,18 +2363,6 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
sarBussStandAttrInfo.setQcdw(qcdw);
}
String dtqbbhbuss = rowList.get("代替企标编号");
sarBussStandAttrInfo.setDtqbbhbuss(dtqbbhbuss);
String fsrqbuss = rowList.get("复审日期");
if (fsrqbuss.contains("-")) {
sarBussStandAttrInfo.setFsrqbuss(fsrqbuss);
}else {
return Result.error("复审日期格式必须为年-月-日");
}
String qcrbuss = rowList.get("起草人");
if (StringUtils.isNotBlank(qcrbuss)) {
if (qcrbuss.length() > 100) {
@@ -2387,10 +2371,101 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
sarBussStandAttrInfo.setQcrbuss(qcrbuss);
}
String sycxclass = rowList.get("适用车型");
String[] strings = sycxclass.split(",");
String sycx = "";
String sycxs = "";
if (ObjectUtils.isNotEmpty(strings)) {
for (int j = 0; j < strings.length; j++) {
sycx = strings[j];
if (sycx.equals("N1") || sycx.equals("N2") || sycx.equals("N3") || sycx.equals("M1") || sycx.equals("M2") || sycx.equals("M3")) {
if (StringUtils.isNotBlank(sycxs)){
sycxs += "," + sycx;
}else {
sycxs = sycx;
}
} else {
return Result.error("请输入正确的适用车型");
}
}
sarBussStandAttrInfo.setSycxclass(sycxs);
}
String nylxclass = rowList.get("能源类型");
String[] stringNylxc = nylxclass.split(",");
String nylx = "";
String nylxs = "";
if (ObjectUtils.isNotEmpty(stringNylxc)){
for (int j = 0; j < stringNylxc.length; j++) {
nylx = stringNylxc[j];
if (nylx.equals("汽油") || nylx.equals("柴油") || nylx.equals("纯电动") || nylx.equals("混合动力") || nylx.equals("燃料电池") || nylx.equals("替代燃料")){
if (StringUtils.isNotBlank(nylxs)){
nylxs += "," + nylx;
}else {
nylxs = nylx;
}
}else {
return Result.error("请输入正确的能源类型");
}
}
sarBussStandAttrInfo.setNylxclass(nylxs);
}
String sycpxclass = rowList.get("适用产品线");
String[] stringSycpx = sycpxclass.split(",");
String sycpx = "";
String sycpxs = "";
if (ObjectUtils.isNotEmpty(stringSycpx)){
for (int j = 0; j < stringSycpx.length; j++) {
sycpx = stringSycpx[j];
if (sycpx.equals("VAN") || sycpx.equals("微卡") || sycpx.equals("轻卡") || sycpx.equals("皮卡") || sycpx.equals("中卡") || sycpx.equals("重卡") || sycpx.equals("客车")){
if (StringUtils.isNotBlank(sycpxs)){
sycpxs += "," + sycpx;
}else {
sycpxs = sycpx;
}
}else {
return Result.error("请输入正确的适用产品线");
}
}
sarBussStandAttrInfo.setSycpxclass(sycpxs);
}
String txlbbuss = rowList.get("体系类别");
sarBussStandAttrInfo.setTxlbbuss(txlbbuss);
//关联模块-乘用车VPPS编码 23
String cycvppsbmbuss = rowList.get("关联模块-乘用车VPPS编码");
sarBussStandAttrInfo.setCycvppsbmbuss(cycvppsbmbuss);
// 关联模块-乘用车VPPS名称 24
String cycvppscnbuss = sarVppsTreeDao.getCycvppscnbuss(sarBussStandAttrInfo.getCycvppsbmbuss());
sarBussStandAttrInfo.setCycvppscnbuss(cycvppscnbuss);
//// //关联模块--卡车VPPS编码 25
String kcvppsbmbuss = rowList.get("关联模块--卡车VPPS编码");
sarBussStandAttrInfo.setKcvppsbmbuss(kcvppsbmbuss);
//关联模块--卡车VPPS名称 26
String kcvppscnbuss = sarVppsTreeDao.getKcvppscnbuss(sarBussStandAttrInfo.getKcvppsbmbuss());
sarBussStandAttrInfo.setKcvppscnbuss(kcvppscnbuss);
String dtqbbhbuss = rowList.get("代替企标编号");
sarBussStandAttrInfo.setDtqbbhbuss(dtqbbhbuss);
//// //采用标准 13
String cybz = rowList.get("采用标准");
sarBussStandAttrInfo.setCybz(cybz);
if (cybz.equals("IDT等同采用") || cybz.equals("NEQ非等效采用") || cybz.equals("MOD修改采用")){
sarBussStandAttrInfo.setCybz(cybz);
}else {
return Result.error("请提供正确的采用标准");
}
//文件上传人员
String userId = com.adc.da.util.LoginUserUtil.getUserId();
String userName = tsUserService.userIdByName(userId);
sarBussStandAttrInfo.setWjscrybuss(userName);
@@ -2403,49 +2478,11 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
String yybz = rowList.get("引用标准");
sarBussStandAttrInfo.setYybz(yybz);
String sycxclass = rowList.get("适用车型");
sarBussStandAttrInfo.setSycxclass(sycxclass);
String nylxclass = rowList.get("能源类型");
sarBussStandAttrInfo.setNylxclass(nylxclass);
String sycpxclass = rowList.get("适用产品线");
sarBussStandAttrInfo.setSycpxclass(sycpxclass);
//上传时间
Date date = new Date();
String format = sdf.format(date);
sarBussStandAttrInfo.setXcsjbuss(format);
String txlbbuss = rowList.get("体系类别");
sarBussStandAttrInfo.setTxlbbuss(txlbbuss);
//// //备案日期 22
String barq = rowList.get("备案日期");
if (barq.contains("-")){
sarBussStandAttrInfo.setBarq(barq);
}else {
return Result.error("备案日期格式必须为年-月-日");
}
//// //关联模块-乘用车VPPS编码 23
String cycvppsbmbuss = rowList.get("关联模块-乘用车VPPS编码");
sarBussStandAttrInfo.setCycvppsbmbuss(cycvppsbmbuss);
// 关联模块-乘用车VPPS名称 24
String cycvppscnbuss = sarVppsTreeDao.getCycvppscnbuss(sarBussStandAttrInfo.getCycvppsbmbuss());
sarBussStandAttrInfo.setCycvppscnbuss(cycvppscnbuss);
//// //关联模块--卡车VPPS编码 25
String kcvppsbmbuss = rowList.get("关联模块--卡车VPPS编码");
sarBussStandAttrInfo.setKcvppsbmbuss(kcvppsbmbuss);
//关联模块--卡车VPPS名称 26
String kcvppscnbuss = sarVppsTreeDao.getKcvppscnbuss(sarBussStandAttrInfo.getKcvppsbmbuss());
sarBussStandAttrInfo.setKcvppscnbuss(kcvppscnbuss);
String fbgbuss = rowList.get("发布稿附件");
if (fbgbuss != null && !fbgbuss.equals("")) {
String[] split = fbgbuss.split(",");
@@ -76,7 +76,7 @@ public class FieldConvertUtil {
"5.发布日期,企标实施日期,复审日期字段为日期,必须精确到日\n" +
"6.编号,企标名称,企标英文名称字段为文本,填写文本内容";
public static String exportFieldName = "*企标类别,*标准年份,企标编号,*中文名称,英文名称,*文本状态,发布日期,企标实施日期,企标制修订状态,起草部门,代替企标编号,复审日期,起草人,采用标准,采标程度,引用标准,适用车型,能源类型,适用产品线,体系类别,备案日期,关联模块-乘用车VPPS编码,关联模块--卡车VPPS编码,发布稿附件,编制说明附件,历史版本附件,其他文件附件,修改单附件,关联文件附件";
public static String exportFieldName = "*企标类别,企标编号,*标准年份,*企标名称,企标英文名称,*文本状态,发布日期,企标实施日期,起草部门,起草人,适用车型,能源类型,适用产品线,体系类别,关联模块-乘用车VPPS编码,关联模块--卡车VPPS编码,代替企标编号,采用标准,采标程度,引用标准,发布稿附件,编制说明附件,历史版本附件,其他文件附件,修改单附件,关联文件附件,";
/***
* @Description: Clob类型 转String