From f94e75b6390118e170ce573dc1fc9780d0176a52 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期二, 29 三月 2022 15:24:57 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java | 7 ++-
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 33 +++++++---------
src/main/resources/mapper/LocDetlMapper.xml | 35 ++++++++++++++---
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java | 5 +-
4 files changed, 49 insertions(+), 31 deletions(-)
diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
index 896836b..b72f87e 100644
--- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -17,12 +17,13 @@
LocDetl selectItem(@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);
+
+ int updateAnfme(@Param("anfme")Double anfme, @Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch);
+
List<LocDetl> getStockOutPage(Map<String, Object> map);
Integer getStockOutPageCount(Map<String, Object> map);
-
- @Update("update asr_loc_detl set anfme=#{anfme}, modi_time = getDate() where loc_no = #{locNo} and matnr = #{matnr}")
- int updateAnfme(Double anfme, String locNo, String matnr);
@Update("update asr_loc_detl set loc_no = #{newLocNo}, modi_time=getDate() where loc_no = #{oldLocNo}")
int 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 7b1f579..23a6c91 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -23,10 +23,9 @@
@Override
public boolean updateAnfme(Double anfme, String locNo, String matnr, String batch) {
if (anfme <= 0) {
- return delete(new EntityWrapper<LocDetl>().eq("loc_no", locNo).eq("matnr", matnr));
+ return this.baseMapper.deleteItem(locNo, matnr, batch) > 0;
} else {
- int res = baseMapper.updateAnfme(anfme, locNo, matnr);
- return res > 0;
+ return baseMapper.updateAnfme(anfme, locNo, matnr, batch) > 0;
}
}
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 879ded8..71c0a9a 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -81,9 +81,9 @@
// 閬嶅巻宸ヤ綔鏄庣粏锛屾洿鏂板簱瀛樻槑缁嗗拰鍏ュ簱閫氱煡妗�
for (WrkDetl wrkDetl : wrkDetls) {
- LocDetl locDetl = locDetlService.selectItem(wrkMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
if (null != locDetl) {
- if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), wrkMast.getLocNo(), wrkDetl.getMatnr())) {
+ if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), wrkMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
}
} else {
@@ -103,13 +103,13 @@
try {
WaitPakin setParam = new WaitPakin();
setParam.setIoStatus("Y");
- boolean updateRes = waitPakinService.update(setParam
- , new EntityWrapper<WaitPakin>().eq("zpallet", wrkDetl.getZpallet())
+ setParam.setModiTime(now);
+ waitPakinService.update(setParam, new EntityWrapper<WaitPakin>()
+ .eq("zpallet", wrkDetl.getZpallet())
.eq("matnr", wrkDetl.getMatnr())
- .eq("anfme", wrkDetl.getAnfme()));
- if (!updateRes && updateRes) {
- exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊鍏ュ簱閫氱煡妗eけ璐ワ紱[workNo={0}]", wrkMast.getWrkNo());
- }
+ .eq("anfme", wrkDetl.getAnfme())
+ .eq("batch", wrkDetl.getBatch())
+ );
} catch (Exception ignore){}
}
@@ -131,14 +131,13 @@
if (wrkDetls53.isEmpty()) {
exceptionHandle("鎷f枡鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
}
- for (WrkDetl wrkDetl:wrkDetls53) {
- // 淇敼搴撳瓨鏄庣粏鏁伴噺锛屽鏋滃伐浣滄槑缁嗘暟閲忎负0鏃讹紝鍒犻櫎搴撳瓨鏄庣粏
- LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()).eq("matnr", wrkDetl.getMatnr()));
+ for (WrkDetl wrkDetl : wrkDetls53) {
+
+ LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
if (null != locDetl) {
- if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr())) {
+ if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
}
- // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y
}
}
// 淇敼搴撲綅鐘舵�� Q ====>> F
@@ -161,9 +160,10 @@
}
// 淇敼搴撳瓨鏄庣粏鏁伴噺锛屽鏃犲簱瀛橈紝鏇炬柊澧�
for (WrkDetl wrkDetl:wrkDetls54) {
- LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()).eq("matnr", wrkDetl.getMatnr()));
+
+ LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
if (null != locDetl) {
- if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr())) {
+ if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
exceptionHandle("骞舵澘鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
}
} else {
@@ -178,7 +178,6 @@
exceptionHandle("骞舵澘鍏ュ簱 ===>> 鏂板搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
}
}
- // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y
}
// 淇敼搴撲綅鐘舵�� Q ====>> F
if (locMast.getLocSts().equals("Q")) {
@@ -198,7 +197,6 @@
if (wrkDetls57.isEmpty()) {
exceptionHandle("鐩樼偣鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
}
- // todo:luxiaotao 3)淇敼鐩樼偣閫氱煡妗� status ==> Y
// 淇敼搴撲綅鐘舵�� Q ====>> F
if (locMast.getLocSts().equals("Q")) {
locMast.setLocSts("F");
@@ -222,7 +220,6 @@
exceptionHandle("搴撲綅绉昏浆 ===>> 杞Щ搴撳瓨鏄庣粏鏁版嵁澶辫触锛沎婧愬簱浣�={0}],[鐩爣搴撲綅={1}]", wrkMast.getSourceLocNo(), wrkMast.getLocNo());
}
}
- // todo:luxiaotao 3)淇敼鐩樼偣閫氱煡妗� status ==> Y
// 淇敼婧愬簱浣嶇姸鎬� ==> O
LocMast sourceLoc = locMastService.selectById(wrkMast.getSourceLocNo());
if (null != sourceLoc) {
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 0bfd94c..be017a9 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -26,13 +26,7 @@
<result column="appe_time" property="appeTime" />
</resultMap>
-
- <select id="selectItem" resultMap="BaseResultMap">
- select top 1 *
- from asr_loc_detl
- where 1=1
- and loc_no = #{locNo}
- and matnr = #{matnr}
+ <sql id="batchSeq">
<choose>
<when test="batch != null and batch != ''">
and batch = #{batch}
@@ -41,8 +35,35 @@
and (batch IS NULL OR batch = '')
</otherwise>
</choose>
+ </sql>
+
+ <select id="selectItem" resultMap="BaseResultMap">
+ select top 1 *
+ from asr_loc_detl
+ where 1=1
+ and loc_no = #{locNo}
+ and matnr = #{matnr}
+ <include refid="batchSeq"></include>
</select>
+ <delete id="deleteItem">
+ delete from asr_loc_detl
+ where 1=1
+ and loc_no = #{locNo}
+ and matnr = #{matnr}
+ <include refid="batchSeq"></include>
+ </delete>
+
+ <update id="updateAnfme">
+ update asr_loc_detl
+ set anfme = #{anfme}
+ , modi_time = getdate()
+ where 1=1
+ and loc_no = #{locNo}
+ and matnr = #{matnr}
+ <include refid="batchSeq"></include>
+ </update>
+
<sql id="stockOutCondition">
<if test="loc_no!=null and loc_no!='' ">
and a.loc_no like '%' + #{loc_no} + '%'
--
Gitblit v1.9.1