From 159aceedb089af3260521ce8e6ec0940bb943324 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Thu, 11 Jul 2024 13:56:24 +0800 Subject: [PATCH] =?UTF-8?q?wms=E5=8C=85=E6=9D=90=E5=87=BA=E5=BA=93?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2--=E5=8F=8D=E5=86=B2=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OdsProcureOrderController.java | 36 ++- .../OdsProcureOutOrderController.java | 7 +- .../com/op/wms/domain/OdsProcureOutOrder.java | 20 ++ .../java/com/op/wms/domain/OrderLine.java | 25 +- .../wms/mapper/OdsProcureOutOrderMapper.java | 12 + .../wms/service/IOdsProcureOrderService.java | 6 + .../service/IOdsProcureOutOrderService.java | 2 + .../impl/OdsProcureOrderServiceImpl.java | 122 ++++++++- .../impl/OdsProcureOutOrderServiceImpl.java | 7 + .../mapper/wms/OdsProcureOutOrderMapper.xml | 245 +++++++++++++++++- 10 files changed, 470 insertions(+), 12 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 77124768..6fe0b484 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 @@ -186,9 +186,29 @@ public class OdsProcureOrderController extends BaseController { OdsProcureOutOrder orderList = odsProcureOrderService.PurchaseOrderOutboundPda(odsProcureOrder); return success(orderList); } - + /** + * 用于出库任务页面--查询 fc + * + * @param odsProcureOrder + * @return + */ + @PostMapping("/PurchaseOrderOutboundPdafc") + public AjaxResult PurchaseOrderOutboundPdafc(@RequestBody OdsProcureOutOrder odsProcureOrder) { + OdsProcureOutOrder orderList = odsProcureOrderService.PurchaseOrderOutboundPdafc(odsProcureOrder); + return success(orderList); + } //** - + /** + * 用于出库任务页面-确认fc + * + * @param + * @return + */ + @PostMapping("/addPurchaseOrderOutboundfc") + public AjaxResult addPurchaseOrderOutboundfc(@RequestBody OrderLine orderLine) { + odsProcureOrderService.addPurchaseOrderOutboundfc(orderLine); + return success(); + } /** * 用于出库任务页面-确认 * @@ -289,7 +309,17 @@ public class OdsProcureOrderController extends BaseController { odsProcureOrderService.OutboundPostingSAP(orderList); return success(); } - + /** + * 出库过账 + * + * @param orderList + * @return + */ + @PostMapping("/OutboundPostingSAPfc") + public AjaxResult OutboundPostingSAPfc(@RequestBody List orderList) { + odsProcureOrderService.OutboundPostingSAPfc(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 1fc9a2ed..11707ead 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 @@ -59,7 +59,12 @@ public class OdsProcureOutOrderController extends BaseController { return getDataTable(list); } - + @PostMapping("/listZUFC") + public TableDataInfo listZUFC(OdsProcureOutOrder odsProcureOutOrder) { + startPage(); + List list = odsProcureOutOrderService.selectOdsProcureOutOrderListZUfc(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 e4075efc..2ecfc124 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 @@ -98,6 +98,26 @@ public class OdsProcureOutOrder extends BaseEntity { @Excel(name = "计划日期", width = 30, dateFormat = "yyyy-MM-dd") private Date planDate; + private String planDateMin; + + private String planDateMax; + + public String getPlanDateMin() { + return planDateMin; + } + + public void setPlanDateMin(String planDateMin) { + this.planDateMin = planDateMin; + } + + public String getPlanDateMax() { + return planDateMax; + } + + public void setPlanDateMax(String planDateMax) { + this.planDateMax = planDateMax; + } + /** * 计划数量 */ 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 86943e6e..20887931 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 @@ -1,8 +1,11 @@ package com.op.wms.domain; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.op.common.core.annotation.Excel; import com.op.common.core.web.domain.BaseEntity; import java.math.BigDecimal; +import java.util.Date; import java.util.List; public class OrderLine extends BaseEntity { @@ -15,11 +18,19 @@ public class OrderLine extends BaseEntity { private String qualityStatus;//质检状态,1合格,2不合格 private String stationNo;//包装线 private String ken;//包装线--如果是用于自动化就选1,如果是手持人工出库就选2 - + private String userDefined5;//包装线--如果是用于自动化就选1,如果是手持人工出库就选2 public String getKen() { return ken; } + public String getUserDefined5() { + return userDefined5; + } + + public void setUserDefined5(String userDefined5) { + this.userDefined5 = userDefined5; + } + public void setKen(String ken) { this.ken = ken; } @@ -32,6 +43,18 @@ public class OrderLine extends BaseEntity { private String userDefined2; private String userDefined3; + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "计划日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date planDate; + + public Date getPlanDate() { + return planDate; + } + + public void setPlanDate(Date planDate) { + this.planDate = planDate; + } + public String getUserDefined3() { return userDefined3; } 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 cc3e4a12..b1c606d1 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 @@ -88,4 +88,16 @@ public interface OdsProcureOutOrderMapper { List selectmesPrepareDetailWhite(OdsProcureOutOrder odsProcureOutOrder); OdsProcureOutOrder selectmesPreparelike(OdsProcureOutOrder odsProcureOrder); + + List selectOdsProcureOutOrderListZUfc(OdsProcureOutOrder odsProcureOutOrder); + + List PurchaseOrderOutboundPdafc(OdsProcureOutOrder odsProcureOrder); + + public int insertOdsProcureOutOrderfc(OdsProcureOutOrder odsProcureOutOrder); + + List selectOdsProcureOutOrderListByu1fc(List orderList); + + void updateOdsProcureOutOrderByidsfc(@Param("order") OdsProcureOutOrder order, @Param("list") List sapMaterialPostingList); + + OdsProcureOutOrder selectOdsProcureOutOrderListZUfcsy(OdsProcureOutOrder odsProcureOutOrder); } 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 e7012987..574cd180 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 @@ -105,4 +105,10 @@ public interface IOdsProcureOrderService { List ArrivalRegistrationreader(OdsProcureOrder odsProcureOrder); AjaxResult getDeliveryNoteDetail(OdsProcureOrder odsProcureOrder); + + OdsProcureOutOrder PurchaseOrderOutboundPdafc(OdsProcureOutOrder odsProcureOrder); + + OrderLine addPurchaseOrderOutboundfc(OrderLine orderLine); + + void OutboundPostingSAPfc(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 1094cfd0..f7b99922 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 @@ -62,4 +62,6 @@ public interface IOdsProcureOutOrderService { List selectOdsProcureOutOrderListZU(OdsProcureOutOrder odsProcureOutOrder); List selectOdsProcureOutOrderListZUTwo(OdsProcureOutOrder odsProcureOutOrder1); + + List selectOdsProcureOutOrderListZUfc(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 5b6f027d..7fcabdf4 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 @@ -614,7 +614,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { String msg = result.getMsg(); //order.setSapMaterialPostingList(sapMaterialPostingList); order.setUserDefined11(msg); - if (code == 200) {//过账成功 + if (code == 200) { + //过账成功 Map map = new HashMap(); map = (Map) result.getData(); String userDefined9 = (String) map.get("MATERIALDOCUMENT"); @@ -629,13 +630,15 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { } } - if (sapMaterialPostingFCList.size() > 0) {//反冲过账 + 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) {//过账成功 + if (code == 200) { + //过账成功 Map map = new HashMap(); map = (Map) result2.getData(); String userDefined9 = (String) map.get("MATERIALDOCUMENT"); @@ -836,6 +839,119 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { return AjaxResult.success(); } + @Override + @DS("#header.poolName") + public OdsProcureOutOrder PurchaseOrderOutboundPdafc(OdsProcureOutOrder odsProcureOrder) { + //用日期进行累计 + List orderList = odsProcureOutOrderMapper.PurchaseOrderOutboundPdafc(odsProcureOrder); + for(OdsProcureOutOrder odsProcureOutOrder:orderList){ + + OdsProcureOutOrder odsProcureOutOrder1= odsProcureOutOrderMapper.selectOdsProcureOutOrderListZUfcsy(odsProcureOutOrder); + if (odsProcureOutOrder1!=null){ + odsProcureOutOrder.setOutNumber(odsProcureOutOrder1.getOutNumber()); + }else { + odsProcureOutOrder.setOutNumber(new BigDecimal("0")); + } + + } + odsProcureOrder.setList(orderList); + return odsProcureOrder; + } + + @Override + @DS("#header.poolName") + public OrderLine addPurchaseOrderOutboundfc(OrderLine orderLine) { + //自己生成行项目,,批次号 + List orderList = orderLine.getList(); + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); + Date date = new Date(); + String formattedDate = dateFormat.format(date); + //根据订单号查询对应的最大批次号 + Integer orderItem = 0; + for (OrderLine orderLine1 : + orderList) { + orderItem++; + orderLine1.setOrderLineNo(String.format("%05d", orderItem)); + orderLine1.setBatchNo(formattedDate); + } + //手持出库 + for (OrderLine orderLine1 : + orderList) { + OdsProcureOutOrder odsProcureOutOrder = new OdsProcureOutOrder(); + odsProcureOutOrder.setID(IdUtils.fastSimpleUUID()); + odsProcureOutOrder.setSiteCode(orderLine1.getSiteCode()); + odsProcureOutOrder.setProduceCode("FC"+formattedDate);//订单号是生成的 + odsProcureOutOrder.setLocCode(orderLine.getWarehouseNo()); + odsProcureOutOrder.setMaterialCode(orderLine1.getMaterialCode()); + odsProcureOutOrder.setMaterialDesc(orderLine1.getMaterialDesc()); + odsProcureOutOrder.setPlanDate(orderLine1.getPlanDate()); + odsProcureOutOrder.setUnit(orderLine1.getUnit()); + odsProcureOutOrder.setProductionLineCode(orderLine1.getStationNo()); + odsProcureOutOrder.setUserDefined1(orderLine1.getBatchNo()); + odsProcureOutOrder.setActive("1"); + odsProcureOutOrder.setOrderStatus("1"); + odsProcureOutOrder.setPlanNumber(orderLine1.getQty()); + odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); + odsProcureOutOrder.setUserDefined3(orderLine1.getUserDefined3()); + odsProcureOutOrder.setUserDefined10("1"); + odsProcureOutOrder.setCreateBy(SecurityUtils.getUsername()); + odsProcureOutOrder.setCreateDate(new Date()); + odsProcureOutOrder.setUserDefined5(orderLine1.getUserDefined5()); + //odsProcureOutOrder.set + odsProcureOutOrderMapper.insertOdsProcureOutOrderfc(odsProcureOutOrder); + } + return orderLine; + } + + @Override + public void OutboundPostingSAPfc(List orderList) { +// * 退料的移动类型为 262 +// * 领料的移动类型为 261 + // List orderList1=odsProcureOutOrderMapper.selectOdsProcureOutOrderListByIds(orderList); + List orderList1 = odsProcureOutOrderMapper.selectOdsProcureOutOrderListByu1fc(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仓库号 + 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); + } + 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.updateOdsProcureOutOrderByidsfc(order, orderList2FC); + } else {// + order.setUserDefined9(""); + order.setUserDefined10("3");//失败 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByidsfc(order, orderList2FC); + } + } + } + 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/OdsProcureOutOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOutOrderServiceImpl.java index 662ccc8e..2a759bdd 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 @@ -124,4 +124,11 @@ public class OdsProcureOutOrderServiceImpl implements IOdsProcureOutOrderService List orderList = odsProcureOutOrderMapper.selectOdsProcureOutOrderListZUT(odsProcureOutOrder1); return orderList; } + + @Override + @DS("#header.poolName") + public List selectOdsProcureOutOrderListZUfc(OdsProcureOutOrder odsProcureOutOrder) { + List orderList = odsProcureOutOrderMapper.selectOdsProcureOutOrderListZUfc(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 4160596e..ffab7996 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 @@ -64,6 +64,20 @@ ORDER BY Create_Date DESC; + WHERE @@ -356,6 +454,54 @@ #{item.ID} + - - + +