From 1ed0d9a39f500c2b39de10320c47ce90a38bb2ba Mon Sep 17 00:00:00 2001 From: 18516761980 <56479841@qq.com> Date: 星期一, 27 六月 2022 13:57:34 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/luxiaotao1123/zy-asrs into hylyasrs --- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 75 +++++++++++++++++++++++++++++++++++-- src/main/java/com/zy/asrs/controller/MobileController.java | 19 ++------- src/main/java/com/zy/asrs/service/MobileService.java | 2 + 3 files changed, 77 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java index 0aa03bc..027c0fd 100644 --- a/src/main/java/com/zy/asrs/controller/MobileController.java +++ b/src/main/java/com/zy/asrs/controller/MobileController.java @@ -2,6 +2,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; import com.core.annotations.ManagerAuth; import com.core.common.BaseRes; import com.core.common.Cools; @@ -303,20 +304,8 @@ if(!param.containsKey("staNo") || !param.containsKey("orderNo")){ return R.parse(BaseRes.PARAM); } - Integer staNo = param.containsKey("staNo") ? Integer.parseInt(param.get("staNo").toString()) : 0; - String orderNo = param.containsKey("orderNo") ? param.get("orderNo").toString() : ""; - - BasDevp sta = basDevpService.checkSiteStatus(staNo); - //鏍规嵁璁㈠崟鍙风敓鎴愬嚭搴撲换鍔″伐浣滄。,寰呭疄鐜� - List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo)); - for(OrderDetl orderDetl : orderDetls){ - //鏌ヨ鎵�鏈夊簱浣嶇姸鎬佷负F鐨勫簱浣嶄俊鎭� - List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),null); - if (locDetls.size() == 0) { - throw new CoolException("搴撳瓨涓病鏈夎鐗╂枡"); - } - } - + mobileService.pakoutByOrder(param,getUserId()); + return R.ok("鍑哄簱鎴愬姛"); // if (Cools.isEmpty(locDtos)) { // return R.parse(BaseRes.PARAM); @@ -352,7 +341,7 @@ // BasDevp staNo = basDevpService.checkSiteStatus(taskDto.getStaNo()); // workService.stockOut(staNo, taskDto, getUserId()); // } - return R.ok(); +// return R.ok(); } } diff --git a/src/main/java/com/zy/asrs/service/MobileService.java b/src/main/java/com/zy/asrs/service/MobileService.java index 51e6c59..072f9a3 100644 --- a/src/main/java/com/zy/asrs/service/MobileService.java +++ b/src/main/java/com/zy/asrs/service/MobileService.java @@ -1,5 +1,6 @@ package com.zy.asrs.service; +import com.alibaba.fastjson.JSONObject; import com.zy.asrs.entity.param.CombParam; import com.zy.asrs.entity.param.MobileAdjustParam; @@ -17,4 +18,5 @@ void packComb(CombParam param, Long userId); + void pakoutByOrder(JSONObject param, Long userId); } diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index 11bc041..34c46a2 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -3,10 +3,8 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; -import com.core.common.BaseRes; -import com.core.common.Cools; -import com.core.common.DateUtils; -import com.core.common.SnowflakeIdWorker; +import com.baomidou.mybatisplus.mapper.Wrapper; +import com.core.common.*; import com.core.exception.CoolException; import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.CombParam; @@ -59,6 +57,12 @@ private SnowflakeIdWorker snowflakeIdWorker; @Autowired private ApiLogService apiLogService; + @Autowired + private BasCrnpService basCrnpService; + @Autowired + private LocMastService locMastService; + @Autowired + private LocDetlService locDetlService; @Override @Transactional @@ -400,4 +404,67 @@ } } + @Override + @Transactional + public void pakoutByOrder(JSONObject param, Long userId) { + Integer staNo = param.containsKey("staNo") ? Integer.parseInt(param.get("staNo").toString()) : 0; + String orderNo = param.containsKey("orderNo") ? param.get("orderNo").toString() : ""; + + BasDevp sta = basDevpService.checkSiteStatus(staNo); + //鏍规嵁璁㈠崟鍙风敓鎴愬嚭搴撲换鍔″伐浣滄。 + Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no", orderNo)); + List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo)); + Date now = new Date(); + for(OrderDetl orderDetl : orderDetls){ + //鏌ヨ鎵�鏈夊簱浣嶇姸鎬佷负F鐨勫簱浣嶄俊鎭� + List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),null); + if (locDetls.size() == 0) { + throw new CoolException("搴撳瓨涓病鏈夎鐗╂枡"); + } + for(LocDetl locDetl : locDetls){ + //濡傛灉璇ュ簱浣嶅嚭搴撹矾绾挎墍鐢ㄧ殑鍫嗗灈鏈簅ut_enable涓嶄负Y,璺宠繃璇ュ惊鐜� + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_no", locDetl.getLocNo())); + if (Cools.isEmpty(locMast)) { + continue; + } + BasCrnp crn_no = basCrnpService.selectOne(new EntityWrapper<BasCrnp>() + .eq("crn_no", locMast.getCrnNo())); + if (Cools.isEmpty(crn_no) || !crn_no.getOutEnable().equals("Y")){ + continue; + } + + //鍙嚭搴撴暟閲� = 璁㈠崟鏁伴噺 - 浣滀笟涓暟閲� + Double outQty = orderDetl.getAnfme() - orderDetl.getWorkQty(); + if(outQty <= 0){ + break; + } + // 鍒ゆ柇鍏ュ嚭搴撶被鍨嬶細101.鍏ㄦ澘鍑哄簱 or 103.鎷f枡鍑哄簱 + Double sumCount = locDetlService.getLocDetlSumQty(locDetl.getLocNo()); + Double curOutQty = outQty >= locDetl.getAnfme() ? locDetl.getAnfme() : outQty; //鏈鍑哄簱閲� + int ioType = sumCount <= curOutQty ? 101 : 103; + +// stockOut(orderDetl, staNo, locDetl, curOutQty, ioType, userId); + order.setSettle(2L); + order.setUpdateBy(userId); + order.setUpdateTime(now); + if(orderService.update(order, new EntityWrapper<Order>().eq("order_no", orderNo))){ + throw new CoolException("鏇存柊璁㈠崟鐘舵�佸け璐�"); + } + orderDetl.setWorkQty(orderDetl.getWorkQty() + curOutQty); + orderDetl.setUpdateBy(userId); + orderDetl.setUpdateTime(now); + Wrapper wrapper = new EntityWrapper<OrderDetl>().eq("order_no", orderNo) + .eq("matnr",orderDetl.getMatnr()); + if(!Cools.isEmpty(orderDetl.getBatch())){ + wrapper.eq("batch", orderDetl.getBatch()); + } + if(orderDetlService.update(orderDetl, wrapper)){ + throw new CoolException("鏇存柊璁㈠崟鏄庣粏澶辫触"); + } + } + + } + } + } -- Gitblit v1.9.1