From 57f841914d89364ea55b83d79c4c7edc298ed6ba Mon Sep 17 00:00:00 2001 From: LSH Date: 星期二, 14 二月 2023 13:36:51 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 46 +++++++++++++++++++++++++++++++++++----------- 1 files changed, 35 insertions(+), 11 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 f48fe8b..d9d9e51 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -1,6 +1,8 @@ package com.zy.asrs.service.impl; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.core.common.BaseRes; @@ -170,8 +172,13 @@ } } if (!locDetlDtos.isEmpty()) { - // 鍚姩鍑哄簱寮�濮� 101.鍑哄簱 - stockOut(staNo, locDetlDtos, null, userId); + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo())); + if (locMast.getLocSts().equals("F") || locMast.getLocSts().equals("D") ){ + // 鍚姩鍑哄簱寮�濮� 101.鍑哄簱 + stockOut(staNo, locDetlDtos, null, userId); + }else { + throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎銆丏鐨勫簱浣嶏紝搴撲綅鍙凤細"+locMast.getLocNo()+" 銆佸綋鍓嶇姸鎬侊細"+locMast.getLocSts()+"-"+locMast.getLocSts$()); + } } else { throw new CoolException("搴撳瓨涓嶅瓨鍦�"); } @@ -233,7 +240,7 @@ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬� Double ioPri = wrkMastService.getIoPri(ioType, dto.getLocNo()); - wrkMast.setIoPri(13D); // 浼樺厛绾э細13 + wrkMast.setIoPri(15D); // 浼樺厛绾э細13 wrkMast.setOutMost(locMastService.isOutMost(dto.getLocNo(), false) ? 1 : 0); wrkMast.setCrnNo(locMast.getCrnNo()); wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 @@ -359,7 +366,7 @@ throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�"); } // 淇敼璁㈠崟鏄庣粏 - if (BaseController.isJSON(locDto.getOrderNo())) { + if (!BaseController.isJSON(locDto.getOrderNo())) { String[] orderNos = GetOrderNo(locDto.getOrderNo()); if (!Cools.isEmpty(orderNos)){ Double anfme = locDto.getAnfme(); @@ -393,6 +400,7 @@ } else { // 璁㈠崟鍚堝苟鍑哄簱 List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class); + for (OrderDto orderDto : orderDtoList) { OrderDetl orderDetl = orderDetlService.selectItem(orderDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch()); if (orderDetl == null) { @@ -535,6 +543,9 @@ if (Cools.isEmpty(locMast)) { throw new CoolException(locNo + "搴撲綅涓嶅瓨鍦�"); } + if (!locMast.getLocSts().equals("D")){ + throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篋鐨勫簱浣嶏紝搴撲綅鍙凤細"+locMast.getLocNo()+" 銆佸綋鍓嶇姸鎬侊細"+locMast.getLocSts()+"-"+locMast.getLocSts$()); + } // 鑾峰彇婧愮珯 Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() .eq("type_no", 110) @@ -603,8 +614,14 @@ } } if (!locDetlDtos.isEmpty()) { - // 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱 - stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId); + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo())); + if (locMast.getLocSts().equals("F")){ + // 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱 + stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId); + }else { + throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎鐨勫簱浣嶏紝搴撲綅鍙凤細"+locMast.getLocNo()+" 銆佸綋鍓嶇姸鎬侊細"+locMast.getLocSts()+"-"+locMast.getLocSts$()); + } + } else { throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�"); } @@ -621,6 +638,9 @@ LocMast loc = locMastService.selectById(locNo); if (Cools.isEmpty(loc)) { throw new CoolException("鏈壘鍒板簱浣�"); + } + if ((!loc.getLocSts().equals("F") && !loc.getLocSts().equals("D"))||(!sourceLoc.getLocSts().equals("F") && !sourceLoc.getLocSts().equals("D"))){ + throw new CoolException("搴撲綅鐘舵�佸凡鏀瑰彉"); } if (!sourceLoc.getCrnNo().equals(loc.getCrnNo())) { // throw new CoolException("绉昏浆搴撲綅灞炰簬涓嶅悓鍫嗗灈鏈�"); todo:luxiaotao @@ -707,6 +727,7 @@ wrkMast.setWrkSts(9L); // 鍑哄簱 } else if (wrkMast.getWrkSts() > 10) { + wrkMast.setSteNo(0); wrkMast.setWrkSts(17L); } Date now = new Date(); @@ -883,6 +904,9 @@ locSts = "D"; // 搴撲綅杞Щ ===>> D.绌烘《/绌烘爤鏉� } else if (wrkMast.getIoType() == 11) { + if (wrkMast.getWrkSts() > 11){ + throw new CoolException("绉诲簱浠诲姟宸插湪鎵ц涓紝涓嶈兘鍙栨秷"); + } locSts = wrkMast.getFullPlt().equalsIgnoreCase("N") ? "D" : "F"; // 搴撲綅杞Щ锛氱洰鏍囧簱浣� LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); @@ -909,7 +933,7 @@ if (!Cools.isEmpty(orderNo)) { Double anfme = Integer.parseInt(anfmes[i]) + 0.0; i++; - if (BaseController.isJSON(wrkDetl.getOrderNo())) { + if (!BaseController.isJSON(wrkDetl.getOrderNo())) { if (!orderDetlService.decrease(orderNo, wrkDetl.getMatnr(), wrkDetl.getBatch(), anfme)) { throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触"); } @@ -925,7 +949,7 @@ } } }else { - if (BaseController.isJSON(wrkDetl.getOrderNo())) { + if (!BaseController.isJSON(wrkDetl.getOrderNo())) { if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) { throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触"); } @@ -1059,9 +1083,9 @@ if (Cools.isEmpty(locNos)) { return; } - if (true && !Cools.isEmpty(locNos)) { - throw new CoolException("鏆備笉鏀寔绉诲簱浠诲姟"); // todo:luxiaotao 绉诲簱寮�鍏� - } +// if (true && !Cools.isEmpty(locNos)) { +// throw new CoolException("鏆備笉鏀寔绉诲簱浠诲姟"); // todo:luxiaotao 绉诲簱寮�鍏� +// } LocMast one = locMastService.selectById(locNos.get(0)); List<Integer> rows = Utils.getGroupLoc(Integer.parseInt(locNos.get(0).substring(0, 2))); List<LocMast> locMasts = locMastService.queryFreeLocMast(rows, rows.size(), one.getLocType1()); -- Gitblit v1.9.1