From 95ac672597281c39a8cfd378f1cf1015ecdf72bc Mon Sep 17 00:00:00 2001 From: SongZhang <2064194730@qq.com> Date: Fri, 11 Oct 2024 10:17:07 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E8=B4=AD=E7=89=A9?= =?UTF-8?q?=E8=BD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashierservice/service/OrderService.java | 27 +++++++------------ 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 5f0ced3..7462320 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -478,26 +478,19 @@ public class OrderService { ShopEatTypeInfoDTO shopEatTypeInfoDTO = checkEatModel(Integer.valueOf(shopId), eatModel); String day = DateUtils.getDay(); + String finalMasterId1 = masterId; LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() - .notIn(TbCashierCart::getStatus, "final", "closed", "pending") + .in(TbCashierCart::getStatus, "create", "return") + .eq(TbCashierCart::getShopId, shopId) .eq(TbCashierCart::getUseType, shopEatTypeInfoDTO.getUseType()) - .eq(TbCashierCart::getShopId, shopId); + .gt(TbCashierCart::getCreatedAt, DateUtil.offsetDay(DateUtil.date(), -1).getTime()) + .and(q -> q.eq(TbCashierCart::getMasterId, finalMasterId1).or().isNull(TbCashierCart::getMasterId)); - // 普通点单 - if (StrUtil.isBlank(tableId)) { - queryWrapper.eq(TbCashierCart::getMasterId, masterId) - .notIn(TbCashierCart::getStatus, "refund") - .eq(TbCashierCart::getTradeDay, day) - .and(query -> query.isNull(TbCashierCart::getTableId).or().eq(TbCashierCart::getTableId, "")); - // 台桌点单 - } else if (StrUtil.isNotBlank(tableId)) { - String finalMasterId = masterId; - queryWrapper.eq(TbCashierCart::getTableId, tableId) - .and(query -> query.eq(TbCashierCart::getMasterId, finalMasterId) - .or() - .isNull(TbCashierCart::getMasterId) - .or() - .eq(TbCashierCart::getMasterId, "")); + if (!shopEatTypeInfoDTO.isTakeout()) { + queryWrapper.eq(TbCashierCart::getTableId, tableId); + } else { + queryWrapper.and(q -> q.isNull(TbCashierCart::getTableId).or().eq(TbCashierCart::getTableId, "")) + .in(TbCashierCart::getPlatformType, OrderPlatformTypeEnum.PC.getValue(), OrderPlatformTypeEnum.CASH.getValue()); } List list = mpCashierCartMapper.selectList(queryWrapper); From 537820890f27b4e59090d3e3f1e1ee63cd6c2f74 Mon Sep 17 00:00:00 2001 From: SongZhang <2064194730@qq.com> Date: Fri, 11 Oct 2024 10:27:33 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E6=B8=85=E5=8F=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashierservice/service/PayService.java | 139 ++++++------------ 1 file changed, 41 insertions(+), 98 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java index 28fa3c5..a0532cc 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java @@ -142,6 +142,16 @@ public class PayService { String printKey = RedisCst.ORDER_PRINT_PRO + orderInfo.getId(); // 重置打印数据 redisTemplate.delete(printKey); + + // 修改台桌状态 + if (StrUtil.isNotBlank(orderInfo.getTableId())) { + TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); + if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { + mpShopTableMapper.update(null, new LambdaUpdateWrapper() + .eq(TbShopTable::getQrcode, orderInfo.getTableId()) + .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); + } + } } @Transactional(rollbackFor = Exception.class) @@ -301,24 +311,14 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); // 打印消息 - if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { - List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() - .eq(TbOrderDetail::getOrderId, orderInfo.getId()) - .eq(TbOrderDetail::getStatus, "closed")); - rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); - } - rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); - - // 修改台桌状态 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - - TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); - if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { - mpShopTableMapper.update(null, new LambdaUpdateWrapper() - .eq(TbShopTable::getQrcode, orderInfo.getTableId()) - .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); - } + if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { + List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() + .eq(TbOrderDetail::getOrderId, orderInfo.getId()) + .eq(TbOrderDetail::getStatus, "closed")); + rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); } + rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); + String tableCartKey = RedisCst.getCurrentOrderKey(orderInfo.getTableId(), orderInfo.getShopId()); @@ -338,25 +338,16 @@ public class PayService { payment.setUpdatedAt(System.currentTimeMillis()); tbOrderPaymentMapper.updateByPrimaryKeySelective(payment); - // 修改台桌状态 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); - if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { - mpShopTableMapper.update(null, new LambdaUpdateWrapper() - .eq(TbShopTable::getQrcode, orderInfo.getTableId()) - .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); - } - } // 打印结算单 // 打印消息 - if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { - List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() - .eq(TbOrderDetail::getOrderId, orderInfo.getId()) - .eq(TbOrderDetail::getStatus, "closed")); - rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); - } - rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); + if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { + List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() + .eq(TbOrderDetail::getOrderId, orderInfo.getId()) + .eq(TbOrderDetail::getStatus, "closed")); + rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); + } + rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); String tableCartKey = RedisCst.getCurrentOrderKey(orderInfo.getTableId(), orderInfo.getShopId()); redisUtil.del(tableCartKey); @@ -413,23 +404,14 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); // 打印消息 - if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { - List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() - .eq(TbOrderDetail::getOrderId, orderInfo.getId()) - .eq(TbOrderDetail::getStatus, "closed")); - rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); - } - rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); - // 修改台桌状态 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - - TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); - if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { - mpShopTableMapper.update(null, new LambdaUpdateWrapper() - .eq(TbShopTable::getQrcode, orderInfo.getTableId()) - .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); - } + if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { + List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() + .eq(TbOrderDetail::getOrderId, orderInfo.getId()) + .eq(TbOrderDetail::getStatus, "closed")); + rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); } + rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); + // 打印结算单 String tableCartKey = RedisCst.getCurrentOrderKey(orderInfo.getTableId(), orderInfo.getShopId()); @@ -447,25 +429,16 @@ public class PayService { payment.setUpdatedAt(System.currentTimeMillis()); tbOrderPaymentMapper.updateByPrimaryKeySelective(payment); - // 修改台桌状态 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); - if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { - mpShopTableMapper.update(null, new LambdaUpdateWrapper() - .eq(TbShopTable::getQrcode, orderInfo.getTableId()) - .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); - } - } // 打印结算单 // 打印消息 - if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { - List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() - .eq(TbOrderDetail::getOrderId, orderInfo.getId()) - .eq(TbOrderDetail::getStatus, "closed")); - rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); - } - rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); + if (!OrderUseTypeEnum.DINE_IN_AFTER.getValue().equals(orderInfo.getUseType())) { + List detailList = mPOrderDetailMapper.selectList(new LambdaQueryWrapper() + .eq(TbOrderDetail::getOrderId, orderInfo.getId()) + .eq(TbOrderDetail::getStatus, "closed")); + rabbitMsgUtils.printDishesTicket(orderInfo.getId(), false, detailList.toArray(new TbOrderDetail[0])); + } + rabbitMsgUtils.printPlaceTicket(orderInfo.getId(), false); String tableCartKey = RedisCst.getCurrentOrderKey(orderInfo.getTableId(), orderInfo.getShopId()); redisUtil.del(tableCartKey); @@ -968,16 +941,6 @@ public class PayService { mqData.put("orderId", orderId); mqData.put("type", "pc"); producer.sendStockSaleMsg(mqData); - // 修改台桌状态 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - - TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); - if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { - mpShopTableMapper.update(null, new LambdaUpdateWrapper() - .eq(TbShopTable::getQrcode, orderInfo.getTableId()) - .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); - } - } String tableCartKey = RedisCst.getCurrentOrderKey(orderInfo.getTableId(), orderInfo.getShopId()); @@ -1075,16 +1038,6 @@ public class PayService { redisUtil.del("SHOP:CODE:USER:" + "pc" + ":" + orderInfo.getShopId() + ":" + DateUtils.getDay() + TokenUtil.parseParamFromToken(token).getString("accountId")); - // 修改台桌状态 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); - if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { - mpShopTableMapper.update(null, new LambdaUpdateWrapper() - .eq(TbShopTable::getQrcode, orderInfo.getTableId()) - .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); - } - } - // 小程序购物车缓存 String tableCartKey = RedisCst.getCurrentOrderKey(orderInfo.getTableId(), orderInfo.getShopId()); @@ -1177,16 +1130,6 @@ public class PayService { redisUtil.del("SHOP:CODE:USER:" + "pc" + ":" + orderInfo.getShopId() + ":" + DateUtils.getDay() + TokenUtil.parseParamFromToken(token).getString("accountId")); - // 修改台桌状态 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - - TbShopTable shopTable = mpShopTableMapper.selectOne(new LambdaQueryWrapper().eq(TbShopTable::getQrcode, orderInfo.getTableId())); - if (shopTable.getAutoClear() != null && shopTable.getAutoClear() == 1) { - mpShopTableMapper.update(null, new LambdaUpdateWrapper() - .eq(TbShopTable::getQrcode, orderInfo.getTableId()) - .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); - } - } clearTableInfoCache(orderInfo); return Result.success(CodeEnum.SUCCESS); @@ -2092,10 +2035,10 @@ public class PayService { ObjectMapper mapper = new ObjectMapper(); - Map map=new HashMap<>(); + Map map = new HashMap<>(); - map.put("orderInfo",orderInfo); - map.put("payInfo",mapper.readTree(scanpayResp.getPayInfo())); + map.put("orderInfo", orderInfo); + map.put("payInfo", mapper.readTree(scanpayResp.getPayInfo())); return Result.success(CodeEnum.PAYING, map); } } From cd7af3e39557d657bdc53eb4689f45acb2bfd657 Mon Sep 17 00:00:00 2001 From: SongZhang <2064194730@qq.com> Date: Fri, 11 Oct 2024 10:30:39 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=B8=85=E5=8F=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/bean/TableStateEnum.java | 2 +- .../system/cashierservice/service/PayService.java | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/bean/TableStateEnum.java b/src/main/java/com/chaozhanggui/system/cashierservice/bean/TableStateEnum.java index b802123..7f7b3cd 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/bean/TableStateEnum.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/bean/TableStateEnum.java @@ -2,7 +2,7 @@ package com.chaozhanggui.system.cashierservice.bean; public enum TableStateEnum { IDLE("idle"), - CLOSED("closed"), PAYING("paying"), PENDING("pending"), USING("using"); + CLOSED("closed"), PAYING("paying"), PENDING("pending"), USING("using"), CLEANING("cleaning"); private String state = "closed"; TableStateEnum(String state) { diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java index a0532cc..a717e87 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java @@ -150,6 +150,10 @@ public class PayService { mpShopTableMapper.update(null, new LambdaUpdateWrapper() .eq(TbShopTable::getQrcode, orderInfo.getTableId()) .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); + }else { + mpShopTableMapper.update(null, new LambdaUpdateWrapper() + .eq(TbShopTable::getQrcode, orderInfo.getTableId()) + .set(TbShopTable::getStatus, TableStateEnum.CLEANING.getState())); } } } From 93ac57971b549b025192b20ae586da223a498468 Mon Sep 17 00:00:00 2001 From: SongZhang <2064194730@qq.com> Date: Fri, 11 Oct 2024 10:33:17 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E6=B8=85=E5=8F=B0=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E4=B8=8D=E9=87=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/ShopInfoService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/ShopInfoService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/ShopInfoService.java index b5dabff..b3f9fa6 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/ShopInfoService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/ShopInfoService.java @@ -76,8 +76,8 @@ public class ShopInfoService { if (StrUtil.isBlank(tbShopTableVO.getQrcode())) { tbShopTableVO.setStatus("closed"); - }else if (tbCashierCartMapper.countTable(tbShopTableVO.getQrcode(), tbShopTableVO.getShopId()) < 1 || - tbCashierCartMapper.countTableByDetail(tbShopTableVO.getOrderId(), tbShopTableVO.getShopId()) < 1 + }else if ((tbCashierCartMapper.countTable(tbShopTableVO.getQrcode(), tbShopTableVO.getShopId()) < 1 || + tbCashierCartMapper.countTableByDetail(tbShopTableVO.getOrderId(), tbShopTableVO.getShopId()) < 1) && !tbShopTableVO.getStatus().equals(TableStateEnum.CLEANING.getState()) ) { tbShopTableVO.setStatus("idle"); mpShopTableMapper.update(null, new LambdaUpdateWrapper()