From efa392d963d11000ef22c6778684648042a80ac6 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 09 八月 2025 16:19:33 +0800 Subject: [PATCH] 8月8号问题修复 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java | 73 +++++++++++++++++++++++++----------- 1 files changed, 51 insertions(+), 22 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java index 4612928..55524a5 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java @@ -1,26 +1,25 @@ package com.zy.asrs.wms.asrs.controller; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zy.asrs.framework.common.Cools; import com.zy.asrs.framework.common.R; import com.zy.asrs.framework.exception.CoolException; -import com.zy.asrs.wms.asrs.entity.MatField; -import com.zy.asrs.wms.asrs.entity.OrderType; +import com.zy.asrs.wms.asrs.entity.*; import com.zy.asrs.wms.asrs.entity.enums.OrderSettleType; import com.zy.asrs.wms.asrs.entity.param.CreateOrderParam; import com.zy.asrs.wms.asrs.entity.param.UpdateOrderParam; import com.zy.asrs.wms.asrs.entity.template.OrderTemplate; -import com.zy.asrs.wms.asrs.service.MatFieldService; -import com.zy.asrs.wms.asrs.service.OrderTypeService; +import com.zy.asrs.wms.asrs.service.*; +import com.zy.asrs.wms.asrs.service.impl.OrderDetlServiceImpl; import com.zy.asrs.wms.common.annotation.CacheData; import com.zy.asrs.wms.common.annotation.OperationLog; import com.zy.asrs.wms.common.domain.BaseParam; import com.zy.asrs.wms.common.domain.KeyValVo; import com.zy.asrs.wms.common.domain.PageParam; -import com.zy.asrs.wms.asrs.entity.Order; -import com.zy.asrs.wms.asrs.service.OrderService; import com.zy.asrs.wms.system.controller.BaseController; import com.zy.asrs.wms.utils.ExcelUtil; import com.zy.asrs.wms.utils.Utils; @@ -43,6 +42,12 @@ private OrderTypeService orderTypeService; @Autowired private MatFieldService matFieldService; + @Autowired + private OrderDetlServiceImpl orderDetlService; + @Autowired + private CacheSiteService cacheSiteService; + @Autowired + private WaveService waveService; @PreAuthorize("hasAuthority('asrs:order:list')") @PostMapping("/order/page") @@ -55,16 +60,17 @@ @PreAuthorize("hasAuthority('asrs:order:list')") @PostMapping("/order/in/page") -// @CacheData(tableName = {"man_order", "man_order_type"}) public R pageIn(@RequestBody Map<String, Object> map) { + Map<String, String> order = new HashMap<>(); + if (!Objects.isNull(map.get("orderBy"))) { + order = JSONObject.parseObject(JSON.toJSONString(map.get("orderBy")), Map.class); + } String condition = map.getOrDefault("condition", "").toString(); BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<Order, BaseParam> pageParam = new PageParam<>(baseParam, Order.class); -// QueryWrapper<Order> wrapper = pageParam.buildWrapper(true); - QueryWrapper<Order> wrapper = new QueryWrapper<>(); - + QueryWrapper<Order> wrapper = pageParam.ignoreWrapper(true); ArrayList<Long> types = new ArrayList<>(); - for (OrderType orderType : orderTypeService.list(new LambdaQueryWrapper<OrderType>().eq(OrderType::getType, 1))) { + for (OrderType orderType : orderTypeService.list(new LambdaQueryWrapper<OrderType>().in(OrderType::getType, 1))) { types.add(orderType.getId()); } @@ -89,26 +95,32 @@ } } + if (!Cools.isEmpty(order)) { + String fileds = Utils.toSymbolCase(order.get("field"), '_'); + if (order.get("order").equals("asc")) { + wrapper.orderByAsc(fileds); + } else { + wrapper.orderByDesc(fileds); + } + } else { + wrapper.orderByDesc("create_time"); + } + return R.ok().add(orderService.page(pageParam, wrapper)); } @PreAuthorize("hasAuthority('asrs:order:list')") @PostMapping("/order/out/page") - @CacheData(tableName = {"man_order", "man_order_type"}) public R pageOut(@RequestBody Map<String, Object> map) { String condition = map.getOrDefault("condition", "").toString(); BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<Order, BaseParam> pageParam = new PageParam<>(baseParam, Order.class); -// QueryWrapper<Order> wrapper = pageParam.buildWrapper(true); QueryWrapper<Order> wrapper = new QueryWrapper<>(); - ArrayList<Long> types = new ArrayList<>(); for (OrderType orderType : orderTypeService.list(new LambdaQueryWrapper<OrderType>().eq(OrderType::getType, 2))) { types.add(orderType.getId()); } - wrapper.in("order_type", types); - if (map.containsKey("orderOut")) { wrapper.isNull("wave_id"); } @@ -131,22 +143,32 @@ } } } - + wrapper.orderByDesc("create_time"); return R.ok().add(orderService.page(pageParam, wrapper)); } @PreAuthorize("hasAuthority('asrs:order:list')") @PostMapping("/order/list") - @CacheData(tableName = {"man_order"}) public R list(@RequestBody Map<String, Object> map) { return R.ok().add(orderService.list()); } @PreAuthorize("hasAuthority('asrs:order:list')") @GetMapping("/order/{id}") - @CacheData(tableName = {"man_order"}) public R get(@PathVariable("id") Long id) { - return R.ok().add(orderService.getById(id)); + Order order = orderService.getById(id); + List<OrderDetl> detls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId())); + if (!detls.isEmpty()) { + Double sum = detls.stream().mapToDouble(OrderDetl::getAnfme).sum(); + order.setWaitQty(sum); + } + if (!Objects.isNull(order.getWaveId())) { + Wave wave = waveService.getById(order.getWaveId()); + if (!Objects.isNull(wave)) { + order.setSite(wave.getSite()); + } + } + return R.ok().add(order); } @PreAuthorize("hasAuthority('asrs:order:save')") @@ -154,7 +176,7 @@ @PostMapping("/order/save") @Transactional public R save(@RequestBody CreateOrderParam param) { - orderService.createOrder(param); + orderService.createOrder(param, getLoginUserId()); return R.ok("娣诲姞鎴愬姛"); } @@ -165,6 +187,13 @@ public R update(@RequestBody UpdateOrderParam param) { orderService.updateOrder(param); return R.ok("淇敼鎴愬姛"); + } + + @PreAuthorize("hasAuthority('asrs:order:remove')") + @OperationLog("瀹岀粨璁㈠崟") + @PostMapping("/order/done/{id}") + public R orderToDone(@PathVariable Long id) { + return R.ok().add(orderService.doneOrder(id)); } @PreAuthorize("hasAuthority('asrs:order:remove')") @@ -277,7 +306,7 @@ CreateOrderParam orderParam = (CreateOrderParam) entry.getValue(); orderParams.add(orderParam); } - orderService.createOrder(orderParams); + orderService.createOrder(orderParams, getLoginUserId()); return R.ok(); } -- Gitblit v1.9.1