From b23047f1e6fc8b3318936bc93415002e76e10923 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Thu, 12 Sep 2024 14:41:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8C=85=E6=9D=90=E5=87=BA=E5=BA=93=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OdsProcureOrderController.java | 12 +- .../OdsProcureOutOrderController.java | 6 + .../com/op/wms/domain/OdsProcureOutOrder.java | 46 +++++ .../wms/domain/WmsOdsMateStorageNewsSn.java | 10 + .../wms/mapper/OdsProcureOutOrderMapper.java | 2 + .../mapper/WmsOdsMateStorageNewsSnMapper.java | 14 +- .../wms/service/IOdsProcureOrderService.java | 2 + .../service/IOdsProcureOutOrderService.java | 2 + .../impl/OdsProcureOrderServiceImpl.java | 194 ++++++++++++++---- .../impl/OdsProcureOutOrderServiceImpl.java | 7 + .../mapper/wms/OdsProcureOutOrderMapper.xml | 49 ++++- .../wms/WmsOdsMateStorageNewsSnMapper.xml | 79 ++++++- 12 files changed, 377 insertions(+), 46 deletions(-) diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java index 2099b8686..204d1ef57 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java @@ -329,7 +329,17 @@ public class OdsProcureOrderController extends BaseController { odsProcureOrderService.OutboundPostingSAPfc(orderList); return success(); } - + /** + * 领料单出库过账 + * + * @param orderList + * @return + */ + @PostMapping("/OutboundPostingzcSAP") + public AjaxResult OutboundPostingzcSAP(@RequestBody List orderList) { + odsProcureOrderService.OutboundPostingzcSAP(orderList); + return success(); + } @PostMapping("/listCKT") public AjaxResult listCKT(BaseWarehouse baseWarehouse) { diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOutOrderController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOutOrderController.java index 11707ead1..df3b46c7e 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOutOrderController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOutOrderController.java @@ -65,6 +65,12 @@ public class OdsProcureOutOrderController extends BaseController { List list = odsProcureOutOrderService.selectOdsProcureOutOrderListZUfc(odsProcureOutOrder); return getDataTable(list); } + @PostMapping("/listZC") + public TableDataInfo listZC(OdsProcureOutOrder odsProcureOutOrder) { + startPage(); + List list = odsProcureOutOrderService.selectOdsProcureOutOrderListZC(odsProcureOutOrder); + return getDataTable(list); + } /** * 导出包材出库单列表 */ diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOutOrder.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOutOrder.java index 018c4ab9d..5d17b96a5 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOutOrder.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOutOrder.java @@ -141,6 +141,15 @@ public class OdsProcureOutOrder extends BaseEntity { */ @Excel(name = "计划数量") private BigDecimal planNumber; + private BigDecimal amount; + + public BigDecimal getAmount() { + return amount; + } + + public void setAmount(BigDecimal amount) { + this.amount = amount; + } private String sn; @@ -320,6 +329,43 @@ public class OdsProcureOutOrder extends BaseEntity { private String enterpriseCode; private String sapMag; private String sapXMag; + private String mateOrderInSnId; + + private String whCode; + private String waCode; + private String wlCode; + + public String getWhCode() { + return whCode; + } + + public void setWhCode(String whCode) { + this.whCode = whCode; + } + + public String getWaCode() { + return waCode; + } + + public void setWaCode(String waCode) { + this.waCode = waCode; + } + + public String getWlCode() { + return wlCode; + } + + public void setWlCode(String wlCode) { + this.wlCode = wlCode; + } + + public String getMateOrderInSnId() { + return mateOrderInSnId; + } + + public void setMateOrderInSnId(String mateOrderInSnId) { + this.mateOrderInSnId = mateOrderInSnId; + } public String getSapMag() { return sapMag; diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java index 8c0ed9106..e2c49a2d3 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java @@ -88,6 +88,16 @@ public class WmsOdsMateStorageNewsSn extends BaseEntity { */ @Excel(name = "数量") private BigDecimal amount; + @Excel(name = "出库数量") + private BigDecimal outNumber; + + public BigDecimal getOutNumber() { + return outNumber; + } + + public void setOutNumber(BigDecimal outNumber) { + this.outNumber = outNumber; + } /** * 备用1 diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java index 9e51ac78b..0ad51b28b 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java @@ -112,4 +112,6 @@ public interface OdsProcureOutOrderMapper { OdsProcureOutOrder selectWmsOdsProcureOutOrderByID(String id); void updateWmsOdsProcureOutOrder(OdsProcureOutOrder odsProcureOutOrder1); + + List selectOdsProcureOutOrderListZC(OdsProcureOutOrder odsProcureOutOrder); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java index 5e9d57bf5..e8cb32b5f 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java @@ -62,12 +62,18 @@ public interface WmsOdsMateStorageNewsSnMapper { */ public int deleteWmsOdsMateStorageNewsSnByMateOrderInSnIds(Long[] mateOrderInSnIds); - void updateAdd(WmsOdsEmStorageNews wmsOdsEmStorageNews); + public void updateAdd(WmsOdsEmStorageNews wmsOdsEmStorageNews); - void updatekdd(WmsOdsEmStorageNews wmsOdsEmStorageNews); + public void updatekdd(WmsOdsEmStorageNews wmsOdsEmStorageNews); - WmsOdsMateStorageNewsSn selectwmsRfidNotwo(WmsToWCSDTO wcsdto); + public WmsOdsMateStorageNewsSn selectwmsRfidNotwo(WmsToWCSDTO wcsdto); - WmsOdsMateStorageNewsSn selectWmsOdsMateStorageNewsSnByWlCode(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn); + public WmsOdsMateStorageNewsSn selectWmsOdsMateStorageNewsSnByWlCode(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn); + + public WmsOdsMateStorageNewsSn selectWmsOdsMateStorageNewsSnByMateOrderInSnIdk(String mateOrderInSnId); + + public void updateWmsOdsMateStorageNewsSnAddoutNumber(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn); + + public WmsOdsMateStorageNewsSn selectWmsOdsMateStorageNewsSnByWlCodeTEM(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java index 5d6e81826..0c9a81c5f 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java @@ -127,4 +127,6 @@ public interface IOdsProcureOrderService { WmsOdsMateStorageNewsSn SweepMaterialCardSC(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn); String NewConMaterialOutSC(List odsProcureOutOrder); + + void OutboundPostingzcSAP(List orderList); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOutOrderService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOutOrderService.java index f7b999225..e2a81275d 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOutOrderService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOutOrderService.java @@ -64,4 +64,6 @@ public interface IOdsProcureOutOrderService { List selectOdsProcureOutOrderListZUTwo(OdsProcureOutOrder odsProcureOutOrder1); List selectOdsProcureOutOrderListZUfc(OdsProcureOutOrder odsProcureOutOrder); + + List selectOdsProcureOutOrderListZC(OdsProcureOutOrder odsProcureOutOrder); } 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 dafb8e49f..c97352d02 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 @@ -1459,9 +1459,15 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { public List ProductionMaterialRequisitionSC(OdsProcureOutOrder odsProcureOutOrder) { //二维码获取的信息查询对应的sap生产订单,再用生产订单查询子单 DynamicDataSourceContextHolder.push("ds_" + odsProcureOutOrder.getFactoryCode()); + List orderLists=new ArrayList<>(); List orderListone= odsProcureOutOrderMapper.selectWmsOdsProcureOutOrder(odsProcureOutOrder); if (orderListone.size()>0){ - return orderListone; + for (OdsProcureOutOrder order:orderListone){ + if (!"3".equals(order.getOrderStatus())){ + orderLists.add(order); + } + } + return orderLists; } OdsProcureOutOrder order = odsProcureOutOrderMapper.selectMesPrepareBC(odsProcureOutOrder); List orderList= odsProcureOutOrderMapper.selectMesPrepareDetailBC(order); @@ -1489,7 +1495,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { //odsProcureOutOrder1.setProductionLineCode(order1.getStationNo()); //odsProcureOutOrder1.setUserDefined1(orderLine1.getBatchNo()); odsProcureOutOrder1.setActive("1"); - odsProcureOutOrder1.setOrderStatus("0");// + odsProcureOutOrder1.setOrderStatus("1");// odsProcureOutOrder1.setPlanNumber(order1.getPlanNumber()); odsProcureOutOrder1.setUserDefined2(order1.getUserDefined2()); odsProcureOutOrder1.setUserDefined3(order1.getUserDefined3()); @@ -1508,64 +1514,83 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { @Override public WmsOdsMateStorageNewsSn SweepMaterialCardSC(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn) { DynamicDataSourceContextHolder.push("ds_" + wmsOdsMateStorageNewsSn.getFactoryCode()); - wmsOdsMateStorageNewsSn.setUserDefined3("1"); - WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSnk= wmsOdsMateStorageNewsSnMapper.selectWmsOdsMateStorageNewsSnByWlCode(wmsOdsMateStorageNewsSn); + wmsOdsMateStorageNewsSn.setUserDefined3("1");//1是入库 + WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSnk= wmsOdsMateStorageNewsSnMapper.selectWmsOdsMateStorageNewsSnByWlCodeTEM(wmsOdsMateStorageNewsSn); return wmsOdsMateStorageNewsSnk; } + /** + * 传了领料单号,还有标识卡的信息,例如,物料编号,物料描述,数量,单位,状态,需求时间,工厂, + * 要根据标识卡信息和生产领料单的信息,这样的话,需要用生产领料单和标识卡的信息来查询出来对应的领料单 + * ,进行修改对应领料单的出库数量和状态(如果计划数量小于或者等于出库数量,状态改为完成),然后在出库表中添加记录,进行库存的修改(占用数量),先是明细后是总表 + * 然后是过账,过账选择生产领料单为完成状态并且过账状态是未过账的进行过账,(过账失败的在页面上过账),--过账-成功的话,取消占用减去库存,记录信息,如果失败是记录信息,(页面过账) + * @param orderList + * @return + */ @Override public String NewConMaterialOutSC(List orderList) { - //修改对应订单--插入对应出库托盘数据数据 -// for (OdsProcureOutOrder odsProcureOutOrder: -// orderList) { -// //领料单,物料编号,领料单批次,物料名称,托盘号,出库数量,库位号, -// odsProcureOutOrder. -// } String result="操作成功"; String factoryCode = orderList.get(0).getFactoryCode(); DynamicDataSourceContextHolder.push("ds_" + factoryCode); for (OdsProcureOutOrder odsProcureOutOrder : orderList) { //领料单,物料编号,领料单批次,物料名称,托盘号,出库数量,库位号, - WmsToWCSDTO wcsdto = new WmsToWCSDTO(); - - wcsdto.setRfidNo(odsProcureOutOrder.getSn()); - WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn = wmsOdsMateStorageNewsSnMapper.selectwmsRfidNotwo(wcsdto); - //明细 + String produceCode= odsProcureOutOrder.getProduceCode();//生产领料单号 + String createBy= odsProcureOutOrder.getCreateBy();//操作人 + String mateOrderInSnId= odsProcureOutOrder.getMateOrderInSnId(); + String waCode= odsProcureOutOrder.getWaCode(); + String whCode= odsProcureOutOrder.getWhCode(); + String wlCode= odsProcureOutOrder.getWlCode(); + String sn= odsProcureOutOrder.getSn(); + String materialCode= odsProcureOutOrder.getMaterialCode(); + String materialDesc= odsProcureOutOrder.getMaterialDesc(); + BigDecimal amount= odsProcureOutOrder.getAmount();//数量 + String userDefined1= odsProcureOutOrder.getUserDefined1();//单位 + String userDefined2= odsProcureOutOrder.getUserDefined2();//批次 + WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn = wmsOdsMateStorageNewsSnMapper.selectWmsOdsMateStorageNewsSnByMateOrderInSnIdk(mateOrderInSnId); //wms_raw_mission_out--保存 //ods_procure_out_order--修改 WCSInventoryPlan wcsInventoryPlan = new WCSInventoryPlan(); wcsInventoryPlan.setSku(odsProcureOutOrder.getMaterialCode()); - // WmsOdsMateStorageNews wmsOdsMateStorageNews = wmsOdsMateStorageNewsMapper.selectBaseProductByCode(wcsInventoryPlan); - + // WmsOdsMateStorageNews wmsOdsMateStorageNews = wmsOdsMateStorageNewsMapper.selectBaseProductByCode(wcsInventoryPlan); OdsProcureOutOrder order = new OdsProcureOutOrder(); - order.setProduceCode(odsProcureOutOrder.getProduceCode());//领料单 - order.setMaterialCode(odsProcureOutOrder.getMaterialCode());// - order.setMaterialDesc(odsProcureOutOrder.getMaterialDesc()); - order.setUserDefined1(odsProcureOutOrder.getUserDefined1());//批次 - order.setSn(odsProcureOutOrder.getSn()); - order.setPlanNumber(odsProcureOutOrder.getPlanNumber()); - order.setLocCode(odsProcureOutOrder.getLocCode()); + order.setProduceCode(produceCode);//领料单 + order.setMaterialCode(materialCode);// + order.setMaterialDesc(materialDesc); + order.setUserDefined1(userDefined2);//批次 + order.setUserDefined2(whCode); + order.setUserDefined3(wlCode); + order.setSn(sn); + order.setPlanNumber(amount); + order.setLocCode(waCode);//库区 order.setID(IdUtils.fastSimpleUUID()); - order.setUnit(odsProcureOutOrder.getUnit()); + order.setUnit(userDefined1); order.setFactoryCode(factoryCode); order.setActive("1"); - order.setCreateBy(odsProcureOutOrder.getCreateBy()); + order.setCreateBy(createBy); order.setCreateDate(new Date()); odsProcureOutOrderMapper.insertWmsRawMissionOut(order); - - OdsProcureOutOrder odsProcureOutOrder1 = odsProcureOutOrderMapper.selectWmsOdsProcureOutOrderByID(odsProcureOutOrder.getID()); - BigDecimal realityNumber1 = odsProcureOutOrder1.getOutNumber();//累出库数 - BigDecimal realityNumber = odsProcureOutOrder1.getPlanNumber();//计划 - BigDecimal planNumber = odsProcureOutOrder.getPlanNumber();//本次实际数量 + OdsProcureOutOrder odsProcureOutOrder1=new OdsProcureOutOrder(); + odsProcureOutOrder1.setProduceCode(produceCode); + odsProcureOutOrder1.setMaterialCode(materialCode); + List odsProcureOutOrders = odsProcureOutOrderMapper.selectWmsOdsProcureOutOrder(odsProcureOutOrder1); + OdsProcureOutOrder order1= odsProcureOutOrders.get(0); + BigDecimal realityNumber1 = order1.getOutNumber();//累出库数 + BigDecimal realityNumber = order1.getPlanNumber();//计划 + BigDecimal planNumber = amount;//本次实际数量 BigDecimal tem = realityNumber1.add(planNumber); - if (tem.compareTo(realityNumber)== 0) { - odsProcureOutOrder1.setOrderStatus("3"); + if (tem.compareTo(realityNumber)>= 0) { + order1.setOrderStatus("3"); } else { - odsProcureOutOrder1.setOrderStatus("2"); + order1.setOrderStatus("2"); } - odsProcureOutOrder1.setOutNumber(tem); - odsProcureOutOrderMapper.updateWmsOdsProcureOutOrder(odsProcureOutOrder1);//订单修改 + order1.setOutNumber(tem); + odsProcureOutOrderMapper.updateWmsOdsProcureOutOrder(order1);//订单修改 + //明细 +// BigDecimal temk= wmsOdsMateStorageNewsSn.getAmount().subtract(amount); + wmsOdsMateStorageNewsSn.setOutNumber(amount); + wmsOdsMateStorageNewsSn.setLastModifiedBy(createBy); + wmsOdsMateStorageNewsSnMapper.updateWmsOdsMateStorageNewsSnAddoutNumber(wmsOdsMateStorageNewsSn);//库存明细 WmsOdsEmStorageNews wmsOdsEmStorageNews = new WmsOdsEmStorageNews(); wmsOdsEmStorageNews.setWhCode(wmsOdsMateStorageNewsSn.getWhCode());//仓库编码 wmsOdsEmStorageNews.setWlCode(wmsOdsMateStorageNewsSn.getWlCode());//库位编码 @@ -1573,13 +1598,106 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { wmsOdsEmStorageNews.setProductBatch(wmsOdsMateStorageNewsSn.getUserDefined2()); wmsOdsEmStorageNews.setMaterialCode(wmsOdsMateStorageNewsSn.getMaterialCode()); wmsOdsEmStorageNews.setAmount(odsProcureOutOrder.getPlanNumber());//库存 + wmsOdsEmStorageNews.setLastModifiedBy(createBy); wmsOdsMateStorageNewsSnMapper.updatekdd(wmsOdsEmStorageNews);//库存调整 - wmsOdsMateStorageNewsSn.setUserDefined1("1"); - wmsOdsMateStorageNewsSnMapper.updateWmsOdsMateStorageNewsSn(wmsOdsMateStorageNewsSn);//库存明细 } return result; } + /** + * + * @param orderList + */ + @Override + @DS("#header.poolName") + public void OutboundPostingzcSAP(List orderList) { + //先根据出库单获取 +// * 退料的移动类型为 262 +// * 领料的移动类型为 261 + // List orderList1=odsProcureOutOrderMapper.selectOdsProcureOutOrderListByIds(orderList); + List orderList1 = odsProcureOutOrderMapper.selectOdsProcureOutOrderListByu1(orderList); + //查询这个地方先暂时去掉Order_Status = '3' 条件 + //List sapMaterialPostingList=new ArrayList<>(); + List orderList2 = new ArrayList<>(); + List> mapList = new ArrayList<>(); + List sapMaterialPostingFCList = new ArrayList<>();//反冲 + List orderList2FC = new ArrayList<>();//反冲 + for (OdsProcureOutOrder odsProcureOutOrder : + orderList1) { + //取sap仓库号 + if ("X".equals(odsProcureOutOrder.getUserDefined3())) { + SapBackflushMPQuery sapBackflushMPQuery = new SapBackflushMPQuery(); + sapBackflushMPQuery.setPlant(odsProcureOutOrder.getSiteCode()); //工厂 + String lgort = baseWarehouseMapper.selectByCode(odsProcureOutOrder.getLocCode()); + sapBackflushMPQuery.setLgort(lgort);//库存地点 + sapBackflushMPQuery.setMatnr(odsProcureOutOrder.getMaterialCode());//物料号 + sapBackflushMPQuery.setQuantity(odsProcureOutOrder.getOutNumber().toString()); //数量 + sapBackflushMPQuery.setMeins(odsProcureOutOrder.getUnit()); //基本计量单位 + sapBackflushMPQuery.setBatch(odsProcureOutOrder.getUserDefined2()); //批号 + sapMaterialPostingFCList.add(sapBackflushMPQuery); + orderList2FC.add(odsProcureOutOrder); + } else { + Map map = new HashMap<>(); + map.put("AUFNR", odsProcureOutOrder.getProduceCode()); + map.put("PLANT", odsProcureOutOrder.getSiteCode()); + String lgort = baseWarehouseMapper.selectByCode(odsProcureOutOrder.getLocCode()); + map.put("LGORT", lgort); + map.put("MATNR", odsProcureOutOrder.getMaterialCode()); + map.put("QUANTITY", odsProcureOutOrder.getOutNumber().toString()); + map.put("MEINS", odsProcureOutOrder.getUnit()); + mapList.add(map); + orderList2.add(odsProcureOutOrder); + } + } + if (mapList.size() > 0) {//非反冲过账 + SapMaterialPosting sapMaterialPosting = new SapMaterialPosting(); + sapMaterialPosting.setPostingType("261"); + sapMaterialPosting.setMapList(mapList); + R result = remoteSapService.sapMaterialPosting(sapMaterialPosting); + OdsProcureOutOrder order = new OdsProcureOutOrder(); + int code = result.getCode(); + String msg = result.getMsg(); + //order.setSapMaterialPostingList(sapMaterialPostingList); + order.setUserDefined11(msg); + if (code == 200) { + //过账成功 + Map map = new HashMap(); + map = (Map) result.getData(); + String userDefined9 = (String) map.get("MATERIALDOCUMENT"); + order.setUserDefined9(userDefined9); + order.setUserDefined10("2");//成功 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByids(order, orderList2); + + } else {// + order.setUserDefined9(""); + order.setUserDefined10("3");//失败 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByids(order, orderList2); + } + } + + if (sapMaterialPostingFCList.size() > 0) { + //反冲过账 + R result2 = remoteSapService.sapBackflushMP(sapMaterialPostingFCList);//x + int code = result2.getCode(); + OdsProcureOutOrder order = new OdsProcureOutOrder(); + String msg = result2.getMsg(); + order.setUserDefined11(msg); + if (code == 200) { + //过账成功 + Map map = new HashMap(); + map = (Map) result2.getData(); + String userDefined9 = (String) map.get("MATERIALDOCUMENT"); + order.setUserDefined9(userDefined9); + order.setUserDefined10("2");//成功 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByids(order, orderList2FC); + } else {// + order.setUserDefined9(""); + order.setUserDefined10("3");//失败 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByids(order, orderList2FC); + } + } + } + public String dayin( List orderList) { // 定义请求的URL地址 diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOutOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOutOrderServiceImpl.java index 2a759bdd3..95df0c70b 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOutOrderServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOutOrderServiceImpl.java @@ -131,4 +131,11 @@ public class OdsProcureOutOrderServiceImpl implements IOdsProcureOutOrderService List orderList = odsProcureOutOrderMapper.selectOdsProcureOutOrderListZUfc(odsProcureOutOrder); return orderList; } + + @Override + @DS("#header.poolName") + public List selectOdsProcureOutOrderListZC(OdsProcureOutOrder odsProcureOutOrder) { + List orderList = odsProcureOutOrderMapper.selectOdsProcureOutOrderListZC(odsProcureOutOrder); + return orderList; + } } diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml index 439d308a8..1b203cca4 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml @@ -709,7 +709,7 @@ mes_prepare_detail WHERE prepare_id=#{ID} and - del_flag = '0' + del_flag = '0' and recoil= '' + diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml index b4a44ba84..cb7d0aebe 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml @@ -79,7 +79,11 @@ where mate_order_in_sn_id = #{mateOrderInSnId} - + insert into wms_ods_mate_storage_news_sn @@ -202,6 +206,7 @@ update wms_ods_mate_storage_news set occupy_amount = occupy_amount + #{amount}, + last_modified_by=#{lastModifiedBy}, gmt_modified=GETDATE() where wh_code=#{whCode} and wa_code=#{waCode} and wl_code=#{wlCode} and material_code=#{materialCode} and product_bach= #{productBatch} @@ -249,4 +254,76 @@ and sap_factory_code = #{sapFactoryCode} + + update wms_ods_mate_storage_news_sn + set out_number = ISNULL(out_number, 0) + #{outNumber}, + last_modified_by = #{lastModifiedBy}, + gmt_modified=GETDATE() + where mate_order_in_sn_id = #{mateOrderInSnId} + +