diff --git a/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBom.java b/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBom.java index 12a68b7..9c127e6 100644 --- a/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBom.java +++ b/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBom.java @@ -219,6 +219,7 @@ public class DmBom implements Serializable { private BigDecimal bcljtlzl; private BigDecimal bcqpyld; private String ylbhgg; + private String ylbs; // 余料标识 // 反馈工时 diff --git a/src/main/java/com/dsic/gj_erp/service/jcsj/impl/BomUploadServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jcsj/impl/BomUploadServiceImpl.java index e0a2ae5..478b67b 100644 --- a/src/main/java/com/dsic/gj_erp/service/jcsj/impl/BomUploadServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jcsj/impl/BomUploadServiceImpl.java @@ -1063,6 +1063,17 @@ public class BomUploadServiceImpl { Map bomxzjh = bomxzjh(adds, kwxxMap, qgKwMap, req,addmxs); List adds1 = (List) bomxzjh.get("adds"); List ups = (List) bomxzjh.get("ups"); + List yds = (List) bomxzjh.get("ydjhs"); + if(yds.size()>0){ + for(DmYdjh dmYdjh:yds){ + DmYdjh dmYdjh1 =new DmYdjh(); + dmYdjh1.setZt("99"); + dmYdjh1.setId(dmYdjh.getId()); + dmYdjhService.updateById(dmYdjh1); + } + } + + dmYdjhService.saveBatch(adds1); dmYdjhService.updateBatchById(ups); // 修正 生产计划。 @@ -1501,6 +1512,7 @@ public class BomUploadServiceImpl { dmBom.setSjch(e.getDcCh()); dmBom.setWpcz(e.getWpxh()); dmBom.setWpgg(e.getWpgg()); + dmBom.setYlbs(e.getSfyl()); System.out.println("e.getWpggZ().split(\"\\\\*\")[0] = " + e.getWpgg().split("\\*")[0]); System.out.println("e.getWpggZ().split(\"\\\\*\")[0] = " + e.getWpgg()); dmBom.setBh(new BigDecimal(e.getWpgg().split("\\*")[0])); @@ -1778,6 +1790,7 @@ public class BomUploadServiceImpl { && fst.getWpgg().equalsIgnoreCase(dmBchxjbp.getWpgg()) && (fst.getWpxh().equalsIgnoreCase(dmBchxjbp.getWpxh()) || (cjs1 + fst.getWpxh()).equalsIgnoreCase(dmBchxjbp.getWpxh())) + && fst.getTzbh().equalsIgnoreCase(dmBchxjbp.getTzbh()) ) .findFirst() .orElse(null); @@ -1818,76 +1831,130 @@ public class BomUploadServiceImpl { dmYdjh.setWpgg(dmBchxjbp.getWpgg()); dmYdjh.setWpxh(dmBchxjbp.getWpxh()); } - ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 ups.add(dmYdjh); + ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 + }else{ + dmYdjh = ydjhs.stream() + .filter(fst -> StringUtils.isNotBlank(fst.getWpgg()) + && StringUtils.isNotBlank(fst.getWpxh()) + && fst.getWpgg().equalsIgnoreCase(dmBchxjbp.getWpgg()) + && (fst.getWpxh().equalsIgnoreCase(dmBchxjbp.getWpxh()) + || (cjs1 + fst.getWpxh()).equalsIgnoreCase(dmBchxjbp.getWpxh())) + + ) + .findFirst() + .orElse(null); + if(dmYdjh!=null){ + String hxlx=""; + if (tzbh.substring(4, 5).equals("S")) { + hxlx = "1010"; + } else if (tzbh.substring(4, 5).equals("N")) { + hxlx = "1020"; + } - DmYdjh dmYdjhadd =new DmYdjh(); - String hxlx=""; - if (tzbh.substring(4, 5).equals("S")) { - hxlx = "1010"; - } else if (tzbh.substring(4, 5).equals("N")) { - hxlx = "1020"; - } - dmYdjhadd.setDcCh(dmBchxjbp.getDcCh()); - dmYdjhadd.setDcPl(dmBchxjbp.getDcPl()); - if(tzbh.substring(4, 5).equals("X")){ - dmYdjhadd.setLx("X"); - }else{ - dmYdjhadd.setLx("B"); - } + dmYdjh.setLqlb(hxlx); + dmYdjh.setTzbh(tzbh); + dmYdjh.setHxcd(dmBchxjbp.getHxcd().doubleValue()); + dmYdjh.setQgcd(dmBchxjbp.getYlzd4().doubleValue()); + dmYdjh.setLjsl(dmBchxjbp.getLjsl().doubleValue()); + dmYdjh.setZl(dmBchxjbp.getDcZl()); + String s = (String) kwxxMap.get(tzbh.substring(4, 7)); + String zzcj = (String) qgKwMap.get(s); //xhj + + dmYdjh.setKw(zzcj); + // dmYdjh.setDcFd(dmBchxjbp.getDcFd()); + + if(tzbh.substring(4, 5).equals("X")){ + dmYdjh.setLx("X"); + }else{ + dmYdjh.setLx("B"); + } + dmYdjh.setDcFd(StringUtils.isBlank(bchxmxp.getWph()) ? "" : bchxmxp.getWph().substring(0, 4)); + dmYdjh.setBmxgrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm")); + dmYdjh.setBmxgry((String) req.getAttribute("yhms")); + if(StringUtils.isNotBlank(dmYdjh.getSlxhth())){ // 说明已经上料 需要修正数据 + // 修正 + + }else{ + // 没上料 规格材质 + dmYdjh.setWpgg(dmBchxjbp.getWpgg()); + dmYdjh.setWpxh(dmBchxjbp.getWpxh()); + } + ups.add(dmYdjh); + ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 - dmYdjhadd.setWpgg(dmBchxjbp.getWpgg()); - dmYdjhadd.setWpxh(dmBchxjbp.getWpxh()); - dmYdjhadd.setLqlb(hxlx); - dmYdjhadd.setTzbh(tzbh); - dmYdjhadd.setHxcd(dmBchxjbp.getHxcd().doubleValue()); - dmYdjhadd.setQgcd(dmBchxjbp.getYlzd4().doubleValue()); - dmYdjhadd.setLjsl(dmBchxjbp.getLjsl().doubleValue()); - dmYdjhadd.setZl(dmBchxjbp.getDcZl()); - String s = (String) kwxxMap.get(tzbh.substring(4, 7)); - String zzcj = (String) qgKwMap.get(s); //xhj - dmYdjhadd.setKw(zzcj); - dmYdjhadd.setDcFd(StringUtils.isBlank(bchxmxp.getWph()) ? "" : bchxmxp.getWph().substring(0, 4)); - dmYdjhadd.setZt("2"); + }else{ + DmYdjh dmYdjhadd =new DmYdjh(); + String hxlx=""; + if (tzbh.substring(4, 5).equals("S")) { + hxlx = "1010"; + } else if (tzbh.substring(4, 5).equals("N")) { + hxlx = "1020"; + } + dmYdjhadd.setDcCh(dmBchxjbp.getDcCh()); + dmYdjhadd.setDcPl(dmBchxjbp.getDcPl()); + if(tzbh.substring(4, 5).equals("X")){ + dmYdjhadd.setLx("X"); + }else{ + dmYdjhadd.setLx("B"); + } - dmYdjhadd.setId(IdWorker.get32UUID()); - dmYdjhadd.setBmbzrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm")); - dmYdjhadd.setBmbzry((String) req.getAttribute("yhms")); + dmYdjhadd.setWpgg(dmBchxjbp.getWpgg()); + dmYdjhadd.setWpxh(dmBchxjbp.getWpxh()); + dmYdjhadd.setLqlb(hxlx); + dmYdjhadd.setTzbh(tzbh); + dmYdjhadd.setHxcd(dmBchxjbp.getHxcd().doubleValue()); + dmYdjhadd.setQgcd(dmBchxjbp.getYlzd4().doubleValue()); + dmYdjhadd.setLjsl(dmBchxjbp.getLjsl().doubleValue()); + dmYdjhadd.setZl(dmBchxjbp.getDcZl()); + String s = (String) kwxxMap.get(tzbh.substring(4, 7)); + String zzcj = (String) qgKwMap.get(s); //xhj + dmYdjhadd.setKw(zzcj); + dmYdjhadd.setDcFd(StringUtils.isBlank(bchxmxp.getWph()) ? "" : bchxmxp.getWph().substring(0, 4)); + dmYdjhadd.setZt("2"); + + dmYdjhadd.setId(IdWorker.get32UUID()); + dmYdjhadd.setBmbzrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm")); + dmYdjhadd.setBmbzry((String) req.getAttribute("yhms")); // 新增数据得时候 应该看 是不是有排产数据 有排产数据 给上日期 - if(f){ - dmYdjhadd.setSlrq(ydjhMin.getSlrq()); - dmYdjhadd.setPwrq(ydjhMin.getPwrq()); - dmYdjhadd.setHxrq(ydjhMin.getHxrq()); - dmYdjhadd.setQgrq(ydjhMin.getQgrq()); - dmYdjhadd.setDmrq(ydjhMin.getDmrq()); - dmYdjhadd.setQjgrq(ydjhMin.getQgjhrq()); - dmYdjhadd.setJssj(ydjhMin.getJssj()); - dmYdjhadd.setSljhrq(ydjhMin.getSljhrq()); - dmYdjhadd.setPwjhrq(ydjhMin.getPwjhrq()); - dmYdjhadd.setLljhrq(ydjhMin.getLljhrq()); - dmYdjhadd.setHxjhrq(ydjhMin.getHxjhrq()); - dmYdjhadd.setQgjhrq(ydjhMin.getQgjhrq()); - dmYdjhadd.setJhlx("3"); - }else{ - // 新增 没有 日期 数据 - dmYdjhadd.setJhlx("0"); - dmYdjhadd.setSlrq(""); - dmYdjhadd.setPwrq(""); - dmYdjhadd.setHxrq(""); - dmYdjhadd.setQgrq(""); - dmYdjhadd.setDmrq(""); - dmYdjhadd.setQjgrq(""); - dmYdjhadd.setJssj(""); - dmYdjhadd.setSljhrq(""); - dmYdjhadd.setPwjhrq(""); - dmYdjhadd.setLljhrq(""); - dmYdjhadd.setHxjhrq(""); - dmYdjhadd.setQgjhrq(""); - } + if(f){ + dmYdjhadd.setSlrq(ydjhMin.getSlrq()); + dmYdjhadd.setPwrq(ydjhMin.getPwrq()); + dmYdjhadd.setHxrq(ydjhMin.getHxrq()); + dmYdjhadd.setQgrq(ydjhMin.getQgrq()); + dmYdjhadd.setDmrq(ydjhMin.getDmrq()); + dmYdjhadd.setQjgrq(ydjhMin.getQgjhrq()); + dmYdjhadd.setJssj(ydjhMin.getJssj()); + dmYdjhadd.setSljhrq(ydjhMin.getSljhrq()); + dmYdjhadd.setPwjhrq(ydjhMin.getPwjhrq()); + dmYdjhadd.setLljhrq(ydjhMin.getLljhrq()); + dmYdjhadd.setHxjhrq(ydjhMin.getHxjhrq()); + dmYdjhadd.setQgjhrq(ydjhMin.getQgjhrq()); + dmYdjhadd.setJhlx("3"); + }else{ + // 新增 没有 日期 数据 + dmYdjhadd.setJhlx("0"); + dmYdjhadd.setSlrq(""); + dmYdjhadd.setPwrq(""); + dmYdjhadd.setHxrq(""); + dmYdjhadd.setQgrq(""); + dmYdjhadd.setDmrq(""); + dmYdjhadd.setQjgrq(""); + dmYdjhadd.setJssj(""); + dmYdjhadd.setSljhrq(""); + dmYdjhadd.setPwjhrq(""); + dmYdjhadd.setLljhrq(""); + dmYdjhadd.setHxjhrq(""); + dmYdjhadd.setQgjhrq(""); + } // dmYdjhadd adds.add(dmYdjhadd); + } + + + } @@ -1899,6 +1966,7 @@ public class BomUploadServiceImpl { Map rMap = new HashMap(); rMap.put("adds",adds); rMap.put("ups",ups); + rMap.put("ydjhs",ydjhs); return rMap; }