From f4f3c04ba37cec6739370c4aa0b9622493de8a23 Mon Sep 17 00:00:00 2001 From: wang..123 <brook_w@163.com> Date: 星期五, 25 三月 2022 20:34:19 +0800 Subject: [PATCH] Merge branch 'master' of http://47.97.1.152:5880/r/wms_saas --- src/main/java/zy/cloud/wms/manager/controller/OrderController.java | 82 +++++++++++++++++++++++++++++++--------- 1 files changed, 63 insertions(+), 19 deletions(-) diff --git a/src/main/java/zy/cloud/wms/manager/controller/OrderController.java b/src/main/java/zy/cloud/wms/manager/controller/OrderController.java index 65907ce..294d5fd 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/OrderController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/OrderController.java @@ -26,6 +26,7 @@ import zy.cloud.wms.manager.service.OrderService; import zy.cloud.wms.manager.service.WaveDetlService; import zy.cloud.wms.manager.service.WaveService; +import zy.cloud.wms.manager.utils.AddZero; import javax.imageio.ImageIO; import javax.servlet.http.HttpServletResponse; @@ -63,11 +64,13 @@ excludeTrash(param); convert(param, wrapper); hostEq(wrapper); - if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} - else { - wrapper.orderBy("update_time", false); - } - return R.ok(orderService.selectPage(new Page<>(curr, limit), wrapper)); +// if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} +// else { +// wrapper.orderBy("update_time", false); +// } + wrapper.orderBy("create_time",false); + Page<Order> orderPage = orderService.selectPage(new Page<>(curr, limit), wrapper); + return R.ok(orderPage); } private void convert(Map<String, Object> map, EntityWrapper wrapper){ @@ -117,13 +120,20 @@ @ManagerAuth @Transactional public R deleteBatch(@RequestParam(value = "ids[]") Long[] ids){ - if (Cools.isEmpty((Object) ids)){ - return R.error(); - } - for (Long id : ids){ - if (!orderService.deleteById(id)) { - throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + /*** + * 鎺х + */ + for (Long id : ids) { + Order target = orderService.selectOne(new EntityWrapper<Order>() + .eq("id", id)); + if (target.getSettle() == 0 || target.getSettle() == 1) { + orderService.deleteById(id); + orderDetlService.delete(new EntityWrapper<OrderDetl>() + .eq("order_id",id)); + }else { + throw new CoolException("浠呭厑璁稿垹闄�'鍒濆鍖�','寰呭鐞�'鐘舵�佺殑璁㈠崟"); } + } return R.ok(); } @@ -197,14 +207,15 @@ @ManagerAuth public R createWave(@RequestBody List<Order> orders){ /** - * 鎺х + * 鎺х涓庡垵濮嬪寲 */ Integer seqNo = 1; for (Order order : orders) { - if (order.getSettle() != 2L) { - return R.error("浠呮敮鎸�'鏈嫞璐�'鐘舵�佺敓鎴愭尝娆�"); + if (order.getSettle() != 1L) { + return R.error("浠呮敮鎸�'寰呭鐞�'鐘舵�佺敓鎴愭尝娆�"); } } + /** * 鐢熸垚娉㈡琛ㄥご @@ -214,8 +225,20 @@ wave.setHostId(getHostId()); String s = UUID.randomUUID().toString().replace("-",""); wave.setUuid(s); - String waveNo = "wave-" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()); - wave.setWaveNo(waveNo); + String waveNo = "WAVE-" + new SimpleDateFormat("yyyyMMdd").format(new Date())+"-"; + String currNum = waveService.getCurrNum(waveNo); + if (!Cools.isEmpty(currNum)) { + String[] split = currNum.split("-"); + if (split.length < 2){ + wave.setWaveNo(waveNo + "0001"); + } + Integer newNum = Integer.parseInt(split[2]) +1; + String format = AddZero.addZeroForNum(newNum + "", 4); + wave.setWaveNo(waveNo + format); + }else { + wave.setWaveNo(waveNo + "0001"); + } + wave.setOrdersQty(orders.size()); wave.setStatus((short) 0); wave.setCreateBy(getUserId()); @@ -228,6 +251,7 @@ List<OrderDetl> allOrderDetls = orderDetlService.selectBatchByOrderNo(orders); for (OrderDetl allOrderDetl : allOrderDetls) { WaveDetl checkWaveDetl = waveDetlService.selectOne(new EntityWrapper<WaveDetl>() + .eq("wave_id",wave.getId()) .eq("matnr", allOrderDetl.getMatnr()) .eq("batch", allOrderDetl.getBatch())); if (Cools.isEmpty(checkWaveDetl)) { @@ -242,6 +266,9 @@ waveDetl.setAnfme(allOrderDetl.getAnfme()); waveDetl.setMatnr(allOrderDetl.getMatnr()); waveDetl.setMaktx(allOrderDetl.getMaktx()); + waveDetl.setSpecs(allOrderDetl.getSpecs()); + waveDetl.setModel(allOrderDetl.getModel()); + waveDetl.setUnit(allOrderDetl.getUnit()); waveDetl.setStatus(0); waveDetl.setBatch(allOrderDetl.getBatch()); waveDetl.setCreateBy(getUserId()); @@ -249,14 +276,31 @@ waveDetlService.insert(waveDetl); }else { checkWaveDetl.setOrderQty(checkWaveDetl.getOrderQty()+1); - checkWaveDetl.setOrderNos(checkWaveDetl.getOrderNos() + "-split-" +allOrderDetl.getOrderNo()); + checkWaveDetl.setOrderNos(checkWaveDetl.getOrderNos() + "," +allOrderDetl.getOrderNo()); checkWaveDetl.setAnfme(checkWaveDetl.getAnfme() + allOrderDetl.getAnfme()); waveDetlService.update(checkWaveDetl,new EntityWrapper<WaveDetl>() .eq("id",checkWaveDetl.getId())); } } - System.out.println("done"); - return null; + + /** + * 鎺х,鍑鸿繃BUG,鍙敓鎴愯〃澶�,涓嶇敓鎴愯〃韬� + */ + if (Cools.isEmpty(allOrderDetls)) { + waveService.delete(new EntityWrapper<Wave>() + .eq("id",wave.getId())); + throw new CoolException("鎵句笉鍒板嚭搴撳崟缁嗚妭,璇疯仈绯荤鐞嗗憳"); + } + /** + * 鍙嶅啓鍑哄簱鍗曡〃澶� + */ + for (Order order : orders) { + order.setWaveNo(wave.getWaveNo()); + order.setSettle(11L); + orderService.update(order,new EntityWrapper<Order>() + .eq("id",order.getId())); + } + return R.ok("宸茬敓鎴愭尝娆�"); } } -- Gitblit v1.9.1