From 7842982e37a16836ce06ea0a35c46e5d36642682 Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期一, 25 十二月 2023 10:23:03 +0800 Subject: [PATCH] 合并订单 --- src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java | 71 +++++++++++++++-------------------- 1 files changed, 31 insertions(+), 40 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java index ac9a84a..2fcb2b6 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java @@ -138,17 +138,34 @@ AgvWrkMast wrkMast = createWrkMast(ioType,wrkSts,sourceLocNo,targetLocNo,containerCode,now,userId,false); //鐢熸垚宸ヤ綔妗f槑缁� taskDto.getLocDtos().forEach(locDto -> { - //鏄庣粏妗f墍闇�鍙傛暟 - createWrkDetlReWrite(locDto.getMatnr(), - wrkMast.getWrkNo(), - locDto.getOrderNo(), - locDto.getBatch(), - locDto.getAnfme(), - locDto.getContainerCode(), - now, - userId, - locDto.getCsocode(), - locDto.getIsoseq()); + if (!BaseController.isJSON(locDto.getOrderNo())) { + //鏄庣粏妗f墍闇�鍙傛暟 + createWrkDetlReWrite(locDto.getMatnr(), + wrkMast.getWrkNo(), + locDto.getOrderNo(), + locDto.getBatch(), + locDto.getAnfme(), + locDto.getContainerCode(), + now, + userId, + locDto.getCsocode(), + locDto.getIsoseq()); + }else { + List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class); + orderDtoList.forEach(orderDto -> { + //鏄庣粏妗f墍闇�鍙傛暟 + createWrkDetlReWrite(locDto.getMatnr(), + wrkMast.getWrkNo(), + orderDto.getOrderNo(), + locDto.getBatch(), + orderDto.getAnfme(), + locDto.getContainerCode(), + now, + userId, + locDto.getCsocode(), + locDto.getIsoseq()); + }); + } //淇敼璁㈠崟淇℃伅 modifyOrderDetl(locDto, userId); @@ -221,13 +238,6 @@ @Transactional public void locCheckOut(StockOutParam param, Long userId) { String station = param.getStation(); -// List<AgvBasDevp> agvBasDevpList = agvBasDevpService.selectList(new EntityWrapper<AgvBasDevp>() -// .eq("station_code", station) -// .eq("loc_sts","O")); -// -// if(param.getLocDetls().size() > agvBasDevpList.size()){ -// throw new CoolException("褰撳墠绔欑偣鍙敤缂撳瓨璐ф灦鏁伴噺涓�" + agvBasDevpList.size() + ",灏戜簬闇�瑕佺洏鐐瑰嚭搴撳簱浣嶆暟閲忥紝璇烽噸鏂伴�夋嫨鐩樼偣搴撲綅"); -// } List<TaskDto> taskDtos = new ArrayList<>(); param.getLocDetls().forEach(locDetl -> { @@ -263,26 +273,6 @@ //locSts = ioType == 101 ? "S" : "Q"; updateAgvBasDevp(agvBasDevpService.selectById(wrkMast.getLocNo()),"S"); }); - - -// param.getLocDetls().forEach(locDetl -> { -// AgvLocMast agvLocMast = agvLocMastService.selectById(locDetl.getLocNo()); -// AgvLocDetl agvLocDetl = agvLocDetlService.selectOne(new EntityWrapper<AgvLocDetl>().eq("loc_no", locDetl.getLocNo())); -// AgvBasDevp agvBasDevp = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>() -// .eq("station_code", station) -// .eq("loc_sts","O")); -// Date now = new Date(); -// -// //鐢熸垚宸ヤ綔鍏� -// AgvWrkMast wrkMast = createWrkMast(107, 21L, locDetl.getLocNo(), agvBasDevp.getDevNo(), agvLocDetl.getSuppCode(), now, userId,false); -// //鐢熸垚宸ヤ綔鏄庣粏妗� -// createWrkDetlReWrite(locDetl.getMatnr(),wrkMast.getWrkNo(),null,locDetl.getBatch(),locDetl.getCount(),wrkMast.getBarcode(),now,userId,agvLocDetl.getThreeCode(),agvLocDetl.getDeadTime()); -// //淇敼搴撲綅淇℃伅 -// updateAgvLocMast(agvLocMast,"P"); -// //淇敼绔欑偣淇℃伅 -// updateAgvBasDevp(agvBasDevp,"S"); -// -// }); } @@ -751,8 +741,9 @@ orderDetl = orderDetlService.selectItem(orderDto.getOrderNo(), locDto.getMatnr(), null,locDto.getCsocode(),locDto.getIsoseq()); } - if(locAnfme > orderDetl.getAnfme()){ - orderAnfme = orderDetl.getAnfme(); + orderAnfme = orderDetl.getAnfme() - orderDetl.getQty(); + + if(locAnfme > orderAnfme){ locAnfme -= orderAnfme; }else { orderAnfme = locAnfme; -- Gitblit v1.9.1