From 4a477c9259a4818412cd00c26a866ac43f239c5c Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Fri, 6 Sep 2024 18:44:45 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=A0=87=E8=AF=86=E5=8D=A1=E5=8A=A0?= =?UTF-8?q?=E9=87=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProOrderWorkorderController.java | 6 ++ .../service/IProOrderWorkorderService.java | 2 + .../impl/ProOrderWorkorderServiceImpl.java | 83 +++++++++++++++++-- .../mapper/plan/ProOrderWorkorderMapper.xml | 6 +- 4 files changed, 85 insertions(+), 12 deletions(-) diff --git a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java index b9756705..ea57ee58 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java @@ -315,6 +315,12 @@ public class ProOrderWorkorderController extends BaseController { return proOrderWorkorderService.getIdCardList(proOrderWorkorder); } + /**获取标识卡-重置**/ + @PostMapping("/getIdCardListRefresh") + public List getIdCardListRefresh(@RequestBody ProOrderWorkorder proOrderWorkorder) { + return proOrderWorkorderService.getIdCardListRefresh(proOrderWorkorder); + } + //获取批次号 @GetMapping("/getBatchCode/{workorderId}") public List getBatchCode(@PathVariable("workorderId") String workorderId) { diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java index 0b6c1d9b..ab91ff9a 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java @@ -153,4 +153,6 @@ public interface IProOrderWorkorderService { List getIdCardList(ProOrderWorkorder proOrderWorkorder); List getBatchCode(String workorderId);//获取批次号 + + List getIdCardListRefresh(ProOrderWorkorder proOrderWorkorder); } diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java index 143c7153..5863a6a7 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java @@ -1269,20 +1269,21 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { @DS("#header.poolName") public List getIdCardList(ProOrderWorkorder proOrderWorkorder) { List dtos = new ArrayList<>(); - //如果标识卡之前版本已经被用(attr1->1),则不生成新的 - ProOrderWorkorder oldVersion = proOrderWorkorderMapper.getOldVersionUsedInfo(proOrderWorkorder); +// //如果标识卡之前版本已经被用(attr1->1),则不生成新的 +// ProOrderWorkorder oldVersion = proOrderWorkorderMapper.getOldVersionUsedInfo(proOrderWorkorder); //清除之前的非补打的 List dtos0 = null; - if((proOrderWorkorder.getPalletNo()==null&&proOrderWorkorder.getAddFlag().equals("0"))||oldVersion==null) { - //不是增打和补打且还没用于入库 - proOrderWorkorderMapper.cleanCard(proOrderWorkorder); - } +// if((proOrderWorkorder.getPalletNo()==null&&proOrderWorkorder.getAddFlag().equals("0"))||oldVersion==null) { +// //不是增打和补打且还没用于入库 +// proOrderWorkorderMapper.cleanCard(proOrderWorkorder); +// } if(proOrderWorkorder.getAddFlag().equals("0")&&proOrderWorkorder.getPalletNo()==null){//非增打标志0 - if(oldVersion != null){ - dtos = proOrderWorkorderMapper.getPreIdCardListNow(proOrderWorkorder); - for(ProOrderWorkorder pow:dtos){ + List olddtos = proOrderWorkorderMapper.getPreIdCardListNow(proOrderWorkorder); + if(!CollectionUtils.isEmpty(olddtos)){ + for(ProOrderWorkorder pow:olddtos){ pow.setUmrez(pow.getBatchQuantity().multiply(pow.getUmrez()));//子单数量 } + dtos.addAll(olddtos); }else{ dtos0 = proOrderWorkorderMapper.getPreIdCardList(proOrderWorkorder); ProOrderWorkorder pw = null; @@ -1386,6 +1387,70 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { return dtos; } + @Override + @DS("#header.poolName") + public List getIdCardListRefresh(ProOrderWorkorder proOrderWorkorder) { + List dtos = new ArrayList<>(); + //如果标识卡之前版本已经被用(attr1->1),则不生成新的 + //ProOrderWorkorder oldVersion = proOrderWorkorderMapper.getOldVersionUsedInfo(proOrderWorkorder); + //清除之前的非补打的 + List dtos0 = null; + //if(oldVersion==null) { + //重置 + proOrderWorkorderMapper.cleanCard(proOrderWorkorder); + //} + + dtos0 = proOrderWorkorderMapper.getPreIdCardList(proOrderWorkorder); + ProOrderWorkorder pw = null; + int i = 1; + Date nowDate = DateUtils.getNowDate(); + for(ProOrderWorkorder pow:dtos0){ + if(pow.getPalletNum()!=null){ + + BigDecimal pall = pow.getBatchQuantity(); + BigDecimal pn = pow.getPalletNum(); + + while(pall.compareTo(BigDecimal.ZERO)>0){ + pw = new ProOrderWorkorder(); + pw.setProductName(pow.getProductName()); + pw.setWorkorderCode(pow.getWorkorderCode()); + pw.setBatchCode(pow.getBatchCode()); + pw.setProductDateStr(pow.getProductDateStr()); + pw.setRecordId(IdUtils.fastSimpleUUID()); + if(pall.compareTo(pn)<0) {//最后一托盘 + pw.setBatchQuantity(pall); + }else{ + pw.setBatchQuantity(pn); + } + pw.setUnit(pow.getUnit()); + pw.setUmrez(pw.getBatchQuantity().multiply(pow.getUmrez()));//子单数量 + pw.setPalletNo(i++); + //批次+板号+物料+工单号 + pw.setPalletCode( + pow.getBatchCode() + "-" + + pw.getPalletNo() + "-" + + pow.getProductCode().replace("0000000","") + "-" + + pow.getWorkorderCode().replace("000","") + );//workorderCode 实际上是订单号 + pw.setCreateTime(nowDate); + pw.setCreateBy(SecurityUtils.getUsername()); + pw.setAddFlag("0");//增打标志 + dtos.add(pw); + pall = pall.subtract(pn); + } + } + } + if(!CollectionUtils.isEmpty(dtos)) {//不是增打和补打 + proOrderWorkorderMapper.addBatchPallet(dtos); + proOrderWorkorder.setProdType("1");//补打标识临时借用 + List dtosZ = proOrderWorkorderMapper.getPreIdCardListB(proOrderWorkorder);//增打 + if(!CollectionUtils.isEmpty(dtosZ)){ + dtos.addAll(dtosZ); + } + } + + return dtos; + } /** * 校验工单是否可以修改 diff --git a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml index 36abd8bd..d360464f 100644 --- a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml +++ b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml @@ -719,7 +719,7 @@ where pow.workorder_code = #{workorderCode} and pow.del_flag = '0' and powb.del_flag = '0' and powbp.pallet_num = #{palletNo} and powbp.add_flag = #{prodType} - + and powbp.del_flag = '0' order by CAST(powbp.pallet_num AS INT),powb.batch_code @@ -885,7 +885,7 @@ from pro_order_workorder_batch_pallet powbp left join pro_order_workorder pow on powbp.workorder_code = pow.workorder_code_sap left join base_product bp on bp.product_code = pow.product_code - where pow.workorder_code = #{workorderCode} and pow.del_flag = '0' + where pow.workorder_code = #{workorderCode} and pow.del_flag = '0' and powbp.del_flag = '0' order by CAST(powbp.pallet_num AS INT) @@ -1027,7 +1027,7 @@ - delete from pro_order_workorder_batch_pallet where workorder_code in( + update pro_order_workorder_batch_pallet set del_flag = '1' where workorder_code in( select workorder_code_sap from pro_order_workorder where workorder_code = #{workorderCode} ) and add_flag = '0' and attr1 = '0' From 393e90e69ef443e444a49f44cad748b11e8a76e4 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Sat, 7 Sep 2024 11:53:54 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=89=B9=E6=AC=A1=E5=8F=B7=E7=94=9F?= =?UTF-8?q?=E6=88=90=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/op/wms/service/impl/OdsProcureOrderServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java index c624a789..b7ada185 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java @@ -971,7 +971,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { //这个地方判断下是不是采购单已经被插入了,如果是的话,并且是走的送货单的路径,那就把送货单给她附上 continue; } - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS"); Date date = new Date(); String formattedDate = dateFormat.format(date); order.setUserDefined7(formattedDate+order.getUserDefined3());