From 25bd8e7a6437bc1b66c6fee2f99d9cb2e3117acd Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期五, 28 十月 2022 13:27:38 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/WrkMastController.java | 123 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 121 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/WrkMastController.java b/src/main/java/com/zy/asrs/controller/WrkMastController.java index 3a6a9c5..9a28809 100644 --- a/src/main/java/com/zy/asrs/controller/WrkMastController.java +++ b/src/main/java/com/zy/asrs/controller/WrkMastController.java @@ -10,10 +10,12 @@ import com.core.common.Cools; import com.core.common.DateUtils; import com.core.common.R; -import com.zy.asrs.entity.WrkMast; -import com.zy.asrs.service.WrkMastService; +import com.zy.asrs.entity.*; +import com.zy.asrs.entity.dto.WrkDetlWithCheck; +import com.zy.asrs.service.*; import com.zy.common.web.BaseController; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import java.util.*; @@ -23,6 +25,16 @@ @Autowired private WrkMastService wrkMastService; + @Autowired + private WrkDetlService wrkDetlService; + @Autowired + private LocMastService locMastService; + @Autowired + private LocDetlService locDetlService; + @Autowired + private MatService matService; + @Autowired + private CheckRecordService checkRecordService; @RequestMapping(value = "/wrkMast/{id}/auth") @ManagerAuth @@ -166,4 +178,111 @@ } + /********************************杈归攱鏂板**************************/ + @GetMapping(value = "/wrkMast/checkDetl") + public R pickDetl(String barcode) { + WrkMast wrkMast = wrkMastService.selectByBarcode(barcode); + if (Cools.isEmpty(wrkMast)) { + return R.error("鏃犳硶閫氳繃鎵樼洏鐮佹壘鍒板搴斿伐浣滄。"); + } + if (wrkMast.getIoType() != 107) { + return R.error("宸ヤ綔妗i潪鎹℃枡浠诲姟"); + } + if (wrkMast.getWrkSts() != 14){ + return R.error("鐩樼偣浠诲姟姝e湪鎵ц涓�,璇风瓑寰呰澶囪繍琛岀粨鏉熷悗杩涜鎿嶄綔"); + } + List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); + + return R.ok(wrkDetls); + } + + /** + * 鏍规嵁鐩樼偣淇敼搴撳瓨 + * @return + */ + @Transactional + @PostMapping("/wrkMast/storeCheck") + @ManagerAuth(memo = "鏍规嵁鐩樼偣淇敼搴撳瓨") + public R storeCheck(@RequestBody List<WrkDetlWithCheck> wrkDetls){ + Date now = new Date(); + Integer confirmIsZero = 0; + if (wrkDetls == null || wrkDetls.size() <= 0){ + return R.error("璇蜂紶鍏ユ暟鎹�"); + } + if (Cools.isEmpty(wrkDetls.get(0).getBarcode())) { + + return R.error("鎵樼洏鐮乕barcode]涓虹┖"); + } + WrkMast wrkMast = wrkMastService.selectByBarcode(wrkDetls.get(0).getBarcode()); + + for (WrkDetlWithCheck wrkDetl : wrkDetls) { + if (Cools.isEmpty(wrkDetl.getBarcode())) { + return R.error("鎵樼洏鐮乕barcode]涓虹┖"); + } + if (Cools.isEmpty(wrkDetl.getMatnr())) { + return R.error("鐗╂枡缂栫爜[matnr]涓虹┖"); + } + Mat mat = matService.selectByMatnr(wrkDetl.getMatnr()); + if (Cools.isEmpty(mat)) { + return R.error("鐗╂枡缂栫爜[matnr]鍦ㄧ墿鏂欐。妗堟壘涓嶅埌"); + + } + if (Cools.isEmpty(wrkDetl.getAnfme())) { + return R.error("鐩樼偣鍓嶆暟閲廩anfme]涓虹┖"); + } + if (wrkDetl.getConfirmQty() == null) { + return R.error("鐩樼偣纭閲廩confirm]涓虹┖"); + } + if (wrkDetl.getConfirmQty() == 0){ + confirmIsZero++; + } + + } + /** + * 濡傛灉鏁翠釜list閲岀殑confirmQty鏁伴噺鍏ㄦ槸0, 琛ㄧず鏁翠釜搴撲綅鏃犱换浣曞簱瀛�,鍒犲伐浣滄。, 搴撲綅鏀逛负O + */ + if (confirmIsZero == wrkDetls.size()){ + locDetlService.delete(new EntityWrapper<LocDetl>() + .eq("loc_no",wrkMast.getSourceLocNo())); + locMastService.updateLocSts(wrkMast.getSourceLocNo(),"O"); + wrkMastService.delete(new EntityWrapper<WrkMast>() + .eq("wrk_no",wrkMast.getWrkNo())); + wrkDetlService.delete(new EntityWrapper<WrkDetl>() + .eq("wrk_no",wrkMast.getWrkNo())); + return R.ok("搴撳瓨娓呯悊鎴愬姛"); + }else { + locMastService.updateLocSts(wrkMast.getSourceLocNo(),"F"); + locDetlService.delete(new EntityWrapper<LocDetl>() + .eq("loc_no",wrkMast.getSourceLocNo())); + for (WrkDetlWithCheck wrkDetl : wrkDetls) { + LocDetl locDetl = new LocDetl(); + Mat mat = matService.selectByMatnr(wrkDetl.getMatnr()); + locDetl.sync(mat); + locDetl.setZpallet(wrkMast.getBarcode()); + locDetl.setAnfme(wrkDetl.getConfirmQty()); + locDetl.setBatch(wrkDetl.getBatch()); + locDetl.setAppeTime(now); + locDetl.setModiTime(now); + locDetl.setAppeUser(getUserId()); + locDetl.setModiUser(getUserId()); + locDetl.setLocNo(wrkMast.getSourceLocNo()); + locDetlService.insert(locDetl); + + CheckRecord checkRecord = new CheckRecord(); + checkRecord.sync(mat); + checkRecord.setAnfme(wrkDetl.getAnfme()); + checkRecord.setBarcode(wrkMast.getBarcode()); + checkRecord.setLocNo(wrkMast.getSourceLocNo()); + checkRecord.setCreateTime(now); + checkRecord.setBatch(wrkDetl.getBatch()); + checkRecord.setConfirmQty(locDetl.getAnfme()); + checkRecordService.insert(checkRecord); + + } + } + + return R.ok("搴撳瓨鏇存柊宸叉垚鍔�"); + } + + } -- Gitblit v1.9.1