|
@@ -357,10 +357,18 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
|
|
|
|
String finalProcode = procode;
|
|
String finalProcode = procode;
|
|
codeParts = allPartnos.stream().filter(c -> c.getDlprojid().equals(finalProcode)).collect(Collectors.toList());
|
|
codeParts = allPartnos.stream().filter(c -> c.getDlprojid().equals(finalProcode)).collect(Collectors.toList());
|
|
|
|
+ importMdfVo.setProjectdlprojid(procode);
|
|
if (codeParts.size() == 0) {
|
|
if (codeParts.size() == 0) {
|
|
- stringBuilder.append("项目工号" + procode + "不存在,");
|
|
|
|
|
|
+// stringBuilder.append("项目工号" + procode + "不存在,");
|
|
|
|
+ String proname = row.getCell(3) == null ? "" : row.getCell(3).toString().replaceAll("\\s+", "");//项目名称
|
|
|
|
+ if (StringUtils.isNotEmpty(proname)) {
|
|
|
|
+ if (StringUtil.isScience(proname)) {
|
|
|
|
+ BigDecimal formatProjectCode = new BigDecimal(proname);
|
|
|
|
+ proname = formatProjectCode.setScale(0, BigDecimal.ROUND_HALF_UP).toPlainString();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ importMdfVo.setProjectdlprojname(proname);
|
|
} else {
|
|
} else {
|
|
- importMdfVo.setProjectdlprojid(procode);
|
|
|
|
importMdfVo.setProjectdlprojname(codeParts.get(0).getDlprojname());
|
|
importMdfVo.setProjectdlprojname(codeParts.get(0).getDlprojname());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -466,9 +474,17 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
String finalPartno = partno;
|
|
String finalPartno = partno;
|
|
List<QcsPartNoDo> partNos = codeParts.stream().filter(p -> p.getDtdrawingno().equals(finalPartno)).collect(Collectors.toList());
|
|
List<QcsPartNoDo> partNos = codeParts.stream().filter(p -> p.getDtdrawingno().equals(finalPartno)).collect(Collectors.toList());
|
|
if (partNos.size() == 0) {
|
|
if (partNos.size() == 0) {
|
|
- stringBuilder.append("错误源头图号" + partno + "与项目工号" + procode + "不匹配,");
|
|
|
|
|
|
+// stringBuilder.append("错误源头图号" + partno + "与项目工号" + procode + "不匹配,");
|
|
|
|
+ String errordesigndtpartname = row.getCell(23) == null ? "" : row.getCell(23).toString().replaceAll("\\s+", "");//错误源头图名
|
|
|
|
+ if (StringUtils.isNotEmpty(errordesigndtpartname)) {
|
|
|
|
+ if (StringUtil.isScience(errordesigndtpartname)) {
|
|
|
|
+ BigDecimal formatProjectCode = new BigDecimal(errordesigndtpartname);
|
|
|
|
+ errordesigndtpartname = formatProjectCode.setScale(0, BigDecimal.ROUND_HALF_UP).toPlainString();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ importMdfVo.setErrordesigndtpartname(errordesigndtpartname);
|
|
} else {
|
|
} else {
|
|
- importMdfVo.setErrordesigndtpartname(partNos.get(0).getDtpartname());
|
|
|
|
|
|
+ importMdfVo.setErrordesigndtpartname(partNos.get(0).getDtpartname());//错误源头图名
|
|
}
|
|
}
|
|
}
|
|
}
|
|
importMdfVo.setErrordesigndtdrawingno(partno);
|
|
importMdfVo.setErrordesigndtdrawingno(partno);
|
|
@@ -587,7 +603,15 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
String finaltaskdesign = taskdesign;
|
|
String finaltaskdesign = taskdesign;
|
|
List<QcsPartNoDo> taskdesigns = codeParts.stream().filter(p -> p.getDtdrawingno().equals(finaltaskdesign)).collect(Collectors.toList());
|
|
List<QcsPartNoDo> taskdesigns = codeParts.stream().filter(p -> p.getDtdrawingno().equals(finaltaskdesign)).collect(Collectors.toList());
|
|
if (taskdesigns.size() == 0) {
|
|
if (taskdesigns.size() == 0) {
|
|
- stringBuilder.append("修改图号(任务单部件)" + taskdesign + "与项目工号" + procode + "不匹配,");
|
|
|
|
|
|
+// stringBuilder.append("修改图号(任务单部件)" + taskdesign + "与项目工号" + procode + "不匹配,");
|
|
|
|
+ String taskdesigndtpartname = row.getCell(32) == null ? "" : row.getCell(32).toString().replaceAll("\\s+", "");//修改图名(任务单部件)
|
|
|
|
+ if (StringUtils.isNotEmpty(taskdesigndtpartname)) {
|
|
|
|
+ if (StringUtil.isScience(taskdesigndtpartname)) {
|
|
|
|
+ BigDecimal formatProjectCode = new BigDecimal(taskdesigndtpartname);
|
|
|
|
+ taskdesigndtpartname = formatProjectCode.setScale(0, BigDecimal.ROUND_HALF_UP).toPlainString();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ importMdfVo.setTaskdesigndtpartname(taskdesigndtpartname);
|
|
} else {
|
|
} else {
|
|
importMdfVo.setTaskdesigndtpartname(taskdesigns.get(0).getDtpartname());
|
|
importMdfVo.setTaskdesigndtpartname(taskdesigns.get(0).getDtpartname());
|
|
}
|
|
}
|
|
@@ -746,6 +770,7 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
|
|
|
|
if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
AtomicReference<Integer> maxSectionSn = new AtomicReference<>(0);
|
|
AtomicReference<Integer> maxSectionSn = new AtomicReference<>(0);
|
|
|
|
+ final Boolean[] sUseMax = {false};
|
|
//序号分组 空值在后,有值正序在前
|
|
//序号分组 空值在后,有值正序在前
|
|
Map<ImportMdfVo, List<ImportMdfVo>> mdfVoListMap = flist.stream()
|
|
Map<ImportMdfVo, List<ImportMdfVo>> mdfVoListMap = flist.stream()
|
|
.sorted(createReverseComparator("sectionsn"))
|
|
.sorted(createReverseComparator("sectionsn"))
|
|
@@ -783,10 +808,11 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
if (StringUtils.isBlank(mvo.getSectionsn())) {
|
|
if (StringUtils.isBlank(mvo.getSectionsn())) {
|
|
sectionid = SecurityUtil.getUUID();
|
|
sectionid = SecurityUtil.getUUID();
|
|
secVos = qcsMdfFormDos.stream().filter(sv -> fm.getProjectdlprojid().equals(sv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(sv.getSourcenumbercode())).collect(Collectors.toList());
|
|
secVos = qcsMdfFormDos.stream().filter(sv -> fm.getProjectdlprojid().equals(sv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(sv.getSourcenumbercode())).collect(Collectors.toList());
|
|
- if (secVos.size() == 0 || maxSectionSn.get() != 0) {
|
|
|
|
- maxSectionSn.getAndSet(maxSectionSn.get() + 1);
|
|
|
|
- } else {
|
|
|
|
|
|
+ if (secVos.size() > 0 && !sUseMax[0]) {
|
|
maxSectionSn.getAndSet(Integer.parseInt(secVos.get(secVos.size() - 1).getSectionsn()) + 1);
|
|
maxSectionSn.getAndSet(Integer.parseInt(secVos.get(secVos.size() - 1).getSectionsn()) + 1);
|
|
|
|
+ sUseMax[0] = true;
|
|
|
|
+ } else {
|
|
|
|
+ maxSectionSn.getAndSet(maxSectionSn.get() + 1);
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
secVos = qcsMdfFormDos.stream().filter(sv -> fm.getProjectdlprojid().equals(sv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(sv.getSourcenumbercode()) && mvo.getSectionsn().equals(sv.getSectionsn())).collect(Collectors.toList());
|
|
secVos = qcsMdfFormDos.stream().filter(sv -> fm.getProjectdlprojid().equals(sv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(sv.getSourcenumbercode()) && mvo.getSectionsn().equals(sv.getSectionsn())).collect(Collectors.toList());
|
|
@@ -840,6 +866,7 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
|
|
|
|
if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
AtomicReference<Integer> maxRowSn = new AtomicReference<>(0);
|
|
AtomicReference<Integer> maxRowSn = new AtomicReference<>(0);
|
|
|
|
+ final Boolean[] rUseMax = {false};
|
|
//排号分组 空值在后,有值正序在前
|
|
//排号分组 空值在后,有值正序在前
|
|
Map<ImportMdfVo, List<ImportMdfVo>> rowListMap = slist.stream()
|
|
Map<ImportMdfVo, List<ImportMdfVo>> rowListMap = slist.stream()
|
|
.sorted(createReverseComparator("rowsn"))
|
|
.sorted(createReverseComparator("rowsn"))
|
|
@@ -859,28 +886,28 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
List<ImportMdfVo> secRowVos = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(finalS).getSectionsn().equals(rv.getSectionsn())).collect(Collectors.toList());
|
|
List<ImportMdfVo> secRowVos = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(finalS).getSectionsn().equals(rv.getSectionsn())).collect(Collectors.toList());
|
|
if (StringUtils.isBlank(rvo.getRowsn())) {
|
|
if (StringUtils.isBlank(rvo.getRowsn())) {
|
|
rowid = SecurityUtil.getUUID();
|
|
rowid = SecurityUtil.getUUID();
|
|
- if (secRowVos.size() == 0 || maxRowSn.get() != 0) {
|
|
|
|
- maxRowSn.getAndSet(maxRowSn.get() + 1);
|
|
|
|
- } else {
|
|
|
|
|
|
+ if (secRowVos.size() > 0 && !rUseMax[0]) {
|
|
maxRowSn.getAndSet(Integer.parseInt(secRowVos.get(secRowVos.size() - 1).getRowsn()) + 1);
|
|
maxRowSn.getAndSet(Integer.parseInt(secRowVos.get(secRowVos.size() - 1).getRowsn()) + 1);
|
|
|
|
+ rUseMax[0] = true;
|
|
|
|
+ } else {
|
|
|
|
+ maxRowSn.getAndSet(maxRowSn.get() + 1);
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
-// int finalR = r;
|
|
|
|
List<ImportMdfVo> rowVos = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(finalS).getSectionsn().equals(rv.getSectionsn()) && rvo.getRowsn().equals(rv.getRowsn()) && rlist.get(0).getRemark().equals(rv.getRemark())).collect(Collectors.toList());
|
|
List<ImportMdfVo> rowVos = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(finalS).getSectionsn().equals(rv.getSectionsn()) && rvo.getRowsn().equals(rv.getRowsn()) && rlist.get(0).getRemark().equals(rv.getRemark())).collect(Collectors.toList());
|
|
if (rowVos.size() == 0) {
|
|
if (rowVos.size() == 0) {
|
|
rowVos = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(finalS).getSectionsn().equals(rv.getSectionsn()) && rvo.getRowsn().equals(rv.getRowsn())).collect(Collectors.toList());
|
|
rowVos = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(finalS).getSectionsn().equals(rv.getSectionsn()) && rvo.getRowsn().equals(rv.getRowsn())).collect(Collectors.toList());
|
|
}
|
|
}
|
|
- ImportMdfVo rowVo = rowVos.stream().filter(ro -> unitId.equals(ro.getDeptid())).findAny().orElse(null);
|
|
|
|
|
|
+ ImportMdfVo rowVo = rowVos.stream().filter(ro -> unitId.equals(ro.getDeptid()) && rvo.getRemark().equals(ro.getRemark())).findAny().orElse(null);
|
|
if (rowVo == null) {
|
|
if (rowVo == null) {
|
|
rowid = SecurityUtil.getUUID();
|
|
rowid = SecurityUtil.getUUID();
|
|
maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
} else {
|
|
} else {
|
|
-// if (!rlist.get(r).getRemark().equals(rowVo.getRemark())) {
|
|
|
|
-// rowid = SecurityUtil.getUUID();
|
|
|
|
-// maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()) + 1);
|
|
|
|
-// } else {
|
|
|
|
if (rowVo.getStatus().equals("已提交")) {
|
|
if (rowVo.getStatus().equals("已提交")) {
|
|
- allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rvo.getRowsn() + "数据已提交,请检查<br>");
|
|
|
|
|
|
+ if (StringUtils.isBlank(rvo.getRemark())) {
|
|
|
|
+ allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rvo.getRowsn() + "数据已提交,请检查<br>");
|
|
|
|
+ } else {
|
|
|
|
+ allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rvo.getRowsn() + ",备注" + rvo.getRemark() + "数据已提交,请检查<br>");
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
StringBuilder sb = new StringBuilder();
|
|
StringBuilder sb = new StringBuilder();
|
|
if (rowVo.getRcreateuserid().equals("0")) {
|
|
if (rowVo.getRcreateuserid().equals("0")) {
|
|
@@ -910,7 +937,6 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-// }
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
rlist.get(0).setRowsn(maxRowSn.toString());
|
|
rlist.get(0).setRowsn(maxRowSn.toString());
|
|
@@ -986,6 +1012,7 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
qcsMdfFormDo = BeanUtil.toBean(flist.get(0), QcsMdfFormDo.class);
|
|
qcsMdfFormDo = BeanUtil.toBean(flist.get(0), QcsMdfFormDo.class);
|
|
qcsMdfFormDo.setId(formid);
|
|
qcsMdfFormDo.setId(formid);
|
|
qcsMdfFormDo.setRoption(ropJson);
|
|
qcsMdfFormDo.setRoption(ropJson);
|
|
|
|
+ qcsMdfFormDo.setRemark(qcsMdfFormDo.getProjectdlprojid());
|
|
if (isnew) {
|
|
if (isnew) {
|
|
qcsMdfFormDo.setBaseid(unitId);
|
|
qcsMdfFormDo.setBaseid(unitId);
|
|
qcsMdfFormDo.setBasename(finalDeptName1);
|
|
qcsMdfFormDo.setBasename(finalDeptName1);
|