From e19f5d54dca3c46985bb55193b4dd43107c6fb45 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Tue, 5 Dec 2023 14:42:35 +0800 Subject: [PATCH] =?UTF-8?q?wms=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- op-modules/op-wms/pom.xml | 6 + .../controller/OdsProcureOrderController.java | 89 +++++-- .../controller/WmsToWCSmissionController.java | 34 ++- .../com/op/wms/domain/OdsProcureOrder.java | 11 + .../com/op/wms/domain/OdsProcureOutOrder.java | 14 +- .../java/com/op/wms/domain/OrderLine.java | 14 ++ .../wms/domain/WmsOdsMateStorageNewsSn.java | 8 +- .../wms/mapper/OdsProcureOutOrderMapper.java | 18 +- .../op/wms/service/IBaseWarehouseService.java | 16 +- .../wms/service/IOdsProcureOrderService.java | 11 +- .../impl/BaseWarehouseServiceImpl.java | 7 + .../impl/OdsProcureOrderServiceImpl.java | 229 +++++++++++++++++- .../mapper/wms/OdsProcureOutOrderMapper.xml | 38 ++- .../wms/WmsOdsMateStorageNewsSnMapper.xml | 2 + 14 files changed, 444 insertions(+), 53 deletions(-) diff --git a/op-modules/op-wms/pom.xml b/op-modules/op-wms/pom.xml index 386e5f958..7fa91380d 100644 --- a/op-modules/op-wms/pom.xml +++ b/op-modules/op-wms/pom.xml @@ -88,6 +88,12 @@ 0.0.1 compile + + com.squareup.okhttp3 + okhttp + + + 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 98afca164..1287d977a 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 @@ -2,7 +2,9 @@ package com.op.wms.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; -import com.op.wms.domain.WmsRawOrderInSn; + +import com.op.wms.domain.*; +import com.op.wms.service.IBaseWarehouseService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -15,13 +17,14 @@ import org.springframework.web.bind.annotation.RestController; import com.op.common.log.annotation.Log; import com.op.common.log.enums.BusinessType; import com.op.common.security.annotation.RequiresPermissions; -import com.op.wms.domain.OdsProcureOrder; import com.op.wms.service.IOdsProcureOrderService; import com.op.common.core.web.controller.BaseController; import com.op.common.core.web.domain.AjaxResult; import com.op.common.core.utils.poi.ExcelUtil; import com.op.common.core.web.page.TableDataInfo; +import static com.op.common.core.web.domain.AjaxResult.success; + /** * 包材采购单Controller * @@ -33,7 +36,8 @@ import com.op.common.core.web.page.TableDataInfo; public class OdsProcureOrderController extends BaseController { @Autowired private IOdsProcureOrderService odsProcureOrderService; - + @Autowired + private IBaseWarehouseService baseWarehouseService; /** * 查询包材采购单列表 */ @@ -106,18 +110,7 @@ public class OdsProcureOrderController extends BaseController { return success(orderList); } - //** - /** - * 用于出库任务页面--查询 - * @param odsProcureOrder - * @return - */ - @PostMapping("/PurchaseOrderOutboundTask") - public AjaxResult PurchaseOrderOutboundTask(@RequestBody OdsProcureOrder odsProcureOrder) { - List orderList =odsProcureOrderService.PurchaseOrderPda(odsProcureOrder); - return success(orderList); - } @@ -141,4 +134,72 @@ public class OdsProcureOrderController extends BaseController { return success(wmsRawOrderInSns); } + + + + /** + *手持 -入库查询--入参:pono,whcode + * userDefined1;//备用1--收货1,入库2 + */ + + @PostMapping("/PurchaseOrderWarehousingPda") + public AjaxResult PurchaseOrderWarehousingPda(@RequestBody WmsRawOrderInSn wmsRawOrderInSn) { + List wmsRawOrderInSns =odsProcureOrderService.PurchaseOrderWarehousingPda(wmsRawOrderInSn); + //采购入库(PO) + return success(wmsRawOrderInSns); + } + + /** + * 查询仓库管理列表 + */ + + @PostMapping("/listCK") + public AjaxResult list(@RequestBody BaseWarehouse baseWarehouse) { + + List list = baseWarehouseService.selectBaseWarehouseListTWO(baseWarehouse); + return success(list); + } + + /** + * 入库操作 + * @param wmsRawOrderInSn + * @return + */ + @PostMapping("/PurchaseOrderRKPda") + public AjaxResult PurchaseOrderRKPda(@RequestBody WmsRawOrderInSn wmsRawOrderInSn) { + odsProcureOrderService.PurchaseOrderRKPda(wmsRawOrderInSn); + //采购入库(PO) + return success(); + } + + + //** + + /** + * 用于出库任务页面--查询 + * + * @param odsProcureOrder + * @return + */ + @PostMapping("/PurchaseOrderOutboundPda") + public AjaxResult PurchaseOrderOutboundPda(@RequestBody OdsProcureOutOrder odsProcureOrder) { + OdsProcureOutOrder orderList =odsProcureOrderService.PurchaseOrderOutboundPda(odsProcureOrder); + return success(orderList); + } + +//** + + /** + * 用于出库任务页面-确认 + * + * @param odsProcureOrder + * @return + */ + @PostMapping("/addPurchaseOrderOutbound") + public AjaxResult addPurchaseOrderOutbound(@RequestBody OrderLine orderLine) { + odsProcureOrderService.addPurchaseOrderOutbound(orderLine); + return success(); + } + + } 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 f57dbd33c..31ac0d26b 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 @@ -1,18 +1,17 @@ package com.op.wms.controller; +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.domain.R; import com.op.common.core.utils.StringUtils; import com.op.common.core.web.domain.AjaxResult; -import com.op.wms.domain.OdsProcureOrder; -import com.op.wms.domain.WmsRawOrderInSn; -import com.op.wms.domain.WmsToWCSDTO; + +import com.op.wms.domain.*; +import com.op.wms.service.IBaseWarehouseService; import com.op.wms.service.IOdsProcureOrderService; import com.op.wms.service.IWmsToWCSmissionService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -26,7 +25,8 @@ public class WmsToWCSmissionController { private IWmsToWCSmissionService iWmsToWCSmissionService; @Autowired private IOdsProcureOrderService odsProcureOrderService; - + @Autowired + private IBaseWarehouseService baseWarehouseService; /** * 包材请求入库--- * @param wcsdto @@ -117,6 +117,17 @@ public WmsToWCSDTO packingMaterialsOutBoundCompleted(@RequestBody WmsToWCSDTO wc return success(wmsRawOrderInSns); } + /** + * 查询仓库管理列表 + */ + + @GetMapping("/list") + public AjaxResult list(@RequestBody BaseWarehouse baseWarehouse) { + + List list = baseWarehouseService.selectBaseWarehouseListTWO(baseWarehouse); + return success(list); + } + /** * 入库操作 * @param wmsRawOrderInSn @@ -129,5 +140,12 @@ public WmsToWCSDTO packingMaterialsOutBoundCompleted(@RequestBody WmsToWCSDTO wc return success(); } + /** + * 采购订单接口 + */ + @PostMapping("/sapPurchaseOrderSync") + public R sapPurchaseOrderSync(@RequestBody SapBackflushMPQuery sapPurchaseOrderQuery){ + return odsProcureOrderService.sapPurchaseOrderSync(sapPurchaseOrderQuery); + } } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java index 8f17f7c67..f280a421c 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java @@ -2,6 +2,8 @@ package com.op.wms.domain; import java.math.BigDecimal; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonInclude; import org.apache.commons.lang3.builder.ToStringBuilder; @@ -22,6 +24,15 @@ public class OdsProcureOrder extends BaseEntity { private String ID; @Excel(name = "工厂编码") private String factoryCode; + List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } public String getFactoryCode() { return factoryCode; 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 cb08faf90..f4e76d130 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 @@ -2,7 +2,10 @@ package com.op.wms.domain; import java.math.BigDecimal; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonInclude; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.op.common.core.annotation.Excel; @@ -10,10 +13,11 @@ import com.op.common.core.web.domain.BaseEntity; /** * 包材出库单对象 ods_procure_out_order - * + * * @author Open Platform * @date 2023-07-06 */ +@JsonInclude(JsonInclude.Include.NON_NULL) public class OdsProcureOutOrder extends BaseEntity { private static final long serialVersionUID = 1L; @@ -23,6 +27,14 @@ public class OdsProcureOutOrder extends BaseEntity { /** ID */ private String ID; + List list; + + public List getList() { + return list; + } + public void setList(List list) { + this.list = list; + } /** 生成订单 */ @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 081711879..65133803a 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 @@ -3,6 +3,7 @@ package com.op.wms.domain; import com.op.common.core.web.domain.BaseEntity; import java.math.BigDecimal; +import java.util.List; public class OrderLine extends BaseEntity { private String orderNo;//订单号 @@ -14,6 +15,19 @@ public class OrderLine extends BaseEntity { private String qualityStatus;//质检状态,1合格,2不合格 private String stationNo;//包装线 + + + + List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + public String getOrderNo() { return orderNo; } 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 77c3fbbc3..53ff66b59 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 @@ -10,7 +10,7 @@ import com.op.common.core.web.domain.BaseEntity; /** * 包材库存明细表对象 wms_ods_mate_storage_news_sn - * + * * @author Open Platform * @date 2023-08-30 */ @@ -18,7 +18,7 @@ public class WmsOdsMateStorageNewsSn extends BaseEntity { private static final long serialVersionUID = 1L; /** 唯一序列号 */ - private Long mateOrderInSnId; + private String mateOrderInSnId; /** 仓库编码 */ @Excel(name = "仓库编码") @@ -130,11 +130,11 @@ public class WmsOdsMateStorageNewsSn extends BaseEntity { @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") private String sapFactoryCode; - public void setMateOrderInSnId(Long mateOrderInSnId) { + public void setMateOrderInSnId(String mateOrderInSnId) { this.mateOrderInSnId = mateOrderInSnId; } - public Long getMateOrderInSnId() { + public String getMateOrderInSnId() { return mateOrderInSnId; } public void setWhCode(String whCode) { 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 1a85d12e6..b4aad6b57 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 @@ -6,14 +6,14 @@ import com.op.wms.domain.OdsProcureOutOrder; /** * 包材出库单Mapper接口 - * + * * @author Open Platform * @date 2023-07-06 */ public interface OdsProcureOutOrderMapper { /** * 查询包材出库单 - * + * * @param ID 包材出库单主键 * @return 包材出库单 */ @@ -21,7 +21,7 @@ public interface OdsProcureOutOrderMapper { /** * 查询包材出库单列表 - * + * * @param odsProcureOutOrder 包材出库单 * @return 包材出库单集合 */ @@ -29,7 +29,7 @@ public interface OdsProcureOutOrderMapper { /** * 新增包材出库单 - * + * * @param odsProcureOutOrder 包材出库单 * @return 结果 */ @@ -37,7 +37,7 @@ public interface OdsProcureOutOrderMapper { /** * 修改包材出库单 - * + * * @param odsProcureOutOrder 包材出库单 * @return 结果 */ @@ -45,7 +45,7 @@ public interface OdsProcureOutOrderMapper { /** * 删除包材出库单 - * + * * @param ID 包材出库单主键 * @return 结果 */ @@ -53,9 +53,13 @@ public interface OdsProcureOutOrderMapper { /** * 批量删除包材出库单 - * + * * @param IDs 需要删除的数据主键集合 * @return 结果 */ public int deleteOdsProcureOutOrderByIDs(String[] IDs); + + OdsProcureOutOrder selectmesPrepare(OdsProcureOutOrder odsProcureOrder); + + List selectmesPrepareDetail(OdsProcureOutOrder odsProcureOutOrder); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseWarehouseService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseWarehouseService.java index 09236e03e..5d475ac80 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseWarehouseService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IBaseWarehouseService.java @@ -5,14 +5,14 @@ import com.op.wms.domain.BaseWarehouse; /** * 仓库管理Service接口 - * + * * @author Open Platform * @date 2023-07-04 */ public interface IBaseWarehouseService { /** * 查询仓库管理 - * + * * @param warehouseId 仓库管理主键 * @return 仓库管理 */ @@ -20,7 +20,7 @@ public interface IBaseWarehouseService { /** * 查询仓库管理列表 - * + * * @param baseWarehouse 仓库管理 * @return 仓库管理集合 */ @@ -28,7 +28,7 @@ public interface IBaseWarehouseService { /** * 新增仓库管理 - * + * * @param baseWarehouse 仓库管理 * @return 结果 */ @@ -36,7 +36,7 @@ public interface IBaseWarehouseService { /** * 修改仓库管理 - * + * * @param baseWarehouse 仓库管理 * @return 结果 */ @@ -44,7 +44,7 @@ public interface IBaseWarehouseService { /** * 批量删除仓库管理 - * + * * @param warehouseIds 需要删除的仓库管理主键集合 * @return 结果 */ @@ -52,7 +52,7 @@ public interface IBaseWarehouseService { /** * 删除仓库管理信息 - * + * * @param warehouseId 仓库管理主键 * @return 结果 */ @@ -60,4 +60,6 @@ public interface IBaseWarehouseService { boolean checkWarehouseCodeUnique(BaseWarehouse baseWarehouse); boolean checkWarehouseNameUnique(BaseWarehouse baseWarehouse); + + List selectBaseWarehouseListTWO(BaseWarehouse baseWarehouse); } 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 cf6219721..dd6f47286 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 @@ -1,8 +1,9 @@ package com.op.wms.service; import java.util.List; -import com.op.wms.domain.OdsProcureOrder; -import com.op.wms.domain.WmsRawOrderInSn; + +import com.op.common.core.domain.R; +import com.op.wms.domain.*; /** * 包材采购单Service接口 @@ -68,4 +69,10 @@ public interface IOdsProcureOrderService { List PurchaseOrderWarehousingPda(WmsRawOrderInSn wmsRawOrderInSn); void PurchaseOrderRKPda(WmsRawOrderInSn wmsRawOrderInSn); + + OdsProcureOutOrder PurchaseOrderOutboundPda(OdsProcureOutOrder odsProcureOrder); + + OrderLine addPurchaseOrderOutbound(OrderLine orderLine); + + R sapPurchaseOrderSync(SapBackflushMPQuery sapPurchaseOrderQuery); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseWarehouseServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseWarehouseServiceImpl.java index e7a0d3fcd..4a58fe54c 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseWarehouseServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BaseWarehouseServiceImpl.java @@ -3,6 +3,7 @@ package com.op.wms.service.impl; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.op.common.core.utils.DateUtils; import com.op.common.security.utils.SecurityUtils; import com.op.wms.domain.BaseEquipment; @@ -133,4 +134,10 @@ public class BaseWarehouseServiceImpl implements IBaseWarehouseService { return true; } } + + @Override + public List selectBaseWarehouseListTWO(BaseWarehouse baseWarehouse) { + DynamicDataSourceContextHolder.push("ds_" + baseWarehouse.getFactoryCode()); + return baseWarehouseMapper.selectBaseWarehouseList(baseWarehouse); + } } 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 10f6d23bf..9e7bf1263 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,19 +1,36 @@ package com.op.wms.service.impl; +import com.alibaba.fastjson2.JSONArray; + + +import com.alibaba.fastjson.JSONObject; import java.math.BigDecimal; +import java.text.SimpleDateFormat; + import java.util.Date; import java.util.List; + +import com.op.common.core.domain.R; + + + + +import okhttp3.OkHttpClient; +import okhttp3.MediaType; +import okhttp3.RequestBody; +import okhttp3.Request; +import okhttp3.Response; + + +import java.io.IOException; 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.WmsOdsMateStorageNewsMapper; -import com.op.wms.mapper.WmsOdsMateStorageNewsSnMapper; -import com.op.wms.mapper.WmsRawOrderInSnMapper; +import com.op.wms.mapper.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.op.wms.mapper.OdsProcureOrderMapper; import com.op.wms.service.IOdsProcureOrderService; /** @@ -32,6 +49,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { private WmsOdsMateStorageNewsSnMapper wmsOdsMateStorageNewsSnMapper; @Autowired private WmsOdsMateStorageNewsMapper wmsOdsMateStorageNewsMapper; + @Autowired + private OdsProcureOutOrderMapper odsProcureOutOrderMapper; /** * 查询包材采购单 @@ -175,6 +194,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { // // } WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn=new WmsOdsMateStorageNewsSn(); + wmsOdsMateStorageNewsSn.setMateOrderInSnId(IdUtils.fastSimpleUUID()); wmsOdsMateStorageNewsSn.setWhCode(wmsRawOrderInSn.getWhCode());//仓库编码 wmsOdsMateStorageNewsSn.setWlCode(wmsRawOrderInSn.getWlCode());//库位编码 wmsOdsMateStorageNewsSn.setMaterialCode(wmsRawOrderInSn.getMaterialCode()); @@ -218,4 +238,205 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { wmsRawOrderInSnMapper.updateU1Byid(wmsRawOrderInSn); //修改库存--加,并且为冻结的,sap过账后再解 } + + @Override + @DS("#header.poolName") + public OdsProcureOutOrder PurchaseOrderOutboundPda(OdsProcureOutOrder odsProcureOrder) { + //母单,其中list里面是对应的子单 + OdsProcureOutOrder odsProcureOutOrder= odsProcureOutOrderMapper.selectmesPrepare(odsProcureOrder); + + if (odsProcureOutOrder!=null){ + List orderList= odsProcureOutOrderMapper.selectmesPrepareDetail(odsProcureOutOrder); + odsProcureOutOrder.setList(orderList); + } + + return odsProcureOutOrder; + + } + + @Override + @DS("#header.poolName") + public OrderLine addPurchaseOrderOutbound(OrderLine orderLine) { + //自己生成行项目,,批次号 + List orderList= orderLine.getList(); + + //根据订单号查询对应的最大批次号 + Integer orderItem = 0; + for (OrderLine orderLine1: + orderList) { + orderItem++; + orderLine1.setOrderLineNo(String.format("%05d", orderItem)); + orderLine1.setBatchNo("00001"); + } + //String meg= addPurchaseOrderOutboundSAP(orderLine); + //if ("OK".equals(meg)){//成功 + OdsProcureOutOrder odsProcureOutOrder=new OdsProcureOutOrder(); + odsProcureOutOrder.setID(IdUtils.fastSimpleUUID()); + odsProcureOutOrder.setProduceCode(orderLine.getOrderNo()); + //odsProcureOutOrder.set + odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); + //修改库存 + //} + return orderLine; + } + + @Override + public R sapPurchaseOrderSync(SapBackflushMPQuery sapPurchaseOrderQuery) { +// DynamicDataSourceContextHolder.push("ds_" + sapPurchaseOrderQuery.getFactoryCode()); +// try { +// // 获取调用 RFC 函数对象 +// //获取连接 +// //JCoDestination dest = SAPConnUtils.connect(); +// JCoRepository repository = dest.getRepository(); +// JCoFunction func = repository.getFunction("ZMES_GET_PROCURE"); +// JCoParameterList jCoParameterList= func.getTableParameterList(); +// System.out.println(jCoParameterList); +// if (func == null) { +// throw new RuntimeException("Function does not exist in SAP"); +// } +// /** S_EBELN 采购订单号 +// * S_EBELP 行项目 +// * S_MATNR 物料号 +// * S_PWERK 工厂 +// */ +// if (!StringUtils.isNull(sapPurchaseOrderQuery.getEbeln())){ +// JCoTable S_EBELN = func.getTableParameterList().getTable("S_EBELN"); +// S_EBELN.appendRow(); +// S_EBELN.setValue(Constants.SIGN, "I"); +// S_EBELN.setValue(Constants.OPTION, "EQ"); +// S_EBELN.setValue(Constants.LOW, sapPurchaseOrderQuery.getEbeln()); +// } +//// if (!StringUtils.isNull(sapPurchaseOrderQuery.getEbeln())){ +//// JCoTable S_EBELN = func.getTableParameterList().getTable("S_EBELP"); +//// S_EBELN.appendRow(); +//// S_EBELN.setValue(Constants.SIGN, "I"); +//// S_EBELN.setValue(Constants.OPTION, "EQ"); +//// S_EBELN.setValue(Constants.LOW, sapPurchaseOrderQuery.getEbeln()); +//// } +//// if (!StringUtils.isNull(sapPurchaseOrderQuery.getMatnr())){ +//// JCoTable S_MATNR = func.getTableParameterList().getTable("S_MATNR"); +//// S_MATNR.appendRow(); +//// S_MATNR.setValue(Constants.SIGN, "I"); +//// S_MATNR.setValue(Constants.OPTION, "EQ"); +//// S_MATNR.setValue(Constants.LOW, sapPurchaseOrderQuery.getMatnr()); +//// } +//// +//// if (!StringUtils.isNull(sapPurchaseOrderQuery.getPwerk())){ +//// JCoTable S_PWERK = func.getTableParameterList().getTable("S_PWERK"); +//// S_PWERK.appendRow(); +//// S_PWERK.setValue(Constants.SIGN, "I"); +//// S_PWERK.setValue(Constants.OPTION, "EQ"); +//// S_PWERK.setValue(Constants.LOW, sapPurchaseOrderQuery.getPwerk()); +//// } +// func.execute(dest);//执行调用函数 +// // 获取 内表 - LT_PROCURE +// JCoTable maraTable = func.getTableParameterList().getTable("LT_PROCURE"); +// JCoRecordMetaData metaData = maraTable.getRecordMetaData(); +// System.out.println("###" + metaData.toString()); +// +// List sapCustomList=new ArrayList<>(); +// for (int i = 0; i orderList= orderLinete.getList(); + // 创建订单行数组,并将订单行对象添加到数组中 + for (OrderLine orderLine1: + orderList ) { + JSONObject orderLine = new JSONObject(); + orderLine.put("orderLineNo", orderLine1.getOrderLineNo()); + orderLine.put("sku", orderLine1.getSku()); + orderLine.put("batchNo",orderLine1.getBatchNo()); + orderLine.put("qty", orderLine1.getQty()); + orderLine.put("qualityStatus", 1); + orderLine.put("location", orderLine1.getStationNo()); + orderLines.add(orderLine); + } + payload.put("orderLines", orderLines); + // 创建请求体,将JSON对象转换为字符串 + RequestBody body = RequestBody.create(mediaType, payload.toString()); + // 创建POST请求 + Request request = new Request.Builder() + .url(url) + .post(body) + .build(); + // 执行请求并获取响应 + Response response = client.newCall(request).execute(); + // 获取响应数据并转换为JSON对象 + String responseData = response.body().string(); + JSONObject result = JSONObject.parseObject(responseData); + // 获取返回结果结果JSON对象,请求编码、状态码和消息 + result.get("reqCode"); + result.get("code"); + String message= (String) result.get("message"); + response.close(); + return message; + } catch (IOException e) { + // 捕获IOException并处理异常 + e.printStackTrace(); // 这里最好记录异常到日志文件或者进行其他处理 + } finally { + // 关闭OkHttpClient + client.dispatcher().executorService().shutdown(); + } +// 返回0 + return null; + + } + } 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 19fda8cb3..5b2d0aed1 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 @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -47,7 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + - + insert into ods_procure_out_order @@ -210,9 +210,35 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - delete from ods_procure_out_order where ID in + delete from ods_procure_out_order where ID in #{ID} - \ No newline at end of file + + + 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 e623fe4c3..8d500ff17 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 @@ -81,6 +81,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" insert into wms_ods_mate_storage_news_sn + mate_order_in_sn_id, wh_code, wa_code, wl_code, @@ -111,6 +112,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" sap_factory_code, + #{mateOrderInSnId}, #{whCode}, #{waCode}, #{wlCode},