Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH

This commit is contained in:
高嵩
2023-03-29 16:21:31 +08:00
7 changed files with 318 additions and 72 deletions
@@ -4007,6 +4007,14 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
}
List<String> paramsCollectManifestIdList = configDataList.stream().map(ParamsConfigDataEO::getParamsCollectManifestId).distinct().collect(Collectors.toList());
for (String paramsCollectManifestId : paramsCollectManifestIdList) {
// 删除之前的参数项
QueryWrapper<ParamsConfigDataEO> targetConfigDataRemoveWrap = new QueryWrapper<>();
targetConfigDataRemoveWrap.lambda().eq(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifestId);
this.paramsConfigDataEOService.remove(targetConfigDataRemoveWrap);
}
// 批量新增参数项
Boolean isSuccess = paramsConfigDataEOService.saveOrUpdateBatch(configDataList);
@@ -5416,7 +5424,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
} else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) {
// 校验必填
if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
/*if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "为必填项,不能为空;";
} else {
@@ -5462,11 +5470,41 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
}
}
}*/
// 处理禅道66949 问题,导入的时候将必填校验去掉,填写人在提交的时候还有必填校验。
if (StringUtils.isNotEmpty(value)) {
if (countChar(value, "#") != 1) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "格式不正确;";
} else {
errorMsg += configMap.get(key) + " format is incorrect; ";
}
countError++;
} else {
if (value.split("#").length > 1) {
resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, true, cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setPullData(value.split("#")[1]);
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
} else if (value.split("#").length == 1 && value.endsWith("#")) {
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
}
}
}
} else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) {
// 校验必填
if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
/*if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "为必填项,不能为空;";
} else {
@@ -5511,11 +5549,39 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
}
}
}
}*/
// 处理禅道66949 问题,导入的时候将必填校验去掉,填写人在提交的时候还有必填校验。
if (StringUtils.isNotEmpty(value)) {
if (countChar(value, "#") != 1) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "格式不正确;";
} else {
errorMsg += configMap.get(key) + " format is incorrect; ";
}
countError++;
} else {
if (value.split("#").length > 1) {
resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, false, cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setPullData(value.split("#")[1]);
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
} else if (value.split("#").length == 1 && value.endsWith("#")) {
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
}
}
}
} else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) {
// 校验必填
if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
/*if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "为必填项,不能为空;";
} else {
@@ -5551,11 +5617,40 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
}
}
}*/
// 处理禅道66949 问题,导入的时候将必填校验去掉,填写人在提交的时候还有必填校验。
if (StringUtils.isNotEmpty(value)) {
if (countChar(value, "#") != 1) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "格式不正确;";
} else {
errorMsg += configMap.get(key) + " format is incorrect; ";
}
countError++;
} else {
if (value.split("#").length > 1) {
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], isMust, "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setFileConnectId(value.split("#")[1]);
} else if (value.split("#").length == 1 && value.endsWith("#")) {
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], isMust, "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
}
}
}
} else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) {
// 校验必填
if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
/*if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "为必填项,不能为空;";
} else {
@@ -5590,11 +5685,40 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
}
}
}*/
// 处理禅道66949 问题,导入的时候将必填校验去掉,填写人在提交的时候还有必填校验。
if (StringUtils.isNotEmpty(value)) {
if (countChar(value, "#") != 1) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "格式不正确;";
} else {
errorMsg += configMap.get(key) + " format is incorrect; ";
}
countError++;
} else {
if (value.split("#").length > 1) {
resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, true, cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setPullData(value.split("#")[0]);
resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setFileConnectId(value.split("#")[1]);
} else if (value.split("#").length == 1 && value.endsWith("#")) {
resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, true, cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setPullData(value.split("#")[0]);
}
}
}
} else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) {
// 校验必填
if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
/*if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "为必填项,不能为空;";
} else {
@@ -5630,11 +5754,40 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
}
}
}*/
// 处理禅道66949 问题,导入的时候将必填校验去掉,填写人在提交的时候还有必填校验。
if (StringUtils.isNotEmpty(value)) {
if (countChar(value, "#") != 1) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "格式不正确;";
} else {
errorMsg += configMap.get(key) + " format is incorrect; ";
}
countError++;
} else {
if (value.split("#").length > 1) {
resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, false, cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setPullData(value.split("#")[0]);
resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setFileConnectId(value.split("#")[1]);
} else if (value.split("#").length == 1 && value.endsWith("#")) {
resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, false, cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setPullData(value.split("#")[0]);
}
}
}
} else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) {
// 校验必填
if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
/*if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "为必填项,不能为空;";
} else {
@@ -5689,6 +5842,42 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
}
}*/
// 处理禅道66949 问题,导入的时候将必填校验去掉,填写人在提交的时候还有必填校验。
if (StringUtils.isNotEmpty(value)) {
if (countChar(value, "#") != 2) {
if (CutEnum.CN.getValue().equals(cut)) {
errorMsg += configMap.get(key) + "格式不正确;";
} else {
errorMsg += configMap.get(key) + " format is incorrect; ";
}
countError++;
} else {
if (value.split("#").length > 1) {
resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, true, cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setPullData(value.split("#")[1]);
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
if (!value.endsWith("#")) { //3
resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[2], ParamsIsMustEnum.NO.getValue(), cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setFileConnectId(value.split("#")[2]);
}
} else if (value.split("#").length == 1 && value.endsWith("#")) {
resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut);
errorMsg += (String) resultMap.get("errorMsg");
countError += (int) resultMap.get("countError");
configDataEO.setTextData(value.split("#")[0]);
}
}
}
} else {
@@ -5701,7 +5890,11 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
countError++;
}
}
if (StringUtils.isNotEmpty(configDataEO.getId())) {
/*if (StringUtils.isNotEmpty(configDataEO.getId())) {
configDataList.add(configDataEO);
}*/
// 如果表格里的参数不为空,则进行添加。
if(StringUtils.isNotBlank(value)){
configDataList.add(configDataEO);
}
}
@@ -5076,6 +5076,13 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
public void exportTemplate(Map<String, Object> map, HttpServletResponse response, HttpServletRequest request) {
OutputStream os = null;
HSSFWorkbook workbook = new HSSFWorkbook();
String cut = (String) map.get("cut");
String sheetName = "";
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
sheetName = "文档库导入模板";
}else {
sheetName = "Document LibraryImport Template";
}
String fileOriName = "文档库导入模板.xls";
String filePath = uploadpath + File.separator + fileOriName;
try {
@@ -5086,7 +5093,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
nowFile.delete();
}
nowFile.mkdirs();
HSSFSheet sheet = workbook.createSheet("文档库导入模板");
HSSFSheet sheet = workbook.createSheet(sheetName);
sheet.setDefaultColumnWidth(16);//列宽
HSSFCellStyle cellStyle = workbook.createCellStyle();
cellStyle.setWrapText(true);//自动换行
@@ -5269,10 +5276,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
}
//
if(CutEnum.CN.getValue().equals(cut)){
String tree = "分阶段实施详情字段,多行之间使用#号分隔,列之间使用<p>标签分隔,示例:法规编号/条款<p>新车型<p>2000-10-10<p>备注#";
String tree = "分阶段实施详情字段,多行之间使用#号分隔,列之间使用<n>标签分隔,示例:法规编号/条款<n>新车型<n>2000-10-10<n>备注#";
sbTwo.append(count++ + "." + tree);
}else{
String tree = "For the field of phased implementation details, separate rows with # signs and columns with <p> labels. Example: Regulation Number/Articles <p> New model <p>2000-10-10<p> Remarks";
String tree = "For the field of phased implementation details, separate rows with # signs and columns with <n> labels. Example: Regulation Number/Articles <n> New model <n>2000-10-10<n> Remarks";
sbTwo.append(count++ + "." + tree);
}
List<String> list = new LinkedList<>();
@@ -5960,14 +5967,21 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<String> phasedImplDetailsList = Arrays.asList(value.split("#"));
for (String phasedImplDetails : phasedImplDetailsList) {
PhasedImplementationDetailsEO phasedImplementationDetailsEO = new PhasedImplementationDetailsEO();
String[] phasedImplDetailsArr = phasedImplDetails.split("<p>");
String[] phasedImplDetailsArr = phasedImplDetails.split("<n>");
if(phasedImplDetailsArr.length >= 1){
String standNumberOrClause = phasedImplDetailsArr[0];
if (StringUtils.isNotBlank(standNumberOrClause) && standNumberOrClause.length() > 100) {
if(StringUtils.isEmpty(standNumberOrClause)){
if(CutEnum.CN.getValue().equals(cut)){
errorMsg += "分阶段实施详情-法规编号/条款不能超过" + 100 + "个字符, ";
errorMsg += "分阶段实施详情-法规编号/条款不能为空, ";
}else{
errorMsg += "Details of the phased implementation standNumberOrClause Can not be more than " + 100 + " char, ";
errorMsg += "Phased Implementation Details - Regulation No./clause cannot be empty,";
}
countError++;
} else if (StringUtils.isNotBlank(standNumberOrClause) && standNumberOrClause.length() > 200) {
if(CutEnum.CN.getValue().equals(cut)){
errorMsg += "分阶段实施详情-法规编号/条款不能超过" + 200 + "个字符, ";
}else{
errorMsg += "Phased Implementation Details - Regulation No./clause Can not be more than " + 200 + " char, ";
}
countError++;
}else {
@@ -5976,6 +5990,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
}
if(phasedImplDetailsArr.length >= 2){
String implementationTypeName = phasedImplDetailsArr[1];
if(StringUtils.isNotEmpty(implementationTypeName)){
String[] implementationTypeNameArr = implementationTypeName.split(",");
ImplementationTypeEnum[] implementationTypeEnums = ImplementationTypeEnum.values();
@@ -5993,30 +6008,47 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
if(CutEnum.CN.getValue().equals(cut)){
errorMsg += "分阶段实施详情-实施类型填写有误,填写值为'新车型 或 在产车', ";
}else{
errorMsg += "Details of the phased implementation implementationType The value is set to 'New car model or Car in production', ";
errorMsg += "Phased Implementation Details - implementationType The value is set to 'New car model or Car in production', ";
}
countError++;
}else {
phasedImplementationDetailsEO.setImplementationType(implementationTypeList.stream().collect(Collectors.joining(",")));
}
}else {
if(CutEnum.CN.getValue().equals(cut)){
errorMsg += "分阶段实施详情-实施类型不能为空, ";
}else{
errorMsg += "Phased Implementation Details - Implementation Type cannot be empty,";
}
countError++;
}
}
if(phasedImplDetailsArr.length >= 3){
Date implementationDate = null;
try {
implementationDate = DateUtils.parseDate(phasedImplDetailsArr[2], "yyyy-MM-dd");
} catch (ParseException e) {
e.printStackTrace();
}
if(implementationDate == null){
String implementationDateStr = phasedImplDetailsArr[2];
if(StringUtils.isEmpty(implementationDateStr)){
if(CutEnum.CN.getValue().equals(cut)){
errorMsg += "分阶段实施详情-实施日期格式错误,正确格式为'yyyy-MM-dd', ";
errorMsg += "分阶段实施详情-实施日期不能为空, ";
}else{
errorMsg += "Details of the phased implementation implementationDate format is incorrect. The correct format is 'yyyy-MM-dd', ";
errorMsg += "Phased Implementation Details - Implementation Date cannot be empty,";
}
countError++;
}else {
phasedImplementationDetailsEO.setImplementationDate(implementationDate);
Date implementationDate = null;
try {
implementationDate = DateUtils.parseDate(phasedImplDetailsArr[2], "yyyy-MM-dd");
} catch (ParseException e) {
e.printStackTrace();
}
if(implementationDate == null){
if(CutEnum.CN.getValue().equals(cut)){
errorMsg += "分阶段实施详情-实施日期格式错误,正确格式为'yyyy-MM-dd', ";
}else{
errorMsg += "Phased Implementation Details - implementationDate format is incorrect. The correct format is 'yyyy-MM-dd', ";
}
countError++;
}else {
phasedImplementationDetailsEO.setImplementationDate(implementationDate);
}
}
}
if(phasedImplDetailsArr.length >= 4){
@@ -6025,7 +6057,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
if(CutEnum.CN.getValue().equals(cut)){
errorMsg += "分阶段实施详情-备注不能超过" + 1000 + "个字符, ";
}else{
errorMsg += "Details of the phased implementation ramarks Can not be more than " + 1000 + " char, ";
errorMsg += "Phased Implementation Details - ramarks Can not be more than " + 1000 + " char, ";
}
countError++;
}else {
@@ -3854,6 +3854,7 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
// 没有引用的数据 检验项目集合,给到前端进行展示。
List<String> noCiteInspectionItem = new ArrayList<>();
for (ProjectCertificationInventoryEO projectCertificationInventoryEO : projectCertificationInventoryEOList) {
String deliveryResult = "";
for (ProjectCertificationInventoryEO citeProjectCertificationInventoryEO : citeProjectCertificationInventoryEOList) {
// 匹配数据 类别、检验项目、配置项、标准编号、交付物类型完全一致,并且数据的状态为 审查完成
boolean flag = (
@@ -3863,13 +3864,17 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
&& StringUtils.equals(projectCertificationInventoryEO.getSerialNumber(),citeProjectCertificationInventoryEO.getSerialNumber())
&& StringUtils.equals(projectCertificationInventoryEO.getDeliverableType(),citeProjectCertificationInventoryEO.getDeliverableType())
);
if(flag){
projectCertificationInventoryEO.setDeliveryResult(citeProjectCertificationInventoryEO.getDeliveryResult());
deliveryResult = citeProjectCertificationInventoryEO.getDeliveryResult();
break;
}else {
noCiteInspectionItem.add(projectCertificationInventoryEO.getInspectionItem());
}
}
if(StringUtils.isNotBlank(deliveryResult)){
projectCertificationInventoryEO.setDeliveryResult(deliveryResult);
}else {
noCiteInspectionItem.add(projectCertificationInventoryEO.getInspectionItem());
}
}
this.updateBatchById(projectCertificationInventoryEOList);