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