From 0a58dc2ed7c8349efc4e7dd0b45d8c6ab7e6f9df Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 22 三月 2021 11:07:43 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 248 +++++++++++++++++++++---------------------------- 1 files changed, 107 insertions(+), 141 deletions(-) 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 23eaa08..bf03c36 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java @@ -4,7 +4,8 @@ import com.zy.asrs.entity.*; import com.zy.asrs.service.*; import com.zy.asrs.task.AbstractHandler; -import com.zy.asrs.task.ReturnT; +import com.zy.asrs.task.core.ReturnT; +import com.zy.asrs.utils.VersionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -53,8 +54,8 @@ // 绌烘澘鍏ュ簱 case 10: // 淇敼搴撲綅鐘舵��=D - if (locMast.getLocType().equals("S") || locMast.getLocType().equals("Q")) { - locMast.setLocType("D"); + if (locMast.getLocSts().equals("S") || locMast.getLocSts().equals("Q")) { + locMast.setLocSts("D"); locMast.setIoTime(now); locMast.setModiTime(now); if (!locMastService.updateById(locMast)) { @@ -83,43 +84,34 @@ exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); } } else { - locDetl = new LocDetl( - wrkMast.getLocNo(), // 搴撲綅鍙� - wrkDetl.getMatnr(), // 鐗╂枡鍙� - null, // 浠撳簱鍙� - null, // 杞偍璇锋眰缂栧彿 - null, // 琛岄」鐩� - null, // 鐗╂枡鏍囩ID - wrkDetl.getMaktx(), // 鐗╂枡鎻忚堪 - null, // 宸ュ巶 - wrkDetl.getAnfme(), // 鏁伴噺 - wrkDetl.getAltme(), // 鍗曚綅 - wrkDetl.getZpallet(), // 鎵樼洏鏉$爜 - null, // 鐢ㄦ埛ID - null, // 澶囨敞 - null, // 淇敼浜哄憳 - now, // 淇敼鏃堕棿 - null, // 鍒涘缓鑰� - now // 娣诲姞鏃堕棿 - ); + locDetl = new LocDetl(); + locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙� + VersionUtils.setLocDetl(locDetl, wrkDetl); // 鐗堟湰鎺у埗 + locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺 + locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜 + locDetl.setModiTime(now); + locDetl.setAppeTime(now); if (!locDetlService.insert(locDetl)) { exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 娣诲姞搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); } } - // 鏇存柊鍏ュ簱閫氱煡妗� status ===>> Y - WaitPakin setParam = new WaitPakin(); - setParam.setStatus("Y"); - boolean updateRes = waitPakinService.update(setParam - , new EntityWrapper<WaitPakin>().eq("barcode", wrkDetl.getZpallet()) - .eq("matnr", wrkDetl.getMatnr()) - .eq("anfme", wrkDetl.getAnfme())); - if (!updateRes) { - exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊鍏ュ簱閫氱煡妗eけ璐ワ紱[workNo={0}]", wrkMast.getWrkNo()); - } + // 鏇存柊鍏ュ簱閫氱煡妗� ioStatus ===>> Y + try { + WaitPakin setParam = new WaitPakin(); + setParam.setIoStatus("Y"); + boolean updateRes = 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()); + } + } catch (Exception ignore){} + } // 淇敼搴撲綅鐘舵�� S ====>> F - if (locMast.getLocType().equals("S")) { - locMast.setLocType("F"); + if (locMast.getLocSts().equals("S")) { + locMast.setLocSts("F"); locMast.setBarcode(wrkMast.getBarcode()); locMast.setIoTime(now); locMast.setModiTime(now); @@ -139,15 +131,15 @@ // 淇敼搴撳瓨鏄庣粏鏁伴噺锛屽鏋滃伐浣滄槑缁嗘暟閲忎负0鏃讹紝鍒犻櫎搴撳瓨鏄庣粏 LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()).eq("matnr", wrkDetl.getMatnr())); if (null != locDetl) { - if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr())) { + if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr())) { exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); } // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y } } // 淇敼搴撲綅鐘舵�� Q ====>> F - if (locMast.getLocType().equals("Q")) { - locMast.setLocType("F"); + if (locMast.getLocSts().equals("Q")) { + locMast.setLocSts("F"); locMast.setBarcode(wrkMast.getBarcode()); locMast.setIoTime(now); locMast.setModiTime(now); @@ -171,25 +163,13 @@ exceptionHandle("骞舵澘鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr()); } } else { - locDetl = new LocDetl( - wrkMast.getLocNo(), // 搴撲綅鍙� - wrkDetl.getMatnr(), // 鐗╂枡鍙� - null, // 浠撳簱鍙� - null, // 杞偍璇锋眰缂栧彿 - null, // 琛岄」鐩� - null, // 鐗╂枡鏍囩ID - wrkDetl.getMaktx(), // 鐗╂枡鎻忚堪 - null, // 宸ュ巶 - wrkDetl.getAnfme(), // 鏁伴噺 - wrkDetl.getAltme(), // 鍗曚綅 - wrkDetl.getZpallet(), // 鎵樼洏鏉$爜 - null, // 鐢ㄦ埛ID - null, // 澶囨敞 - null, // 淇敼浜哄憳 - now, // 淇敼鏃堕棿 - null, // 鍒涘缓鑰� - now // 娣诲姞鏃堕棿 - ); + locDetl = new LocDetl(); + locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙� + VersionUtils.setLocDetl(locDetl, wrkDetl); // 鐗堟湰鎺у埗 + locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺 + locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜 + locDetl.setModiTime(now); + locDetl.setAppeTime(now); if (!locDetlService.insert(locDetl)) { exceptionHandle("骞舵澘鍏ュ簱 ===>> 鏂板搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr()); } @@ -197,8 +177,8 @@ // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y } // 淇敼搴撲綅鐘舵�� Q ====>> F - if (locMast.getLocType().equals("Q")) { - locMast.setLocType("F"); + if (locMast.getLocSts().equals("Q")) { + locMast.setLocSts("F"); locMast.setBarcode(wrkMast.getBarcode()); locMast.setIoTime(now); locMast.setModiTime(now); @@ -212,30 +192,30 @@ // 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗� List<WrkDetl> wrkDetls57 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); if (wrkDetls57.isEmpty()) { - exceptionHandle(""); // todo + exceptionHandle("鐩樼偣鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo()); } // todo:luxiaotao 3)淇敼鐩樼偣閫氱煡妗� status ==> Y // 淇敼搴撲綅鐘舵�� Q ====>> F - if (locMast.getLocType().equals("Q")) { - locMast.setLocType("F"); + if (locMast.getLocSts().equals("Q")) { + locMast.setLocSts("F"); locMast.setBarcode(wrkMast.getBarcode()); locMast.setIoTime(now); locMast.setModiTime(now); if (!locMastService.updateById(locMast)) { - exceptionHandle(""); // todo + exceptionHandle("鐩樼偣鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐ワ紱[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); } } break; // 搴撲綅绉昏浆 case 11: // 榛樿鐩爣搴撲綅鏄┖鏉� - String locType = "D"; + String locSts = "D"; // 搴撲綅绉昏浆鍒ゆ柇鏄惁涓虹┖鏉跨Щ杞� if (wrkMast.getEmptyMk().equals("N")) { - locType = "F"; + locSts = "F"; // 杞Щ搴撳瓨鏄庣粏鏁版嵁: 搴撳瓨鍙� 鐢卞伐浣滄。婧愬簱浣嶅彉涓虹洰鏍囧簱浣� if (!locDetlService.updateLocNo(wrkMast.getLocNo(), wrkMast.getSourceLocNo())) { - exceptionHandle(""); // todo + exceptionHandle("搴撲綅绉昏浆 ===>> 杞Щ搴撳瓨鏄庣粏鏁版嵁澶辫触锛沎婧愬簱浣�={0}],[鐩爣搴撲綅={1}]", wrkMast.getSourceLocNo(), wrkMast.getLocNo()); } } // todo:luxiaotao 3)淇敼鐩樼偣閫氱煡妗� status ==> Y @@ -243,20 +223,20 @@ LocMast sourceLoc = locMastService.selectById(wrkMast.getSourceLocNo()); if (null != sourceLoc) { sourceLoc.setBarcode(""); - sourceLoc.setLocType("O"); + sourceLoc.setLocSts("O"); sourceLoc.setModiTime(now); sourceLoc.setIoTime(now); if (!locMastService.updateById(sourceLoc)) { - exceptionHandle(""); // todo + exceptionHandle("搴撲綅绉昏浆 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐ワ紱[workNo={0}],[sourceLoc={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); } } - // 淇敼鐩爣搴撲綅鐘舵�� ==> .locType - locMast.setLocType(locType); + // 淇敼鐩爣搴撲綅鐘舵�� ==> .locSts + locMast.setLocSts(locSts); locMast.setBarcode(wrkMast.getBarcode()); locMast.setIoTime(now); locMast.setModiTime(now); if (!locMastService.updateById(locMast)) { - exceptionHandle(""); // todo + exceptionHandle("搴撲綅绉昏浆 ===>> 淇敼鐩爣搴撲綅鐘舵�佸け璐ワ紱[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); } break; default: @@ -266,7 +246,7 @@ wrkMast.setWrkSts(5L); wrkMast.setModiTime(now); if (!wrkMastService.updateById(wrkMast)) { - exceptionHandle(""); // todo + exceptionHandle("鏇存柊鍏ュ簱瀹屾垚鐘舵�佸け璐�;[workNo={0}]", wrkMast.getWrkNo()); } } catch (Exception e) { e.printStackTrace(); @@ -279,78 +259,64 @@ private ReturnT<String> doOut(WrkMast wrkMast){ Date now = new Date(); LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo()); - if (null == locMast) { - exceptionHandle(""); // todo - return; - } - switch (wrkMast.getIoType()) { - // 鍏ㄦ澘鍑哄簱 - case 101: - // 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗� - List<WrkDetl> wrkDetls101 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); - if (wrkDetls101.isEmpty()) { - exceptionHandle(""); // todo - } - for (WrkDetl wrkDetl : wrkDetls101) { - // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y - } - // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁� - if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) { - exceptionHandle(""); // todo - } - // 淇敼搴撲綅鐘舵�� R ===>> O - if (locMast.getLocType().equals("R")) { - locMast.setLocType("O"); - locMast.setBarcode(""); - locMast.setModiTime(now); - locMast.setIoTime(now); - if (!locMastService.updateById(locMast)) { - exceptionHandle(""); // todo - } - } - break; - // 绌烘澘鍑哄簱 - case 110: - // 淇敼搴撲綅鐘舵�� R ===>> O - if (locMast.getLocType().equals("R")) { - locMast.setLocType("O"); - locMast.setBarcode(""); - locMast.setModiTime(now); - locMast.setIoTime(now); - if (!locMastService.updateById(locMast)) { - exceptionHandle(""); // todo - } - } - break; - default: - break; - } - // 淇敼宸ヤ綔涓绘。鐘舵�� - wrkMast.setWrkSts(15L); - wrkMast.setModiTime(now); - if (!wrkMastService.updateById(wrkMast)) { - exceptionHandle(""); // todo - } - } - - public static void main(String[] args) { - for (int i = 0;i<10;i++) { - - try { - - System.out.println("====" + i); - if (i == 5){ - throw new Exception("dsa"); - } - System.out.println("----" + i); - - } catch (Exception e) { - e.printStackTrace(); + try { + if (null == locMast) { + exceptionHandle("宸ヤ綔妗workNo={0}]搴撲綅鍙烽敊璇痆locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); } - - - + switch (wrkMast.getIoType()) { + // 鍏ㄦ澘鍑哄簱 + case 101: + // 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗� + List<WrkDetl> wrkDetls101 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); + if (wrkDetls101.isEmpty()) { + exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo()); + } + for (WrkDetl wrkDetl : wrkDetls101) { + // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y + } + // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁� + if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) { + exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鍒犻櫎搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); + } + // 淇敼婧愬簱浣嶇姸鎬� R ===>> O + if (locMast.getLocSts().equals("R")) { + locMast.setLocSts("O"); + locMast.setBarcode(""); + locMast.setModiTime(now); + locMast.setIoTime(now); + if (!locMastService.updateById(locMast)) { + exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐ワ紱[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); + } + } + break; + // 绌烘澘鍑哄簱 + case 110: + // 淇敼搴撲綅鐘舵�� R ===>> O + if (locMast.getLocSts().equals("R")) { + locMast.setLocSts("O"); + locMast.setBarcode(""); + locMast.setModiTime(now); + locMast.setIoTime(now); + if (!locMastService.updateById(locMast)) { + exceptionHandle("绌烘澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐ワ紱[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); + } + } + break; + default: + break; + } + // 淇敼宸ヤ綔涓绘。鐘舵�� + wrkMast.setWrkSts(15L); + wrkMast.setModiTime(now); + if (!wrkMastService.updateById(wrkMast)) { + exceptionHandle("鏇存柊鍑哄簱瀹屾垚鐘舵�佸け璐�;[workNo={0}]", wrkMast.getWrkNo()); + } + } catch (Exception e) { + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return FAIL.setMsg(e.getMessage()); } + return SUCCESS; } } -- Gitblit v1.9.1