From ef7e6d4f6b32e6f914c01dde35ffe451170b020d Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Fri, 8 Dec 2023 10:43:33 +0800 Subject: [PATCH] =?UTF-8?q?wms=E4=BF=AE=E6=94=B9=EF=BC=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WmsToWCSmissionController.java | 11 +-- .../java/com/op/wms/domain/WmsToWCSODTO.java | 35 +++++++++ .../mapper/WmsOdsMateStorageNewsSnMapper.java | 1 + .../op/wms/mapper/WmsRawOrderInSnMapper.java | 2 + .../impl/WmsToWCSmissionServiceImpl.java | 73 +++++++++++++++---- .../wms/WmsOdsMateStorageNewsSnMapper.xml | 11 ++- .../mapper/wms/WmsRawOrderInSnMapper.xml | 12 ++- 7 files changed, 119 insertions(+), 26 deletions(-) create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/domain/WmsToWCSODTO.java 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 31ac0d26b..b1833e3e5 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 @@ -33,11 +33,12 @@ public class WmsToWCSmissionController { * @return */ @PostMapping("/packingMaterialsRequestInbound") - public WmsToWCSDTO PackagingStorage(@RequestBody WmsToWCSDTO wcsdto) { + public WmsToWCSODTO PackagingStorage(@RequestBody WmsToWCSDTO wcsdto) { if(StringUtils.isBlank(wcsdto.getFactory())){ - wcsdto.setCode("1"); - wcsdto.setMessage("factory is not null"); - return wcsdto; + WmsToWCSODTO wmsToWCSODTO=new WmsToWCSODTO(); + wmsToWCSODTO.setCode("1"); + wmsToWCSODTO.setMessage("factory is not null"); + return wmsToWCSODTO; } return iWmsToWCSmissionService.packagingStorage(wcsdto); } @@ -73,7 +74,7 @@ public WmsToWCSDTO packingMaterialsOutBoundCompleted(@RequestBody WmsToWCSDTO wc wcsdto.setMessage("factory is not null"); return wcsdto; } - return iWmsToWCSmissionService.packingMaterialsOutBoundCompleted(wcsdto); + return iWmsToWCSmissionService.packingMaterialsOutBoundCompleted(wcsdto); } /** *手持 --包材采购单采购收货查询 diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsToWCSODTO.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsToWCSODTO.java new file mode 100644 index 000000000..d761477a6 --- /dev/null +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsToWCSODTO.java @@ -0,0 +1,35 @@ +package com.op.wms.domain; + +import com.fasterxml.jackson.annotation.JsonInclude; + +@JsonInclude(JsonInclude.Include.NON_NULL) +public class WmsToWCSODTO { + private String code;//返回代码 + private String Message;//返回信息 + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getMessage() { + return Message; + } + private String reqCode;//请求ID + + public String getReqCode() { + return reqCode; + } + + public void setReqCode(String reqCode) { + this.reqCode = reqCode; + } + + public void setMessage(String message) { + Message = message; + } + +} diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java index 0d286a226..a1ef0cb1d 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsOdsMateStorageNewsSnMapper.java @@ -63,4 +63,5 @@ public interface WmsOdsMateStorageNewsSnMapper { void updateAdd(WmsOdsEmStorageNews wmsOdsEmStorageNews); + void updatekdd(WmsOdsEmStorageNews wmsOdsEmStorageNews); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsRawOrderInSnMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsRawOrderInSnMapper.java index ab778b3e8..9a8bb3304 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsRawOrderInSnMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsRawOrderInSnMapper.java @@ -63,4 +63,6 @@ public interface WmsRawOrderInSnMapper { WmsRawOrderInSn selectwmsRfidNo(WmsToWCSDTO wmsToWCSDTO); void updateU1Byid(WmsRawOrderInSn wmsRawOrderInSn); + + WmsRawOrderInSn selectwmsRfidNotwo(WmsToWCSDTO wmsToWCSDTO); } 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 ac7d94c14..f19622782 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 @@ -1,15 +1,12 @@ package com.op.wms.service.impl; +import com.alibaba.nacos.shaded.com.google.gson.Gson; +import com.alibaba.nacos.shaded.com.google.gson.GsonBuilder; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; -import com.op.wms.domain.WmsOdsEmStorageNews; -import com.op.wms.domain.WmsOdsMateStorageNewsSn; -import com.op.wms.domain.WmsRawOrderInSn; -import com.op.wms.domain.WmsToWCSDTO; -import com.op.wms.mapper.WmsOdsEmStorageNewsMapper; -import com.op.wms.mapper.WmsOdsMateStorageNewsSnMapper; -import com.op.wms.mapper.WmsRawOrderInMapper; -import com.op.wms.mapper.WmsRawOrderInSnMapper; +import com.op.common.core.utils.uuid.IdUtils; +import com.op.wms.domain.*; +import com.op.wms.mapper.*; import com.op.wms.service.IWmsToWCSmissionService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -28,14 +25,16 @@ public class WmsToWCSmissionServiceImpl implements IWmsToWCSmissionService { private WmsOdsMateStorageNewsSnMapper wmsOdsMateStorageNewsSnMapper; @Autowired private WmsOdsEmStorageNewsMapper wmsOdsEmStorageNewsMapper; + @Autowired + private WmsOdsMateStorageNewsMapper wmsOdsMateStorageNewsMapper; @Override - public WmsToWCSDTO packagingStorage(WmsToWCSDTO wcsdto) { + public WmsToWCSODTO packagingStorage(WmsToWCSDTO wcsdto) { DynamicDataSourceContextHolder.push("ds_" + wcsdto.getFactory()); WmsToWCSDTO wmsToWCSDTO= wmsRawOrderInMapper.packagingStorage(wcsdto); // wmsToWCSDTO.set// if (wmsToWCSDTO==null){ - WmsToWCSDTO wms=new WmsToWCSDTO(); + WmsToWCSODTO wms=new WmsToWCSODTO(); wms.setCode("0"); wms.setReqCode(wcsdto.getReqCode()); wms.setMessage("OK"); @@ -45,7 +44,17 @@ public class WmsToWCSmissionServiceImpl implements IWmsToWCSmissionService { wmsToWCSDTO.setCode("0"); wmsToWCSDTO.setReqCode(wcsdto.getReqCode()); wmsToWCSDTO.setMessage("OK"); - return wmsToWCSDTO; + WmsToWCSODTO wmsToWCSODTO=new WmsToWCSODTO(); + wmsToWCSODTO.setCode("0"); + + // 创建Gson对象 + Gson gson = new GsonBuilder().setPrettyPrinting().create(); + + // 将对象转换为JSON格式的字符串并格式化输出 + String MESSAGE = gson.toJson(wmsToWCSDTO); + + wmsToWCSODTO.setMessage(MESSAGE); + return wmsToWCSODTO; } /** @@ -68,23 +77,43 @@ public class WmsToWCSmissionServiceImpl implements IWmsToWCSmissionService { wmsOdsMateStorageNewsSn.setAmount(wmsRawOrderInSn.getAmount()); wmsOdsMateStorageNewsSn.setCreateBy("AGV"); wmsOdsMateStorageNewsSn.setGmtCreate(new Date()); + wmsOdsMateStorageNewsSn.setMateOrderInSnId(IdUtils.fastSimpleUUID()); wmsOdsMateStorageNewsSn.setFactoryCode(wmsToWCSDTO.getFactory()); wmsOdsMateStorageNewsSn.setSapFactoryCode(wmsToWCSDTO.getFactory()); wmsOdsMateStorageNewsSnMapper.insertWmsOdsMateStorageNewsSn(wmsOdsMateStorageNewsSn); //修改库存 - //2,修改库存---/加库存数量-/-冻结数量 + //2,修改库存---/加库存数量--storage_amount = IFNULL(storage_amount, 0) + #{amount}, WmsOdsEmStorageNews wmsOdsEmStorageNews=new WmsOdsEmStorageNews(); wmsOdsEmStorageNews.setWhCode(wmsRawOrderInSn.getWhCode());//仓库编码 wmsOdsEmStorageNews.setWlCode(wmsRawOrderInSn.getWlCode());//库位编码 wmsOdsEmStorageNews.setMaterialCode(wmsRawOrderInSn.getMaterialCode()); - wmsOdsEmStorageNews.setAmount(new BigDecimal(wmsToWCSDTO.getQty())); + wmsOdsEmStorageNews.setAmount(wmsRawOrderInSn.getAmount()); + //添加库存--这个要有个判断有没有这个库存如果没有的话,就插入 + WmsOdsMateStorageNews wmsOdsMateStorageNews= wmsOdsMateStorageNewsMapper.selectByWhCodeAndMate(wmsOdsEmStorageNews); + if (wmsOdsMateStorageNews==null){ + WmsOdsMateStorageNews wmsOdsMateStorageNews1=new WmsOdsMateStorageNews(); + wmsOdsMateStorageNews1.setStorageId(IdUtils.fastSimpleUUID()); + wmsOdsMateStorageNews1.setWhCode(wmsRawOrderInSn.getWhCode()); + wmsOdsMateStorageNews1.setWlCode(wmsRawOrderInSn.getWlCode()); + wmsOdsMateStorageNews1.setAmount(wmsRawOrderInSn.getAmount()); + // wmsOdsMateStorageNews1.setStorageAmount(wmsRawOrderInSn.getAmount()); + wmsOdsMateStorageNews1.setMaterialCode(wmsRawOrderInSn.getMaterialCode()); + wmsOdsMateStorageNews1.setMaterialDesc(wmsRawOrderInSn.getMaterialDesc()); + wmsOdsMateStorageNews1.setStorageType("BC"); + wmsOdsMateStorageNews1.setCreateBy("wcs"); + wmsOdsMateStorageNews1.setGmtCreate(new Date()); + wmsOdsMateStorageNews1.setActiveFlag("1"); + wmsOdsMateStorageNews1.setFactoryCode(wmsToWCSDTO.getFactory()); + wmsOdsMateStorageNews1.setSapFactoryCode(wmsToWCSDTO.getFactory()); + wmsOdsMateStorageNews1.setUserDefined1(wmsRawOrderInSn.getUserDefined4());//单位 + wmsOdsMateStorageNewsMapper.insertWmsOdsMateStorageNews(wmsOdsMateStorageNews1); + }else { wmsOdsMateStorageNewsSnMapper.updateAdd(wmsOdsEmStorageNews); - //修改托盘记录为入库 + } + //修改托盘记录为入库 wmsRawOrderInSnMapper.updateU1Byid(wmsRawOrderInSn); - wmsToWCSDTO.setCode("0"); - wmsToWCSDTO.setMessage("OK"); return wmsToWCSDTO; } @@ -99,6 +128,18 @@ public class WmsToWCSmissionServiceImpl implements IWmsToWCSmissionService { //记录明细消减库存 DynamicDataSourceContextHolder.push("ds_" + wcsdto.getFactory()); + WmsRawOrderInSn wmsRawOrderInSn= wmsRawOrderInSnMapper.selectwmsRfidNotwo(wcsdto); + //修改库存 + //2,修改库存---/加库存数量--storage_amount = IFNULL(storage_amount, 0) + #{amount}, + WmsOdsEmStorageNews wmsOdsEmStorageNews=new WmsOdsEmStorageNews(); + wmsOdsEmStorageNews.setWhCode(wmsRawOrderInSn.getWhCode());//仓库编码 + wmsOdsEmStorageNews.setWlCode(wmsRawOrderInSn.getWlCode());//库位编码 + wmsOdsEmStorageNews.setMaterialCode(wmsRawOrderInSn.getMaterialCode()); + wmsOdsEmStorageNews.setAmount(wmsRawOrderInSn.getAmount()); + wmsOdsMateStorageNewsSnMapper.updatekdd(wmsOdsEmStorageNews); return wcsdto; } + + + } diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml index 8d500ff17..794fcd73f 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsSnMapper.xml @@ -191,9 +191,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update wms_ods_mate_storage_news - set amount = IFNULL(amount, 0) + #{amount}, - storage_amount = IFNULL(storage_amount, 0) + #{amount}, - gmt_modified=now() + set amount = ISNULL(amount, 0) + #{amount}, + gmt_modified=GETDATE() + where wh_code=#{whCode} and wl_code=#{wlCode} and material_code=#{materialCode} + + + update wms_ods_mate_storage_news + set amount = ISNULL(amount, 0) - #{amount}, + gmt_modified=GETDATE() where wh_code=#{whCode} and wl_code=#{wlCode} and material_code=#{materialCode} + update wms_raw_order_in_sn