From 7b40697a357feca756647b6c4afaa1b303f5938d Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期一, 06 十一月 2023 11:47:58 +0800
Subject: [PATCH] 修复拣料回库后库存更新错误bug
---
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java | 4 ++--
src/main/java/com/zy/asrs/service/LocDetlService.java | 2 +-
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 10 ++++++++--
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 4 ++--
src/main/resources/mapper/LocDetlMapper.xml | 14 ++++++++++++++
src/main/webapp/views/mat/mat.html | 12 ++++++------
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java | 6 +++---
7 files changed, 36 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
index 1e1303a..46f540d 100644
--- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -19,9 +19,9 @@
LocDetl selectItem(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch,@Param("suppCode")String suppCode);
- int deleteItem(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch);
+ int deleteItem(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("suppCode")String suppCode, @Param("threeCode")String threeCode, @Param("deadTime")String deadTime);
- int updateAnfme(@Param("anfme")Double anfme, @Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch);
+ int updateAnfme(@Param("anfme")Double anfme, @Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("suppCode")String suppCode, @Param("threeCode")String threeCode, @Param("deadTime")String deadTime);
List<LocDetl> getStockOutPage(Map<String, Object> map);
diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java
index 5cc7743..1761c93 100644
--- a/src/main/java/com/zy/asrs/service/LocDetlService.java
+++ b/src/main/java/com/zy/asrs/service/LocDetlService.java
@@ -18,7 +18,7 @@
/**
* 淇敼搴撳瓨鏄庣粏鏁伴噺锛屽鏋滄暟閲忎负0锛屽垯鍒犻櫎璁板綍
*/
- boolean updateAnfme(Double anfme, String locNo, String matnr, String batch);
+ boolean updateAnfme(Double anfme, String locNo, String matnr, String batch, String containerCode, String csoCode, String isoCode);
boolean updateLocNo(String newLocNo, String oldLocNo);
diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
index d04fb7d..da0d56d 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -39,11 +39,11 @@
}
@Override
- public boolean updateAnfme(Double anfme, String locNo, String matnr, String batch) {
+ public boolean updateAnfme(Double anfme, String locNo, String matnr, String batch, String containerCode, String csoCode, String isoCode) {
if (anfme <= 0) {
- return this.baseMapper.deleteItem(locNo, matnr, batch) > 0;
+ return this.baseMapper.deleteItem(locNo, matnr, batch, containerCode, csoCode, isoCode) > 0;
} else {
- return baseMapper.updateAnfme(anfme, locNo, matnr, batch) > 0;
+ return baseMapper.updateAnfme(anfme, locNo, matnr, batch, containerCode, csoCode, isoCode) > 0;
}
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 2c1dab5..36fe8aa 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -858,7 +858,7 @@
if (!locDetl.getAnfme().equals(adjust.getCount())) {
// todo 鐩樼偣璁板綍
// 淇敼搴撳瓨
- if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch())) {
+ if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch(),locDetl.getSuppCode(),locDetl.getThreeCode(),locDetl.getDeadTime())) {
throw new CoolException(locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "搴忓垪鐮佷慨鏀规暟閲忓け璐�");
}
// 淇濆瓨璋冩暣璁板綍
@@ -887,7 +887,7 @@
// 鍒犻櫎搴撳瓨
for (LocDetl locDetl : locDetls) {
// todo 鐩樼偣璁板綍
- if (!locDetlService.updateAnfme(-1.0D, locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch())) {
+ if (!locDetlService.updateAnfme(-1.0D, locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch(),locDetl.getSuppCode(),locDetl.getThreeCode(),locDetl.getDeadTime())) {
throw new CoolException("鍒犻櫎" + locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "搴忓垪鐮佸簱瀛樻槑缁嗗け璐�");
}
// 淇濆瓨璋冩暣璁板綍
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 7ee97c1..bd3d89a 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -138,7 +138,13 @@
LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getSuppCode());
if (null != locDetl) {
- if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
+ if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(),
+ locMast.getLocNo(),
+ wrkDetl.getMatnr(),
+ wrkDetl.getBatch(),
+ wrkDetl.getSuppCode(),
+ wrkDetl.getThreeCode(),
+ wrkDetl.getDeadTime())) {
exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
}
}
@@ -166,7 +172,7 @@
LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getSuppCode());
if (null != locDetl) {
- if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
+ if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getSuppCode(),wrkDetl.getThreeCode(),wrkDetl.getDeadTime())) {
exceptionHandle("骞舵澘鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
}
} else {
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 7124654..b0dabf7 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -81,6 +81,7 @@
and loc_no = #{locNo}
and matnr = #{matnr}
<include refid="batchSeq"></include>
+ <include refid="locdetlCondition"></include>
</delete>
<update id="updateAnfme">
@@ -90,9 +91,22 @@
where 1=1
and loc_no = #{locNo}
and matnr = #{matnr}
+ <include refid="locdetlCondition"></include>
<include refid="batchSeq"></include>
</update>
+ <sql id="locdetlCondition">
+ <if test="threeCode!=null and threeCode!='' ">
+ and three_code = #{threeCode}
+ </if>
+ <if test="suppCode!=null and suppCode!='' ">
+ and supp_code = #{suppCode}
+ </if>
+ <if test="deadTime!=null and deadTime!='' ">
+ and dead_time = #{deadTime}
+ </if>
+ </sql>
+
<sql id="stockOutCondition">
<if test="loc_no!=null and loc_no!='' ">
and a.loc_no like '%' + #{loc_no} + '%'
diff --git a/src/main/webapp/views/mat/mat.html b/src/main/webapp/views/mat/mat.html
index cfe2b54..d42083c 100644
--- a/src/main/webapp/views/mat/mat.html
+++ b/src/main/webapp/views/mat/mat.html
@@ -310,17 +310,17 @@
<hr>
<!--鍗曢�夋-->
<div class="layui-form-item" style="display: inline-block; margin-bottom: 10px">
- <input type="radio" name="selectTemplate" value="1" title="妯℃澘涓�" lay-filter="selectTemplateRadio" checked="">
- <input type="radio" name="selectTemplate" value="2" title="妯℃澘浜�" lay-filter="selectTemplateRadio">
- <input type="radio" name="selectTemplate" value="3" title="妯℃澘涓�" lay-filter="selectTemplateRadio">
- <input type="radio" name="selectTemplate" value="4" title="妯℃澘鍥�" lay-filter="selectTemplateRadio">
+<!-- <input type="radio" name="selectTemplate" value="1" title="妯℃澘涓�" lay-filter="selectTemplateRadio" checked="">-->
+<!-- <input type="radio" name="selectTemplate" value="2" title="妯℃澘浜�" lay-filter="selectTemplateRadio">-->
+<!-- <input type="radio" name="selectTemplate" value="3" title="妯℃澘涓�" lay-filter="selectTemplateRadio">-->
+ <input type="radio" name="selectTemplate" value="4" title="妯℃澘鍥�" lay-filter="selectTemplateRadio" checked="checked">
</div>
<fieldset class="layui-elem-field site-demo-button" style="margin-top: 30px;text-align: left;">
<legend>鎵撳嵃棰勮</legend>
<div id="template-container" style="margin: 20px;text-align: center">
<!-- 棰勮鍥� 1 -->
- <div id="template-preview-1" class="template-preview" style="display: inline-block">
+ <div id="template-preview-1" class="template-preview" style="display: none">
<table class="contain" width="280" style="overflow: hidden;font-size: xx-small;table-layout: fixed;">
<tr style="height: 74px">
<td colspan="3" align="center" scope="col">鐗╂枡鍙�</td>
@@ -383,7 +383,7 @@
</div>
<!-- 棰勮鍥� 4 -->
- <div id="template-preview-4" class="template-preview" style="display: none">
+ <div id="template-preview-4" class="template-preview" style="display: inline-block">
<table class="contain" width="280" style="overflow: hidden;font-size: xx-small;table-layout: fixed;">
<tr style="height: 37px">
<td align="center" scope="col" >鍟嗗搧</td>
--
Gitblit v1.9.1