From 4b0fec6fd68a7f6ac0f5b226cf11b3e71cbe68e1 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 12 一月 2021 20:12:29 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 217 +++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 148 insertions(+), 69 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 28e7233..3576bef 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.mapper.Wrapper; import com.core.common.BaseRes; import com.core.common.Cools; +import com.core.common.DateUtils; import com.core.exception.CoolException; import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.EmptyPlateOutParam; @@ -11,15 +12,20 @@ import com.zy.asrs.entity.param.LocDetlAdjustParam; import com.zy.asrs.entity.param.StockOutParam; import com.zy.asrs.service.*; +import com.zy.asrs.utils.VersionUtils; import com.zy.common.model.LocDetlDto; +import com.zy.common.model.LocTypeDto; import com.zy.common.model.OutLocDto; import com.zy.common.model.StartupDto; +import com.zy.common.model.enums.WorkNoType; import com.zy.common.service.CommonService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; /** * Created by vincent on 2020/6/11 @@ -29,6 +35,8 @@ // 宸ヤ綔鍙风敓鎴愯鍒欓粯璁ょ被鍨� private static final int DEFAULT_WORK_NO_TYPE = 0; + // 搴撲綅鎺掑彿鍒嗛厤榛樿绫诲埆 + private static final int DEFAULT_ROW_NO_TYPE = 1; @Autowired private WrkMastService wrkMastService; @@ -48,6 +56,10 @@ private MatCodeService matCodeService; @Autowired private AdjDetlService adjDetlService; + @Autowired + private WrkMastLogService wrkMastLogService; + @Autowired + private WrkDetlLogService wrkDetlLogService; @Override @Transactional @@ -57,11 +69,13 @@ throw new CoolException(BaseRes.PARAM); } // 婧愮珯鐐圭姸鎬佹娴� - BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo()); - // 鐢熸垚宸ヤ綔鍙� - int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE); + BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo(), true); // 妫�绱㈠簱浣� - StartupDto dto = commonService.getLocNo(1, 1, param.getDevpNo()); + LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); + List<String> matNos = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatNo).distinct().collect(Collectors.toList()); + StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), matNos, locTypeDto, 0); + // 鐢熸垚宸ヤ綔鍙� + int workNo = dto.getWorkNo(); // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); @@ -104,8 +118,8 @@ } // 鏇存柊鐩爣搴撲綅鐘舵�� LocMast locMast = locMastService.selectById(dto.getLocNo()); - if (locMast.getLocType().equals("O")){ - locMast.setLocType("S"); // S.鍏ュ簱棰勭害 + if (locMast.getLocSts().equals("O")){ + locMast.setLocSts("S"); // S.鍏ュ簱棰勭害 locMast.setModiUser(userId); locMast.setModiTime(new Date()); if (!locMastService.updateById(locMast)){ @@ -135,7 +149,7 @@ } if (!locDetlDtos.isEmpty()) { // 鍚姩鍑哄簱寮�濮� 101.鍑哄簱 - stockOut(staNo, locDetlDtos, 101, userId); + stockOut(staNo, locDetlDtos, null, userId); } else { throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�"); } @@ -163,7 +177,9 @@ // 鐢熸垚宸ヤ綔妗� for (OutLocDto dto : dtos) { // 鍒ゆ柇鍏ュ嚭搴撶被鍨嬶細101.鍏ㄦ澘鍑哄簱 or 103.鎷f枡鍑哄簱 - ioType = (dto.isAll() && (ioType==101||ioType==103))?101:103; + if (ioType == null) { + ioType = dto.isAll() ? 101 : 103; + } // 鑾峰彇搴撲綅 LocMast locMast = locMastService.selectById(dto.getLocNo()); // 鑾峰彇璺緞 @@ -176,13 +192,13 @@ throw new CoolException("鍑哄簱璺緞涓嶅瓨鍦�"); } // 鐢熸垚宸ヤ綔鍙� - int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE); + int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); wrkMast.setIoTime(new Date()); wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID - wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬侊細101.鍑哄簱 + wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬� wrkMast.setIoPri(13D); // 浼樺厛绾э細13 wrkMast.setCrnNo(locMast.getCrnNo()); wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 @@ -207,16 +223,9 @@ WrkDetl wrkDetl = new WrkDetl(); wrkDetl.setWrkNo(workNo); wrkDetl.setIoTime(new Date()); - wrkDetl.setMatnr(detlDto.getLocDetl().getMatnr()); - Double anfme = ioType==101?detlDto.getCount():detlDto.getLocDetl().getAnfme(); + Double anfme = ioType==101?detlDto.getLocDetl().getAnfme():detlDto.getCount(); wrkDetl.setAnfme(anfme); // 鏁伴噺 - wrkDetl.setZmatid(detlDto.getLocDetl().getZmatid()); - wrkDetl.setTbpos(detlDto.getLocDetl().getTbpos()); - wrkDetl.setTbnum(detlDto.getLocDetl().getTbnum()); - wrkDetl.setLgnum(detlDto.getLocDetl().getLgnum()); - wrkDetl.setAltme(detlDto.getLocDetl().getAltme()); - wrkDetl.setBname(detlDto.getLocDetl().getBname()); - wrkDetl.setMaktx(detlDto.getLocDetl().getMaktx()); + VersionUtils.setWrkDetl(wrkDetl, detlDto.getLocDetl()); // 鐗堟湰鎺у埗 wrkDetl.setAppeTime(new Date()); wrkDetl.setAppeUser(userId); wrkDetl.setModiTime(new Date()); @@ -227,8 +236,8 @@ } // 淇敼搴撲綅鐘舵��: F.鍦ㄥ簱 ====>>> R.鍑哄簱棰勭害/P.鎷f枡/鐩樼偣/骞舵澘鍑哄簱涓� locMast = locMastService.selectById(dto.getLocNo()); - if (locMast.getLocType().equals("F")) { - locMast.setLocType(ioType==101?"R":"P"); + if (locMast.getLocSts().equals("F")) { + locMast.setLocSts(ioType==101?"R":"P"); locMast.setModiUser(userId); locMast.setModiTime(new Date()); if (!locMastService.updateById(locMast)) { @@ -244,23 +253,23 @@ @Transactional public String emptyPlateIn(Integer devpNo, Long userId) { // 婧愮珯鐐圭姸鎬佹娴� - BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo); - // 鐢熸垚宸ヤ綔鍙� - int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE); + BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true); // 妫�绱㈠簱浣� - StartupDto dto = commonService.getLocNo(1, 10, devpNo); + LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); + StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 10, devpNo, null, locTypeDto, 0); + int workNo = dto.getWorkNo(); // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); wrkMast.setIoTime(new Date()); wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID wrkMast.setIoType(10); // 鍏ュ嚭搴撶姸鎬侊細10.绌烘澘鍏ュ簱 - wrkMast.setIoPri(13D); // 浼樺厛绾э細10 + wrkMast.setIoPri(10D); // 浼樺厛绾э細10 wrkMast.setCrnNo(dto.getCrnNo()); wrkMast.setSourceStaNo(dto.getSourceStaNo()); wrkMast.setStaNo(dto.getStaNo()); wrkMast.setLocNo(dto.getLocNo()); - wrkMast.setFullPlt("N"); // 婊℃澘锛歒 + wrkMast.setFullPlt("N"); // 婊℃澘 wrkMast.setPicking("N"); // 鎷f枡 wrkMast.setExitMk("N"); // 閫�鍑� wrkMast.setEmptyMk("Y"); // 绌烘澘 @@ -284,8 +293,8 @@ } // 鏇存柊鐩爣搴撲綅鐘舵�� LocMast locMast = locMastService.selectById(dto.getLocNo()); - if (locMast.getLocType().equals("O")){ - locMast.setLocType("S"); // S.鍏ュ簱棰勭害 + if (locMast.getLocSts().equals("O")){ + locMast.setLocSts("S"); // S.鍏ュ簱棰勭害 locMast.setModiUser(userId); locMast.setModiTime(new Date()); if (!locMastService.updateById(locMast)){ @@ -305,7 +314,7 @@ } for (String locNo : param.getLocNos()) { // 鑾峰彇宸ヤ綔鍙� - int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE); + int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type); // 鑾峰彇搴撲綅 LocMast locMast = locMastService.selectById(locNo); if (Cools.isEmpty(locMast)) { @@ -346,8 +355,8 @@ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); } // 鏇存柊搴撲綅鐘舵�� D.绌烘澘 -> R.鍑哄簱棰勭害 - if (locMast.getLocType().equals("D")){ - locMast.setLocType("R"); + if (locMast.getLocSts().equals("D")){ + locMast.setLocSts("R"); locMast.setModiUser(userId); locMast.setModiTime(new Date()); if (!locMastService.updateById(locMast)) { @@ -397,13 +406,13 @@ throw new CoolException("绉昏浆搴撲綅灞炰簬涓嶅悓鍫嗗灈鏈�"); } // 鑾峰彇宸ヤ綔鍙� - int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE); + int workNo = commonService.getWorkNo(WorkNoType.PICK.type); // 淇濆瓨宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); wrkMast.setIoTime(new Date()); wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID - wrkMast.setIoType(110); // 鍏ュ嚭搴撶姸鎬侊細 110.绌烘澘鍑哄簱 + wrkMast.setIoType(11); // 鍏ュ嚭搴撶姸鎬侊細 11.搴撴牸绉昏浇 wrkMast.setIoPri(10D); wrkMast.setCrnNo(sourceLoc.getCrnNo()); wrkMast.setSourceLocNo(sourceLocNo); // 婧愬簱浣� @@ -411,7 +420,8 @@ wrkMast.setFullPlt("N"); // 婊℃澘锛歒 wrkMast.setPicking("N"); // 鎷f枡 wrkMast.setExitMk("N"); // 閫�鍑� - wrkMast.setEmptyMk(sourceLoc.getLocType().equals("D")?"Y":"N"); // 绌烘澘 + wrkMast.setEmptyMk(sourceLoc.getLocSts().equals("D")?"Y":"N"); // 绌烘澘 + wrkMast.setBarcode(sourceLoc.getBarcode()); // 鎵樼洏鐮� wrkMast.setLinkMis("N"); wrkMast.setAppeUser(userId); wrkMast.setAppeTime(new Date()); @@ -427,15 +437,8 @@ WrkDetl wrkDetl = new WrkDetl(); wrkDetl.setWrkNo(workNo); wrkDetl.setIoTime(new Date()); - wrkDetl.setMatnr(locDetl.getMatnr()); wrkDetl.setAnfme(locDetl.getAnfme()); - wrkDetl.setZmatid(locDetl.getZmatid()); - wrkDetl.setTbpos(locDetl.getTbpos()); - wrkDetl.setTbnum(locDetl.getTbnum()); - wrkDetl.setLgnum(locDetl.getLgnum()); - wrkDetl.setAltme(locDetl.getAltme()); - wrkDetl.setBname(locDetl.getBname()); - wrkDetl.setMaktx(locDetl.getMaktx()); + VersionUtils.setWrkDetl(wrkDetl, locDetl); // 鐗堟湰鎺у埗 wrkDetl.setAppeTime(new Date()); wrkDetl.setAppeUser(userId); wrkDetl.setModiTime(new Date()); @@ -445,26 +448,26 @@ } } // 淇敼婧愬簱浣嶇姸鎬� - if (sourceLoc.getLocType().equals("D") || sourceLoc.getLocType().equals("F")) { - sourceLoc.setLocType("R"); // R.鍑哄簱棰勭害 + if (sourceLoc.getLocSts().equals("D") || sourceLoc.getLocSts().equals("F")) { + sourceLoc.setLocSts("R"); // R.鍑哄簱棰勭害 sourceLoc.setModiUser(userId); sourceLoc.setModiTime(new Date()); if (!locMastService.updateById(sourceLoc)){ throw new CoolException("鏇存柊婧愬簱浣嶇姸鎬佸け璐�"); } } else { - throw new CoolException("婧愬簱浣嶅嚭搴撳け璐ワ紝鐘舵�侊細"+sourceLoc.getLocType$()); + throw new CoolException("婧愬簱浣嶅嚭搴撳け璐ワ紝鐘舵�侊細"+sourceLoc.getLocSts$()); } // 淇敼鐩爣搴撲綅鐘舵�� - if (loc.getLocType().equals("O")) { - loc.setLocType("S"); // S.鍏ュ簱棰勭害 + if (loc.getLocSts().equals("O")) { + loc.setLocSts("S"); // S.鍏ュ簱棰勭害 loc.setModiTime(new Date()); loc.setModiUser(userId); if (!locMastService.updateById(loc)) { throw new CoolException("鏇存柊鐩爣搴撲綅鐘舵�佸け璐�"); } } else { - throw new CoolException("绉昏浆澶辫触锛岀洰鏍囧簱浣嶇姸鎬侊細"+loc.getLocType$()); + throw new CoolException("绉昏浆澶辫触锛岀洰鏍囧簱浣嶇姸鎬侊細"+loc.getLocSts$()); } } @@ -485,8 +488,13 @@ } else if (wrkMast.getWrkSts() > 10) { wrkMast.setWrkSts(14L); } - wrkMast.setModiTime(new Date()); + Date now = new Date(); + wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true)); + wrkMast.setCrnEndTime(now); + wrkMast.setModiTime(now); wrkMast.setModiUser(userId); + // 瀹屾垚鎿嶄綔浜哄憳璁板綍 + wrkMast.setManuType("鎵嬪姩瀹屾垚"); if (!wrkMastService.updateById(wrkMast)) { throw new CoolException("淇敼宸ヤ綔妗eけ璐�"); } @@ -515,17 +523,8 @@ MatCode matCode = matCodeService.selectById(adjust.getMatnr()); LocDetl locDetl = new LocDetl(); locDetl.setLocNo(locMast.getLocNo()); - locDetl.setMatnr(matCode.getMatNo()); - locDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪 locDetl.setAnfme(adjust.getCount()); // 鏁伴噺 - locDetl.setAltme(matCode.getStr1()); // 鍗曚綅 - // todo:luxiaoao - locDetl.setLgnum("寰呭畾"); // 浠撳簱鍙� - locDetl.setTbnum(0); // 杞偍璇锋眰缂栧彿 - locDetl.setTbpos(0); // 琛岄」鐩� - locDetl.setZmatid("寰呭畾"); // 鐗╂枡鏍囩ID - locDetl.setZpallet("寰呭畾"); // 鎵樼洏鏉$爜 - + VersionUtils.setLocDetl(locDetl, matCode); // 鐗堟湰鎺у埗 locDetl.setModiUser(userId); // 鎿嶄綔浜哄憳淇℃伅 locDetl.setModiTime(new Date()); locDetl.setAppeUser(userId); @@ -570,6 +569,15 @@ } } } + List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", param.getLocNo())); + if (locDetls.isEmpty()) { + locMast.setLocSts("D"); + locMast.setModiUser(userId); + locMast.setModiTime(new Date()); + if (!locMastService.updateById(locMast)) { + throw new CoolException("鏇存柊搴撲綅鐘舵�佸け璐�"); + } + } } @Override @@ -580,11 +588,11 @@ throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪"); } String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣� - String locType = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬� + String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬� // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級 if (wrkMast.getWrkSts() < 4) { locNo = wrkMast.getLocNo(); - locType = "O"; + locSts = "O"; /** * 搴撲綅杞Щ * 鍙栨秷鍚� 婧愬簱浣� ==>> F.鍦ㄥ簱 @@ -596,7 +604,7 @@ if (Cools.isEmpty(locMast)) { throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛屾簮搴撲綅涓嶅瓨鍦�:"+ wrkMast.getSourceLocNo()); } - locMast.setLocType("F"); + locMast.setLocSts("F"); locMast.setModiTime(new Date()); locMast.setModiUser(userId); locMastService.updateById(locMast); @@ -606,19 +614,19 @@ locNo = wrkMast.getSourceLocNo(); // 鍑哄簱 ===>> F.鍦ㄥ簱 if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) { - locType = "F"; + locSts = "F"; // 绌烘澘鍑哄簱 ===>> D.绌烘《/绌烘爤鏉� } else if (wrkMast.getIoType() == 110) { - locType = "D"; + locSts = "D"; // 搴撲綅杞Щ ===>> D.绌烘《/绌烘爤鏉� } else if (wrkMast.getIoType() == 11) { - locType = "F"; + locSts = "F"; // 搴撲綅杞Щ锛氱洰鏍囧簱浣� LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); if (Cools.isEmpty(locMast)) { throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛岀洰鏍囧簱浣嶄笉瀛樺湪:"+ wrkMast.getSourceLocNo()); } - locMast.setLocType("O"); + locMast.setLocSts("O"); locMast.setModiTime(new Date()); locMast.setModiUser(userId); locMastService.updateById(locMast); @@ -626,8 +634,23 @@ } else { throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�"); } - // 鍒犻櫎宸ヤ綔妗� + // 鍙栨秷鎿嶄綔浜哄憳璁板綍 + wrkMast.setManuType("鎵嬪姩鍙栨秷"); + wrkMast.setModiUser(userId); + wrkMast.setModiTime(new Date()); + if (!wrkMastService.updateById(wrkMast)) { + throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐�"); + } + // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗� + if (!wrkMastLogService.save(wrkMast.getWrkNo())) { + throw new CoolException("淇濆瓨宸ヤ綔鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo()); + } + // 鍒犻櫎宸ヤ綔涓绘。 boolean wrkMastRes = wrkMastService.deleteById(wrkMast); + // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。 + if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { + throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo()); + } // 鍒犻櫎宸ヤ綔妗f槑缁� boolean wrkDetlRes = wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo)); // 淇敼搴撲綅鐘舵�� @@ -635,7 +658,7 @@ if (Cools.isEmpty(locMast)) { throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐ワ紝搴撲綅涓嶅瓨鍦�:"+ locNo); } - locMast.setLocType(locType); + locMast.setLocSts(locSts); locMast.setModiTime(new Date()); locMast.setModiUser(userId); boolean locMastRes = locMastService.updateById(locMast); @@ -644,4 +667,60 @@ } } + @Override + @Transactional + public void pickWrkMast(String workNo, Long userId) { + WrkMast wrkMast = wrkMastService.selectById(workNo); + if (Cools.isEmpty(wrkMast)){ + throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪"); + } + // 鍏ュ嚭搴撶被鍨嬪垽鏂� + if (wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) { + throw new CoolException("褰撳墠鍏ュ嚭搴撶被鍨嬫棤娉曡繘琛屾搷浣�"); + } + // 宸ヤ綔鐘舵�佸垽鏂� + if (wrkMast.getWrkSts() < 11 || wrkMast.getWrkSts() == 15) { + throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曡繘琛屾搷浣�"); + } + // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。 + if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { + throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触"); + } + // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗� + if (!wrkMastLogService.save(wrkMast.getWrkNo())) { + throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�"); + } + // 鑾峰彇鐩爣绔� + Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() + .eq("type_no", wrkMast.getIoType() - 50) + .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯 + .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿 + StaDesc staDesc = staDescService.selectOne(wrapper); + if (Cools.isEmpty(staDesc)) { + throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�"); + } + // 鍫嗗灈鏈虹珯鐐�(鐩爣绔�) + Integer staNo = staDesc.getCrnStn(); + // 鏇存柊宸ヤ綔妗f暟鎹姸鎬� + wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57 + wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋 + wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯 + wrkMast.setStaNo(staNo); // 鐩爣绔� + wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣� + wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌� + wrkMast.setModiTime(new Date()); + wrkMast.setModiUser(userId); + if (!wrkMastService.updateById(wrkMast)) { + throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�"); + } + // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴� + LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); + locMast.setLocSts("Q"); + locMast.setModiTime(new Date()); + locMast.setModiUser(userId); + if (!locMastService.updateById(locMast)) { + throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�"); + } + } + } -- Gitblit v1.9.1