From 083f7fedcba4e806bde8fb57344f7070c735e327 Mon Sep 17 00:00:00 2001 From: SongZhang <2064194730@qq.com> Date: Sat, 28 Sep 2024 10:40:12 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A5=A8=E6=8D=AE=E6=89=93=E5=8D=B0=E7=AE=80?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/product/TbPlaceController.java | 22 +---------- .../impl/shopimpl/TbShopTableServiceImpl.java | 39 ++++++++----------- .../cn/ysk/cashier/utils/RabbitMsgUtils.java | 9 +++-- 3 files changed, 23 insertions(+), 47 deletions(-) diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbPlaceController.java b/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbPlaceController.java index 4100f484..9610b325 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbPlaceController.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/controller/product/TbPlaceController.java @@ -39,28 +39,24 @@ public class TbPlaceController { } @PostMapping("/addCart") - @Log("代客下单:#addCartDTO.tableId") @ApiOperation("代客下单/shop/table") public ResponseEntity addCartForUser(@Valid @RequestBody AddCartDTO addCartDTO) { return ResponseEntity.ok(tbShopTableService.addCartForUser(addCartDTO)); } @PutMapping("/choseModel") - @Log("代客下单:#addCartDTO.tableId") @ApiOperation("代客下单/shop/table") public ResponseEntity choseModel(@Valid @RequestBody ChoseModelDTO choseModelDTO) { return ResponseEntity.ok(tbShopTableService.choseModel(choseModelDTO)); } @PutMapping("/updateCart") - @Log("代客下单") @ApiOperation("代客下单/shop/table") public ResponseEntity updateCart(@Valid @RequestBody UpdateCartDTO updateCartDTO) { return ResponseEntity.ok(tbShopTableService.updateCart(updateCartDTO)); } @PutMapping("/pack") - @Log("代客下单") @ApiOperation("代客下单/shop/table") public ResponseEntity pack(@Valid @RequestBody PackCartDTO packCartDTO) { tbShopTableService.pack(packCartDTO); @@ -68,7 +64,6 @@ public class TbPlaceController { } @DeleteMapping("/removeCart") - @Log("代客下单 删除购物车商品") @ApiOperation("代客下单 清空购物车 /shop/table") public ResponseEntity removeCart(@Validated @RequestBody RemoveCartDTO removeCartDTO) { tbShopTableService.removeCart(removeCartDTO); @@ -76,7 +71,6 @@ public class TbPlaceController { } @PutMapping("/returnCart") - @Log("代客下单 退单") @ApiOperation("代客下单 清空购物车 /shop/table") public ResponseEntity returnOrder(@Validated @RequestBody ReturnOrderDTO removeCartDTO) { tbShopTableService.returnCart(removeCartDTO); @@ -84,7 +78,6 @@ public class TbPlaceController { } @DeleteMapping("/clearCart") - @Log("代客下单 清空购物车") @ApiOperation("代客下单 清空购物车 /shop/table"/**/) public ResponseEntity clearCart(@Validated @RequestBody ClearCartDTO clearCartDTO) { tbShopTableService.clearCart(clearCartDTO); @@ -92,7 +85,6 @@ public class TbPlaceController { } @GetMapping("/cart") - @Log("代客下单 查询购物车") @ApiOperation("代客下单 查询购物车 /shop/table") public ResponseEntity getCart(@RequestParam(defaultValue = "1") Integer page, @RequestParam(defaultValue = "10") Integer size, @@ -104,7 +96,6 @@ public class TbPlaceController { } @GetMapping("/pending/cart") - @Log("代客下单 查询购物车") @ApiOperation("代客下单 查询购物车 /shop/table") public ResponseEntity getPendingCart(@RequestParam Integer shopId, @RequestParam(required = false) String tableId, @@ -113,7 +104,6 @@ public class TbPlaceController { } @GetMapping("/masterId") - @Log("代客下单 查询购物车") @ApiOperation("代客下单 ") public ResponseEntity getMasterId(@RequestParam Integer shopId, @RequestParam String tableId, @@ -122,21 +112,18 @@ public class TbPlaceController { } @PostMapping("/order") - @Log("代客下单 查询购物车") @ApiOperation("代客下单 查询购物车 /shop/table") public ResponseEntity createOrder(@RequestBody CreateOrderDTO createOrderDTO ) { return ResponseEntity.ok(tbShopTableService.createOrder(createOrderDTO, !createOrderDTO.isPostPay(), true)); } @PostMapping("/pending") - @Log("代客下单 查询购物车") @ApiOperation("代客下单 查询购物车 /shop/table") public ResponseEntity pending(@RequestBody PendingDTO pendingDTO) { return ResponseEntity.ok(tbShopTableService.pending(pendingDTO)); } @GetMapping("/payType") - @Log("代客下单 获取支付类型") @ApiOperation("代客下单 获取支付类型") public ResponseEntity getPayType( @RequestParam Integer shopId @@ -145,7 +132,6 @@ public class TbPlaceController { } @DeleteMapping("/order") - @Log("代客下单 删除订单") @ApiOperation("代客下单 删除订单") public ResponseEntity delete( @Validated @RequestBody DeleteOrderDTO deleteOrderDTO @@ -154,7 +140,6 @@ public class TbPlaceController { } @PutMapping("/pay") - @Log("代客下单 支付订单") @ApiOperation("代客下单 支付订单") public ResponseEntity pay( @Validated @RequestBody PayDTO payDTO @@ -164,7 +149,6 @@ public class TbPlaceController { } @PutMapping("/choseTable") - @Log("代客下单 选择台桌") @ApiOperation("代客下单 选择台桌") public ResponseEntity choseTable( @Validated @RequestBody ChoseTableDTO choseTableDTO @@ -174,7 +158,6 @@ public class TbPlaceController { } @PutMapping("/choseCount") - @Log("代客下单 选择用餐人数") @ApiOperation("代客下单 选择用餐人数") public ResponseEntity choseCount( @Validated @RequestBody ChoseCountDTO choseCountDTO @@ -184,7 +167,6 @@ public class TbPlaceController { } @PutMapping("/updateVip") - @Log("代客下单 查询购物车") @ApiOperation("代客下单 查询购物车 /shop/table") public ResponseEntity updateVip( @Validated @RequestBody UpdateVipDTO updateVipDTO @@ -193,7 +175,6 @@ public class TbPlaceController { } @PostMapping("/printOrder") - @Log("代客下单 打印订单") @ApiOperation("代客下单 打印订单") public ResponseEntity printOrder( @Validated @RequestBody BaseTableDTO baseTableDTO @@ -201,7 +182,6 @@ public class TbPlaceController { return ResponseEntity.ok(tbShopTableService.printOrder(baseTableDTO)); } - @PostMapping("/printDishes") @Log("代客下单 打印菜品单") @ApiOperation("代客下单 打印菜品单") public ResponseEntity printDishes( @@ -215,7 +195,7 @@ public class TbPlaceController { public void test( @RequestParam Integer id ) { - rabbitMsgUtils.printDishesTicket(4951, false, 9783); +// rabbitMsgUtils.printDishesTicket(4951, false, 9783); } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java index 410d30f2..8f362ea3 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java @@ -580,11 +580,7 @@ public class TbShopTableServiceImpl implements TbShopTableService { if (cashierCart.getTableId() != null && removeCartDTO.getTableId() != null) { // 清空购物车 出票 long carCount = countCar(Long.valueOf(cashierCart.getTableId()), cashierCart.getShopId(), cashierCart.getMasterId()); - log.info("购物车数量: {}", carCount); - if (cashierCart.getOrderId() != null && carCount < 1) { - rabbitMsgUtils.printTicket(String.valueOf(cashierCart.getOrderId())); - } setRedisTableCartInfo(removeCartDTO.getTableId(), removeCartDTO.getShopId().toString(), Collections.singletonList(cashierCart), false); } @@ -1075,12 +1071,14 @@ public class TbShopTableServiceImpl implements TbShopTableService { List oldOrderDetailList = orderDetailMapper.selectList(query); ArrayList removeOrderDetailIds = new ArrayList<>(); + ArrayList removeOrderDetailList = new ArrayList<>(); HashMap oldOrderDetailMap = new HashMap<>(); oldOrderDetailList.forEach(item -> { if (cartIdList.contains(item.getCartId())) { oldOrderDetailMap.put(item.getOrderId().toString() + item.getCartId(), item); } else { removeOrderDetailIds.add(item.getId()); + removeOrderDetailList.add(item); } }); @@ -1149,7 +1147,6 @@ public class TbShopTableServiceImpl implements TbShopTableService { throw new BadRequestException("请选择用餐人数"); } - // 查询订单 TbOrderInfo orderInfo = null; if (orderId != null) { @@ -1221,7 +1218,6 @@ public class TbShopTableServiceImpl implements TbShopTableService { orderInfoMapper.insert(orderInfo); } - // 添加订单详细数据 orderId = orderInfo.getId(); for (TbOrderDetail orderDetail : orderDetails) { @@ -1233,12 +1229,18 @@ public class TbShopTableServiceImpl implements TbShopTableService { // 删除已经移除购物车的订单 修改并保存数据 if (!orderDetails.isEmpty()) { mpOrderDetailService.saveOrUpdateBatch(orderDetails); + if (shopEatTypeInfoDTO.isDineInAfter()) { + rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, orderDetails.toArray(new TbOrderDetail[0])); + } } if (!removeOrderDetailIds.isEmpty()) { + // 退单票 orderDetailMapper.deleteBatchIds(removeOrderDetailIds); + if (shopEatTypeInfoDTO.isDineInAfter()) { + rabbitMsgUtils.printDishesTicket(orderInfo.getId(), true, removeOrderDetailList.toArray(new TbOrderDetail[0])); + } } - // 更新购物车记录的orderId for (TbCashierCart cashierCart : cashierCarts) { if (!"-999".equals(cashierCart.getProductId())) { @@ -1275,15 +1277,6 @@ public class TbShopTableServiceImpl implements TbShopTableService { // 推送耗材信息 pushConsMsg(orderInfo, cashierCarts); - if (createOrderDTO.isPostPay() && isPrint) { - Long count = orderInfoMapper.selectCount(new LambdaQueryWrapper() - .eq(TbOrderInfo::getStatus, "unpaid") - .eq(TbOrderInfo::getId, orderId)); - if (count != 0) { - rabbitMsgUtils.printTicket(String.valueOf(orderId)); - } - } - if (!shopEatTypeInfoDTO.isTakeout()) { LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper() .eq(TbShopTable::getShopId, createOrderDTO.getShopId()) @@ -1530,8 +1523,14 @@ public class TbShopTableServiceImpl implements TbShopTableService { jsonObject.put("orderId", orderInfo.getId()); // 打印消息 + if (!shopEatTypeInfoDTO.isDineInAfter()) { + List detailList = orderDetailMapper.selectList(new LambdaQueryWrapper() + .eq(TbOrderDetail::getOrderId, orderInfo.getId()) + .eq(TbOrderDetail::getStatus, "closed")); + rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); + } rabbitMsgUtils.sendOrderCollectMsg(jsonObject); - rabbitMsgUtils.printTicket(String.valueOf(orderInfo.getId())); + rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); // 发送库存记录mq消息 JSONObject mqData = new JSONObject(); @@ -1814,11 +1813,7 @@ public class TbShopTableServiceImpl implements TbShopTableService { throw new BadRequestException("当前台桌还未下单任何菜品, 请先下单"); } - Integer[] detailIds = new Integer[detailList.size()]; - for (int i = 0; i < detailList.size(); i++) { - detailIds[i] = detailList.get(i).getId(); - } - rabbitMsgUtils.printDishesTicket(currentOrder.getId(), false, detailIds); + rabbitMsgUtils.printDishesTicket(currentOrder.getId(), false, detailList.toArray(new TbOrderDetail[0])); return true; } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/utils/RabbitMsgUtils.java b/eladmin-system/src/main/java/cn/ysk/cashier/utils/RabbitMsgUtils.java index f6964dbb..52c3811e 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/utils/RabbitMsgUtils.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/utils/RabbitMsgUtils.java @@ -2,6 +2,7 @@ package cn.ysk.cashier.utils; import cn.ysk.cashier.cons.rabbit.RabbitConstants; import cn.ysk.cashier.dto.CallNumPrintDTO; +import cn.ysk.cashier.pojo.order.TbOrderDetail; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.rabbit.connection.CorrelationData; @@ -53,22 +54,22 @@ public class RabbitMsgUtils implements RabbitTemplate.ConfirmCallback { jsonObject.put("orderId", orderId); jsonObject.put("orderDetailIds", orderIds); jsonObject.put("isReturn", true); - sendMsg(RabbitConstants.EXCHANGE_PRINT, RabbitConstants.ROUTING_KEY_PRINT_DISHES, jsonObject, "菜品退单", false); + sendMsg(RabbitConstants.EXCHANGE_PRINT, RabbitConstants.ROUTING_KEY_PRINT_DISHES, jsonObject, "菜品退单", true); } - public void printDishesTicket(Integer orderId, boolean isReturn, Integer... detailOrderIds) { + public void printDishesTicket(Integer orderId, boolean isReturn, TbOrderDetail... detailOrderIds) { JSONObject jsonObject = new JSONObject(); jsonObject.put("orderId", orderId); jsonObject.put("orderDetailIds", detailOrderIds); jsonObject.put("isReturn", isReturn); - sendMsg(RabbitConstants.EXCHANGE_PRINT, RabbitConstants.ROUTING_KEY_PRINT_DISHES, jsonObject, "菜品打印", false); + sendMsg(RabbitConstants.EXCHANGE_PRINT, RabbitConstants.ROUTING_KEY_PRINT_DISHES, jsonObject, "菜品打印", true); } public void printPlaceTicket(Integer id, boolean isReturn) { JSONObject jsonObject = new JSONObject(); jsonObject.put("orderId", id); jsonObject.put("isReturn", isReturn); - sendMsg(RabbitConstants.EXCHANGE_PRINT, RabbitConstants.ROUTING_KEY_PRINT_PLACE, jsonObject, "订单打印", false); + sendMsg(RabbitConstants.EXCHANGE_PRINT, RabbitConstants.ROUTING_KEY_PRINT_PLACE, jsonObject, "订单打印", true); }