From 69a2f60160c31ad2e1a9fecb0b0a6599de73eb43 Mon Sep 17 00:00:00 2001 From: Yangwl <1726150332@qq.com> Date: Thu, 28 Dec 2023 17:32:38 +0800 Subject: [PATCH] =?UTF-8?q?101=E7=B1=BB=E5=9E=8B=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E6=94=B6=E8=B4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/op/system/api/RemoteSapService.java | 4 ++ .../api/factory/RemoteSapFallbackFactory.java | 5 ++ .../com/op/sap/controller/SapController.java | 15 ++-- .../sap/domain/vo/SapOrderReceiptQuery.java | 69 +++++++++++-------- .../com/op/sap/service/SapOrderService.java | 3 +- .../sap/service/impl/SapOrderServiceImpl.java | 69 ++++++------------- 6 files changed, 82 insertions(+), 83 deletions(-) diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java index d5993b186..4eacd38fb 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java @@ -91,4 +91,8 @@ public interface RemoteSapService { /**采购订单收货过账*/ @PostMapping("/sap/sapPOrderGoodsReceipt") public R sapPOrderGoodsReceipt(@RequestBody(required = false) List> mapList); + + /**101类型订单收货*/ + @PostMapping("/sap/sapOrderReceipt") + public R sapOrderReceipt(@RequestBody(required = false) List> mapList); } diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java index f054f17fe..2fb7821fa 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java @@ -109,6 +109,11 @@ public class RemoteSapFallbackFactory implements FallbackFactory> mapList) { + return R.fail("101类型订单收货过账失败" + throwable.getMessage()); + } + }; } } diff --git a/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java b/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java index 0e56963e5..ac38e60dd 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java @@ -414,13 +414,20 @@ public class SapController extends BaseController { /** * 智慧工厂101类型订单收货 * 订单为母订单 - * @param sapOrderReceiptQuery + * * AUFNR CHAR12 订单号 必填 + * * WERKS 工厂 + * * LGORT CHAR4 库位 必填 + * * QUANTITY 数量 + * * ERFME UNIT 条目单位 + * * BATCH 批号 + * * HSDAT DATS8 生产日期 必填 + * @param mapList * @return */ @PostMapping("/sapOrderReceipt") @Log(title = "智慧工厂101类型订单收货", businessType = BusinessType.SAP) - public R sapOrderReceipt(@RequestBody SapOrderReceiptQuery sapOrderReceiptQuery){ - return sapOrderService.sapOrderReceipt(sapOrderReceiptQuery); + public R sapOrderReceipt(@RequestBody(required = false) List> mapList){ + return sapOrderService.sapOrderReceipt(mapList); } /**================================WMS=============================*/ @@ -438,7 +445,7 @@ public class SapController extends BaseController { /** * 成品下线入库 - *ZMES_201_MB1A(新增) + * ZMES_201_MB1A(新增) * ZMES_961_MB1A * ZMES_962_MB1A * @param diff --git a/op-modules/op-sap/src/main/java/com/op/sap/domain/vo/SapOrderReceiptQuery.java b/op-modules/op-sap/src/main/java/com/op/sap/domain/vo/SapOrderReceiptQuery.java index a07f4d17c..4ba54d0f6 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/domain/vo/SapOrderReceiptQuery.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/domain/vo/SapOrderReceiptQuery.java @@ -2,22 +2,24 @@ package com.op.sap.domain.vo; /** * AUFNR CHAR12 订单号 必填 + * WERKS 工厂 * LGORT CHAR4 库位 必填 - * ERFMG QUAN-13-3 数量 必填 - * CHARG CHAR10 批号 必填 - * HSDAT DATS8 生产日期 必填 + * QUANTITY 数量 * ERFME UNIT 条目单位 + * BATCH 批号 + * HSDAT DATS8 生产日期 必填 * auth YangWL */ public class SapOrderReceiptQuery { private String aufnr; + private String werks; private String lgort; - private String erfmg; - private String charg; - private String hsdat; + private String quantity; private String erfme; + private String batch; + private String hsdat; public String getAufnr() { return aufnr; @@ -27,6 +29,14 @@ public class SapOrderReceiptQuery { this.aufnr = aufnr; } + public String getWerks() { + return werks; + } + + public void setWerks(String werks) { + this.werks = werks; + } + public String getLgort() { return lgort; } @@ -35,28 +45,12 @@ public class SapOrderReceiptQuery { this.lgort = lgort; } - public String getErfmg() { - return erfmg; + public String getQuantity() { + return quantity; } - public void setErfmg(String erfmg) { - this.erfmg = erfmg; - } - - public String getCharg() { - return charg; - } - - public void setCharg(String charg) { - this.charg = charg; - } - - public String getHsdat() { - return hsdat; - } - - public void setHsdat(String hsdat) { - this.hsdat = hsdat; + public void setQuantity(String quantit) { + this.quantity = quantit; } public String getErfme() { @@ -67,15 +61,32 @@ public class SapOrderReceiptQuery { this.erfme = erfme; } + public String getBatch() { + return batch; + } + + public void setBatch(String batch) { + this.batch = batch; + } + + public String getHsdat() { + return hsdat; + } + + public void setHsdat(String hsdat) { + this.hsdat = hsdat; + } + @Override public String toString() { return "SapOrderReceiptQuery{" + "aufnr='" + aufnr + '\'' + + ", werks='" + werks + '\'' + ", lgort='" + lgort + '\'' + - ", erfmg='" + erfmg + '\'' + - ", charg='" + charg + '\'' + - ", hsdat='" + hsdat + '\'' + + ", quantit='" + quantity + '\'' + ", erfme='" + erfme + '\'' + + ", batch='" + batch + '\'' + + ", hsdat='" + hsdat + '\'' + '}'; } } diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/SapOrderService.java b/op-modules/op-sap/src/main/java/com/op/sap/service/SapOrderService.java index 4d4d23dec..d9c3aaa4d 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/SapOrderService.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/SapOrderService.java @@ -3,6 +3,7 @@ package com.op.sap.service; import com.op.common.core.domain.R; import com.op.sap.domain.vo.SapOrderReceiptQuery; +import com.op.system.api.domain.sap.SapPurchaseOrderQuery; import com.op.system.api.domain.sap.*; import com.op.system.api.model.SapProOrder; @@ -49,7 +50,7 @@ public interface SapOrderService { R shopUpdateSync(SapShopOrderQuery sapProOrder); - R sapOrderReceipt(SapOrderReceiptQuery sapOrderReceiptQuery); + R sapOrderReceipt(List> mapList); R sapPOrderGoodsReceipt(List> mapList); diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java index 7e7a9d741..88f3ff50a 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapOrderServiceImpl.java @@ -8,9 +8,13 @@ import com.op.common.core.utils.StringUtils; import com.op.common.core.utils.uuid.IdUtils; import com.op.sap.domain.vo.SapOrderReceiptQuery; +import com.op.system.api.domain.sap.SapPurchaseOrderQuery; import com.op.sap.service.SapOrderService; -import com.op.system.api.domain.sap.*; +import com.op.system.api.domain.sap.SapCloseOrderQuery; +import com.op.system.api.domain.sap.SapCreateOrder; +import com.op.system.api.domain.sap.SapRFW; +import com.op.system.api.domain.sap.SapShopOrderQuery; import com.op.system.api.model.SapProOrder; import com.sap.conn.jco.*; @@ -478,62 +482,40 @@ public class SapOrderServiceImpl implements SapOrderService { } @Override - public R sapOrderReceipt(SapOrderReceiptQuery sapOrderReceiptQuery) { + public R sapOrderReceipt(List> mapList) { try { - log.info("智慧工厂101类型订单收货入参-------"+sapOrderReceiptQuery.toString()); + log.info("智慧工厂101类型订单收货入参-------"+mapList.toString()); JCoRepository repository = dest.getRepository(); JCoFunction func = repository.getFunction("ZMES_101_MIGO"); - //System.out.println(jCoParameterList); if (func == null) { throw new RuntimeException("Function does not exist in SAP"); } - if (StringUtils.isEmpty(sapOrderReceiptQuery.getAufnr())) - { - return R.fail("订单号为空!"); - } - if (StringUtils.isEmpty(sapOrderReceiptQuery.getLgort())) - { - return R.fail("库位为空!"); - } - if (StringUtils.isEmpty(sapOrderReceiptQuery.getErfmg())) - { - return R.fail("数量为空!"); - } - if (StringUtils.isEmpty(sapOrderReceiptQuery.getCharg())) - { - return R.fail("批号为空!"); - } - if (StringUtils.isEmpty(sapOrderReceiptQuery.getHsdat())) - { - return R.fail("生产日期为空!"); - } - // 配置传入参数 JCoTable L_ITEM = func.getTableParameterList().getTable("L_ITEM"); - L_ITEM.appendRow(); - - // System.out.println(L_ITEM); - L_ITEM.setValue("AUFNR",sapOrderReceiptQuery.getAufnr()); - L_ITEM.setValue("WERKS","1000"); - L_ITEM.setValue("LGORT",sapOrderReceiptQuery.getLgort()); - L_ITEM.setValue("QUANTITY",sapOrderReceiptQuery.getErfmg()); - L_ITEM.setValue("BATCH",sapOrderReceiptQuery.getCharg()); - L_ITEM.setValue("HSDAT",sapOrderReceiptQuery.getHsdat()); - L_ITEM.setValue("ERFME",sapOrderReceiptQuery.getErfme()); + for (Map stringObjectMap:mapList){ + L_ITEM.appendRow(); + L_ITEM.setValue("AUFNR",stringObjectMap.get("AUFNR")); + L_ITEM.setValue("WERKS",stringObjectMap.get("WERKS")); + L_ITEM.setValue("LGORT",stringObjectMap.get("LGORT")); + L_ITEM.setValue("QUANTITY",stringObjectMap.get("QUANTITY")); + L_ITEM.setValue("BATCH",stringObjectMap.get("BATCH")); + L_ITEM.setValue("HSDAT",stringObjectMap.get("HSDAT")); + L_ITEM.setValue("ERFME",stringObjectMap.get("ERFME")); + } func.execute(dest);//执行调用函数 - // System.out.println(func.getExportParameterList()); String RETCODE= func.getExportParameterList().getString("RETCODE"); String MESSAGE= func.getExportParameterList().getString("L_MSG"); String MATERIALDOCUMENT= func.getExportParameterList().getString("MATERIALDOCUMENT"); if ((Constants.FAIL).equals(Integer.parseInt(RETCODE))){ log.error("订单收货结果-----"+MESSAGE); - return R.fail(null,"订单号:"+sapOrderReceiptQuery.getAufnr()+MESSAGE); + return R.fail(MESSAGE); }else { log.info("订单收货结果-----"+MESSAGE); - return R.ok(MATERIALDOCUMENT,"订单号:"+sapOrderReceiptQuery.getAufnr()+MESSAGE); + return R.ok(MATERIALDOCUMENT,MESSAGE); } + }catch (Exception e){ log.error(e.getMessage()); return R.fail(e.getMessage()); @@ -615,17 +597,6 @@ public class SapOrderServiceImpl implements SapOrderService { } } -// public static void main(String[] args) { -// List sapBackflushMPQueryList=new ArrayList<>(); -// SapBackflushMPQuery sapBackflushMPQuery=new SapBackflushMPQuery(); -// sapBackflushMPQuery.setMatnr("000000020000000280"); -// sapBackflushMPQuery.setPlant("1000"); -// sapBackflushMPQuery.setLgort("0013"); -// sapBackflushMPQuery.setQuantity("3600"); -// sapBackflushMPQuery.setMeins("ST"); -// sapBackflushMPQueryList.add(sapBackflushMPQuery); -// System.out.println(JSONObject.toJSONString(sapBackflushMPQueryList)); -// } }