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