diff --git a/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBchxjbp.java b/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBchxjbp.java index c036902..bb638c7 100644 --- a/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBchxjbp.java +++ b/src/main/java/com/dsic/gj_erp/bean/jcsj/DmBchxjbp.java @@ -65,7 +65,7 @@ public class DmBchxjbp implements Serializable { @TableField("GCBH") private String gcbh; - @TableField("HXCD") + @TableField("HXCD") // 划线程度 private BigDecimal hxcd; @TableField("TXBL") diff --git a/src/main/java/com/dsic/gj_erp/controller/pgd/PgdSljhController.java b/src/main/java/com/dsic/gj_erp/controller/pgd/PgdSljhController.java index ecfcb04..5276a36 100644 --- a/src/main/java/com/dsic/gj_erp/controller/pgd/PgdSljhController.java +++ b/src/main/java/com/dsic/gj_erp/controller/pgd/PgdSljhController.java @@ -339,17 +339,32 @@ public class PgdSljhController { @PostMapping("kcAdnSlBd1") @ResponseBody public ResultBean kcAdnSlBd1(HttpServletRequest req, @RequestBody List slKcs) throws Exception, CustomException { + // 核对 没问题 有 yd id 说明核对 成功进行反写 + List ups = new ArrayList<>(); + List ups1 = new ArrayList<>(); + List czList = dmCbxxpService.list(); - - List czList = dmCbxxpService.list(); - ListydupList=new ArrayList<>(); - ListydadList=new ArrayList<>(); - ListckupList=new ArrayList<>(); - // 进行比对 for(SlKc slKc :slKcs){ - // 获取船级社 - String cjs=""; + ImCkwpkwp imCkwpkwp =new ImCkwpkwp(); + imCkwpkwp.setCkh(slKc.getCKH()); + imCkwpkwp.setWph(slKc.getWPH()); + imCkwpkwp.setKwh(slKc.getKWH()); + imCkwpkwp.setNbsbm(slKc.getNBSBM()); + imCkwpkwp.setYdid(slKc.getYdid()); + imCkwpkwp.setZych(slKc.getZYCH()); + imCkwpkwp.setZypl(slKc.getZYPL()); + imCkwpkwp.setZylx(slKc.getZYLX()); + imCkwpkwp.setSldw(slKc.getSLDW()); + imCkwpkwp.setPwwz(slKc.getPwwz()); + imCkwpkwp.setBz(slKc.getBZ()); + imCkwpkwp.setDhh(slKc.getDHH()); + imCkwpkwp.setDcTh(slKc.getDCTH()); + imCkwpkwp.setYdid(slKc.getYdid()); + + if(StringUtils.isBlank(slKc.getYdid())){ + // 手工进行 批量了 + String cjs=""; DmCbxxp dmCzjbb = czList.stream().filter(fst -> fst.getCbbm().equalsIgnoreCase(slKc.getDCCH())).findFirst().orElse(null); if(null!=dmCzjbb){ @@ -360,7 +375,7 @@ public class PgdSljhController { List ydjhs = dmYdjhService.list(new QueryWrapper().eq("dc_ch", slKc.getZYCH() ).eq("isnull(ZT,'')","2") .eq("dc_pl",slKc.getZYPL()) ); - DmYdjh dmYdjh = ydjhs.stream() + DmYdjh dmYdjh = ydjhs.stream() .filter(fst -> fst.getDcCh().equalsIgnoreCase(slKc.getZYCH()) &&StringUtils.isNotBlank(fst.getWpgg()) && StringUtils.isNotBlank(fst.getWpxh()) @@ -371,100 +386,166 @@ public class PgdSljhController { ) .findFirst() .orElse(null); + if(null!=dmYdjh){ + dmYdjh.setSlkcdw(slKc.getKWH()); + dmYdjh.setSlcs(slKc.getCFCS1()); + dmYdjh.setSlxhth(slKc.getGCDDH()); + dmYdjh.setSlhth(slKc.getDcFd()); + dmYdjh.setSlwlh(slKc.getWPH()); + dmYdjh.setKcch(slKc.getDCCH()); + imCkwpkwp.setZylx(getLx(dmYdjh.getLqlb(), dmYdjh.getZl())); + imCkwpkwp.setSldw(dmYdjh.getKw()); + imCkwpkwp.setDhh(dmYdjh.getSljhrq()); + //slKc.setPwwz(dmYdjh.getKw()); + imCkwpkwp.setYdid(dmYdjh.getId()); + imCkwpkwp.setDcTh(dmYdjh.getTzbh()); + ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 + ups.add(dmYdjh); + } - if(null!=dmYdjh){ - System.out.println("slKc = " + slKc); - - System.out.println(slKc.getCFCS1()+dmYdjh.getId()); + }else{ + DmYdjh dmYdjh =new DmYdjh(); dmYdjh.setSlkcdw(slKc.getKWH()); dmYdjh.setSlcs(slKc.getCFCS1()); dmYdjh.setSlxhth(slKc.getGCDDH()); dmYdjh.setSlhth(slKc.getDcFd()); dmYdjh.setSlwlh(slKc.getWPH()); dmYdjh.setKcch(slKc.getDCCH()); - ydupList.add(dmYdjh); - - - slKc.setZYLX(getLx(dmYdjh.getLqlb(), dmYdjh.getZl())); - slKc.setSLDW(dmYdjh.getKw()); - slKc.setDHH(dmYdjh.getSljhrq()); - //slKc.setPwwz(dmYdjh.getKw()); - slKc.setYdid(dmYdjh.getId()); - slKc.setDCTH(dmYdjh.getTzbh()); - ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 - ckupList.add(slKc); - }else{ - // 等于nul应该就是没有 - // 新增月度计划 - // 根据 月度计划新增一条信息。 - // 获取 - DmYdjh ydjhMin = dmYdjhMapper.getYdjhMin(slKc.getZYCH(), slKc.getZYPL()); - if(null!=ydjhMin){ - DmYdjh ydjh =new DmYdjh(); - ydjh.setId(IdWorker.get32UUID()); - ydjh.setDcCh(slKc.getZYCH()); - ydjh.setDcPl(slKc.getZYPL()); - ydjh.setWpgg(slKc.getWPGG()); - ydjh.setWpxh(slKc.getWPXH()); - ydjh.setSlrq(ydjhMin.getSlrq()); - ydjh.setPwrq(ydjhMin.getPwrq()); - ydjh.setHxrq(ydjhMin.getHxrq()); - ydjh.setQgrq(ydjhMin.getQgrq()); - ydjh.setDmrq(ydjhMin.getDmrq()); - ydjh.setQjgrq(ydjhMin.getQgjhrq()); - ydjh.setJssj(ydjhMin.getJssj()); - ydjh.setSljhrq(ydjhMin.getSljhrq()); - ydjh.setPwjhrq(ydjhMin.getPwjhrq()); - ydjh.setLljhrq(ydjhMin.getLljhrq()); - ydjh.setHxjhrq(ydjhMin.getHxjhrq()); - ydjh.setQgjhrq(ydjhMin.getQgjhrq()); - ydjh.setKw(extractNumber(slKc.getDcFd())); - ydjh.setCkbzrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm")); - ydjh.setCkbzry((String) req.getAttribute("yhms")); - - //------ - ydjh.setSlkcdw(slKc.getKWH()); - ydjh.setSlcs(slKc.getCFCS1()); - ydjh.setSlxhth(slKc.getGCDDH()); - ydjh.setSlhth(slKc.getDcFd()); - ydjh.setSlwlh(slKc.getWPH()); - ydjh.setKcch(slKc.getDCCH()); - slKc.setYdid(ydjh.getId()); - //ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 - ckupList.add(slKc); - - ydadList.add(ydjh); - //----- - }else{ - throw new ServiceException(10001,slKc.getZYCH()+"船只"+slKc.getZYPL()+"未进行排产"); - } - + dmYdjh.setId(slKc.getYdid()); + ups.add(dmYdjh); } - - - } - dmYdjhService.updateBatchById(ydupList); - dmYdjhService.saveBatch(ydadList); - for(SlKc slKc :slKcs){ - ImCkwpkwp imCkwpkwp =new ImCkwpkwp(); - imCkwpkwp.setCkh(slKc.getCKH()); - imCkwpkwp.setWph(slKc.getWPH()); - imCkwpkwp.setKwh(slKc.getKWH()); - imCkwpkwp.setNbsbm(slKc.getNBSBM()); - imCkwpkwp.setYdid(slKc.getYdid()); - imCkwpkwp.setZych(slKc.getZYCH()); - imCkwpkwp.setZypl(slKc.getZYPL()); - imCkwpkwp.setZylx(slKc.getZYLX()); - imCkwpkwp.setSldw(slKc.getSLDW()); - imCkwpkwp.setPwwz(slKc.getPwwz()); - imCkwpkwp.setBz(slKc.getBZ()); - imCkwpkwp.setDhh(slKc.getDHH()); - imCkwpkwp.setDcTh(slKc.getDCTH()); - imCkwpkwp.setYdid(slKc.getYdid()); - imCkwpkwpService.updateByMultiId(imCkwpkwp); + ups1.add(imCkwpkwp); } + + dmYdjhService.updateBatchById(ups); + imCkwpkwpService.updateBatchByMultiId(ups1); + +// List czList = dmCbxxpService.list(); +// ListydupList=new ArrayList<>(); +// ListydadList=new ArrayList<>(); +// ListckupList=new ArrayList<>(); +// // 进行比对 +// for(SlKc slKc :slKcs){ +// // 获取船级社 +// String cjs=""; +// DmCbxxp dmCzjbb = czList.stream().filter(fst -> fst.getCbbm().equalsIgnoreCase(slKc.getDCCH())).findFirst().orElse(null); +// +// if(null!=dmCzjbb){ +// cjs=dmCzjbb.getCjs(); +// } +// String cjs1=cjs; +// // 根据需求批量 船号 去 查询 +// List ydjhs = dmYdjhService.list(new QueryWrapper().eq("dc_ch", slKc.getZYCH() ).eq("isnull(ZT,'')","2") +// .eq("dc_pl",slKc.getZYPL()) +// ); +// DmYdjh dmYdjh = ydjhs.stream() +// .filter(fst -> fst.getDcCh().equalsIgnoreCase(slKc.getZYCH()) +// &&StringUtils.isNotBlank(fst.getWpgg()) +// && StringUtils.isNotBlank(fst.getWpxh()) +// && fst.getWpgg().equalsIgnoreCase(slKc.getWPGG()) +// && (fst.getWpxh().equalsIgnoreCase(slKc.getWPXH()) +// || (cjs1 + fst.getWpxh()).equalsIgnoreCase(slKc.getWPXH())) +// && fst.getDcPl().equalsIgnoreCase(slKc.getZYPL()) +// ) +// .findFirst() +// .orElse(null); +// +// if(null!=dmYdjh){ +// System.out.println("slKc = " + slKc); +// +// System.out.println(slKc.getCFCS1()+dmYdjh.getId()); +// dmYdjh.setSlkcdw(slKc.getKWH()); +// dmYdjh.setSlcs(slKc.getCFCS1()); +// dmYdjh.setSlxhth(slKc.getGCDDH()); +// dmYdjh.setSlhth(slKc.getDcFd()); +// dmYdjh.setSlwlh(slKc.getWPH()); +// dmYdjh.setKcch(slKc.getDCCH()); +// ydupList.add(dmYdjh); +// +// +// slKc.setZYLX(getLx(dmYdjh.getLqlb(), dmYdjh.getZl())); +// slKc.setSLDW(dmYdjh.getKw()); +// slKc.setDHH(dmYdjh.getSljhrq()); +// //slKc.setPwwz(dmYdjh.getKw()); +// slKc.setYdid(dmYdjh.getId()); +// slKc.setDCTH(dmYdjh.getTzbh()); +// ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 +// ckupList.add(slKc); +// }else{ +// // 等于nul应该就是没有 +// // 新增月度计划 +// // 根据 月度计划新增一条信息。 +// // 获取 +// DmYdjh ydjhMin = dmYdjhMapper.getYdjhMin(slKc.getZYCH(), slKc.getZYPL()); +// if(null!=ydjhMin){ +// DmYdjh ydjh =new DmYdjh(); +// ydjh.setId(IdWorker.get32UUID()); +// ydjh.setDcCh(slKc.getZYCH()); +// ydjh.setDcPl(slKc.getZYPL()); +// ydjh.setLx("B"); +// ydjh.setWpgg(slKc.getWPGG()); +// ydjh.setWpxh(slKc.getWPXH()); +// ydjh.setSlrq(ydjhMin.getSlrq()); +// ydjh.setPwrq(ydjhMin.getPwrq()); +// ydjh.setHxrq(ydjhMin.getHxrq()); +// ydjh.setQgrq(ydjhMin.getQgrq()); +// ydjh.setDmrq(ydjhMin.getDmrq()); +// ydjh.setQjgrq(ydjhMin.getQgjhrq()); +// ydjh.setJssj(ydjhMin.getJssj()); +// ydjh.setSljhrq(ydjhMin.getSljhrq()); +// ydjh.setPwjhrq(ydjhMin.getPwjhrq()); +// ydjh.setLljhrq(ydjhMin.getLljhrq()); +// ydjh.setHxjhrq(ydjhMin.getHxjhrq()); +// ydjh.setQgjhrq(ydjhMin.getQgjhrq()); +// ydjh.setKw(extractNumber(slKc.getDcFd())); +// ydjh.setCkbzrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm")); +// ydjh.setCkbzry((String) req.getAttribute("yhms")); +// +// //------ +// ydjh.setSlkcdw(slKc.getKWH()); +// ydjh.setSlcs(slKc.getCFCS1()); +// ydjh.setSlxhth(slKc.getGCDDH()); +// ydjh.setSlhth(slKc.getDcFd()); +// ydjh.setSlwlh(slKc.getWPH()); +// ydjh.setKcch(slKc.getDCCH()); +// slKc.setYdid(ydjh.getId()); +// //ydjhs.remove(dmYdjh); // 从列表中移除找到的元素 +// ckupList.add(slKc); +// +// ydadList.add(ydjh); +// //----- +// }else{ +// throw new ServiceException(10001,slKc.getZYCH()+"船只"+slKc.getZYPL()+"未进行排产"); +// } +// +// } +// +// +// } +// dmYdjhService.updateBatchById(ydupList); +// dmYdjhService.saveBatch(ydadList); +// for(SlKc slKc :slKcs){ +// ImCkwpkwp imCkwpkwp =new ImCkwpkwp(); +// imCkwpkwp.setCkh(slKc.getCKH()); +// imCkwpkwp.setWph(slKc.getWPH()); +// imCkwpkwp.setKwh(slKc.getKWH()); +// imCkwpkwp.setNbsbm(slKc.getNBSBM()); +// imCkwpkwp.setYdid(slKc.getYdid()); +// imCkwpkwp.setZych(slKc.getZYCH()); +// imCkwpkwp.setZypl(slKc.getZYPL()); +// imCkwpkwp.setZylx(slKc.getZYLX()); +// imCkwpkwp.setSldw(slKc.getSLDW()); +// imCkwpkwp.setPwwz(slKc.getPwwz()); +// imCkwpkwp.setBz(slKc.getBZ()); +// imCkwpkwp.setDhh(slKc.getDHH()); +// imCkwpkwp.setDcTh(slKc.getDCTH()); +// imCkwpkwp.setYdid(slKc.getYdid()); +// imCkwpkwpService.updateByMultiId(imCkwpkwp); +// } return new ResultBean(); } + + public String extractNumber(String str) { Pattern pattern = Pattern.compile("-(\\d+)"); Matcher matcher = pattern.matcher(str);