From 8f3bd218a212b37ead5894097230e0ddb1df98a3 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Thu, 14 Dec 2023 09:54:25 +0800 Subject: [PATCH] =?UTF-8?q?wms=E4=BF=AE=E6=94=B9=EF=BC=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OdsProcureOrderController.java | 41 ++++++++- .../controller/WmsToWCSmissionController.java | 11 +++ .../com/op/wms/domain/OdsProcureOutOrder.java | 9 ++ .../java/com/op/wms/domain/OrderLine.java | 8 ++ .../wms/service/IOdsProcureOrderService.java | 4 + .../impl/OdsProcureOrderServiceImpl.java | 85 ++++++++++++++----- .../impl/WmsToWCSInterfaceServiceImpl.java | 6 +- .../mapper/wms/OdsProcureOutOrderMapper.xml | 4 +- 8 files changed, 140 insertions(+), 28 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 a5efa24d..a7e5b602 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 @@ -149,6 +149,14 @@ public class OdsProcureOrderController extends BaseController { return success(wmsRawOrderInSns); } + + + + + + + + /** * 查询仓库管理列表 */ @@ -221,7 +229,7 @@ public class OdsProcureOrderController extends BaseController { @PostMapping("/InventoryPlanIssuance") public AjaxResult InventoryPlanIssuance(@RequestBody WCSInventoryPlan wcsInventoryPlan) { String result= odsProcureOrderService.InventoryPlanIssuance(wcsInventoryPlan); - //托盘状态更新 + return success(result); } //http://192.168.202.37:9001/api/v1/ReceiveMesMsg/packingMaterialsOutBoundByPallet @@ -237,5 +245,36 @@ public class OdsProcureOrderController extends BaseController { //托盘状态更新 return success(result); } + /** + * 生产领料 + * @param odsProcureOutOrder + * @return + */ + @PostMapping("/ProductionMaterialRequisition") + public AjaxResult ProductionMaterialRequisition(@RequestBody OdsProcureOutOrder odsProcureOutOrder) { + List result= odsProcureOrderService.ProductionMaterialRequisition(odsProcureOutOrder); + return success(result); + } + /** + * 生产领料--托盘数据查询 + * @param wmsDesignatedPalle + * @return + */ + @PostMapping("/ProductionMaterialRequisition") + public AjaxResult ProductionMaterialRequisition(@RequestBody WMSDesignatedPalle wmsDesignatedPalle) { +// Integer result= odsProcureOrderService.ProductionMaterialRequisitionAdd(orderList); + return success(); + } + + /** + * 生产领料--确认 + * @param orderList + * @return + */ + @PostMapping("/ProductionMaterialRequisitionAdd") + public AjaxResult ProductionMaterialRequisitionAdd(@RequestBody List orderList) { + Integer result= odsProcureOrderService.ProductionMaterialRequisitionAdd(orderList); + return success(result); + } } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java index e3dea7e9..b92cc909 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java @@ -118,6 +118,7 @@ public WmsToWCSDTO packingMaterialsOutBoundCompleted(@RequestBody WmsToWCSDTO wc return success(wmsRawOrderInSns); } + /** * 查询仓库管理列表 */ @@ -141,7 +142,17 @@ public WmsToWCSDTO packingMaterialsOutBoundCompleted(@RequestBody WmsToWCSDTO wc return success(); } + /** + * 生产领料 + * @param odsProcureOutOrder + * @return + */ + @PostMapping("/ProductionMaterialRequisition") + public AjaxResult ProductionMaterialRequisition(@RequestBody OdsProcureOutOrder odsProcureOutOrder) { + List result= odsProcureOrderService.ProductionMaterialRequisition(odsProcureOutOrder); + return success(result); + } /** * 采购订单接口 */ 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 f4e76d13..0c01a494 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 @@ -20,6 +20,15 @@ import com.op.common.core.web.domain.BaseEntity; @JsonInclude(JsonInclude.Include.NON_NULL) public class OdsProcureOutOrder extends BaseEntity { private static final long serialVersionUID = 1L; + private String factoryCode; + + public String getFactoryCode() { + return factoryCode; + } + + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } /** 工厂编码 */ @Excel(name = "工厂编码") diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/OrderLine.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/OrderLine.java index 5909aab6..9bcb71a2 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/OrderLine.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/OrderLine.java @@ -14,7 +14,15 @@ public class OrderLine extends BaseEntity { private BigDecimal qty;//数量 private String qualityStatus;//质检状态,1合格,2不合格 private String stationNo;//包装线 + private String ken;//包装线--如果是用于自动化就选1,如果是手持人工出库就选2 + public String getKen() { + return ken; + } + + public void setKen(String ken) { + this.ken = ken; + } private String materialCode; private String materialDesc; 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 8356af22..7e2c35aa 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 @@ -82,4 +82,8 @@ public interface IOdsProcureOrderService { String InventoryPlanIssuance(WCSInventoryPlan wcsInventoryPlan); String DesignatedPalletOutbound(WMSDesignatedPalle wmsDesignatedPalle); + + List ProductionMaterialRequisition(OdsProcureOutOrder odsProcureOutOrder); + + Integer ProductionMaterialRequisitionAdd(List orderList); } 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 c770686a..599ea2ea 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 @@ -1,6 +1,6 @@ package com.op.wms.service.impl; -import com.alibaba.csp.sentinel.util.StringUtil; + import com.alibaba.fastjson2.JSONArray; @@ -13,9 +13,11 @@ import java.util.Date; import java.util.List; +import com.op.common.core.constant.Constants; import com.op.common.core.domain.R; +import com.op.common.core.utils.StringUtils; import com.op.common.core.web.domain.AjaxResult; import okhttp3.OkHttpClient; import okhttp3.MediaType; @@ -269,35 +271,56 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { orderLine1.setOrderLineNo(String.format("%05d", orderItem)); orderLine1.setBatchNo("00001"); } - String meg= addPurchaseOrderOutboundWCS(orderLine); - if ("OK".equals(meg)){//成功 - for (OrderLine orderLine1: - orderList) { - OdsProcureOutOrder odsProcureOutOrder=new OdsProcureOutOrder(); - odsProcureOutOrder.setID(IdUtils.fastSimpleUUID()); - odsProcureOutOrder.setProduceCode(orderLine.getOrderNo()); - odsProcureOutOrder.setMaterialCode(orderLine1.getMaterialCode()); - odsProcureOutOrder.setMaterialDesc(orderLine1.getMaterialDesc()); - odsProcureOutOrder.setPlanDate(new Date()); - odsProcureOutOrder.setUnit(orderLine1.getUnit()); - odsProcureOutOrder.setProductionLineCode(orderLine1.getStationNo()); - odsProcureOutOrder.setUserDefined1(orderLine1.getBatchNo()); - odsProcureOutOrder.setActive("1"); - odsProcureOutOrder.setOrderStatus("1"); - odsProcureOutOrder.setPlanNumber(orderLine1.getPlanNumber()); - odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); - //odsProcureOutOrder.set - odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); + String ken=orderLine.getKen(); + if("2".equals(ken)){ + //手持出库 + for (OrderLine orderLine1: + orderList) { + OdsProcureOutOrder odsProcureOutOrder=new OdsProcureOutOrder(); + odsProcureOutOrder.setID(IdUtils.fastSimpleUUID()); + odsProcureOutOrder.setProduceCode(orderLine.getOrderNo()); + odsProcureOutOrder.setMaterialCode(orderLine1.getMaterialCode()); + odsProcureOutOrder.setMaterialDesc(orderLine1.getMaterialDesc()); + odsProcureOutOrder.setPlanDate(new Date()); + odsProcureOutOrder.setUnit(orderLine1.getUnit()); + odsProcureOutOrder.setProductionLineCode(orderLine1.getStationNo()); + odsProcureOutOrder.setUserDefined1(orderLine1.getBatchNo()); + odsProcureOutOrder.setActive("1"); + odsProcureOutOrder.setOrderStatus("1"); + odsProcureOutOrder.setPlanNumber(orderLine1.getPlanNumber()); + odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); + //odsProcureOutOrder.set + odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); + } + }else { + String meg= addPurchaseOrderOutboundWCS(orderLine); + if ("OK".equals(meg)){//成功 + for (OrderLine orderLine1: + orderList) { + OdsProcureOutOrder odsProcureOutOrder=new OdsProcureOutOrder(); + odsProcureOutOrder.setID(IdUtils.fastSimpleUUID()); + odsProcureOutOrder.setProduceCode(orderLine.getOrderNo()); + odsProcureOutOrder.setMaterialCode(orderLine1.getMaterialCode()); + odsProcureOutOrder.setMaterialDesc(orderLine1.getMaterialDesc()); + odsProcureOutOrder.setPlanDate(new Date()); + odsProcureOutOrder.setUnit(orderLine1.getUnit()); + odsProcureOutOrder.setProductionLineCode(orderLine1.getStationNo()); + odsProcureOutOrder.setUserDefined1(orderLine1.getBatchNo()); + odsProcureOutOrder.setActive("1"); + odsProcureOutOrder.setOrderStatus("1"); + odsProcureOutOrder.setPlanNumber(orderLine1.getPlanNumber()); + odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); + //odsProcureOutOrder.set + odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); + } } - - } return orderLine; } @Override public R sapPurchaseOrderSync(SapBackflushMPQuery sapPurchaseOrderQuery) { -// DynamicDataSourceContextHolder.push("ds_" + sapPurchaseOrderQuery.getFactoryCode()); + DynamicDataSourceContextHolder.push("ds_" + sapPurchaseOrderQuery.getFactoryCode()); // try { // // 获取调用 RFC 函数对象 // //获取连接 @@ -496,6 +519,22 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { return result; } + + @Override + public List ProductionMaterialRequisition(OdsProcureOutOrder odsProcureOutOrder) { + DynamicDataSourceContextHolder.push("ds_" + odsProcureOutOrder.getFactoryCode()); + List orderList= odsProcureOutOrderMapper.selectOdsProcureOutOrderList(odsProcureOutOrder); + return orderList; + } + + @Override + public Integer ProductionMaterialRequisitionAdd(List orderList) { + //修改对应订单--插入对应出库托盘数据数据 + + + return null; + } + public String DesignatedPalletOutboundWCS(WMSDesignatedPalle wmsDesignatedPalle){ // 定义请求的URL地址 String url = "http://192.168.202.37:9001/api/v1/ReceiveMesMsg/packingMaterialsOutBoundByPallet"; diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsToWCSInterfaceServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsToWCSInterfaceServiceImpl.java index e038dd2f..ed7ba474 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsToWCSInterfaceServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsToWCSInterfaceServiceImpl.java @@ -1,6 +1,7 @@ package com.op.wms.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.op.common.core.utils.uuid.IdUtils; import com.op.wms.domain.*; import com.op.wms.mapper.*; @@ -29,6 +30,7 @@ public class WmsToWCSInterfaceServiceImpl implements IWmsToWCSInterfaceService { @Override @DS("#header.poolName") public WmsToWCSDTO requestMaterialLoadNo(WmsToWCSDTO wcsdto) { + DynamicDataSourceContextHolder.push("ds_" + wcsdto.getFactory()); WmsToWCSDTO wmsToWCSDTO= wmsToWCSInterfaceMapper.selectWmsToWCSDTO(wcsdto); // wmsToWCSDTO.set// wmsToWCSDTO.setCode("0"); @@ -46,6 +48,8 @@ public class WmsToWCSInterfaceServiceImpl implements IWmsToWCSInterfaceService { @Override @DS("#header.poolName") public WmsToWCSDTO blankStorageOrTransferCompleted(WmsToWCSDTO wcsdto) { + DynamicDataSourceContextHolder.push("ds_" + wcsdto.getFactory()); + WmsOdsWhiteEmbryoIn wmsOdsWhiteEmbryoIn1=new WmsOdsWhiteEmbryoIn(); //rfidNo-托盘 WmsToWCSDTO wmsToWCSDTO= wmsToWCSInterfaceMapper.selectWmsToWCSDTO(wcsdto); @@ -61,11 +65,9 @@ public class WmsToWCSInterfaceServiceImpl implements IWmsToWCSInterfaceService { boolean ten = sum.compareTo(planNumber) >= 0; // 判断sum是否大于等于planNumber if (ten) { wmsOdsWhiteEmbryoIn1.setOrderStatus("1"); - } else { //小于 wmsOdsWhiteEmbryoIn1.setOrderStatus("2"); - } wmsOdsWhiteEmbryoIn1.setRealityNumber(sum);///操作数量+已入数量 //1,修改订单 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 5b2d0aed..67471bfc 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 @@ -218,14 +218,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"