From 27f8051c7c8a6627075bd2a3459d4ac248cfb460 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Tue, 19 Dec 2023 14:34:07 +0800 Subject: [PATCH 01/10] =?UTF-8?q?wms=E4=BF=AE=E6=94=B98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/op/system/api/RemoteSapService.java | 1 + .../controller/OdsProcureOrderController.java | 12 ++ .../controller/WmsToWCSmissionController.java | 31 +++- .../com/op/wms/domain/OdsProcureOutOrder.java | 10 ++ .../java/com/op/wms/domain/OrderLine.java | 9 ++ .../op/wms/mapper/BaseWarehouseMapper.java | 16 +- .../wms/mapper/OdsProcureOutOrderMapper.java | 7 + .../wms/service/IOdsProcureOrderService.java | 2 + .../impl/OdsProcureOrderServiceImpl.java | 139 +++++++++++++++++- .../impl/WmsToWCSmissionServiceImpl.java | 2 +- .../mapper/wms/BaseWarehouseMapper.xml | 17 ++- .../mapper/wms/OdsProcureOutOrderMapper.xml | 48 +++++- 12 files changed, 275 insertions(+), 19 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 c5812c6cd..845ed2c9e 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 @@ -73,6 +73,7 @@ public interface RemoteSapService { public R sapBackflushMP(List sapBackflushMPQueryList); /**订单物料领料过账、原材料补料、订单物料退料过账接口(MB1A)**/ + @PostMapping("/sap/sapMaterialPosting") public R sapMaterialPosting(@RequestBody List sapMaterialPostingList); /**智慧工厂储位信息*/ 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 317cb9512..5568bd0fc 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 @@ -255,6 +255,7 @@ public class OdsProcureOrderController extends BaseController { List result= odsProcureOrderService.ProductionMaterialRequisition(odsProcureOutOrder); return success(result); } + /** * 生产领料--托盘数据查询 * @param wmsOdsMateStorageNewsSn @@ -277,4 +278,15 @@ public class OdsProcureOrderController extends BaseController { Integer result= odsProcureOrderService.ProductionMaterialRequisitionAdd(orderList); return success(result); } + + /** + * 出库过账 + * @param orderList + * @return + */ + @PostMapping("/OutboundPostingSAP") + public AjaxResult OutboundPostingSAP(@RequestBody List orderList) { + odsProcureOrderService.OutboundPostingSAP(orderList); + 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 1af86c7be..add308c5d 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 @@ -152,5 +152,34 @@ public WmsToWCSDTO packingMaterialsOutBoundCompleted(@RequestBody WmsToWCSDTO wc List result= odsProcureOrderService.ProductionMaterialRequisition(odsProcureOutOrder); return success(result); } - + /** + * 生产领料--托盘数据查询 + * @param wmsOdsMateStorageNewsSn + * @return + */ + @PostMapping("/ProductionMaterialRequisitionsn") + public AjaxResult ProductionMaterialRequisitionsn(@RequestBody WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn) { + WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn1= odsProcureOrderService.ProductionMaterialRequisitionsn(wmsOdsMateStorageNewsSn); + return success(wmsOdsMateStorageNewsSn1); + } + /** + * 出库过账 + * @param orderList + * @return + */ + @PostMapping("/OutboundPostingSAP") + public AjaxResult OutboundPostingSAP(@RequestBody List orderList) { + odsProcureOrderService.OutboundPostingSAP(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/domain/OdsProcureOutOrder.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOutOrder.java index 0c01a4940..1648f0813 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 @@ -66,6 +66,16 @@ public class OdsProcureOutOrder extends BaseEntity { @Excel(name = "计划数量") private BigDecimal planNumber; + private String sn; + + public String getSn() { + return sn; + } + + public void setSn(String sn) { + this.sn = sn; + } + /** 单位 */ @Excel(name = "单位") private String Unit; 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 9bcb71a25..22f1a2b47 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 @@ -30,6 +30,15 @@ public class OrderLine extends BaseEntity { private String siteCode; private String unit; private String userDefined2; + private String userDefined3; + + public String getUserDefined3() { + return userDefined3; + } + + public void setUserDefined3(String userDefined3) { + this.userDefined3 = userDefined3; + } public String getMaterialCode() { return materialCode; diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseWarehouseMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseWarehouseMapper.java index 3834bd30e..3235d2689 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseWarehouseMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseWarehouseMapper.java @@ -7,14 +7,14 @@ import com.op.wms.domain.BaseWarehouse; /** * 仓库管理Mapper接口 - * + * * @author Open Platform * @date 2023-07-04 */ public interface BaseWarehouseMapper { /** * 查询仓库管理 - * + * * @param warehouseId 仓库管理主键 * @return 仓库管理 */ @@ -22,7 +22,7 @@ public interface BaseWarehouseMapper { /** * 查询仓库管理列表 - * + * * @param baseWarehouse 仓库管理 * @return 仓库管理集合 */ @@ -30,7 +30,7 @@ public interface BaseWarehouseMapper { /** * 新增仓库管理 - * + * * @param baseWarehouse 仓库管理 * @return 结果 */ @@ -38,7 +38,7 @@ public interface BaseWarehouseMapper { /** * 修改仓库管理 - * + * * @param baseWarehouse 仓库管理 * @return 结果 */ @@ -46,7 +46,7 @@ public interface BaseWarehouseMapper { /** * 删除仓库管理 - * + * * @param warehouseId 仓库管理主键 * @return 结果 */ @@ -54,7 +54,7 @@ public interface BaseWarehouseMapper { /** * 批量删除仓库管理 - * + * * @param warehouseIds 需要删除的数据主键集合 * @return 结果 */ @@ -64,4 +64,6 @@ public interface BaseWarehouseMapper { String checkWarehouseCodeUnique(BaseWarehouse baseWarehouse); String checkWarehouseNameUnique(BaseWarehouse baseWarehouse); + + String selectByCode(String locCode); } 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 b4aad6b57..d48005bf1 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 @@ -3,6 +3,7 @@ package com.op.wms.mapper; import java.util.List; import com.op.wms.domain.OdsProcureOutOrder; +import org.apache.ibatis.annotations.Param; /** * 包材出库单Mapper接口 @@ -62,4 +63,10 @@ public interface OdsProcureOutOrderMapper { OdsProcureOutOrder selectmesPrepare(OdsProcureOutOrder odsProcureOrder); List selectmesPrepareDetail(OdsProcureOutOrder odsProcureOutOrder); + + void insertWmsRawMissionOut(OdsProcureOutOrder order); + + void updateOdsProcureOutOrderByid(OdsProcureOutOrder odsProcureOutOrder); + + List selectOdsProcureOutOrderListByIds(@Param("list") List orderList); } 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 3a0b9173b..7c79cc8fb 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 @@ -88,4 +88,6 @@ public interface IOdsProcureOrderService { Integer ProductionMaterialRequisitionAdd(List orderList); WmsOdsMateStorageNewsSn ProductionMaterialRequisitionsn(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn); + + void OutboundPostingSAP(List 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 9120c4c1c..723ddc471 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 @@ -17,7 +17,10 @@ import java.util.List; import com.op.common.core.domain.R; - +import com.op.common.security.utils.SecurityUtils; +import com.op.system.api.RemoteSapService; +import com.op.system.api.domain.sap.SapBackflushMPQuery; +import com.op.system.api.domain.sap.SapMaterialPosting; import okhttp3.OkHttpClient; import okhttp3.MediaType; import okhttp3.RequestBody; @@ -53,7 +56,11 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { private WmsOdsMateStorageNewsMapper wmsOdsMateStorageNewsMapper; @Autowired private OdsProcureOutOrderMapper odsProcureOutOrderMapper; + @Autowired + private RemoteSapService remoteSapService; + @Autowired + private BaseWarehouseMapper baseWarehouseMapper; /** * 查询包材采购单 * @@ -262,7 +269,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { public OrderLine addPurchaseOrderOutbound(OrderLine orderLine) { //自己生成行项目,,批次号 List orderList= orderLine.getList(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHH:mm:ss"); + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); Date date = new Date(); String formattedDate = dateFormat.format(date); //根据订单号查询对应的最大批次号 @@ -280,7 +287,9 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { orderList) { OdsProcureOutOrder odsProcureOutOrder=new OdsProcureOutOrder(); odsProcureOutOrder.setID(IdUtils.fastSimpleUUID()); + odsProcureOutOrder.setSiteCode(orderLine1.getSiteCode()); odsProcureOutOrder.setProduceCode(orderLine.getOrderNo()); + odsProcureOutOrder.setLocCode(orderLine.getWarehouseNo()); odsProcureOutOrder.setMaterialCode(orderLine1.getMaterialCode()); odsProcureOutOrder.setMaterialDesc(orderLine1.getMaterialDesc()); odsProcureOutOrder.setPlanDate(new Date()); @@ -291,6 +300,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { odsProcureOutOrder.setOrderStatus("1"); odsProcureOutOrder.setPlanNumber(orderLine1.getPlanNumber()); odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); + odsProcureOutOrder.setUserDefined3(orderLine1.getUserDefined3()); + odsProcureOutOrder.setUserDefined10("1"); //odsProcureOutOrder.set odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); } @@ -301,7 +312,9 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { orderList) { OdsProcureOutOrder odsProcureOutOrder=new OdsProcureOutOrder(); odsProcureOutOrder.setID(IdUtils.fastSimpleUUID()); + odsProcureOutOrder.setLocCode(orderLine.getWarehouseNo()); odsProcureOutOrder.setProduceCode(orderLine.getOrderNo()); + odsProcureOutOrder.setSiteCode(orderLine1.getSiteCode()); odsProcureOutOrder.setMaterialCode(orderLine1.getMaterialCode()); odsProcureOutOrder.setMaterialDesc(orderLine1.getMaterialDesc()); odsProcureOutOrder.setPlanDate(new Date()); @@ -310,9 +323,11 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { odsProcureOutOrder.setUserDefined1(orderLine1.getBatchNo()); odsProcureOutOrder.setActive("1"); odsProcureOutOrder.setOrderStatus("1"); + odsProcureOutOrder.setUserDefined10("1"); odsProcureOutOrder.setPlanNumber(orderLine1.getPlanNumber()); odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); //odsProcureOutOrder.set + odsProcureOutOrder.setUserDefined3(orderLine1.getUserDefined3()); odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); } } @@ -441,10 +456,64 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { //修改对应订单--插入对应出库托盘数据数据 // for (OdsProcureOutOrder odsProcureOutOrder: // orderList) { -// //领料单,物料编号,物料名称,托盘号,出库数量,库位号, +// //领料单,物料编号,领料单批次,物料名称,托盘号,出库数量,库位号, // odsProcureOutOrder. // } + 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); + //明细 + //wms_raw_mission_out--保存 + //ods_procure_out_order--修改 + WCSInventoryPlan wcsInventoryPlan=new WCSInventoryPlan(); + wcsInventoryPlan.setSku(odsProcureOutOrder.getMaterialCode()); + 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.setID(IdUtils.fastSimpleUUID()); + order.setUnit(wmsOdsMateStorageNews.getUserDefined1()); + order.setFactoryCode(factoryCode); + order.setActive("1"); + order.setCreateBy(SecurityUtils.getUsername()); + order.setCreateDate(new Date()); + odsProcureOutOrderMapper.insertWmsRawMissionOut(order); + + OdsProcureOutOrder odsProcureOutOrder1= odsProcureOutOrderMapper.selectOdsProcureOutOrderByID(odsProcureOutOrder.getID()); + BigDecimal realityNumber1 = odsProcureOutOrder1.getOutNumber();//累计数 + BigDecimal realityNumber = odsProcureOutOrder1.getPlanNumber();//计划 + BigDecimal planNumber =odsProcureOutOrder.getPlanNumber(); + BigDecimal tem= realityNumber1.add(planNumber); + boolean isEqual = tem.equals(realityNumber); + if (isEqual){ + odsProcureOutOrder1.setOrderStatus("3"); + }else { + odsProcureOutOrder1.setOrderStatus("2"); + } + odsProcureOutOrder1.setOutNumber(tem); + odsProcureOutOrderMapper.updateOdsProcureOutOrder(odsProcureOutOrder1); + WmsOdsEmStorageNews wmsOdsEmStorageNews=new WmsOdsEmStorageNews(); + wmsOdsEmStorageNews.setWhCode(wmsOdsMateStorageNewsSn.getWhCode());//仓库编码 + wmsOdsEmStorageNews.setWlCode(wmsOdsMateStorageNewsSn.getWlCode());//库位编码 + wmsOdsEmStorageNews.setMaterialCode(wmsOdsMateStorageNewsSn.getMaterialCode()); + wmsOdsEmStorageNews.setAmount(wmsOdsMateStorageNewsSn.getAmount());//库存 + wmsOdsMateStorageNewsSnMapper.updatekdd(wmsOdsEmStorageNews);//库存调整 + wmsOdsMateStorageNewsSn.setUserDefined1("1"); + wmsOdsMateStorageNewsSnMapper.updateWmsOdsMateStorageNewsSn(wmsOdsMateStorageNewsSn);//库存明细 + + } return null; } @@ -457,6 +526,70 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { return wmsOdsMateStorageNewsSn1; } + @Override + @DS("#header.poolName") + public void OutboundPostingSAP(List orderList) { + +// * 退料的移动类型为 262 +// * 领料的移动类型为 261 + List orderList1=odsProcureOutOrderMapper.selectOdsProcureOutOrderListByIds(orderList); + for (OdsProcureOutOrder odsProcureOutOrder: + orderList1) { + //取sap仓库号 + if ("X".equals(odsProcureOutOrder.getUserDefined3())){ + List sapBackflushMPQueryList=new ArrayList<>(); + 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()); //批号 + sapBackflushMPQueryList.add(sapBackflushMPQuery); + R result2= remoteSapService.sapBackflushMP(sapBackflushMPQueryList);//x + int code= result2.getCode(); + String msg= result2.getMsg(); + odsProcureOutOrder.setUserDefined11(msg); + if (code==200){//过账成功 + odsProcureOutOrder.setUserDefined10("2");//成功 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByid(odsProcureOutOrder); + + }else {// + odsProcureOutOrder.setUserDefined10("3");//失败 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByid(odsProcureOutOrder); + } + }else { + List sapMaterialPostingList=new ArrayList<>(); + SapMaterialPosting sapMaterialPosting =new SapMaterialPosting(); + sapMaterialPosting.setAufnr(odsProcureOutOrder.getProduceCode());//订单号 + sapMaterialPosting.setBwart("261"); //移动类型 + sapMaterialPosting.setPlant(odsProcureOutOrder.getSiteCode()); //工厂 + String lgort= baseWarehouseMapper.selectByCode(odsProcureOutOrder.getLocCode()); + sapMaterialPosting.setLgort(lgort);//库存地点 + sapMaterialPosting.setMatnr(odsProcureOutOrder.getMaterialCode());//物料号 + sapMaterialPosting.setQuantity(odsProcureOutOrder.getOutNumber().toString()); //数量 + sapMaterialPosting.setMeins(odsProcureOutOrder.getUnit()); //基本计量单位 + sapMaterialPosting.setBatch(odsProcureOutOrder.getUserDefined2()); //批号 + sapMaterialPostingList.add(sapMaterialPosting); + R result= remoteSapService.sapMaterialPosting(sapMaterialPostingList); + int code= result.getCode(); + String msg= result.getMsg(); + odsProcureOutOrder.setUserDefined11(msg); + if (code==200){//过账成功 + odsProcureOutOrder.setUserDefined10("2");//成功 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByid(odsProcureOutOrder); + + }else {// + odsProcureOutOrder.setUserDefined10("3");//失败 + odsProcureOutOrderMapper.updateOdsProcureOutOrderByid(odsProcureOutOrder); + } + } + + } + + } + 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/WmsToWCSmissionServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsToWCSmissionServiceImpl.java index 557a2eced..a5e67ebd7 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsToWCSmissionServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsToWCSmissionServiceImpl.java @@ -128,7 +128,7 @@ public class WmsToWCSmissionServiceImpl implements IWmsToWCSmissionService { */ @Override public WmsToWCSDTO packingMaterialsOutBoundCompleted(WmsToWCSDTO wcsdto) { - //记录明细消减库存 + //记录明细消减库存--wms_raw_mission_out- DynamicDataSourceContextHolder.push("ds_" + wcsdto.getFactory()); WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn= wmsOdsMateStorageNewsSnMapper.selectwmsRfidNotwo(wcsdto); diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BaseWarehouseMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BaseWarehouseMapper.xml index cda0ed11a..7a9319962 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/BaseWarehouseMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/BaseWarehouseMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -33,7 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + - + insert into base_warehouse @@ -162,5 +162,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where warehouse_code = #{warehouseCode} and del_flag = '0' - - \ No newline at end of file + + 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 67471bfc2..c589f17bb 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 @@ -42,7 +42,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select Site_code, ID, Produce_Code, Material_Code, Material_Desc, Plan_Date, Plan_Number, Unit, Out_Number, Loc_Code, Loc_Desc, Production_Line_Desc, Production_Line_Code, Order_Status, User_Defined1, User_Defined2, User_Defined3, User_Defined4, User_Defined5, User_Defined6, User_Defined7, User_Defined8, User_Defined9, User_Defined10, User_Defined11, Supplier_Code, Supplier_Name, Create_By, Create_Date, Last_Update_By, Last_Update_Date, Active, Enterprise_Id, Enterprise_Code from ods_procure_out_order + select Site_code, ID, Produce_Code, Material_Code, Material_Desc, Plan_Date, Plan_Number, Unit, COALESCE(Out_Number, 0) as Out_Number , Loc_Code, Loc_Desc, Production_Line_Desc, Production_Line_Code, Order_Status, User_Defined1, User_Defined2, User_Defined3, User_Defined4, User_Defined5, User_Defined6, User_Defined7, User_Defined8, User_Defined9, User_Defined10, User_Defined11, Supplier_Code, Supplier_Name, Create_By, Create_Date, Last_Update_By, Last_Update_Date, Active, Enterprise_Id, Enterprise_Code from ods_procure_out_order + + insert into wms_raw_mission_out(id, + prd_order, + material_code, + material_desc, + unit, + user_defined1, + sn, + amount, + origin_location, + factory_code, + active_flag, + create_by, + gmt_create + )values ( + #{ID}, + #{produceCode}, + #{materialCode}, + #{materialDesc}, + #{Unit}, + #{userDefined1}, + #{sn}, + #{planNumber}, + #{locCode}, + #{factoryCode}, + #{Active}, + #{createBy}, + #{createDate} ) + + + + update ods_procure_out_order + set User_Defined10 = #{userDefined10}, + User_Defined11 = #{userDefined11} + where ID = #{ID} + + From 821d4f9a58770656660f8745995814b6588bdb51 Mon Sep 17 00:00:00 2001 From: A0010407 Date: Wed, 20 Dec 2023 09:46:52 +0800 Subject: [PATCH 02/10] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E6=89=8B=E6=8C=81?= =?UTF-8?q?=E4=B8=89=E4=B8=AA=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DeviceInterfaceController.java | 24 -------- .../controller/DevicePDAController.java | 25 +++++++- .../service/IDeviceInterfaceService.java | 16 ----- .../op/device/service/IDevicePDAService.java | 15 +++++ .../impl/DeviceInterfaceServiceImpl.java | 59 ------------------- .../service/impl/DevicePDAServiceImpl.java | 48 +++++++++++++++ 6 files changed, 87 insertions(+), 100 deletions(-) diff --git a/op-modules/op-device/src/main/java/com/op/device/controller/DeviceInterfaceController.java b/op-modules/op-device/src/main/java/com/op/device/controller/DeviceInterfaceController.java index 6626b11c3..ff68332d7 100644 --- a/op-modules/op-device/src/main/java/com/op/device/controller/DeviceInterfaceController.java +++ b/op-modules/op-device/src/main/java/com/op/device/controller/DeviceInterfaceController.java @@ -21,7 +21,6 @@ public class DeviceInterfaceController { @Autowired private IDeviceInterfaceService deviceInterfaceService; - /** * 获取维修工单 * @return @@ -81,29 +80,6 @@ public class DeviceInterfaceController { return deviceInterfaceService.getDeviceRefreshTime(equOperation); } - /** - * 查询故障描述列表手持 - */ - @GetMapping("/getFaultDescriptionList") - public AjaxResult getFaultDescriptionList(EquFaultDescription equFaultDescription) { - return deviceInterfaceService.selectEquFaultDescriptionList(equFaultDescription); - } - - /** - * 查询故障维修措施列表手持 - */ - @GetMapping("/getFaultMeasuresList") - public AjaxResult getFaultMeasuresList(EquFaultMeasures equFaultMeasures) { - return deviceInterfaceService.selectEquFaultMeasuresList(equFaultMeasures); - } - - /** - * 查询故障原因列表 - */ - @GetMapping("/getFaultReasonList") - public AjaxResult getFaultReasonList(EquFaultReason equFaultReason) { - return deviceInterfaceService.selectEquFaultReasonList(equFaultReason); - } /** * 首页-组线设备月故障数 * @return diff --git a/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java b/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java index 57cc27cf8..c6bbdb7f3 100644 --- a/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java +++ b/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java @@ -10,7 +10,6 @@ import com.op.device.service.IDevicePDAService; import com.op.device.service.IEquRepairOrderService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; - import java.util.List; /** @@ -175,4 +174,28 @@ public class DevicePDAController extends BaseController { public AjaxResult startMaintenanceTask(PDADTO pdadto) { return devicePDAService.startMaintenanceTask(pdadto); } + + /** + * 查询故障描述列表手持 + */ + @GetMapping("/getFaultDescriptionList") + public AjaxResult getFaultDescriptionList(EquFaultDescription equFaultDescription) { + return devicePDAService.selectEquFaultDescriptionList(equFaultDescription); + } + + /** + * 查询故障维修措施列表手持 + */ + @GetMapping("/getFaultMeasuresList") + public AjaxResult getFaultMeasuresList(EquFaultMeasures equFaultMeasures) { + return devicePDAService.selectEquFaultMeasuresList(equFaultMeasures); + } + + /** + * 查询故障原因列表 + */ + @GetMapping("/getFaultReasonList") + public AjaxResult getFaultReasonList(EquFaultReason equFaultReason) { + return devicePDAService.selectEquFaultReasonList(equFaultReason); + } } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/IDeviceInterfaceService.java b/op-modules/op-device/src/main/java/com/op/device/service/IDeviceInterfaceService.java index 3203e97b0..775ae7643 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/IDeviceInterfaceService.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/IDeviceInterfaceService.java @@ -46,22 +46,6 @@ public interface IDeviceInterfaceService { */ public AjaxResult getDeviceRefreshTime(EquOperation equOperation); - /** - * 故障描述 - */ - AjaxResult selectEquFaultDescriptionList(EquFaultDescription equFaultDescription); - - /** - * 故障维修措施 - */ - AjaxResult selectEquFaultMeasuresList(EquFaultMeasures equFaultMeasures); - - /** - * 故障维修措施 - */ - AjaxResult selectEquFaultReasonList(EquFaultReason equFaultReason); - public AjaxResult getDeviceRefreshTime(EquOperationRecord equOperationRecord); - /** * 首页-组线设备月故障数 * @return diff --git a/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java b/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java index 063b01ebf..0fe60052d 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java @@ -123,4 +123,19 @@ public interface IDevicePDAService { //查询设备列表 List selectEquEquipmentList(EquEquipment equEquipment); + + /** + * 故障描述 + */ + AjaxResult selectEquFaultDescriptionList(EquFaultDescription equFaultDescription); + + /** + * 故障维修措施 + */ + AjaxResult selectEquFaultMeasuresList(EquFaultMeasures equFaultMeasures); + + /** + * 故障维修措施 + */ + AjaxResult selectEquFaultReasonList(EquFaultReason equFaultReason); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/DeviceInterfaceServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/DeviceInterfaceServiceImpl.java index b2cd7b5bc..dd9ba40a4 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/DeviceInterfaceServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/DeviceInterfaceServiceImpl.java @@ -33,16 +33,6 @@ public class DeviceInterfaceServiceImpl implements IDeviceInterfaceService { @Autowired private EquOperationRecordMapper equOperationRecordMapper; - @Autowired - private EquFaultMeasuresMapper equFaultMeasuresMapper; - - @Autowired - private EquFaultDescriptionMapper equFaultDescriptionMapper; - - @Autowired - private EquFaultReasonMapper equFaultReasonMapper; - - /** * 获取待维修的维修工单 * @@ -229,55 +219,6 @@ public class DeviceInterfaceServiceImpl implements IDeviceInterfaceService { return success(time); } - /** - * 查询故障维修措施列表 - * - * @param equFaultMeasures 故障维修措施 - * @return 故障维修措施 - */ - @Override - @DS("#header.poolName") - public AjaxResult selectEquFaultMeasuresList(EquFaultMeasures equFaultMeasures) { - List list = equFaultMeasuresMapper.selectEquFaultMeasuresList(equFaultMeasures); - return success(list); - } - - /** - * 查询故障描述列表 - * - * @param equFaultDescription 故障描述 - * @return 故障描述 - */ - @Override - @DS("#header.poolName") - public AjaxResult selectEquFaultDescriptionList(EquFaultDescription equFaultDescription) { - List list = equFaultDescriptionMapper.selectEquFaultDescriptionList(equFaultDescription); - return success(list); - } - - /** - * 查询故障原因列表 - * - * @param equFaultReason 故障原因 - * @return 故障原因 - */ - @Override - @DS("#header.poolName") - public AjaxResult selectEquFaultReasonList(EquFaultReason equFaultReason) { - List list = equFaultReasonMapper.selectEquFaultReasonList(equFaultReason); - return success(list); - } - - /** - * 看板刷新时间 - */ - @Override - @DS("master") - public AjaxResult getDeviceRefreshTime(EquOperationRecord equOperationRecord) { - String refreshTime = deviceInterfaceMapper.getDeviceRefreshTime(equOperationRecord); - int time = Integer.parseInt(refreshTime); - return success(time); - } /** * 首页-组线设备月故障数 diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java index 6efcb059f..2ba20b72c 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java @@ -72,6 +72,15 @@ public class DevicePDAServiceImpl implements IDevicePDAService { @Autowired private EquOperationRecordMapper equOperationRecordMapper; + @Autowired + private EquFaultMeasuresMapper equFaultMeasuresMapper; + + @Autowired + private EquFaultDescriptionMapper equFaultDescriptionMapper; + + @Autowired + private EquFaultReasonMapper equFaultReasonMapper; + /** * 获取今日任务工单list-状态不为已完成 @@ -913,4 +922,43 @@ public class DevicePDAServiceImpl implements IDevicePDAService { equOperationRecordMapper.insertEquOperationRecord(newRecord); } + /** + * 查询故障维修措施列表 + * + * @param equFaultMeasures 故障维修措施 + * @return 故障维修措施 + */ + @Override + @DS("#header.poolName") + public AjaxResult selectEquFaultMeasuresList(EquFaultMeasures equFaultMeasures) { + List list = equFaultMeasuresMapper.selectEquFaultMeasuresList(equFaultMeasures); + return success(list); + } + + /** + * 查询故障描述列表 + * + * @param equFaultDescription 故障描述 + * @return 故障描述 + */ + @Override + @DS("#header.poolName") + public AjaxResult selectEquFaultDescriptionList(EquFaultDescription equFaultDescription) { + List list = equFaultDescriptionMapper.selectEquFaultDescriptionList(equFaultDescription); + return success(list); + } + + /** + * 查询故障原因列表 + * + * @param equFaultReason 故障原因 + * @return 故障原因 + */ + @Override + @DS("#header.poolName") + public AjaxResult selectEquFaultReasonList(EquFaultReason equFaultReason) { + List list = equFaultReasonMapper.selectEquFaultReasonList(equFaultReason); + return success(list); + } + } From 8a325fc57b9f7372c3e1b5654021352f9a6de9f0 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Wed, 20 Dec 2023 09:47:33 +0800 Subject: [PATCH 03/10] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E7=9C=8B=E6=9D=BF?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/op/open/service/impl/OpenServiceImpl.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java index 80e4bf476..9a77787cc 100644 --- a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java +++ b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java @@ -297,9 +297,7 @@ public class OpenServiceImpl implements OpenService { String createBy = SecurityUtils.getUsername(); Date nowDate= DateUtils.getNowDate(); //获取当前所选工厂 - HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); - String key = "#header.poolName"; - String factoryCode = request.getHeader(key.substring(8)).replace("ds_",""); + String factoryCode = qcCheckTaskProduce.getFactoryCode(); qcCheckTaskProduce.setCheckNo(bpDD+liushuiStr); From ccf06f8c9494cdebdb14531764f009cfd9be3072 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Wed, 20 Dec 2023 10:18:24 +0800 Subject: [PATCH 04/10] =?UTF-8?q?wms=E4=BF=AE=E6=94=B99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OdsProcureOrderServiceImpl.java | 6 ++-- .../mapper/wms/OdsProcureOutOrderMapper.xml | 30 +++++++++++-------- 2 files changed, 21 insertions(+), 15 deletions(-) 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 723ddc471..6b12e6966 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 @@ -298,7 +298,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { odsProcureOutOrder.setUserDefined1(orderLine1.getBatchNo()); odsProcureOutOrder.setActive("1"); odsProcureOutOrder.setOrderStatus("1"); - odsProcureOutOrder.setPlanNumber(orderLine1.getPlanNumber()); + odsProcureOutOrder.setPlanNumber(orderLine1.getQty()); odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); odsProcureOutOrder.setUserDefined3(orderLine1.getUserDefined3()); odsProcureOutOrder.setUserDefined10("1"); @@ -324,7 +324,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { odsProcureOutOrder.setActive("1"); odsProcureOutOrder.setOrderStatus("1"); odsProcureOutOrder.setUserDefined10("1"); - odsProcureOutOrder.setPlanNumber(orderLine1.getPlanNumber()); + odsProcureOutOrder.setPlanNumber(orderLine1.getQty()); odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); //odsProcureOutOrder.set odsProcureOutOrder.setUserDefined3(orderLine1.getUserDefined3()); @@ -770,7 +770,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { orderLine.put("orderLineNo", orderLine1.getOrderLineNo()); orderLine.put("sku", orderLine1.getMaterialCode()); orderLine.put("batchNo",orderLine1.getBatchNo()); - orderLine.put("qty", orderLine1.getPlanNumber()); + orderLine.put("qty", orderLine1.getQty()); orderLine.put("qualityStatus", 1); orderLine.put("location", orderLine1.getStationNo()); orderLines.add(orderLine); 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 c589f17bb..c5088b303 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 @@ -229,18 +229,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" insert into wms_raw_mission_out(id, From ab03545514a3e95ca35c072d24c70ca4c742a2e0 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Wed, 20 Dec 2023 13:54:43 +0800 Subject: [PATCH 05/10] =?UTF-8?q?wms=E4=BF=AE=E6=94=B99.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/wms/controller/WmsToWCSmissionController.java | 7 +++++++ .../com/op/wms/service/IOdsProcureOrderService.java | 2 ++ .../wms/service/impl/OdsProcureOrderServiceImpl.java | 11 +++++++++++ 3 files changed, 20 insertions(+) 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 add308c5d..de54e9d5e 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 @@ -6,6 +6,8 @@ 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.common.log.annotation.Log; +import com.op.common.log.enums.BusinessType; import com.op.wms.domain.*; import com.op.wms.service.IBaseWarehouseService; import com.op.wms.service.IOdsProcureOrderService; @@ -182,4 +184,9 @@ public WmsToWCSDTO packingMaterialsOutBoundCompleted(@RequestBody WmsToWCSDTO wc Integer result= odsProcureOrderService.ProductionMaterialRequisitionAdd(orderList); return success(result); } + @PostMapping("/sapPurchaseOrderSync") + public AjaxResult sapPurchaseOrderSync(@RequestBody OdsProcureOrder odsProcureOrder){ + AjaxResult result= odsProcureOrderService.sapPurchaseOrderSync(odsProcureOrder); + return result; + } } 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 7c79cc8fb..5cb221329 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 @@ -90,4 +90,6 @@ public interface IOdsProcureOrderService { WmsOdsMateStorageNewsSn ProductionMaterialRequisitionsn(WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn); void OutboundPostingSAP(List odsProcureOutOrder); + + AjaxResult sapPurchaseOrderSync(OdsProcureOrder odsProcureOrder); } 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 6b12e6966..064a3a04d 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 @@ -17,6 +17,7 @@ import java.util.List; import com.op.common.core.domain.R; +import com.op.common.core.web.domain.AjaxResult; import com.op.common.security.utils.SecurityUtils; import com.op.system.api.RemoteSapService; import com.op.system.api.domain.sap.SapBackflushMPQuery; @@ -302,6 +303,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); odsProcureOutOrder.setUserDefined3(orderLine1.getUserDefined3()); odsProcureOutOrder.setUserDefined10("1"); + odsProcureOutOrder.setCreateBy(SecurityUtils.getUsername()); + odsProcureOutOrder.setCreateDate(new Date()); //odsProcureOutOrder.set odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); } @@ -328,6 +331,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { odsProcureOutOrder.setUserDefined2(orderLine1.getOrderLineNo()); //odsProcureOutOrder.set odsProcureOutOrder.setUserDefined3(orderLine1.getUserDefined3()); + odsProcureOutOrder.setCreateBy(SecurityUtils.getUsername()); + odsProcureOutOrder.setCreateDate(new Date()); odsProcureOutOrderMapper.insertOdsProcureOutOrder(odsProcureOutOrder); } } @@ -590,6 +595,12 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { } + @Override + public AjaxResult sapPurchaseOrderSync(OdsProcureOrder odsProcureOrder) { + //remoteSapService.sapPurchaseOrderSync(); + return null; + } + public String DesignatedPalletOutboundWCS(WMSDesignatedPalle wmsDesignatedPalle){ // 定义请求的URL地址 String url = "http://192.168.202.37:9001/api/v1/ReceiveMesMsg/packingMaterialsOutBoundByPallet"; From 5abd625d55942dccdafd2a0c4ae7138a33848e5e Mon Sep 17 00:00:00 2001 From: Yangwl <1726150332@qq.com> Date: Wed, 20 Dec 2023 14:53:17 +0800 Subject: [PATCH 06/10] =?UTF-8?q?SAP=E9=87=87=E8=B4=AD=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E6=94=B6=E8=B4=A7=E8=BF=87=E8=B4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/op/system/api/RemoteSapService.java | 10 +- .../api/factory/RemoteSapFallbackFactory.java | 12 +- .../com/op/sap/controller/SapController.java | 12 +- .../com/op/sap/service/SapOrderService.java | 1 + .../com/op/sap/service/SapWmsService.java | 2 +- .../sap/service/impl/SapOrderServiceImpl.java | 75 ++++++++ .../sap/service/impl/SapWmsServicelmpl.java | 169 ++++++------------ 7 files changed, 164 insertions(+), 117 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 845ed2c9e..dcce11817 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 @@ -78,5 +78,13 @@ public interface RemoteSapService { /**智慧工厂储位信息*/ @PostMapping("/sap/sapLgortInfo") - public R sapLgortInfo(@RequestBody(required = false) Map map); + public R sapLgortInfo(@RequestBody(required = false) List> mapList); + + /**成品下线入库*/ + @PostMapping("/sapProductWarehousing") + public R sapProductWarehousing(@RequestBody(required = false) List> mapList); + + /**采购订单收货过账*/ + @PostMapping("/sapPOrderGoodsReceipt") + public R sapPOrderGoodsReceipt(@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 ab9a85ea0..8af8be387 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 @@ -90,10 +90,20 @@ public class RemoteSapFallbackFactory implements FallbackFactory map) { + public R sapLgortInfo(List> mapList) { return R.fail("储位仓库信息获取失败" + throwable.getMessage()); } + @Override + public R sapProductWarehousing(List> mapList) { + return R.fail("成品下线入库失败" + throwable.getMessage()); + } + + @Override + public R sapPOrderGoodsReceipt(List> mapList) { + return R.fail("采购订单收货过账失败" + 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 db102a018..0e56963e5 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 @@ -405,6 +405,12 @@ public class SapController extends BaseController { return sapOrderService.sapPurchaseOrderSync(sapPurchaseOrderQuery); } + @PostMapping("/sapPOrderGoodsReceipt") + @Log(title = "采购订单收货过账", businessType = BusinessType.SAP) + public R sapPOrderGoodsReceipt(@RequestBody(required = false) List> mapList){ + return sapOrderService.sapPOrderGoodsReceipt(mapList); + } + /** * 智慧工厂101类型订单收货 * 订单为母订单 @@ -421,13 +427,13 @@ public class SapController extends BaseController { /** * 智慧工厂储位信息 - * @param map + * @param mapList * @return */ @PostMapping("/sapLgortInfo") @Log(title = "智慧工厂储位信息", businessType = BusinessType.SAP) - public R sapLgortInfo(@RequestBody(required = false) Map map){ - return sapWmsService.sapLgortInfo(map); + public R sapLgortInfo(@RequestBody(required = false) List> mapList){ + return sapWmsService.sapLgortInfo(mapList); } /** 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 4cdf12d2a..14968ba9a 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 @@ -56,4 +56,5 @@ public interface SapOrderService { R sapOrderReceipt(SapOrderReceiptQuery sapOrderReceiptQuery); + R sapPOrderGoodsReceipt(List> mapList); } diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/SapWmsService.java b/op-modules/op-sap/src/main/java/com/op/sap/service/SapWmsService.java index cd4eac1a3..03644f8ae 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/SapWmsService.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/SapWmsService.java @@ -7,7 +7,7 @@ import java.util.Map; public interface SapWmsService { - R sapLgortInfo(Map map); + R sapLgortInfo(List> mapList); R sapProductWarehousing(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 18d8d5337..62c8c4544 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 @@ -544,6 +544,81 @@ public class SapOrderServiceImpl implements SapOrderService { } } + @Override + public R sapPOrderGoodsReceipt(List> mapList) { + try { + JCoRepository repository = dest.getRepository(); + JCoFunction func = repository.getFunction("ZMES_PROMIGO_CREATE"); + if (func == null) { + throw new RuntimeException("Function does not exist in SAP"); + } + log.info("采购订单收货过账ZMES_PROMIGO_CREATE-------"+mapList.toString()); + /** + EBELN 采购凭证号 + EBELP 采购凭证的项目编号 + BWART 移动类型(库存管理) + PLANT 工厂 + LGORT 库存地点 + MATNR 物料号 + QUANTITY 数量 + MEINS 基本计量单位 + BATCH 批号 + HSDAT 生产日期 + VFDAT 货架寿命到期日 + + */ + JCoTable L_ITEM = func.getTableParameterList().getTable("L_ITEM"); + for (Map stringObjectMap:mapList){ + L_ITEM.appendRow(); + L_ITEM.setValue("EBELN", stringObjectMap.get("EBELN")); + L_ITEM.setValue("EBELP", stringObjectMap.get("EBELP")); + L_ITEM.setValue("BWART", stringObjectMap.get("BWART")); + L_ITEM.setValue("PLANT", stringObjectMap.get("PLANT")); + L_ITEM.setValue("LGORT", stringObjectMap.get("LGORT")); + L_ITEM.setValue("KOSTL", stringObjectMap.get("KOSTL")); + L_ITEM.setValue("MATNR", stringObjectMap.get("MATNR")); + L_ITEM.setValue("QUANTITY", stringObjectMap.get("QUANTITY")); + L_ITEM.setValue("MEINS", stringObjectMap.get("MEINS")); + L_ITEM.setValue("BATCH", stringObjectMap.get("BATCH")); + L_ITEM.setValue("HSDAT", stringObjectMap.get("HSDAT")); + L_ITEM.setValue("VFDAT", stringObjectMap.get("VFDAT")); + } + System.out.println(L_ITEM); + func.execute(dest);//执行调用函数 + // 获取 内表 - ZMES_PRO + + JCoTable LT_RETURN = func.getTableParameterList().getTable("LT_RETURN"); + StringBuilder Msg = new StringBuilder(); + for (int i = 0; i < LT_RETURN.getNumRows(); i++) { + LT_RETURN.setRow(i); + String MESSAGE = LT_RETURN.getString("MESSAGE"); + Msg.append(MESSAGE+"/"); + } + + + String L_MSG= func.getExportParameterList().getString("L_MSG"); + String RETCODE= func.getExportParameterList().getString("RETCODE"); + String MATERIALDOCUMENT= func.getExportParameterList().getString("MATERIALDOCUMENT"); + String MATDOCUMENTYEAR= func.getExportParameterList().getString("MATDOCUMENTYEAR"); + System.out.println("L_MSG"+L_MSG); + System.out.println("返回值:0-没有错误,1-有错误:"+RETCODE); + System.out.println("物料凭证编号"+MATERIALDOCUMENT); + System.out.println("物料凭证年度"+MATDOCUMENTYEAR); + if (!("0").equals(RETCODE)){ + return R.fail("",Msg.toString()); + }else { + Map map=new HashMap(); + map.put("MATERIALDOCUMENT",MATERIALDOCUMENT); + map.put("MATDOCUMENTYEAR",MATDOCUMENTYEAR); + return R.ok(map,Msg.toString()); + } + + }catch (Exception e){ + log.error(e.getMessage()); + return R.fail(e.getMessage()); + } + } + // public static void main(String[] args) { // List sapBackflushMPQueryList=new ArrayList<>(); // SapBackflushMPQuery sapBackflushMPQuery=new SapBackflushMPQuery(); diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWmsServicelmpl.java b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWmsServicelmpl.java index 5be3897d4..1f0cbfc6f 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWmsServicelmpl.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWmsServicelmpl.java @@ -24,21 +24,25 @@ public class SapWmsServicelmpl implements SapWmsService { private JCoDestination dest; @Override - public R sapLgortInfo(Map map) { + public R sapLgortInfo(List> mapList) { try { JCoRepository repository = dest.getRepository(); JCoFunction func = repository.getFunction("ZMES_GET_LGORT"); if (func == null) { throw new RuntimeException("Function does not exist in SAP"); } - log.info("获取储位信息入参-------"+map.toString()); - if (!StringUtils.isNull(map.get("S_WERKS"))){ - JCoTable S_MATNR = func.getTableParameterList().getTable("S_WERKS"); - S_MATNR.appendRow(); - S_MATNR.setValue("SIGN", "I"); - S_MATNR.setValue("OPTION", "EQ"); - S_MATNR.setValue("LOW", map.get("S_WERKS")); + log.info("获取储位信息入参-------"+mapList.toString()); + JCoTable S_WERKS = func.getTableParameterList().getTable("S_WERKS"); + JCoTable S_LGORT = func.getTableParameterList().getTable("S_LGORT"); + System.out.println(S_WERKS); + // System.out.println(S_LGORT); + for (Map stringObjectMap:mapList){ + S_WERKS.appendRow(); + S_WERKS.setValue("SIGN", "I"); + S_WERKS.setValue("OPTION", "EQ"); + S_WERKS.setValue("LOW", stringObjectMap.get("S_WERKS")); } + func.execute(dest);//执行调用函数 // 获取 内表 - ZMES_PRO JCoTable maraTable = func.getTableParameterList().getTable("LT_LGORT"); @@ -48,7 +52,7 @@ public class SapWmsServicelmpl implements SapWmsService { * LGOBE 仓储地点的描述 * ZTYPE 已冻结标识 */ - List mapList=new ArrayList<>(); + List mapLists=new ArrayList<>(); for (int i = 0; i > mapList) { + try { JCoRepository repository = dest.getRepository(); JCoFunction func = repository.getFunction("ZMES_PRODUCT_MB1A"); @@ -97,109 +102,51 @@ public class SapWmsServicelmpl implements SapWmsService { VFDAT 货架寿命到期日 */ JCoTable L_ITEM = func.getTableParameterList().getTable("L_ITEM"); - System.out.println(L_ITEM); - System.out.println( L_ITEM.getNumRows()); - for (int i=1;i<10;i++){ + for (Map stringObjectMap:mapList){ L_ITEM.appendRow(); - L_ITEM.setValue("AUFNR", "01234567890"+String.valueOf(i)); - L_ITEM.setValue("POSN", "012"+String.valueOf(i)); - L_ITEM.setValue("POSN", "012"+String.valueOf(i)); - L_ITEM.setValue("POSN", "012"+String.valueOf(i)); + L_ITEM.setValue("AUFNR", stringObjectMap.get("AUFNR")); + L_ITEM.setValue("POSNR", stringObjectMap.get("POSNR")); + L_ITEM.setValue("BWART", stringObjectMap.get("BWART")); + L_ITEM.setValue("PLANT", stringObjectMap.get("PLANT")); + L_ITEM.setValue("LGORT", stringObjectMap.get("LGORT")); + L_ITEM.setValue("KOSTL", stringObjectMap.get("KOSTL")); + L_ITEM.setValue("MATNR", stringObjectMap.get("MATNR")); + L_ITEM.setValue("QUANTITY", stringObjectMap.get("QUANTITY")); + L_ITEM.setValue("MEINS", stringObjectMap.get("MEINS")); + L_ITEM.setValue("BATCH", stringObjectMap.get("BATCH")); + L_ITEM.setValue("HSDAT", stringObjectMap.get("HSDAT")); + L_ITEM.setValue("VFDAT", stringObjectMap.get("VFDAT")); } System.out.println(L_ITEM); -// if (!StringUtils.isNull(map.get("AUFNR"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("AUFNR"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("AUFNR")); -// } -// if (!StringUtils.isNull(map.get("POSNR"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("POSNR"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("POSNR")); -// } -// if (!StringUtils.isNull(map.get("BWART"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("BWART"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("BWART")); -// } -// if (!StringUtils.isNull(map.get("PLANT"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("PLANT"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("PLANT")); -// } -// if (!StringUtils.isNull(map.get("LGORT"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("LGORT"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("LGORT")); -// } -// if (!StringUtils.isNull(map.get("KOSTL"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("KOSTL"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("KOSTL")); -// } -// if (!StringUtils.isNull(map.get("MATNR"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("MATNR"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("MATNR")); -// } -// if (!StringUtils.isNull(map.get("QUANTITY"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("QUANTITY"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("QUANTITY")); -// } -// if (!StringUtils.isNull(map.get("MEINS"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("MEINS"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("MEINS")); -// } -// if (!StringUtils.isNull(map.get("BATCH"))){ -// JCoTable S_MATNR = func.getTableParameterList().getTable("BATCH"); -// S_MATNR.appendRow(); -// S_MATNR.setValue("SIGN", "I"); -// S_MATNR.setValue("OPTION", "EQ"); -// S_MATNR.setValue("LOW", map.get("BATCH")); -// } -// func.execute(dest);//执行调用函数 -// // 获取 内表 - ZMES_PRO -// JCoTable maraTable = func.getTableParameterList().getTable("LT_LGORT"); -// -// List mapList=new ArrayList<>(); -// for (int i = 0; i Date: Wed, 20 Dec 2023 15:14:41 +0800 Subject: [PATCH 07/10] =?UTF-8?q?SAP=E9=87=87=E8=B4=AD=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/op/system/api/RemoteSapService.java | 4 ++++ .../com/op/system/api/domain/sap}/SapPurchaseOrderQuery.java | 2 +- .../com/op/system/api/factory/RemoteSapFallbackFactory.java | 5 +++++ 3 files changed, 10 insertions(+), 1 deletion(-) rename {op-modules/op-sap/src/main/java/com/op/sap/domain/vo => op-api/op-api-system/src/main/java/com/op/system/api/domain/sap}/SapPurchaseOrderQuery.java (98%) 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 dcce11817..5c5f3d793 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 @@ -84,6 +84,10 @@ public interface RemoteSapService { @PostMapping("/sapProductWarehousing") public R sapProductWarehousing(@RequestBody(required = false) List> mapList); + /**获取采购订单*/ + @PostMapping("/sapPurchaseOrderSync") + public R sapPurchaseOrderSync(@RequestBody SapPurchaseOrderQuery sapPurchaseOrderQuery); + /**采购订单收货过账*/ @PostMapping("/sapPOrderGoodsReceipt") public R sapPOrderGoodsReceipt(@RequestBody(required = false) List> mapList); diff --git a/op-modules/op-sap/src/main/java/com/op/sap/domain/vo/SapPurchaseOrderQuery.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/sap/SapPurchaseOrderQuery.java similarity index 98% rename from op-modules/op-sap/src/main/java/com/op/sap/domain/vo/SapPurchaseOrderQuery.java rename to op-api/op-api-system/src/main/java/com/op/system/api/domain/sap/SapPurchaseOrderQuery.java index 281d431df..c85d35818 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/domain/vo/SapPurchaseOrderQuery.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/sap/SapPurchaseOrderQuery.java @@ -1,4 +1,4 @@ -package com.op.sap.domain.vo; +package com.op.system.api.domain.sap; public class SapPurchaseOrderQuery { 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 8af8be387..f054f17fe 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 @@ -99,6 +99,11 @@ public class RemoteSapFallbackFactory implements FallbackFactory> mapList) { return R.fail("采购订单收货过账失败" + throwable.getMessage()); From b27e18f4035ea4b33d67cf4041760f69ebe26bd5 Mon Sep 17 00:00:00 2001 From: A0010407 Date: Wed, 20 Dec 2023 15:21:54 +0800 Subject: [PATCH 08/10] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E4=BF=A1=E6=81=AF=20?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E5=8A=A0=E5=AD=97=E6=AE=B5=20+=20=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E7=9C=8B=E6=9D=BF=E5=AE=8C=E5=A5=BD=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E6=AF=94=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/device/DeviceInterfaceMapper.xml | 2 +- .../java/com/op/wms/domain/BaseEquipment.java | 60 +++++++++++++++++++ .../mapper/wms/BaseEquipmentMapper.xml | 33 +++++++++- 3 files changed, 93 insertions(+), 2 deletions(-) diff --git a/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml index 8732c1682..90f2288d3 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/DeviceInterfaceMapper.xml @@ -79,7 +79,7 @@ @@ -263,6 +279,11 @@ factory_code, equipment_status, equipment_category, + asset_classification_name, + asset_description, + equipment_number, + inventory_number, + unit_measurement, #{equipmentCode}, @@ -307,6 +328,11 @@ #{factoryCode}, #{equipmentStatus}, #{equipmentCategory}, + #{assetClassificationName}, + #{assetDescription}, + #{equipmentNumber}, + #{inventoryNumber}, + #{unitMeasurement}, @@ -355,6 +381,11 @@ factory_code = #{factoryCode}, equipment_status = #{equipmentStatus}, equipment_category = #{equipmentCategory}, + asset_classification_name = #{assetClassificationName}, + asset_description = #{assetDescription}, + equipment_number = #{equipmentNumber}, + inventory_number = #{inventoryNumber}, + unit_measurement = #{unitMeasurement}, where equipment_id = #{equipmentId} From 3671723f7e731ac704e80deb00303c494b7985f8 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 21 Dec 2023 08:28:09 +0800 Subject: [PATCH 09/10] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E7=9C=8B=E6=9D=BF?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/quality/QcCheckTaskProduceDTO.java | 28 ++ .../api/domain/quality/QcUserMaterialDTO.java | 258 ++++++++++++++++++ .../op/open/controller/OpenController.java | 2 +- .../java/com/op/open/mapper/OpenMapper.java | 7 +- .../op/open/service/impl/OpenServiceImpl.java | 19 +- .../main/resources/mapper/open/OpenMapper.xml | 6 + .../com/op/quality/domain/QcCheckType.java | 9 + .../service/impl/QcCheckTypeServiceImpl.java | 4 +- .../impl/QcUserMaterialServiceImpl.java | 6 + .../mapper/quality/QcCheckTypeMapper.xml | 22 +- .../mapper/quality/QcProCheckMapper.xml | 8 +- .../mapper/quality/QcUserMaterialMapper.xml | 10 +- 12 files changed, 348 insertions(+), 31 deletions(-) create mode 100644 op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcUserMaterialDTO.java diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcCheckTaskProduceDTO.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcCheckTaskProduceDTO.java index 5ea4b6b6e..2e6cf0da2 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcCheckTaskProduceDTO.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcCheckTaskProduceDTO.java @@ -128,6 +128,10 @@ public class QcCheckTaskProduceDTO extends BaseEntity { private String checkTimeEnd; private String typeCode; private String checkType; + private String carName; + private String carCode; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date produceDate; @Excel(name = "抽样数量") private BigDecimal sampleQuality; @@ -144,6 +148,30 @@ public class QcCheckTaskProduceDTO extends BaseEntity { @Excel(name = "C类不合格数量") private BigDecimal cNoOkquality; + public Date getProduceDate() { + return produceDate; + } + + public void setProduceDate(Date produceDate) { + this.produceDate = produceDate; + } + + public String getCarName() { + return carName; + } + + public void setCarName(String carName) { + this.carName = carName; + } + + public String getCarCode() { + return carCode; + } + + public void setCarCode(String carCode) { + this.carCode = carCode; + } + public BigDecimal getaNoOkquality() { return aNoOkquality; } diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcUserMaterialDTO.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcUserMaterialDTO.java new file mode 100644 index 000000000..526c9dce0 --- /dev/null +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/QcUserMaterialDTO.java @@ -0,0 +1,258 @@ +package com.op.system.api.domain.quality; + +import com.op.common.core.annotation.Excel; +import com.op.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.List; + +/** + * 人员物料绑定对象 qc_user_material + * + * @author Open Platform + * @date 2023-10-09 + */ +public class QcUserMaterialDTO extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** id */ + private String id; + + /** 员工编码 */ + @Excel(name = "员工编码") + private String userCode; + + /** 员工名称 */ + @Excel(name = "员工名称") + private String userName; + + /** 物料编码 */ + @Excel(name = "物料编码") + private String materialCode; + + /** 物料名称 */ + @Excel(name = "物料名称") + private String materialName; + + /** 预留字段1 */ + @Excel(name = "预留字段1") + private String attr1; + + /** 预留字段2 */ + @Excel(name = "预留字段2") + private String attr2; + + /** 预留字段3 */ + @Excel(name = "预留字段3") + private String attr3; + + /** 预留字段4 */ + @Excel(name = "预留字段4") + private String attr4; + + /** 工厂编码 */ + @Excel(name = "工厂编码") + private String factoryCode; + + /** 删除标识1删除0正常 */ + private String delFlag; + + /** 编号 */ + private String userId; + /** 手机号 */ + private String phonenumber; + private String email; + private String materialNames; + /** 状态 */ + private String status; + + private String materialId; + + private String[] userCodes; + private String label; + private String key; + + private List selectedValues; + + public void setId(String id) { + this.id = id; + } + + public String getId() { + return id; + } + public void setUserCode(String userCode) { + this.userCode = userCode; + } + + public String getUserCode() { + return userCode; + } + public void setUserName(String userName) { + this.userName = userName; + } + + public String getUserName() { + return userName; + } + public void setMaterialCode(String materialCode) { + this.materialCode = materialCode; + } + + public String getMaterialCode() { + return materialCode; + } + public void setMaterialName(String materialName) { + this.materialName = materialName; + } + + public String getMaterialName() { + return materialName; + } + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getAttr1() { + return attr1; + } + public void setAttr2(String attr2) { + this.attr2 = attr2; + } + + public String getAttr2() { + return attr2; + } + public void setAttr3(String attr3) { + this.attr3 = attr3; + } + + public String getAttr3() { + return attr3; + } + public void setAttr4(String attr4) { + this.attr4 = attr4; + } + + public String getAttr4() { + return attr4; + } + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + + public String getFactoryCode() { + return factoryCode; + } + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getDelFlag() { + return delFlag; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getPhonenumber() { + return phonenumber; + } + + public void setPhonenumber(String phonenumber) { + this.phonenumber = phonenumber; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getMaterialNames() { + return materialNames; + } + + public void setMaterialNames(String materialNames) { + this.materialNames = materialNames; + } + + public String getMaterialId() { + return materialId; + } + + public void setMaterialId(String materialId) { + this.materialId = materialId; + } + public String[] getUserCodes() { + return userCodes; + } + + public void setUserCodes(String[] userCodes) { + this.userCodes = userCodes; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public String getKey() { + return key; + } + + public void setKey(String key) { + this.key = key; + } + + public List getSelectedValues() { + return selectedValues; + } + + public void setSelectedValues(List selectedValues) { + this.selectedValues = selectedValues; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("userCode", getUserCode()) + .append("userName", getUserName()) + .append("materialCode", getMaterialCode()) + .append("materialName", getMaterialName()) + .append("attr1", getAttr1()) + .append("attr2", getAttr2()) + .append("attr3", getAttr3()) + .append("attr4", getAttr4()) + .append("userId", getUserId()) + .append("phonenumber", getPhonenumber()) + .append("status", getStatus()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("factoryCode", getFactoryCode()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java b/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java index f5613f8d3..125378e74 100644 --- a/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java +++ b/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java @@ -83,7 +83,7 @@ public class OpenController extends BaseController { } /**创建生产过程(烘房 首检)检验*/ - @PostMapping(value = "createCheckProduceTask") + @PostMapping(value = "/createCheckProduceTask") public AjaxResult createCheckProduceTask(@RequestBody QcCheckTaskProduceDTO qcCheckTaskProduce) { if(StringUtils.isBlank(qcCheckTaskProduce.getIncomeBatchNo())){ return error("[IncomeBatchNo]不能为空"); diff --git a/op-modules/op-open/src/main/java/com/op/open/mapper/OpenMapper.java b/op-modules/op-open/src/main/java/com/op/open/mapper/OpenMapper.java index dd58e6f2c..07ca7e425 100644 --- a/op-modules/op-open/src/main/java/com/op/open/mapper/OpenMapper.java +++ b/op-modules/op-open/src/main/java/com/op/open/mapper/OpenMapper.java @@ -7,10 +7,7 @@ import com.op.system.api.domain.mes.MesReportWorkConsumeDTO; import com.op.system.api.domain.mes.MesReportWorkDTO; import com.op.system.api.domain.mes.ProOrderWorkorderDTO; import com.op.system.api.domain.mes.ProRfidProcessDetail; -import com.op.system.api.domain.quality.QcCheckTaskDetailDTO; -import com.op.system.api.domain.quality.QcCheckTaskProduceDTO; -import com.op.system.api.domain.quality.QcCheckTypeProjectDTO; -import com.op.system.api.domain.quality.QcMaterialGroupDetailDTO; +import com.op.system.api.domain.quality.*; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -78,5 +75,7 @@ public interface OpenMapper { void insertQcCheckTaskProduce(QcCheckTaskProduceDTO qcCheckTaskProduce); public int addBatch(@Param("list") List items); + + QcUserMaterialDTO getUserByMaterial(String materialCode); } diff --git a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java index 9a77787cc..d1ecd5f1d 100644 --- a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java +++ b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java @@ -23,10 +23,7 @@ import com.op.system.api.domain.mes.MesReportWorkConsumeDTO; import com.op.system.api.domain.mes.MesReportWorkDTO; import com.op.system.api.domain.mes.ProOrderWorkorderDTO; import com.op.system.api.domain.mes.ProRfidProcessDetail; -import com.op.system.api.domain.quality.QcCheckTaskDetailDTO; -import com.op.system.api.domain.quality.QcCheckTaskProduceDTO; -import com.op.system.api.domain.quality.QcCheckTypeProjectDTO; -import com.op.system.api.domain.quality.QcMaterialGroupDetailDTO; +import com.op.system.api.domain.quality.*; import com.op.system.api.domain.sap.SapCloseOrderQuery; import com.op.system.api.domain.sap.SapRFW; import org.apache.commons.lang.StringUtils; @@ -305,6 +302,17 @@ public class OpenServiceImpl implements OpenService { QcCheckTypeProjectDTO qctp= new QcCheckTypeProjectDTO(); qctp.setTypeId(qcCheckTaskProduce.getCheckType());//生产过程检验 qctp.setMaterialCode(qcCheckTaskProduce.getMaterialCode());//特性 + + /**qc_user_material取默认检查人**/ + QcUserMaterialDTO qcUserMaterialDTO = openMapper.getUserByMaterial(qcCheckTaskProduce.getMaterialCode()); + if(qcUserMaterialDTO == null){ + qcCheckTaskProduce.setCheckManCode("mobile"); + qcCheckTaskProduce.setCheckManName("手持测试用户"); + }else{ + qcCheckTaskProduce.setCheckManCode(qcUserMaterialDTO.getUserCode()); + qcCheckTaskProduce.setCheckManName(qcUserMaterialDTO.getUserName()); + } + /**qc_check_type_project**/ List items = openMapper.getTPByTypeMaterial(qctp); if(CollectionUtils.isEmpty(items)){ @@ -328,6 +336,9 @@ public class OpenServiceImpl implements OpenService { qcCheckTaskProduce.setFactoryCode(factoryCode); qcCheckTaskProduce.setCreateTime(nowDate); qcCheckTaskProduce.setTypeCode("produce");//大检验节点 + qcCheckTaskProduce.setIncomeTime(qcCheckTaskProduce.getProduceDate()); + qcCheckTaskProduce.setSupplierCode(qcCheckTaskProduce.getCarCode()); + qcCheckTaskProduce.setSupplierName(qcCheckTaskProduce.getCarName()); openMapper.insertQcCheckTaskProduce(qcCheckTaskProduce); /**qc_check_task_detail**/ for(QcCheckTaskDetailDTO item:items){ diff --git a/op-modules/op-open/src/main/resources/mapper/open/OpenMapper.xml b/op-modules/op-open/src/main/resources/mapper/open/OpenMapper.xml index a49649beb..b12931ec6 100644 --- a/op-modules/op-open/src/main/resources/mapper/open/OpenMapper.xml +++ b/op-modules/op-open/src/main/resources/mapper/open/OpenMapper.xml @@ -195,6 +195,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and qctp.type_id = #{typeId} order by qctp.sort + insert into equ_repair_order diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckType.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckType.java index 79249d12e..cb3bbbe36 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckType.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckType.java @@ -45,6 +45,15 @@ public class QcCheckType extends BaseEntity { private String delFlag; private int taskNum; + private String checkManCode; + + public String getCheckManCode() { + return checkManCode; + } + + public void setCheckManCode(String checkManCode) { + this.checkManCode = checkManCode; + } public int getTaskNum() { return taskNum; diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTypeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTypeServiceImpl.java index 88ee8cb94..d7a9bc584 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTypeServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTypeServiceImpl.java @@ -2,6 +2,7 @@ package com.op.quality.service.impl; import java.util.List; +import com.alibaba.nacos.common.utils.CollectionUtils; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.op.common.core.utils.DateUtils; @@ -123,7 +124,8 @@ public class QcCheckTypeServiceImpl implements IQcCheckTypeService { @Override public List getTopTaskInfo(QcCheckType qcCheckType) { DynamicDataSourceContextHolder.push(qcCheckType.getFactoryCode());// 这是数据源的key - return qcCheckTypeMapper.getTopTaskInfo(qcCheckType); + List dtos = qcCheckTypeMapper.getTopTaskInfo(qcCheckType);//检验任务 + return dtos; } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcUserMaterialServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcUserMaterialServiceImpl.java index 3c01ce35f..e937c8c41 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcUserMaterialServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcUserMaterialServiceImpl.java @@ -1,5 +1,7 @@ package com.op.quality.service.impl; +import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.List; @@ -73,6 +75,10 @@ public class QcUserMaterialServiceImpl implements IQcUserMaterialService { @Override @DS("#header.poolName") public int insertQcUserMaterial(QcUserMaterial qcUserMaterial) { + List userCodes = new ArrayList<>(); + userCodes.add(qcUserMaterial.getUserCode()); + qcUserMaterial.setUserCodes(userCodes.toArray(new String[userCodes.size()])); + Date now = DateUtils.getNowDate(); if (StringUtils.isNotEmpty(qcUserMaterial.getUserCodes())) { //删除之前的关联关系 diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTypeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTypeMapper.xml index e234127c4..ac85dcb58 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTypeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTypeMapper.xml @@ -47,21 +47,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" count(0) taskNum, '检验任务' attr1 from qc_check_task qct - left join qc_check_type qc on qct.check_type = qc.order_code - where qct.check_status = '0' + left join qc_check_type qc on qct.check_type = qc.order_code + left join qc_user_material qum on qum.material_code = qct.material_code + where qct.check_status = '0' and qum.user_code = #{checkManCode} group by qct.check_type,qc.check_name - union ALL - select qcu.type, - qc.check_name, - count(0) taskNum, - '不合格处理' + union all + select '','', + count(0) taskNum, + '不合格处理' attr1 from qc_check_unqualified qcu - left join qc_check_type qc on qcu.type = qc.order_code - where qcu.status != '2' - group by qcu.type,qc.check_name + left join qc_check_task qct on qcu.task_id = qct.record_id + left join qc_user_material qum on qum.material_code = qct.material_code + where qcu.status != '2' and qum.user_code = #{checkManCode} - - insert into qc_check_type diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcProCheckMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcProCheckMapper.xml index 7693fcece..c08df09b7 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcProCheckMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcProCheckMapper.xml @@ -66,6 +66,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + select id,rfid,factory_id,factory_code,order_id,machine_id,bad_meg,product_id,isqua,file_id,attr1,attr2, @@ -248,7 +253,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" qct.material_code, qct.material_name, qct.quality, qct.unit, qct.supplier_code, qct.supplier_name, qct.income_time, qct.check_loc, qct.check_status, qct.check_man_code,qct.check_man_name, qct.check_time, qct.check_result, - qct.status,qct.create_by,qct.create_time,qct.check_type + qct.status,qct.create_by,qct.create_time,qct.check_type, + qct.noOk_quality,qct.aNoOkquality,qct.bNoOkquality,qct.cNoOkquality,qct.sample_quality from qc_check_task qct and qct.del_flag = '0' diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcUserMaterialMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcUserMaterialMapper.xml index df89fef34..6d55176d4 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcUserMaterialMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcUserMaterialMapper.xml @@ -81,10 +81,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and bp.product_code not in ( select um.material_code from qc_user_material um - where um.user_code in - - #{userCode} - + where um.user_code =#{userCode} ) and bp.product_desc_zh like concat('%', #{materialName}, '%') @@ -94,10 +91,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" concat(bp.product_desc_zh,'(',bp.product_code,')') label from qc_user_material um left join base_product bp on um.material_code = bp.product_code - where um.user_code in - - #{userCode} - + where um.user_code = #{userCode} and bp.product_desc_zh like concat('%', #{materialName}, '%') From 4dd5c4895ffe9e675cbfe86bf8f4a0d2c8f06f1b Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 21 Dec 2023 08:45:42 +0800 Subject: [PATCH 10/10] =?UTF-8?q?=E6=8A=A5=E9=94=99=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/op/sap/service/SapOrderService.java | 6 +----- .../java/com/op/sap/service/impl/SapOrderServiceImpl.java | 6 +----- 2 files changed, 2 insertions(+), 10 deletions(-) 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 14968ba9a..4d4d23dec 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,12 +3,8 @@ package com.op.sap.service; import com.op.common.core.domain.R; import com.op.sap.domain.vo.SapOrderReceiptQuery; -import com.op.sap.domain.vo.SapPurchaseOrderQuery; -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.domain.sap.*; import com.op.system.api.model.SapProOrder; import java.util.List; 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 62c8c4544..7e7a9d741 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,13 +8,9 @@ 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.sap.domain.vo.SapPurchaseOrderQuery; import com.op.sap.service.SapOrderService; -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.domain.sap.*; import com.op.system.api.model.SapProOrder; import com.sap.conn.jco.*;