From 295dcdcce5a25c4bb7a99f721ba55251d4dd6968 Mon Sep 17 00:00:00 2001 From: SUNJIABIN Date: Mon, 3 Apr 2023 19:37:33 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=99=BD=E5=90=8D?= =?UTF-8?q?=E5=8D=95api?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/adc/da/login/security/WebMvcConfig.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java index 6bfe49c5..df3cd052 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java @@ -115,6 +115,8 @@ public class WebMvcConfig implements WebMvcConfigurer { //企业标准导出 addInterceptor.excludePathPatterns("/api/lawss/sarBussionessStand/exportSarBussionessStand"); + addInterceptor.excludePathPatterns("/api/lawss/sarFileSplitItems/importSplitItemsZip"); + //预警导出 addInterceptor.excludePathPatterns("/api/sys/EarlyWarning/exportWarning"); From 5d7c299c238677ecbd56be03eb335f4d89a35629 Mon Sep 17 00:00:00 2001 From: SUNJIABIN Date: Mon, 3 Apr 2023 21:07:21 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BC=81=E4=B8=9A?= =?UTF-8?q?=E6=A0=87=E5=87=86=E5=AF=BC=E5=85=A5=E5=8A=9F=E8=83=BD=E5=92=8C?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E4=B8=8B=E8=BD=BD=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/SarBussStandAttrInfoExecl.java | 2 + .../SarBussionessStandController.java | 16 +- .../dao/SarBussionessStandDao.java | 3 + .../impl/SarBussionessStandServiceImpl.java | 199 +++++++++++------- .../adc/da/utils/util/FieldConvertUtil.java | 12 +- 5 files changed, 145 insertions(+), 87 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfoExecl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfoExecl.java index cc1a8c35..c0d91052 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfoExecl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfoExecl.java @@ -188,6 +188,8 @@ public class SarBussStandAttrInfoExecl extends BaseEntity { private String menuId; + private String standCode; + @TableField(exist = false) private Map attrInfoMap = new LinkedHashMap<>(); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java index 0f88e75c..175047ca 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java @@ -38,6 +38,7 @@ import org.apache.poi.hssf.usermodel.HSSFDateUtil; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.*; +import org.apache.poi.ss.util.CellRangeAddress; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -464,13 +465,10 @@ public class SarBussionessStandController extends BaseController { List getBussionessStandInfo(); void updateByIdInfo(@Param("strFile")String strFile, @Param("attfId")String attfId); + + @Select("select * from sar") + String setDtqbbhbuss(String dtqbbhbuss); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java index a005e44a..96b0ebfb 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java @@ -79,6 +79,7 @@ import com.adc.da.sys.util.LoginUserUtil; import com.adc.da.util.UUIDUtils; import com.adc.da.utils.util.*; import com.adc.da.utils.util.DateUtil; +import com.alibaba.druid.support.json.JSONUtils; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -121,6 +122,7 @@ import java.security.SecureRandom; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import java.sql.Clob; +import java.sql.Connection; import java.text.DateFormat; import java.text.DecimalFormat; import java.text.SimpleDateFormat; @@ -2045,7 +2047,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl jsonList = new ArrayList<>(); + SarBussStandAttrInfoExecl sarBussStandAttrInfo = new SarBussStandAttrInfoExecl(); for (File fileInfo : fileList) { - String infoJson = ""; if (fileInfo.getName().contains(".xls") || fileInfo.getName().contains(".xlsx")) { excel = excel + 1; if (excel > 1) { @@ -2125,10 +2128,15 @@ public class SarBussionessStandServiceImpl extends ServiceImpl 100) { @@ -2271,10 +2281,10 @@ public class SarBussionessStandServiceImpl extends ServiceImpl 100) { - return Result.error("标准年份输入过长"); + return Result.error("第"+ count +"行标准年份输入过长"); } sarBussStandAttrInfo.setStandYear(standYear); } else { - return Result.error("标准年份不能为空"); + return Result.error("第"+ count +"行标准年份不能为空"); } String standName = rowList.get("*企标名称"); if (StringUtils.isNotBlank(standName)) { if (standName.length() > 100) { - return Result.error("输入的企标名称过长"); + return Result.error("第"+ count +"行输入的企标名称过长"); } sarBussStandAttrInfo.setStandName(standName); } else { - return Result.error("企标名称不能为空"); + return Result.error("第"+ count +"行企标名称不能为空"); } String standEnName = rowList.get("企标英文名称"); @@ -2306,7 +2316,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl 200) { - return Result.error("输入的文本状态过长"); + return Result.error("第"+ count +"行输入的文本状态过长"); } switch (textStatusBuss) { case "发布": @@ -2334,19 +2344,19 @@ public class SarBussionessStandServiceImpl extends ServiceImpl 100) { - return Result.error("输入的起草部门过长"); + return Result.error("第"+ count +"行输入的起草部门过长"); } sarBussStandAttrInfo.setQcdw(qcdw); } @@ -2371,7 +2381,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl 100) { - return Result.error("输入的起草人过长"); + return Result.error("第"+ count +"行输入的起草人过长"); } sarBussStandAttrInfo.setQcrbuss(qcrbuss); } @@ -2391,7 +2401,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl list = new ArrayList<>(); - list.add(sarBussStandAttrInfo); - - com.alibaba.fastjson.JSONArray json = com.alibaba.fastjson.JSONArray.parseArray(JSON.toJSONString(list)); - com.alibaba.fastjson.JSONObject jsonObjects = null; - for (int j = 0; j < json.size(); j++) { - jsonObjects = json.getJSONObject(j); + String standCode = ifCodeAndName(sarBussStandAttrInfo.getStandName(), sarBussStandAttrInfo.getStandSort(), sarBussStandAttrInfo.getStandYear(), sarBussStandAttrInfo.getStandNumber()); + sarBussStandAttrInfo.setStandCode(standCode); + String json = JSONUtils.toJSONString(sarBussStandAttrInfo); + if(StringUtils.isNotEmpty(json)){ + jsonList.add(json); } - infoJson = String.valueOf(jsonObjects); - - //入库 - processCreateBuss(infoJson); - countSuccess++; } } } @@ -2695,10 +2702,20 @@ public class SarBussionessStandServiceImpl extends ServiceImplqueryWrapper = new QueryWrapper<>(); + queryWrapper.eq(sarBussionessStand.getStandCode() != null,"STAND_CODE",sarBussionessStand.getStandCode()) + .eq(standName != null,"STAND_NAME",standName); + List list = iSarBussionessStandService.list(queryWrapper); + Integer valIdFlag = 0; + for (SarBussionessStand stand :list){ + if ((list.size() ==1 && !list.get(0).getId().equals(stand.getId())) || list.size() >1){ + valIdFlag = stand.getValidFlag(); + if (valIdFlag == 0){ + throw new AdcDaBaseException("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在"); + } + } + } + return sarBussionessStand.getStandCode(); + } + private static List readImpExcelFile(String path) { File file = new File(path); List resultlist = new ArrayList<>(); @@ -2764,24 +2813,24 @@ public class SarBussionessStandServiceImpl extends ServiceImplqueryWrapper = new QueryWrapper<>(); - queryWrapper.eq(sarBussionessStand.getStandCode() != null,"STAND_CODE",sarBussionessStand.getStandCode()) - .eq(sarBussionessStand.getStandName() != null,"STAND_NAME",sarBussionessStand.getStandName()); - List list = iSarBussionessStandService.list(queryWrapper); - Integer valIdFlag = 0; - for (SarBussionessStand stand :list){ - if ((list.size() ==1 && !list.get(0).getId().equals(stand.getId())) || list.size() >1){ - valIdFlag = stand.getValidFlag(); - if (valIdFlag == 0){ - throw new AdcDaBaseException("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在"); - } - } - } +// //拼接企标编号 +// String standCode = sarBussionessStand.getStandSort() + " " + sarBussionessStand.getStandNumber() + "-" + sarBussionessStand.getStandYear(); +// sarBussionessStand.setStandCode(standCode); +// // 根据标准号判断数据是否已存在 +// //2021年4月9日 此处检查当前是否存在standId +// QueryWrapperqueryWrapper = new QueryWrapper<>(); +// queryWrapper.eq(sarBussionessStand.getStandCode() != null,"STAND_CODE",sarBussionessStand.getStandCode()) +// .eq(sarBussionessStand.getStandName() != null,"STAND_NAME",sarBussionessStand.getStandName()); +// List list = iSarBussionessStandService.list(queryWrapper); +// Integer valIdFlag = 0; +// for (SarBussionessStand stand :list){ +// if ((list.size() ==1 && !list.get(0).getId().equals(stand.getId())) || list.size() >1){ +// valIdFlag = stand.getValidFlag(); +// if (valIdFlag == 0){ +// throw new AdcDaBaseException("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在"); +// } +// } +// } //此处判断是否是带入的标准 if(StringUtils.isNotBlank(sarBussionessStand.getId())) { 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 81115275..c3e01dd4 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 @@ -71,12 +71,14 @@ public class FieldConvertUtil { public static String exportName = "填写说明\n" + "1.导入数据从第三行开始,第一行为填写说明,第二行为表头,第三行是正式数据\n" + "2.所有带*号的字段必须填写\n" + - "3.状态,类别字段是单选属性,必须和系统中的对应字段选项相匹配\n" + - "4.适用车型,能源类型,适用产品线字段是多选属性,必须和系统中的对应字段选项相匹配,填写多个时采用英文或中文逗号分割\n" + - "5.发布日期,企标实施日期,复审日期字段为日期,必须精确到日\n" + - "6.编号,企标名称,企标英文名称字段为文本,填写文本内容"; + "3.企标类别(例如:BZJ、FT、Q-HD、Q-IOUM、Q/ASB、Q/BFC、Q/BQB等),文本状态(包含:发布、被代替、参考、即将实施、有效、直接上传、作废、待修订-指的其他企业标准),采用标准(包含:IDT等同采用、NEQ非等效采用、MOD修改采用)字段是单选属性,必须和系统中的对应字段选项相匹配\n" + + "4.适用车型,能源类型,适用产品线字段是多选属性,必须和系统中的对应字段选项相匹配,填写多个时采用英文逗号分割\n" + + "5.发布日期,企标实施日期字段为年-月-日格式,必须精确到日,例如(2023-04-01)\n" + + "6.企标编号,企标名称,企标英文名称字段为文本,填写文本内容\n" + + "7.关联模块-乘用车VPPS编码和关联模块--卡车VPPS编码是填写数据库中已有的编码从而带出乘用车VPPS名称和卡车VPPS名称\n" + + "8.发布稿,编制说明,历史版本,其他文件,修改单,关联文件为附件文件,需要放在Excel文档同级目录中"; - public static String exportFieldName = "*企标类别,企标编号,*标准年份,*企标名称,企标英文名称,*文本状态,发布日期,企标实施日期,起草部门,起草人,适用车型,能源类型,适用产品线,体系类别,关联模块-乘用车VPPS编码,关联模块--卡车VPPS编码,代替企标编号,采用标准,采标程度,引用标准,发布稿附件,编制说明附件,历史版本附件,其他文件附件,修改单附件,关联文件附件,"; + public static String exportFieldName = "*企标类别,企标编号,*标准年份,*企标名称,企标英文名称,*文本状态,发布日期,企标实施日期,起草部门,起草人,适用车型,能源类型,适用产品线,体系类别,关联模块-乘用车VPPS编码,关联模块--卡车VPPS编码,发布稿,编制说明,历史版本,其他文件,修改单,代替企标编号,采用标准,采标程度,引用标准,关联文件,"; /*** * @Description: Clob类型 转String