From a3c70ef5ed3c18209b37ba01a8ab3eb0eea0d7cb Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期二, 12 十二月 2023 16:49:52 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 276 ++++++++++++++++++++++++++---------------------------- 1 files changed, 132 insertions(+), 144 deletions(-) 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 ea9cf53..e07050c 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -1,27 +1,15 @@ package com.zy.asrs.service.impl; -import com.baomidou.mybatisplus.mapper.EntityWrapper; -import com.core.common.Cools; -import com.core.common.DateUtils; -import com.core.exception.CoolException; -import com.zy.asrs.domain.enums.WmsWrkStatusType; -import com.zy.asrs.entity.*; import com.zy.asrs.service.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; -import java.util.List; -import java.util.concurrent.TimeUnit; @Service public class WorkServiceImpl implements WorkService { @Autowired private WrkMastService wrkMastService; - @Autowired - private WmsWrkService wmsWrkService; @Autowired private LocMastService locMastService; @Autowired @@ -36,142 +24,142 @@ @Override @Transactional public void completeWrkMast(String workNo, Long userId) { - WrkMast wrkMast = wrkMastService.selectById(workNo); - WmsWrk wmsWrk = wmsWrkService.selectByWmsWrkNo(wrkMast.getWmsWrkNo()); - if (Cools.isEmpty(wrkMast, wmsWrk)) { - throw new CoolException(workNo + "浠诲姟涓嶅瓨鍦�"); - } - if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 14) { - throw new CoolException("褰撳墠浠诲姟宸插畬鎴�"); - } - // 鍏ュ簱 + 搴撲綅杞Щ - if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) { - wrkMast.setWrkSts(4L); - // 鍑哄簱 - } else if (wrkMast.getWrkSts() > 10) { - wrkMast.setWrkSts(14L); - } - Date now = new Date(); - wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true)); - wrkMast.setCrnEndTime(now); - wrkMast.setModiTime(now); - wrkMast.setModiUser(userId); - // 瀹屾垚鎿嶄綔浜哄憳璁板綍 - wrkMast.setManuType("鎵嬪姩瀹屾垚"); - - wmsWrk.setWmsStatus(WmsWrkStatusType.COMPLETE.id); - wmsWrk.setModiUser(userId); - wmsWrk.setModiTime(now); - wmsWrk.setEndTime(now); - if (!wrkMastService.updateById(wrkMast) || !wmsWrkService.updateById(wmsWrk)) { - throw new CoolException("淇敼浠诲姟澶辫触"); - } +// WrkMast wrkMast = wrkMastService.selectById(workNo); +// WmsWrk wmsWrk = wmsWrkService.selectByTaskNo(wrkMast.getWmsWrkNo()); +// if (Cools.isEmpty(wrkMast, wmsWrk)) { +// throw new CoolException(workNo + "浠诲姟涓嶅瓨鍦�"); +// } +// if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 14) { +// throw new CoolException("褰撳墠浠诲姟宸插畬鎴�"); +// } +// // 鍏ュ簱 + 搴撲綅杞Щ +// if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) { +// wrkMast.setWrkSts(4L); +// // 鍑哄簱 +// } else if (wrkMast.getWrkSts() > 10) { +// wrkMast.setWrkSts(14L); +// } +// Date now = new Date(); +// wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true)); +// wrkMast.setCrnEndTime(now); +// wrkMast.setModiTime(now); +// wrkMast.setModiUser(userId); +// // 瀹屾垚鎿嶄綔浜哄憳璁板綍 +// wrkMast.setManuType("鎵嬪姩瀹屾垚"); +// +// wmsWrk.setStatus(WmsStatusType.COMPLETE.id); +// wmsWrk.setModiUser(userId); +// wmsWrk.setModiTime(now); +// wmsWrk.setCompleteTime(now); +// if (!wrkMastService.updateById(wrkMast) || !wmsWrkService.updateById(wmsWrk)) { +// throw new CoolException("淇敼浠诲姟澶辫触"); +// } } @Override @Transactional public void cancelWrkMast(String workNo, Long userId) { - Date now = new Date(); - WrkMast wrkMast = wrkMastService.selectById(workNo); - WmsWrk wmsWrk = wmsWrkService.selectByWmsWrkNo(wrkMast.getWmsWrkNo()); - if (Cools.isEmpty(wrkMast, wmsWrk)) { - throw new CoolException(workNo + "浠诲姟涓嶅瓨鍦�"); - } - - String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣� - String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬� - // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級 - if (wrkMast.getWrkSts() < 4) { - locNo = wrkMast.getLocNo(); - locSts = "O"; - - // 搴撲綅杞Щ - if (wrkMast.getIoType() == 11) { - // 搴撲綅杞Щ锛氭簮搴撲綅 - LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo()); - if (Cools.isEmpty(locMast)) { - throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛屾簮搴撲綅涓嶅瓨鍦�:"+ wrkMast.getSourceLocNo()); - } - locMast.setLocSts(wrkMast.getFullPlt().equalsIgnoreCase("N")?"D":"F"); - locMast.setModiTime(now); - locMast.setModiUser(userId); - locMastService.updateById(locMast); - } - // 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛� - } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) { - locNo = wrkMast.getSourceLocNo(); - // 鍑哄簱 ===>> F.鍦ㄥ簱 - if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) { - locSts = "F"; - // 绌烘澘鍑哄簱 ===>> D.绌烘《/绌烘爤鏉� - } else if (wrkMast.getIoType() == 110) { - locSts = "D"; - // 搴撲綅杞Щ ===>> D.绌烘《/绌烘爤鏉� - } else if (wrkMast.getIoType() == 11) { - locSts = wrkMast.getFullPlt().equalsIgnoreCase("N")?"D":"F"; - // 搴撲綅杞Щ锛氱洰鏍囧簱浣� - LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); - if (Cools.isEmpty(locMast)) { - throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛岀洰鏍囧簱浣嶄笉瀛樺湪:"+ wrkMast.getSourceLocNo()); - } - locMast.setLocSts("O"); - locMast.setModiTime(now); - locMast.setModiUser(userId); - locMastService.updateById(locMast); - } - } else { - throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�"); - } - - //鍙栨秷鍏ュ簱宸ヤ綔妗f椂锛屾煡璇㈢粍鎵樿〃锛屽鏋滄湁灏嗙姸鎬佹敼涓哄緟澶勭悊 - if(wrkMast.getIoType() == 1) { - List<WaitPakin> waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode())); - for (WaitPakin waitPakin:waitPakins){ - if (!Cools.isEmpty(waitPakin)) { - waitPakin.setIoStatus("N"); - waitPakin.setLocNo(""); - waitPakinService.update(waitPakin, new EntityWrapper<WaitPakin>() - .eq("order_no", waitPakin.getOrderNo()) - .eq("matnr", waitPakin.getMatnr()) - .eq("batch", waitPakin.getBatch())); - } - } - } - - // 鍙栨秷鎿嶄綔浜哄憳璁板綍 - wrkMast.setManuType("鎵嬪姩鍙栨秷"); - wrkMast.setModiUser(userId); - wrkMast.setModiTime(now); - if (!wrkMastService.updateById(wrkMast)) { - throw new CoolException("鍙栨秷浠诲姟澶辫触"); - } - - wmsWrk.setWmsStatus(WmsWrkStatusType.CANCEL.id); - wmsWrk.setModiUser(userId); - wmsWrk.setModiTime(now); - wmsWrk.setEndTime(now); - if (!wmsWrkService.updateById(wmsWrk)) { - throw new CoolException("鍙栨秷浠诲姟澶辫触"); - } - - // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗� - if (!wrkMastLogService.save(wrkMast.getWrkNo())) { - throw new CoolException("淇濆瓨浠诲姟鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo()); - } - // 鍒犻櫎宸ヤ綔涓绘。 - boolean wrkMastRes = wrkMastService.deleteById(wrkMast); - - // 淇敼搴撲綅鐘舵�� - LocMast locMast = locMastService.selectById(locNo); - if (Cools.isEmpty(locMast)) { - throw new CoolException("鍙栨秷浠诲姟澶辫触锛屽簱浣嶄笉瀛樺湪:"+ locNo); - } - locMast.setLocSts(locSts); - locMast.setModiTime(now); - locMast.setModiUser(userId); - boolean locMastRes = locMastService.updateById(locMast); - if (!wrkMastRes || !locMastRes) { - throw new CoolException("淇濆瓨鏁版嵁澶辫触"); - } +// Date now = new Date(); +// WrkMast wrkMast = wrkMastService.selectById(workNo); +// WmsWrk wmsWrk = wmsWrkService.selectByWmsWrkNo(wrkMast.getWmsWrkNo()); +// if (Cools.isEmpty(wrkMast, wmsWrk)) { +// throw new CoolException(workNo + "浠诲姟涓嶅瓨鍦�"); +// } +// +// String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣� +// String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬� +// // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級 +// if (wrkMast.getWrkSts() < 4) { +// locNo = wrkMast.getLocNo(); +// locSts = "O"; +// +// // 搴撲綅杞Щ +// if (wrkMast.getIoType() == 11) { +// // 搴撲綅杞Щ锛氭簮搴撲綅 +// LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo()); +// if (Cools.isEmpty(locMast)) { +// throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛屾簮搴撲綅涓嶅瓨鍦�:"+ wrkMast.getSourceLocNo()); +// } +// locMast.setLocSts(wrkMast.getFullPlt().equalsIgnoreCase("N")?"D":"F"); +// locMast.setModiTime(now); +// locMast.setModiUser(userId); +// locMastService.updateById(locMast); +// } +// // 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛� +// } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) { +// locNo = wrkMast.getSourceLocNo(); +// // 鍑哄簱 ===>> F.鍦ㄥ簱 +// if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) { +// locSts = "F"; +// // 绌烘澘鍑哄簱 ===>> D.绌烘《/绌烘爤鏉� +// } else if (wrkMast.getIoType() == 110) { +// locSts = "D"; +// // 搴撲綅杞Щ ===>> D.绌烘《/绌烘爤鏉� +// } else if (wrkMast.getIoType() == 11) { +// locSts = wrkMast.getFullPlt().equalsIgnoreCase("N")?"D":"F"; +// // 搴撲綅杞Щ锛氱洰鏍囧簱浣� +// LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); +// if (Cools.isEmpty(locMast)) { +// throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛岀洰鏍囧簱浣嶄笉瀛樺湪:"+ wrkMast.getSourceLocNo()); +// } +// locMast.setLocSts("O"); +// locMast.setModiTime(now); +// locMast.setModiUser(userId); +// locMastService.updateById(locMast); +// } +// } else { +// throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�"); +// } +// +// //鍙栨秷鍏ュ簱宸ヤ綔妗f椂锛屾煡璇㈢粍鎵樿〃锛屽鏋滄湁灏嗙姸鎬佹敼涓哄緟澶勭悊 +// if(wrkMast.getIoType() == 1) { +// List<WaitPakin> waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode())); +// for (WaitPakin waitPakin:waitPakins){ +// if (!Cools.isEmpty(waitPakin)) { +// waitPakin.setIoStatus("N"); +// waitPakin.setLocNo(""); +// waitPakinService.update(waitPakin, new EntityWrapper<WaitPakin>() +// .eq("order_no", waitPakin.getOrderNo()) +// .eq("matnr", waitPakin.getMatnr()) +// .eq("batch", waitPakin.getBatch())); +// } +// } +// } +// +// // 鍙栨秷鎿嶄綔浜哄憳璁板綍 +// wrkMast.setManuType("鎵嬪姩鍙栨秷"); +// wrkMast.setModiUser(userId); +// wrkMast.setModiTime(now); +// if (!wrkMastService.updateById(wrkMast)) { +// throw new CoolException("鍙栨秷浠诲姟澶辫触"); +// } +// +// wmsWrk.setStatus(WmsStatusType.CANCEL.id); +// wmsWrk.setModiUser(userId); +// wmsWrk.setModiTime(now); +// wmsWrk.setCancelTime(now); +// if (!wmsWrkService.updateById(wmsWrk)) { +// throw new CoolException("鍙栨秷浠诲姟澶辫触"); +// } +// +// // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗� +// if (!wrkMastLogService.save(wrkMast.getWrkNo())) { +// throw new CoolException("淇濆瓨浠诲姟鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo()); +// } +// // 鍒犻櫎宸ヤ綔涓绘。 +// boolean wrkMastRes = wrkMastService.deleteById(wrkMast); +// +// // 淇敼搴撲綅鐘舵�� +// LocMast locMast = locMastService.selectById(locNo); +// if (Cools.isEmpty(locMast)) { +// throw new CoolException("鍙栨秷浠诲姟澶辫触锛屽簱浣嶄笉瀛樺湪:"+ locNo); +// } +// locMast.setLocSts(locSts); +// locMast.setModiTime(now); +// locMast.setModiUser(userId); +// boolean locMastRes = locMastService.updateById(locMast); +// if (!wrkMastRes || !locMastRes) { +// throw new CoolException("淇濆瓨鏁版嵁澶辫触"); +// } } } -- Gitblit v1.9.1