|
@@ -694,15 +694,16 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
));
|
|
));
|
|
List<Map<String, String>> finalResDutyList = resDutyList;
|
|
List<Map<String, String>> finalResDutyList = resDutyList;
|
|
formList.forEach((fm, flist) -> {
|
|
formList.forEach((fm, flist) -> {
|
|
|
|
+ Boolean fIsFromMdf = false;//是否来自修改单系统
|
|
|
|
+ //主表数据
|
|
|
|
+ ImportMdfVo mdfVo = qcsMdfFormDos.stream().filter(mv -> fm.getProjectdlprojid().equals(mv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(mv.getSourcenumbercode())).findAny().orElse(null);
|
|
//修改单分组
|
|
//修改单分组
|
|
Map<ImportMdfVo, List<ImportMdfVo>> formListMap = flist.stream().collect(Collectors.groupingBy(
|
|
Map<ImportMdfVo, List<ImportMdfVo>> formListMap = flist.stream().collect(Collectors.groupingBy(
|
|
f -> new ImportMdfVo(f.getTypename(), f.getSourcename(), f.getNumbername(), f.getRectifycode(), f.getManageadminnickname(), f.getProducename())
|
|
f -> new ImportMdfVo(f.getTypename(), f.getSourcename(), f.getNumbername(), f.getRectifycode(), f.getManageadminnickname(), f.getProducename())
|
|
));
|
|
));
|
|
- if (formListMap.size() > 1) {
|
|
|
|
|
|
+ if (mdfVo != null && !mdfVo.getFcreateuserid().equals("0") && formListMap.size() > 1) {
|
|
allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + "有" + formListMap.size() + "行,但产品类型、类别、修改原因、整改编号、项目总工、项目生产阶段有不同,请检查<br>");
|
|
allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + "有" + formListMap.size() + "行,但产品类型、类别、修改原因、整改编号、项目总工、项目生产阶段有不同,请检查<br>");
|
|
} else {
|
|
} else {
|
|
- //主表数据
|
|
|
|
- ImportMdfVo mdfVo = qcsMdfFormDos.stream().filter(mv -> fm.getProjectdlprojid().equals(mv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(mv.getSourcenumbercode())).findAny().orElse(null);
|
|
|
|
String formid = "";
|
|
String formid = "";
|
|
Boolean isnew = false;
|
|
Boolean isnew = false;
|
|
if (mdfVo == null) {
|
|
if (mdfVo == null) {
|
|
@@ -710,23 +711,28 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
isnew = true;
|
|
isnew = true;
|
|
} else {
|
|
} else {
|
|
StringBuilder sb = new StringBuilder();
|
|
StringBuilder sb = new StringBuilder();
|
|
- if (!flist.get(0).getTypename().equals(mdfVo.getTypename())) {
|
|
|
|
- sb.append("产品类型" + flist.get(0).getTypename() + "与系统产品类型" + mdfVo.getTypename() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!flist.get(0).getNumbername().equals(mdfVo.getNumbername())) {
|
|
|
|
- sb.append("类别" + flist.get(0).getNumbername() + "与系统类别" + mdfVo.getNumbername() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!flist.get(0).getSourcename().equals(mdfVo.getSourcename())) {
|
|
|
|
- sb.append("修改原因" + flist.get(0).getSourcename() + "与系统修改原因" + mdfVo.getSourcename() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!flist.get(0).getRectifycode().equals(mdfVo.getRectifycode())) {
|
|
|
|
- sb.append("整改编号" + flist.get(0).getRectifycode() + "与系统整改编号" + mdfVo.getRectifycode() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!flist.get(0).getManageadminnickname().equals(mdfVo.getManageadminnickname())) {
|
|
|
|
- sb.append("项目总工" + flist.get(0).getManageadminnickname() + "与系统项目总工" + mdfVo.getManageadminnickname() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!flist.get(0).getProducename().equals(mdfVo.getProducename())) {
|
|
|
|
- sb.append("项目生产阶段" + flist.get(0).getProducename() + "与系统项目生产阶段" + mdfVo.getProducename() + "不同,");
|
|
|
|
|
|
+ if (mdfVo.getFcreateuserid().equals("0")) {
|
|
|
|
+ fIsFromMdf = true;
|
|
|
|
+ flist.get(0).setSourcename(mdfVo.getSourcename());
|
|
|
|
+ } else {
|
|
|
|
+ if (!flist.get(0).getTypename().equals(mdfVo.getTypename())) {
|
|
|
|
+ sb.append("产品类型" + flist.get(0).getTypename() + "与系统产品类型" + mdfVo.getTypename() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!flist.get(0).getNumbername().equals(mdfVo.getNumbername())) {
|
|
|
|
+ sb.append("类别" + flist.get(0).getNumbername() + "与系统类别" + mdfVo.getNumbername() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!flist.get(0).getSourcename().equals(mdfVo.getSourcename())) {
|
|
|
|
+ sb.append("修改原因" + flist.get(0).getSourcename() + "与系统修改原因" + mdfVo.getSourcename() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!flist.get(0).getRectifycode().equals(mdfVo.getRectifycode())) {
|
|
|
|
+ sb.append("整改编号" + flist.get(0).getRectifycode() + "与系统整改编号" + mdfVo.getRectifycode() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!flist.get(0).getManageadminnickname().equals(mdfVo.getManageadminnickname())) {
|
|
|
|
+ sb.append("项目总工" + flist.get(0).getManageadminnickname() + "与系统项目总工" + mdfVo.getManageadminnickname() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!flist.get(0).getProducename().equals(mdfVo.getProducename())) {
|
|
|
|
+ sb.append("项目生产阶段" + flist.get(0).getProducename() + "与系统项目生产阶段" + mdfVo.getProducename() + "不同,");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
if (StringUtils.isNotBlank(sb.toString())) {
|
|
if (StringUtils.isNotBlank(sb.toString())) {
|
|
@@ -740,244 +746,262 @@ 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);
|
|
- //按照内容序号分组
|
|
|
|
- Map<String, List<ImportMdfVo>> snoListMap = flist.stream().collect(Collectors.groupingBy(ImportMdfVo::getSectionsn));
|
|
|
|
- snoListMap.forEach((sno, slm) -> {
|
|
|
|
- if (StringUtils.isNotBlank(sno)) {
|
|
|
|
- Map<ImportMdfVo, List<ImportMdfVo>> difSmap = slm.stream().collect(Collectors.groupingBy(
|
|
|
|
- p -> new ImportMdfVo(p.getModifyby(), p.getErrordesigndtdrawingno(), p.getDtdesigner(), p.getDtwhocollate(), p.getDtwhoapprove(), p.getErrorroutine(), p.getErroragain(), p.getErrorhard(), p.getErrortable())
|
|
|
|
|
|
+ //序号分组 空值在后,有值正序在前
|
|
|
|
+ Map<ImportMdfVo, List<ImportMdfVo>> mdfVoListMap = flist.stream()
|
|
|
|
+ .sorted(createReverseComparator("sectionsn"))
|
|
|
|
+ .collect(Collectors.groupingBy(
|
|
|
|
+ p -> new ImportMdfVo(p.getSectionsn(), p.getModifyby(), p.getErrordesigndtdrawingno(), p.getDtdesigner(), p.getDtwhocollate(), p.getDtwhoapprove(), p.getErrorroutine(), p.getErroragain(), p.getErrorhard(), p.getErrortable()),
|
|
|
|
+ LinkedHashMap::new, // 保持分组顺序
|
|
|
|
+ Collectors.toList()
|
|
));
|
|
));
|
|
- if (difSmap.size() > 1) {
|
|
|
|
- allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + sno + "有" + slm.size() + "行,但修改责任方、错误源头图号、设计人、校对人、审核人、常规错误、二过错误、较难发现错误、校对表错误有不同,请检查<br>");
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
-
|
|
|
|
- if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
|
|
- //序号分组 空值在后,有值正序在前
|
|
|
|
- Map<ImportMdfVo, List<ImportMdfVo>> mdfVoListMap = flist.stream()
|
|
|
|
- .sorted(createReverseComparator("sectionsn"))
|
|
|
|
- .collect(Collectors.groupingBy(
|
|
|
|
- p -> new ImportMdfVo(p.getSectionsn(), p.getModifyby(), p.getErrordesigndtdrawingno(), p.getDtdesigner(), p.getDtwhocollate(), p.getDtwhoapprove(), p.getErrorroutine(), p.getErroragain(), p.getErrorhard(), p.getErrortable()),
|
|
|
|
- LinkedHashMap::new, // 保持分组顺序
|
|
|
|
- Collectors.toList()
|
|
|
|
|
|
+ String finalFormid = formid;
|
|
|
|
+ String finalFormid1 = formid;
|
|
|
|
+ mdfVoListMap.forEach((mvo, slist) -> {
|
|
|
|
+ //按照排号分组
|
|
|
|
+ Map<String, List<ImportMdfVo>> rnoListMap = slist.stream().collect(Collectors.groupingBy(ImportMdfVo::getRowsn));
|
|
|
|
+ rnoListMap.forEach((rno, rlm) -> {
|
|
|
|
+ if (StringUtils.isNotBlank(rno) && StringUtils.isNotBlank(mvo.getSectionsn())) {
|
|
|
|
+ Map<ImportMdfVo, List<ImportMdfVo>> difRMap = rlm.stream().collect(Collectors.groupingBy(
|
|
|
|
+ m -> new ImportMdfVo(m.getContent(), m.getRemark(), m.getTaskdesigndtdrawingno(), m.getMinordesigndtdrawingno(), m.getMinordesigndtpartname(), m.getDutydeptname(), m.getManday(), m.getMater(), m.getEquip(), m.getOther())
|
|
));
|
|
));
|
|
- String finalFormid = formid;
|
|
|
|
- String finalFormid1 = formid;
|
|
|
|
- mdfVoListMap.forEach((mvo, slist) -> {
|
|
|
|
-// for (int s = 0; s < slist.size(); s++) {
|
|
|
|
- List<ImportMdfVo> secVos;
|
|
|
|
- String sectionid = "";
|
|
|
|
- if (StringUtils.isBlank(mvo.getSectionsn())) {
|
|
|
|
- sectionid = SecurityUtil.getUUID();
|
|
|
|
- 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 {
|
|
|
|
- maxSectionSn.getAndSet(Integer.parseInt(secVos.get(secVos.size() - 1).getSectionsn()) + 1);
|
|
|
|
|
|
+ difRMap.forEach((ro, rl) -> {
|
|
|
|
+ if (rl.size() > 1) {
|
|
|
|
+// allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",排号" + rno + "有" + rlm.size() + "行,但修改内容、修改图号(任务单部件)、修改图号(次级部件)、修改图名(次级部件)、责任单位、人工、材料、设备、其他有不同,请检查<br>");
|
|
|
|
+ allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rno + "有" + rlm.size() + "行,请检查<br>");
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
|
|
+ for (int s = 0; s < slist.size(); s++) {
|
|
|
|
+ if (s > 0 && StringUtils.isNotBlank(slist.get(s).getSectionsn())) {
|
|
|
|
+ continue;
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
- secVos = qcsMdfFormDos.stream().filter(sv -> fm.getProjectdlprojid().equals(sv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(sv.getSourcenumbercode()) && mvo.getSectionsn().equals(sv.getSectionsn())).collect(Collectors.toList());
|
|
|
|
- if (secVos.size() == 0) {
|
|
|
|
|
|
+ Boolean sIsFromMdf = false;//是否来自修改单系统
|
|
|
|
+ List<ImportMdfVo> secVos;
|
|
|
|
+ String sectionid = "";
|
|
|
|
+ if (StringUtils.isBlank(mvo.getSectionsn())) {
|
|
sectionid = SecurityUtil.getUUID();
|
|
sectionid = SecurityUtil.getUUID();
|
|
- maxSectionSn.getAndSet(Integer.parseInt(mvo.getSectionsn()));
|
|
|
|
- } else {
|
|
|
|
- ImportMdfVo secVo = secVos.get(0);
|
|
|
|
- StringBuilder sb = new StringBuilder();
|
|
|
|
- if (!mvo.getModifyby().equals(secVo.getModifyby())) {
|
|
|
|
- sb.append("修改责任方" + mvo.getModifyby() + "与系统修改责任方" + secVo.getModifyby() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getErrordesigndtdrawingno().equals(secVo.getErrordesigndtdrawingno())) {
|
|
|
|
- sb.append("错误源头图号" + mvo.getErrordesigndtdrawingno() + "与系统错误源头图号" + secVo.getErrordesigndtdrawingno() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getDtdesigner().equals(secVo.getDtdesigner())) {
|
|
|
|
- sb.append("设计人" + mvo.getDtdesigner() + "与系统设计人" + secVo.getDtdesigner() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getDtwhocollate().equals(secVo.getDtwhocollate())) {
|
|
|
|
- sb.append("校对人" + mvo.getDtwhocollate() + "与系统校对人" + secVo.getDtwhocollate() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getDtwhoapprove().equals(secVo.getDtwhoapprove())) {
|
|
|
|
- sb.append("审核人" + mvo.getDtwhoapprove() + "与系统审核人" + secVo.getDtwhoapprove() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getErrorroutine().equals(secVo.getErrorroutine())) {
|
|
|
|
- sb.append("常规错误" + mvo.getErrorroutine() + "与系统常规错误" + secVo.getErrorroutine() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getErroragain().equals(secVo.getErroragain())) {
|
|
|
|
- sb.append("二过错误" + mvo.getErroragain() + "与系统二过错误" + secVo.getErroragain() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getErrorhard().equals(secVo.getErrorhard())) {
|
|
|
|
- sb.append("较难发现错误" + mvo.getErrorhard() + "与系统较难发现错误" + secVo.getErrorhard() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!mvo.getErrortable().equals(secVo.getErrortable())) {
|
|
|
|
- sb.append("校对表错误" + mvo.getErrortable() + "与系统校对表错误" + secVo.getErrortable() + "不同,");
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (StringUtils.isNotBlank(sb.toString())) {
|
|
|
|
- allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + "已存在,但导入的数据" + sb.toString() + "请检查<br>");
|
|
|
|
|
|
+ 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 {
|
|
} else {
|
|
- sectionid = secVo.getSectionid();
|
|
|
|
- maxSectionSn.getAndSet(Integer.parseInt(mvo.getSectionsn()));
|
|
|
|
|
|
+ maxSectionSn.getAndSet(Integer.parseInt(secVos.get(secVos.size() - 1).getSectionsn()) + 1);
|
|
}
|
|
}
|
|
- }
|
|
|
|
- }
|
|
|
|
- slist.get(0).setSectionsn(maxSectionSn.toString());
|
|
|
|
-
|
|
|
|
- //按照排号分组
|
|
|
|
- Map<String, List<ImportMdfVo>> rnoListMap = slist.stream().collect(Collectors.groupingBy(ImportMdfVo::getRowsn));
|
|
|
|
- rnoListMap.forEach((rno, rlm) -> {
|
|
|
|
- if (StringUtils.isNotBlank(rno)) {
|
|
|
|
- Map<ImportMdfVo, List<ImportMdfVo>> difRMap = rlm.stream().collect(Collectors.groupingBy(
|
|
|
|
- m -> new ImportMdfVo(m.getContent(), rno, m.getRemark(), m.getTaskdesigndtdrawingno(), m.getMinordesigndtdrawingno(), m.getMinordesigndtpartname(), m.getDutydeptname(), m.getManday(), m.getMater(), m.getEquip(), m.getOther())
|
|
|
|
- ));
|
|
|
|
- difRMap.forEach((ro, rl) -> {
|
|
|
|
- if (rl.size() > 1) {
|
|
|
|
-// allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",排号" + rno + "有" + rlm.size() + "行,但修改内容、修改图号(任务单部件)、修改图号(次级部件)、修改图名(次级部件)、责任单位、人工、材料、设备、其他有不同,请检查<br>");
|
|
|
|
- allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",排号" + rno + "有" + rlm.size() + "行,请检查<br>");
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
-
|
|
|
|
- if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
|
|
- AtomicReference<Integer> maxRowSn = new AtomicReference<>(0);
|
|
|
|
- //排号分组 空值在后,有值正序在前
|
|
|
|
- Map<ImportMdfVo, List<ImportMdfVo>> rowListMap = slist.stream()
|
|
|
|
- .sorted(createReverseComparator("rowsn"))
|
|
|
|
- .collect(Collectors.groupingBy(
|
|
|
|
- m -> new ImportMdfVo(m.getContent(), m.getRowsn(), m.getTaskdesigndtdrawingno(), m.getMinordesigndtdrawingno(), m.getMinordesigndtpartname(), m.getDutydeptname(), m.getManday(), m.getMater(), m.getEquip(), m.getOther()),
|
|
|
|
- LinkedHashMap::new, // 保持分组顺序
|
|
|
|
- Collectors.toList()
|
|
|
|
- ));
|
|
|
|
- String finalSectionid = sectionid;
|
|
|
|
- rowListMap.forEach((rvo, rlist) -> {
|
|
|
|
- for (int r = 0; r < rlist.size(); r++) {
|
|
|
|
- String rowid = "";
|
|
|
|
- String detailid = SecurityUtil.getUUID();
|
|
|
|
- List<ImportMdfVo> secRowVos = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(0).getSectionsn().equals(rv.getSectionsn())).collect(Collectors.toList());
|
|
|
|
- if (StringUtils.isBlank(rvo.getRowsn())) {
|
|
|
|
- rowid = SecurityUtil.getUUID();
|
|
|
|
- if (secRowVos.size() == 0 || maxRowSn.get() != 0) {
|
|
|
|
- maxRowSn.getAndSet(maxRowSn.get() + 1);
|
|
|
|
- } else {
|
|
|
|
- maxRowSn.getAndSet(Integer.parseInt(secRowVos.get(secRowVos.size() - 1).getRowsn()) + 1);
|
|
|
|
|
|
+ } else {
|
|
|
|
+ secVos = qcsMdfFormDos.stream().filter(sv -> fm.getProjectdlprojid().equals(sv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(sv.getSourcenumbercode()) && mvo.getSectionsn().equals(sv.getSectionsn())).collect(Collectors.toList());
|
|
|
|
+ if (secVos.size() == 0) {
|
|
|
|
+ sectionid = SecurityUtil.getUUID();
|
|
|
|
+ maxSectionSn.getAndSet(Integer.parseInt(mvo.getSectionsn()));
|
|
|
|
+ } else {
|
|
|
|
+ ImportMdfVo secVo = secVos.get(0);
|
|
|
|
+ StringBuilder sb = new StringBuilder();
|
|
|
|
+ if (secVo.getScreateuserid().equals("0")) {
|
|
|
|
+ sIsFromMdf = true;
|
|
|
|
+ } else {
|
|
|
|
+ if (!mvo.getModifyby().equals(secVo.getModifyby())) {
|
|
|
|
+ sb.append("修改责任方" + mvo.getModifyby() + "与系统修改责任方" + secVo.getModifyby() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!mvo.getErrordesigndtdrawingno().equals(secVo.getErrordesigndtdrawingno())) {
|
|
|
|
+ sb.append("错误源头图号" + mvo.getErrordesigndtdrawingno() + "与系统错误源头图号" + secVo.getErrordesigndtdrawingno() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!mvo.getDtdesigner().equals(secVo.getDtdesigner())) {
|
|
|
|
+ sb.append("设计人" + mvo.getDtdesigner() + "与系统设计人" + secVo.getDtdesigner() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!mvo.getDtwhocollate().equals(secVo.getDtwhocollate())) {
|
|
|
|
+ sb.append("校对人" + mvo.getDtwhocollate() + "与系统校对人" + secVo.getDtwhocollate() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!mvo.getDtwhoapprove().equals(secVo.getDtwhoapprove())) {
|
|
|
|
+ sb.append("审核人" + mvo.getDtwhoapprove() + "与系统审核人" + secVo.getDtwhoapprove() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!mvo.getErrorroutine().equals(secVo.getErrorroutine())) {
|
|
|
|
+ sb.append("常规错误" + mvo.getErrorroutine() + "与系统常规错误" + secVo.getErrorroutine() + "不同,");
|
|
}
|
|
}
|
|
|
|
+ if (!mvo.getErroragain().equals(secVo.getErroragain())) {
|
|
|
|
+ sb.append("二过错误" + mvo.getErroragain() + "与系统二过错误" + secVo.getErroragain() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!mvo.getErrorhard().equals(secVo.getErrorhard())) {
|
|
|
|
+ sb.append("较难发现错误" + mvo.getErrorhard() + "与系统较难发现错误" + secVo.getErrorhard() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!mvo.getErrortable().equals(secVo.getErrortable())) {
|
|
|
|
+ sb.append("校对表错误" + mvo.getErrortable() + "与系统校对表错误" + secVo.getErrortable() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (StringUtils.isNotBlank(sb.toString())) {
|
|
|
|
+ allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + "已存在,但导入的数据" + sb.toString() + "请检查<br>");
|
|
} else {
|
|
} else {
|
|
- int finalR = r;
|
|
|
|
- ImportMdfVo rowVo = qcsMdfFormDos.stream().filter(rv -> fm.getProjectdlprojid().equals(rv.getProjectdlprojid()) && fm.getSourcenumbercode().equals(rv.getSourcenumbercode()) && slist.get(0).getSectionsn().equals(rv.getSectionsn()) && rvo.getRowsn().equals(rv.getRowsn()) && rlist.get(finalR).getRemark().equals(rv.getRemark())).findAny().orElse(null);
|
|
|
|
- if (rowVo == null) {
|
|
|
|
|
|
+ sectionid = secVo.getSectionid();
|
|
|
|
+ maxSectionSn.getAndSet(Integer.parseInt(mvo.getSectionsn()));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ slist.get(s).setSectionsn(maxSectionSn.toString());
|
|
|
|
+
|
|
|
|
+ if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
|
|
+ AtomicReference<Integer> maxRowSn = new AtomicReference<>(0);
|
|
|
|
+ //排号分组 空值在后,有值正序在前
|
|
|
|
+ Map<ImportMdfVo, List<ImportMdfVo>> rowListMap = slist.stream()
|
|
|
|
+ .sorted(createReverseComparator("rowsn"))
|
|
|
|
+ .collect(Collectors.groupingBy(
|
|
|
|
+ m -> new ImportMdfVo(m.getSectionsn(), m.getContent(), m.getRowsn(), m.getRemark(), m.getTaskdesigndtdrawingno(), m.getMinordesigndtdrawingno(), m.getMinordesigndtpartname(), m.getDutydeptname(), m.getManday(), m.getMater(), m.getEquip(), m.getOther()),
|
|
|
|
+ LinkedHashMap::new, // 保持分组顺序
|
|
|
|
+ Collectors.toList()
|
|
|
|
+ ));
|
|
|
|
+ String finalSectionid = sectionid;
|
|
|
|
+ int finalS = s;
|
|
|
|
+ rowListMap.forEach((rvo, rlist) -> {
|
|
|
|
+// for (int r = 0; r < rlist.size(); r++) {
|
|
|
|
+ Boolean rIsFromMdf = false;//是否来自修改单系统
|
|
|
|
+ if (slist.get(finalS).getSectionsn().equals(rvo.getSectionsn())) {
|
|
|
|
+ String rowid = "";
|
|
|
|
+ String detailid = SecurityUtil.getUUID();
|
|
|
|
+ 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())) {
|
|
rowid = SecurityUtil.getUUID();
|
|
rowid = SecurityUtil.getUUID();
|
|
- maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
|
|
|
|
+ if (secRowVos.size() == 0 || maxRowSn.get() != 0) {
|
|
|
|
+ maxRowSn.getAndSet(maxRowSn.get() + 1);
|
|
|
|
+ } else {
|
|
|
|
+ maxRowSn.getAndSet(Integer.parseInt(secRowVos.get(secRowVos.size() - 1).getRowsn()) + 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());
|
|
|
|
+ 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());
|
|
|
|
+ }
|
|
|
|
+ ImportMdfVo rowVo = rowVos.stream().filter(ro -> unitId.equals(ro.getDeptid())).findAny().orElse(null);
|
|
|
|
+ if (rowVo == null) {
|
|
|
|
+ rowid = SecurityUtil.getUUID();
|
|
|
|
+ maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
|
|
+ } else {
|
|
// if (!rlist.get(r).getRemark().equals(rowVo.getRemark())) {
|
|
// if (!rlist.get(r).getRemark().equals(rowVo.getRemark())) {
|
|
// rowid = SecurityUtil.getUUID();
|
|
// rowid = SecurityUtil.getUUID();
|
|
// maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()) + 1);
|
|
// maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()) + 1);
|
|
// } else {
|
|
// } else {
|
|
- if (rowVo.getStatus().equals("已提交") && rowVo.getDeptid().equals(unitId)) {
|
|
|
|
- allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rvo.getRowsn() + "数据已提交,请检查<br>");
|
|
|
|
- } else {
|
|
|
|
- StringBuilder sb = new StringBuilder();
|
|
|
|
- if (!rvo.getContent().equals(rowVo.getContent())) {
|
|
|
|
- sb.append("修改内容" + rvo.getContent() + "与系统修改内容" + rowVo.getContent() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!rvo.getTaskdesigndtdrawingno().equals(rowVo.getTaskdesigndtdrawingno())) {
|
|
|
|
- sb.append("修改图号(任务单部件)" + rvo.getTaskdesigndtdrawingno() + "与系统修改图号(任务单部件)" + rowVo.getTaskdesigndtdrawingno() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!rvo.getMinordesigndtdrawingno().equals(rowVo.getMinordesigndtdrawingno())) {
|
|
|
|
- sb.append("修改图号(次级部件)" + rvo.getMinordesigndtdrawingno() + "与系统修改图号(次级部件)" + rowVo.getMinordesigndtdrawingno() + "不同,");
|
|
|
|
- }
|
|
|
|
- if (!rvo.getMinordesigndtpartname().equals(rowVo.getMinordesigndtpartname())) {
|
|
|
|
- sb.append("修改图名(次级部件)" + rvo.getMinordesigndtpartname() + "与系统修改图名(次级部件)" + rowVo.getMinordesigndtpartname() + "不同,");
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (StringUtils.isNotBlank(sb.toString())) {
|
|
|
|
- allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rvo.getRowsn() + "已存在,但导入的数据" + sb.toString() + "请检查<br>");
|
|
|
|
|
|
+ if (rowVo.getStatus().equals("已提交")) {
|
|
|
|
+ allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rvo.getRowsn() + "数据已提交,请检查<br>");
|
|
} else {
|
|
} else {
|
|
- rowid = rowVo.getRowid();
|
|
|
|
- if (rowVo.getDeptid().equals(unitId)) {
|
|
|
|
- detailid = rowVo.getDetailid();
|
|
|
|
|
|
+ StringBuilder sb = new StringBuilder();
|
|
|
|
+ if (rowVo.getRcreateuserid().equals("0")) {
|
|
|
|
+ rIsFromMdf = true;
|
|
|
|
+ } else {
|
|
|
|
+ if (!rvo.getContent().equals(rowVo.getContent())) {
|
|
|
|
+ sb.append("修改内容" + rvo.getContent() + "与系统修改内容" + rowVo.getContent() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!rvo.getTaskdesigndtdrawingno().equals(rowVo.getTaskdesigndtdrawingno())) {
|
|
|
|
+ sb.append("修改图号(任务单部件)" + rvo.getTaskdesigndtdrawingno() + "与系统修改图号(任务单部件)" + rowVo.getTaskdesigndtdrawingno() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!rvo.getMinordesigndtdrawingno().equals(rowVo.getMinordesigndtdrawingno())) {
|
|
|
|
+ sb.append("修改图号(次级部件)" + rvo.getMinordesigndtdrawingno() + "与系统修改图号(次级部件)" + rowVo.getMinordesigndtdrawingno() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ if (!rvo.getMinordesigndtpartname().equals(rowVo.getMinordesigndtpartname())) {
|
|
|
|
+ sb.append("修改图名(次级部件)" + rvo.getMinordesigndtpartname() + "与系统修改图名(次级部件)" + rowVo.getMinordesigndtpartname() + "不同,");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (StringUtils.isNotBlank(sb.toString())) {
|
|
|
|
+ allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",内容序号" + mvo.getSectionsn() + ",排号" + rvo.getRowsn() + "已存在,但导入的数据" + sb.toString() + "请检查<br>");
|
|
|
|
+ } else {
|
|
|
|
+ rowid = rowVo.getRowid();
|
|
|
|
+ if (rowVo.getDeptid().equals(unitId)) {
|
|
|
|
+ detailid = rowVo.getDetailid();
|
|
|
|
+ }
|
|
|
|
+ maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
}
|
|
}
|
|
- maxRowSn.getAndSet(Integer.parseInt(rvo.getRowsn()));
|
|
|
|
}
|
|
}
|
|
- }
|
|
|
|
// }
|
|
// }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- }
|
|
|
|
- rlist.get(r).setRowsn(maxRowSn.toString());
|
|
|
|
-
|
|
|
|
- if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
|
|
- QcsMdfRowDo qcsMdfRowDo = BeanUtil.toBean(rlist.get(r), QcsMdfRowDo.class);
|
|
|
|
- qcsMdfRowDo.setId(rowid);
|
|
|
|
- qcsMdfRowDo.setRowsn(slist.get(0).getSectionsn() + "-" + qcsMdfRowDo.getRowsn());
|
|
|
|
- qcsMdfRowDo.setFormid(finalFormid);
|
|
|
|
- qcsMdfRowDo.setSectionid(finalSectionid);
|
|
|
|
- qcsMdfRowDo.setRoption(ropJson);
|
|
|
|
- qcsMdfRowDoList.add(qcsMdfRowDo);
|
|
|
|
-
|
|
|
|
- QcsMdfDetailDo qcsMdfDetailDo = BeanUtil.toBean(rlist.get(r), QcsMdfDetailDo.class);
|
|
|
|
- qcsMdfDetailDo.setId(detailid);
|
|
|
|
- qcsMdfDetailDo.setRowid(rowid);
|
|
|
|
- qcsMdfDetailDo.setFormid(finalFormid);
|
|
|
|
- qcsMdfDetailDo.setSectionid(finalSectionid);
|
|
|
|
- qcsMdfDetailDo.setRoption(ropJson);
|
|
|
|
- qcsMdfDetailDo.setDeptid(unitId);
|
|
|
|
- qcsMdfDetailDo.setDeptname(finalDeptName);
|
|
|
|
- qcsMdfDetailDo.setMdfreason(flist.get(0).getSourcename());
|
|
|
|
- if (rlist.get(r).getProducename().equals("未下料")) {
|
|
|
|
- qcsMdfDetailDo.setManday(null);
|
|
|
|
- qcsMdfDetailDo.setMater(null);
|
|
|
|
- qcsMdfDetailDo.setEquip(null);
|
|
|
|
- qcsMdfDetailDo.setOther(null);
|
|
|
|
- } else {
|
|
|
|
- qcsMdfDetailDo.setManday(qcsMdfDetailDo.getManday() == null ? new BigDecimal(0) : qcsMdfDetailDo.getManday());
|
|
|
|
- qcsMdfDetailDo.setMater(qcsMdfDetailDo.getMater() == null ? new BigDecimal(0) : qcsMdfDetailDo.getMater());
|
|
|
|
- qcsMdfDetailDo.setEquip(qcsMdfDetailDo.getEquip() == null ? new BigDecimal(0) : qcsMdfDetailDo.getEquip());
|
|
|
|
- qcsMdfDetailDo.setOther(qcsMdfDetailDo.getOther() == null ? new BigDecimal(0) : qcsMdfDetailDo.getOther());
|
|
|
|
- BigDecimal total = sumTotal(qcsMdfDetailDo);
|
|
|
|
- qcsMdfDetailDo.setTotalamount(total);
|
|
|
|
- qcsMdfDetailDo.setActamount(total);
|
|
|
|
- }
|
|
|
|
- if (finalResDutyList.size() > 0) {
|
|
|
|
- qcsMdfDetailDo.setDutydeptid(finalResDutyList.get(0).get("DUTYDEPTID"));
|
|
|
|
- qcsMdfDetailDo.setDutydeptname(finalResDutyList.get(0).get("DUTYDEPTNAME"));
|
|
|
|
- } else if (flist.get(0).getSourcename() != null && flist.get(0).getSourcename().equals("基地要求")) {
|
|
|
|
- qcsMdfDetailDo.setDutydeptid(unitId);
|
|
|
|
- qcsMdfDetailDo.setDutydeptname(finalDeptName);
|
|
|
|
|
|
+ rlist.get(0).setRowsn(maxRowSn.toString());
|
|
|
|
+
|
|
|
|
+ if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
|
|
+ QcsMdfRowDo qcsMdfRowDo = new QcsMdfRowDo();
|
|
|
|
+ if (rIsFromMdf) {
|
|
|
|
+ qcsMdfRowDo.setId(rowid);
|
|
|
|
+ qcsMdfRowDo.setRemark(rlist.get(0).getRemark());
|
|
|
|
+ } else {
|
|
|
|
+ qcsMdfRowDo = BeanUtil.toBean(rlist.get(0), QcsMdfRowDo.class);
|
|
|
|
+ qcsMdfRowDo.setId(rowid);
|
|
|
|
+ qcsMdfRowDo.setRowsn(slist.get(finalS).getSectionsn() + "-" + qcsMdfRowDo.getRowsn());
|
|
|
|
+ qcsMdfRowDo.setFormid(finalFormid);
|
|
|
|
+ qcsMdfRowDo.setSectionid(finalSectionid);
|
|
|
|
+ }
|
|
|
|
+ qcsMdfRowDo.setRoption(ropJson);
|
|
|
|
+ qcsMdfRowDoList.add(qcsMdfRowDo);
|
|
|
|
+
|
|
|
|
+ QcsMdfDetailDo qcsMdfDetailDo = BeanUtil.toBean(rlist.get(0), QcsMdfDetailDo.class);
|
|
|
|
+ qcsMdfDetailDo.setId(detailid);
|
|
|
|
+ qcsMdfDetailDo.setRowid(rowid);
|
|
|
|
+ qcsMdfDetailDo.setFormid(finalFormid);
|
|
|
|
+ qcsMdfDetailDo.setSectionid(finalSectionid);
|
|
|
|
+ qcsMdfDetailDo.setRoption(ropJson);
|
|
|
|
+ qcsMdfDetailDo.setDeptid(unitId);
|
|
|
|
+ qcsMdfDetailDo.setDeptname(finalDeptName);
|
|
|
|
+ qcsMdfDetailDo.setMdfreason(flist.get(0).getSourcename());
|
|
|
|
+ if (rlist.get(0).getProducename().equals("未下料")) {
|
|
|
|
+ qcsMdfDetailDo.setManday(null);
|
|
|
|
+ qcsMdfDetailDo.setMater(null);
|
|
|
|
+ qcsMdfDetailDo.setEquip(null);
|
|
|
|
+ qcsMdfDetailDo.setOther(null);
|
|
|
|
+ } else {
|
|
|
|
+ qcsMdfDetailDo.setManday(qcsMdfDetailDo.getManday() == null ? new BigDecimal(0) : qcsMdfDetailDo.getManday());
|
|
|
|
+ qcsMdfDetailDo.setMater(qcsMdfDetailDo.getMater() == null ? new BigDecimal(0) : qcsMdfDetailDo.getMater());
|
|
|
|
+ qcsMdfDetailDo.setEquip(qcsMdfDetailDo.getEquip() == null ? new BigDecimal(0) : qcsMdfDetailDo.getEquip());
|
|
|
|
+ qcsMdfDetailDo.setOther(qcsMdfDetailDo.getOther() == null ? new BigDecimal(0) : qcsMdfDetailDo.getOther());
|
|
|
|
+ BigDecimal total = sumTotal(qcsMdfDetailDo);
|
|
|
|
+ qcsMdfDetailDo.setTotalamount(total);
|
|
|
|
+ qcsMdfDetailDo.setActamount(total);
|
|
|
|
+ }
|
|
|
|
+ if (finalResDutyList.size() > 0) {
|
|
|
|
+ qcsMdfDetailDo.setDutydeptid(finalResDutyList.get(0).get("DUTYDEPTID"));
|
|
|
|
+ qcsMdfDetailDo.setDutydeptname(finalResDutyList.get(0).get("DUTYDEPTNAME"));
|
|
|
|
+ } else if (flist.get(0).getSourcename() != null && flist.get(0).getSourcename().equals("基地要求")) {
|
|
|
|
+ qcsMdfDetailDo.setDutydeptid(unitId);
|
|
|
|
+ qcsMdfDetailDo.setDutydeptname(finalDeptName);
|
|
|
|
+ }
|
|
|
|
+ qcsMdfDetailDoList.add(qcsMdfDetailDo);
|
|
}
|
|
}
|
|
- qcsMdfDetailDoList.add(qcsMdfDetailDo);
|
|
|
|
}
|
|
}
|
|
- }
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
|
|
- if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
|
|
- QcsMdfSectionDo qcsMdfSectionDo = BeanUtil.toBean(slist.get(0), QcsMdfSectionDo.class);
|
|
|
|
- qcsMdfSectionDo.setId(sectionid);
|
|
|
|
- qcsMdfSectionDo.setFormid(finalFormid1);
|
|
|
|
- qcsMdfSectionDo.setRoption(ropJson);
|
|
|
|
- qcsMdfSectionDoList.add(qcsMdfSectionDo);
|
|
|
|
|
|
+ if (StringUtils.isBlank(allStrBuilder.toString()) && !sIsFromMdf) {
|
|
|
|
+ QcsMdfSectionDo qcsMdfSectionDo = BeanUtil.toBean(slist.get(s), QcsMdfSectionDo.class);
|
|
|
|
+ qcsMdfSectionDo.setId(sectionid);
|
|
|
|
+ qcsMdfSectionDo.setFormid(finalFormid1);
|
|
|
|
+ qcsMdfSectionDo.setRoption(ropJson);
|
|
|
|
+ qcsMdfSectionDoList.add(qcsMdfSectionDo);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
-// }
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+
|
|
if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
if (StringUtils.isBlank(allStrBuilder.toString())) {
|
|
- QcsMdfFormDo qcsMdfFormDo = BeanUtil.toBean(flist.get(0), QcsMdfFormDo.class);
|
|
|
|
- qcsMdfFormDo.setId(formid);
|
|
|
|
- qcsMdfFormDo.setRoption(ropJson);
|
|
|
|
- if (isnew) {
|
|
|
|
- qcsMdfFormDo.setBaseid(unitId);
|
|
|
|
- qcsMdfFormDo.setBasename(finalDeptName1);
|
|
|
|
|
|
+ QcsMdfFormDo qcsMdfFormDo = new QcsMdfFormDo();
|
|
|
|
+ if (fIsFromMdf) {
|
|
|
|
+ qcsMdfFormDo.setId(formid);
|
|
|
|
+ qcsMdfFormDo.setIssend("已下发");
|
|
} else {
|
|
} else {
|
|
- if (StringUtils.isNotBlank(qcsMdfFormDo.getBaseid()) && !qcsMdfFormDo.getBaseid().equals(unitId)) {
|
|
|
|
- if (StringUtils.isNotBlank(qcsMdfFormDo.getSharedeptids())) {
|
|
|
|
- if (!Arrays.asList(qcsMdfFormDo.getSharedeptids().split(",")).contains(unitId)) {
|
|
|
|
- qcsMdfFormDo.setSharedeptids(qcsMdfFormDo.getSharedeptids() + "," + unitId);
|
|
|
|
|
|
+ qcsMdfFormDo = BeanUtil.toBean(flist.get(0), QcsMdfFormDo.class);
|
|
|
|
+ qcsMdfFormDo.setId(formid);
|
|
|
|
+ qcsMdfFormDo.setRoption(ropJson);
|
|
|
|
+ if (isnew) {
|
|
|
|
+ qcsMdfFormDo.setBaseid(unitId);
|
|
|
|
+ qcsMdfFormDo.setBasename(finalDeptName1);
|
|
|
|
+ } else {
|
|
|
|
+ if (StringUtils.isNotBlank(qcsMdfFormDo.getBaseid()) && !qcsMdfFormDo.getBaseid().equals(unitId)) {
|
|
|
|
+ if (StringUtils.isNotBlank(qcsMdfFormDo.getSharedeptids())) {
|
|
|
|
+ if (!Arrays.asList(qcsMdfFormDo.getSharedeptids().split(",")).contains(unitId)) {
|
|
|
|
+ qcsMdfFormDo.setSharedeptids(qcsMdfFormDo.getSharedeptids() + "," + unitId);
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ qcsMdfFormDo.setSharedeptids(unitId);
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
- qcsMdfFormDo.setSharedeptids(unitId);
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ qcsMdfFormDo.setDatasource("质量成本系统");
|
|
}
|
|
}
|
|
- qcsMdfFormDo.setDatasource("质量成本系统");
|
|
|
|
qcsMdfFormDoList.add(qcsMdfFormDo);
|
|
qcsMdfFormDoList.add(qcsMdfFormDo);
|
|
formids.add(formid);
|
|
formids.add(formid);
|
|
}
|
|
}
|
|
@@ -994,8 +1018,11 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
return R.error(allStrBuilder.toString());
|
|
return R.error(allStrBuilder.toString());
|
|
} else {
|
|
} else {
|
|
Boolean bool1 = qcsMdfFormService.saveOrUpdateBatch(qcsMdfFormDoList);
|
|
Boolean bool1 = qcsMdfFormService.saveOrUpdateBatch(qcsMdfFormDoList);
|
|
- Boolean bool2 = qcsMdfSectionService.saveOrUpdateBatch(qcsMdfSectionDoList);
|
|
|
|
|
|
+ Boolean bool2 = true;
|
|
Boolean bool3 = qcsMdfRowService.saveOrUpdateBatch(qcsMdfRowDoList);
|
|
Boolean bool3 = qcsMdfRowService.saveOrUpdateBatch(qcsMdfRowDoList);
|
|
|
|
+ if (qcsMdfSectionDoList.size() > 0) {
|
|
|
|
+ bool2 = qcsMdfSectionService.saveOrUpdateBatch(qcsMdfSectionDoList);
|
|
|
|
+ }
|
|
Boolean bool4 = qcsMdfDetailService.saveOrUpdateBatch(qcsMdfDetailDoList);
|
|
Boolean bool4 = qcsMdfDetailService.saveOrUpdateBatch(qcsMdfDetailDoList);
|
|
if (bool1 && bool2 && bool3 && bool4) {
|
|
if (bool1 && bool2 && bool3 && bool4) {
|
|
for (String fid : formids) {
|
|
for (String fid : formids) {
|
|
@@ -1022,13 +1049,21 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
|
|
Comparable val2 = (Comparable) f.get(p2);
|
|
Comparable val2 = (Comparable) f.get(p2);
|
|
|
|
|
|
// 两个都为null,视为相等
|
|
// 两个都为null,视为相等
|
|
- if (val1 == "" && val2 == "") return 0;
|
|
|
|
|
|
+ if (StringUtils.isBlank(val1.toString()) && StringUtils.isBlank(val2.toString())) {
|
|
|
|
+ return 0;
|
|
|
|
+ }
|
|
// 只有val1为null,val2排前面
|
|
// 只有val1为null,val2排前面
|
|
- if (val1 == "") return 1;
|
|
|
|
|
|
+ else if (StringUtils.isBlank(val1.toString())) {
|
|
|
|
+ return 1;
|
|
|
|
+ }
|
|
// 只有val2为null,val1排前面
|
|
// 只有val2为null,val1排前面
|
|
- if (val2 == "") return -1;
|
|
|
|
|
|
+ else if (StringUtils.isBlank(val2.toString())) {
|
|
|
|
+ return -1;
|
|
|
|
+ }
|
|
// 两个都不为null,按正序排列
|
|
// 两个都不为null,按正序排列
|
|
- return val1.compareTo(val2);
|
|
|
|
|
|
+ else {
|
|
|
|
+ return val1.compareTo(val2);
|
|
|
|
+ }
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
throw new RuntimeException("分组排序失败", e);
|
|
throw new RuntimeException("分组排序失败", e);
|
|
}
|
|
}
|