Browse Source

修改单导入调整

DLC 1 week ago
parent
commit
a80733c877

+ 20 - 30
qcs-common/src/main/java/com/rongwei/bscommon/sys/service/impl/QcsMdfFormServiceImpl.java

@@ -562,27 +562,18 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
                         allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + "有" + formListMap.size() + "行数据重复,请检查");
                     } else {
                         String formid = SecurityUtil.getUUID();
-                        //错误源头图号分组
-                        Map<String, List<ImportMdfVo>> secListMap = flist.stream().collect(Collectors.groupingBy(s -> s.getErrordesigndtdrawingno()));
-                        secListMap.forEach((sno, slist) -> {
-                            String sectionid = SecurityUtil.getUUID();
-                            //序号分组
-                            Map<ImportMdfVo, List<ImportMdfVo>> mdfVoListMap = slist.stream().collect(Collectors.groupingBy(
-                                    p -> new ImportMdfVo(p.getDtdesigner(), p.getDtwhocollate(), p.getDtwhoapprove(), p.getModifyby(), p.getErrorroutine(), p.getErroragain(), p.getErrorhard(), p.getErrortable())
-                            ));
-                            if (mdfVoListMap.size() > 1) {
-                                allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",错误源头图号" + sno + "有" + mdfVoListMap.size() + "行数据重复,请检查");
-                            } else {
+                        //序号分组
+                        Map<ImportMdfVo, List<ImportMdfVo>> mdfVoListMap = flist.stream().collect(Collectors.groupingBy(
+                                p -> new ImportMdfVo(p.getErrordesigndtdrawingno(), p.getDtdesigner(), p.getDtwhocollate(), p.getDtwhoapprove(), p.getModifyby(), p.getErrorroutine(), p.getErroragain(), p.getErrorhard(), p.getErrortable())
+                        ));
+                        mdfVoListMap.forEach((mvo, slist) -> {
+                            for (int s = 0; s < slist.size(); s++) {
+                                String sectionid = SecurityUtil.getUUID();
                                 //修改图号(任务单部件)分组
-                                Map<String, List<ImportMdfVo>> rowListMap = flist.stream().collect(Collectors.groupingBy(s -> s.getTaskdesigndtdrawingno()));
-                                rowListMap.forEach((rno, rlist) -> {
-                                    //排号分组
-//                                    Map<ImportMdfVo, List<ImportMdfVo>> mdfVos = rlist.stream().collect(Collectors.groupingBy(
-//                                            m -> new ImportMdfVo(m.getMinordesigndtdrawingno(), m.getMinordesigndtpartname(), m.getContent(), m.getManday(), m.getMater(), m.getEquip(), m.getOther())
-//                                    ));
-//                                    if (mdfVos.size() > 1) {
-//                                        allStrBuilder.append("项目工号" + fm.getProjectdlprojid() + ",修改单编号" + fm.getSourcenumbercode() + ",错误源头图号" + sno + ",修改图号(任务单部件)" + rno + "有" + mdfVos.size() + "行数据重复,请检查");
-//                                    } else {
+                                Map<ImportMdfVo, List<ImportMdfVo>> rowListMap = slist.stream().collect(Collectors.groupingBy(
+                                        m -> new ImportMdfVo(mvo.getTaskdesigndtdrawingno(), m.getMinordesigndtdrawingno(), m.getMinordesigndtpartname(), m.getContent(), m.getManday(), m.getMater(), m.getEquip(), m.getOther())
+                                ));
+                                rowListMap.forEach((rvo, rlist) -> {
                                     for (int r = 0; r < rlist.size(); r++) {
                                         String rowid = SecurityUtil.getUUID();
                                         QcsMdfRowDo qcsMdfRowDo = BeanUtil.toBean(rlist.get(r), QcsMdfRowDo.class);
@@ -600,7 +591,7 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
                                         qcsMdfDetailDo.setRoption(ropJson);
                                         qcsMdfDetailDo.setDeptid(unitId);
                                         qcsMdfDetailDo.setDeptname(finalDeptName);
-                                        qcsMdfDetailDo.setMdfreason(slist.get(0).getSourcename());
+                                        qcsMdfDetailDo.setMdfreason(flist.get(0).getSourcename());
                                         if (rlist.get(r).getProducename().equals("未下料")) {
                                             qcsMdfDetailDo.setManday(null);
                                             qcsMdfDetailDo.setMater(null);
@@ -614,22 +605,21 @@ public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfForm
                                         if (finalResDutyList.size() > 0) {
                                             qcsMdfDetailDo.setDutydeptid(finalResDutyList.get(0).get("DUTYDEPTID"));
                                             qcsMdfDetailDo.setDutydeptname(finalResDutyList.get(0).get("DUTYDEPTNAME"));
-                                        } else if (slist.get(0).getSourcename().equals("基地要求")) {
+                                        } else if (flist.get(0).getSourcename().equals("基地要求")) {
                                             qcsMdfDetailDo.setDutydeptid(unitId);
                                             qcsMdfDetailDo.setDutydeptname(finalDeptName);
                                         }
                                         qcsMdfDetailDoList.add(qcsMdfDetailDo);
-//                                    }
                                     }
                                 });
-                            }
 
-                            if (StringUtils.isBlank(allStrBuilder.toString())) {
-                                QcsMdfSectionDo qcsMdfSectionDo = BeanUtil.toBean(slist.get(0), QcsMdfSectionDo.class);
-                                qcsMdfSectionDo.setId(sectionid);
-                                qcsMdfSectionDo.setFormid(formid);
-                                qcsMdfSectionDo.setRoption(ropJson);
-                                qcsMdfSectionDoList.add(qcsMdfSectionDo);
+                                if (StringUtils.isBlank(allStrBuilder.toString())) {
+                                    QcsMdfSectionDo qcsMdfSectionDo = BeanUtil.toBean(slist.get(s), QcsMdfSectionDo.class);
+                                    qcsMdfSectionDo.setId(sectionid);
+                                    qcsMdfSectionDo.setFormid(formid);
+                                    qcsMdfSectionDo.setRoption(ropJson);
+                                    qcsMdfSectionDoList.add(qcsMdfSectionDo);
+                                }
                             }
                         });
                         if (StringUtils.isBlank(allStrBuilder.toString())) {

+ 4 - 2
qcs-entity/src/main/java/com/rongwei/bsentity/vo/ImportMdfVo.java

@@ -58,7 +58,8 @@ public class ImportMdfVo {
     }
 
     //序号分组
-    public ImportMdfVo(String dtdesigner, String dtwhocollate, String dtwhoapprove, String modifyby, String errorroutine, String erroragain, String errorhard, String errortable) {
+    public ImportMdfVo(String errordesigndtdrawingno, String dtdesigner, String dtwhocollate, String dtwhoapprove, String modifyby, String errorroutine, String erroragain, String errorhard, String errortable) {
+        this.errordesigndtdrawingno = errordesigndtdrawingno;
         this.dtdesigner = dtdesigner;
         this.dtwhocollate = dtwhocollate;
         this.dtwhoapprove = dtwhoapprove;
@@ -70,7 +71,8 @@ public class ImportMdfVo {
     }
 
     //排号分组
-    public ImportMdfVo(String minordesigndtdrawingno, String minordesigndtpartname, String content, BigDecimal manday, BigDecimal mater, BigDecimal equip, BigDecimal other) {
+    public ImportMdfVo(String taskdesigndtdrawingno, String minordesigndtdrawingno, String minordesigndtpartname, String content, BigDecimal manday, BigDecimal mater, BigDecimal equip, BigDecimal other) {
+        this.taskdesigndtdrawingno = taskdesigndtdrawingno;
         this.minordesigndtdrawingno = minordesigndtdrawingno;
         this.minordesigndtpartname = minordesigndtpartname;
         this.content = content;