1.代客下单
This commit is contained in:
@@ -111,7 +111,7 @@ public class OrderController {
|
|||||||
String userId = jsonObject.getString("accountId");
|
String userId = jsonObject.getString("accountId");
|
||||||
orderVo.setMerchantId(Integer.valueOf(userId));
|
orderVo.setMerchantId(Integer.valueOf(userId));
|
||||||
orderVo.setUserId(jsonObject.getString("staffId"));
|
orderVo.setUserId(jsonObject.getString("staffId"));
|
||||||
return orderService.createOrder(orderVo,clientType,token);
|
return orderService.createOrder(orderVo,clientType,token, null, true);
|
||||||
}
|
}
|
||||||
@PostMapping("/createBackOrder")
|
@PostMapping("/createBackOrder")
|
||||||
public Result createBackOrder(@RequestHeader("token") String token, @RequestHeader("loginName") String loginName,
|
public Result createBackOrder(@RequestHeader("token") String token, @RequestHeader("loginName") String loginName,
|
||||||
@@ -151,7 +151,9 @@ public class OrderController {
|
|||||||
public Result orderDetail(@RequestHeader("token") String token, @RequestHeader("loginName") String loginName,
|
public Result orderDetail(@RequestHeader("token") String token, @RequestHeader("loginName") String loginName,
|
||||||
@RequestHeader("clientType") String clientType, @RequestParam("shopId") Integer shopId,
|
@RequestHeader("clientType") String clientType, @RequestParam("shopId") Integer shopId,
|
||||||
@RequestParam("id") Integer id){
|
@RequestParam("id") Integer id){
|
||||||
return orderService.orderDetail(shopId,id);
|
JSONObject jsonObject = TokenUtil.parseParamFromToken(token);
|
||||||
|
String userId = jsonObject.getString("accountId");
|
||||||
|
return orderService.orderDetail(shopId,id, clientType, token, userId, jsonObject.getString("staffId"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -72,4 +72,7 @@ public interface TbCashierCartMapper {
|
|||||||
|
|
||||||
@Delete("delete from tb_cashier_cart where master_id=#{masterId} and id=#{cartId}")
|
@Delete("delete from tb_cashier_cart where master_id=#{masterId} and id=#{cartId}")
|
||||||
int deleteByCartId(@Param("masterId") String masterId, @Param("cartId")Integer cartId);
|
int deleteByCartId(@Param("masterId") String masterId, @Param("cartId")Integer cartId);
|
||||||
|
|
||||||
|
@Select("select count(*) from tb_cashier_cart where shop_id=#{shopId} and `status`='create' and table_id=#{qrcode}")
|
||||||
|
int countTable(@Param("qrcode") String qrcode, @Param("shopId") Integer shopId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ public class PrintMechineConsumer {
|
|||||||
public void listener(String message) {
|
public void listener(String message) {
|
||||||
|
|
||||||
String orderId = message;
|
String orderId = message;
|
||||||
|
log.info("接收到打印mq消息: {}", message);
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -187,7 +188,10 @@ public class PrintMechineConsumer {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getUseType()) && orderInfo.getUseType().equals("postPay")
|
||||||
|
&& (!orderInfo.getStatus().equals("closed"))) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
List<TbOrderDetail> tbOrderDetails=tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
List<TbOrderDetail> tbOrderDetails=tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
||||||
if(ObjectUtil.isNotEmpty(tbOrderDetails)&&tbOrderDetails.size()>0) {
|
if(ObjectUtil.isNotEmpty(tbOrderDetails)&&tbOrderDetails.size()>0) {
|
||||||
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
||||||
@@ -219,25 +223,30 @@ public class PrintMechineConsumer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (ObjectUtil.isNotEmpty(detailList) && detailList.size() > 0) {
|
if (ObjectUtil.isNotEmpty(detailList) && detailList.size() > 0) {
|
||||||
OrderDetailPO detailPO = new OrderDetailPO(shopInfo.getShopName(), "普通打印", orderInfo.getOrderType().equals("miniapp") ? orderInfo.getTableName() : orderInfo.getMasterId(), orderInfo.getOrderNo(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), "【POS-1】001", orderInfo.getOrderAmount().toPlainString(), balance, (ObjectUtil.isEmpty(orderInfo.getPayType()) || ObjectUtil.isNull(orderInfo.getPayType()) ? "" : orderInfo.getPayType()), "0", detailList, orderInfo.getRemark());
|
|
||||||
// OrderDetailPO detailPO = new OrderDetailPO(shopInfo.getShopName(), "普通打印", orderInfo.getMasterId(), orderInfo.getOrderNo(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), "【POS-1】001", orderInfo.getOrderAmount().toPlainString(), balance, orderInfo.getPayType(), "0", detailList);
|
|
||||||
detailPO.setOutNumber(orderInfo.getOutNumber());
|
|
||||||
String printType = "结算单";
|
|
||||||
|
|
||||||
String data = PrinterUtils.getCashPrintData(detailPO, printType, orderInfo.getOrderType());
|
String message = redisUtils.getMessage("IS_PRINT:" + orderInfo.getId());
|
||||||
String voiceJson = "{\"bizType\":\"2\",\"content\":\"您有一笔新的订单,请及时处理\"}";
|
if (message == null) {
|
||||||
if (StrUtil.isNotBlank(orderInfo.getUseType()) && orderInfo.getUseType().equals("postPay")
|
OrderDetailPO detailPO = new OrderDetailPO(shopInfo.getShopName(), "普通打印", orderInfo.getOrderType().equals("miniapp") ? orderInfo.getTableName() : orderInfo.getMasterId(), orderInfo.getOrderNo(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), "【POS-1】001", orderInfo.getOrderAmount().toPlainString(), balance, (ObjectUtil.isEmpty(orderInfo.getPayType()) || ObjectUtil.isNull(orderInfo.getPayType()) ? "" : orderInfo.getPayType()), "0", detailList, orderInfo.getRemark());
|
||||||
&& (!orderInfo.getStatus().equals("closed"))) {
|
// OrderDetailPO detailPO = new OrderDetailPO(shopInfo.getShopName(), "普通打印", orderInfo.getMasterId(), orderInfo.getOrderNo(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), "【POS-1】001", orderInfo.getOrderAmount().toPlainString(), balance, orderInfo.getPayType(), "0", detailList);
|
||||||
return;
|
detailPO.setOutNumber(orderInfo.getOutNumber());
|
||||||
|
String printType = "结算单";
|
||||||
|
|
||||||
|
String data = PrinterUtils.getCashPrintData(detailPO, printType, orderInfo.getOrderType());
|
||||||
|
String voiceJson = "{\"bizType\":\"2\",\"content\":\"您有一笔新的订单,请及时处理\"}";
|
||||||
|
|
||||||
|
PrinterUtils.printTickets(voiceJson, 3, Integer.valueOf(printerNum), tbPrintMachineWithBLOBs.getAddress(), data);
|
||||||
|
redisUtils.saveMessage("IS_PRINT:" + orderInfo.getId(), "1");
|
||||||
}
|
}
|
||||||
PrinterUtils.printTickets(voiceJson, 3, Integer.valueOf(printerNum), tbPrintMachineWithBLOBs.getAddress(), data);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case "one": //一菜一品
|
case "one": //一菜一品
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getUseType()) && orderInfo.getUseType().equals("postPay")
|
||||||
|
&& (!orderInfo.getStatus().equals("unpaid"))) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if("return".equals(orderInfo.getOrderType())){
|
if("return".equals(orderInfo.getOrderType())){
|
||||||
List<TbOrderDetail> details= tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
List<TbOrderDetail> details= tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
||||||
if(ObjectUtil.isNotEmpty(details)&&details.size()>0){
|
if(ObjectUtil.isNotEmpty(details)&&details.size()>0){
|
||||||
@@ -257,10 +266,6 @@ public class PrintMechineConsumer {
|
|||||||
}
|
}
|
||||||
String data = PrinterUtils.getPrintData("return",orderInfo.getPayType().equals("wx_lite")?orderInfo.getTableName():orderInfo.getMasterId(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), it.getProductName(), it.getNum(), remark);
|
String data = PrinterUtils.getPrintData("return",orderInfo.getPayType().equals("wx_lite")?orderInfo.getTableName():orderInfo.getMasterId(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), it.getProductName(), it.getNum(), remark);
|
||||||
String voiceJson = "{\"bizType\":\"2\",\"content\":\"您有一笔退款订单,请及时处理\"}";
|
String voiceJson = "{\"bizType\":\"2\",\"content\":\"您有一笔退款订单,请及时处理\"}";
|
||||||
if (StrUtil.isNotBlank(orderInfo.getUseType()) && orderInfo.getUseType().equals("postPay")
|
|
||||||
&& (!orderInfo.getStatus().equals("unpaid"))) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
PrinterUtils.printTickets(voiceJson,3, Integer.valueOf(printerNum), tbPrintMachineWithBLOBs.getAddress(), data);
|
PrinterUtils.printTickets(voiceJson,3, Integer.valueOf(printerNum), tbPrintMachineWithBLOBs.getAddress(), data);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -272,7 +277,7 @@ public class PrintMechineConsumer {
|
|||||||
|
|
||||||
tbOrderDetails.parallelStream().forEach(it -> {
|
tbOrderDetails.parallelStream().forEach(it -> {
|
||||||
// 已经打印过的菜品不再打印
|
// 已经打印过的菜品不再打印
|
||||||
if ("postPay".equals(orderInfo.getUseType()) && isPrint(it)) {
|
if ("postPay".equals(orderInfo.getUseType()) && isPrint(it, orderInfo.getId())) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
String categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
String categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
||||||
@@ -312,8 +317,8 @@ public class PrintMechineConsumer {
|
|||||||
* 判断商品是否已打票
|
* 判断商品是否已打票
|
||||||
* @return true 已打 false 未打
|
* @return true 已打 false 未打
|
||||||
*/
|
*/
|
||||||
private boolean isPrint(TbOrderDetail orderDetail) {
|
private boolean isPrint(TbOrderDetail orderDetail, Integer orderId) {
|
||||||
String key = RedisCst.ORDER_PRINT + orderDetail.getProductId() + ":" + orderDetail.getProductSkuId();
|
String key = RedisCst.ORDER_PRINT + orderId + ":" + orderDetail.getProductId() + ":" + orderDetail.getProductSkuId();
|
||||||
String info = redisUtils.getMessage(key);
|
String info = redisUtils.getMessage(key);
|
||||||
redisUtils.saveMessage(key, String.valueOf(orderDetail.getNum()), 60 * 60 * 24);
|
redisUtils.saveMessage(key, String.valueOf(orderDetail.getNum()), 60 * 60 * 24);
|
||||||
if (info == null) {
|
if (info == null) {
|
||||||
@@ -468,6 +473,10 @@ public class PrintMechineConsumer {
|
|||||||
break;
|
break;
|
||||||
case "one": //一菜一品
|
case "one": //一菜一品
|
||||||
|
|
||||||
|
if (!orderInfo.getStatus().equals("unpaid")) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
cashierCarts = tbCashierCartMapper.selectByOrderId(orderId,"final");
|
cashierCarts = tbCashierCartMapper.selectByOrderId(orderId,"final");
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
|
|
||||||
@@ -491,6 +500,9 @@ public class PrintMechineConsumer {
|
|||||||
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
||||||
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
FeieyunPrintUtil.getPrintData(tbPrintMachineWithBLOBs.getAddress(),orderInfo.getMasterId(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), it.getName(), it.getNumber(), remark);
|
FeieyunPrintUtil.getPrintData(tbPrintMachineWithBLOBs.getAddress(),orderInfo.getMasterId(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), it.getName(), it.getNumber(), remark);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -149,6 +149,11 @@ public class OrderService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TbCashierCart cart = cashierCartMapper.selectByPrimaryKey(cartId);
|
||||||
|
if (cart != null && cart.getNumber() < number && StrUtil.isNotBlank(cart.getOrderId()) && StrUtil.isNotBlank(cart.getTableId())) {
|
||||||
|
return Result.fail("此商品已经出餐不支持减少操作");
|
||||||
|
}
|
||||||
|
|
||||||
// List<TbProskuCon> proskuConList= tbProskuConMapper.selectByShopIdAndSkuIdAndProductId(skuId,shopInfo.getId(),product.getId());
|
// List<TbProskuCon> proskuConList= tbProskuConMapper.selectByShopIdAndSkuIdAndProductId(skuId,shopInfo.getId(),product.getId());
|
||||||
// if(Objects.nonNull(proskuConList)&&proskuConList.size()>0){
|
// if(Objects.nonNull(proskuConList)&&proskuConList.size()>0){
|
||||||
// for (TbProskuCon proskuCon : proskuConList) {
|
// for (TbProskuCon proskuCon : proskuConList) {
|
||||||
@@ -200,7 +205,6 @@ public class OrderService {
|
|||||||
masterId = "#" + String.format("%03d", 1);
|
masterId = "#" + String.format("%03d", 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TbCashierCart cart = cashierCartMapper.selectByPrimaryKey(cartId);
|
|
||||||
if (Objects.nonNull(cart)) {
|
if (Objects.nonNull(cart)) {
|
||||||
|
|
||||||
//查询现有规格商品
|
//查询现有规格商品
|
||||||
@@ -258,6 +262,7 @@ public class OrderService {
|
|||||||
cashierCart.setStatus("create");
|
cashierCart.setStatus("create");
|
||||||
cashierCart.setIsPack(isPack);
|
cashierCart.setIsPack(isPack);
|
||||||
cashierCart.setIsGift(isGift);
|
cashierCart.setIsGift(isGift);
|
||||||
|
cashierCart.setSkuName(skuWithBLOBs.getSpecSnap());
|
||||||
if (isGift.equals("false")) {
|
if (isGift.equals("false")) {
|
||||||
cashierCart.setTotalAmount(new BigDecimal(number).multiply(skuWithBLOBs.getSalePrice()));
|
cashierCart.setTotalAmount(new BigDecimal(number).multiply(skuWithBLOBs.getSalePrice()));
|
||||||
} else {
|
} else {
|
||||||
@@ -374,7 +379,9 @@ public class OrderService {
|
|||||||
.and(query -> {
|
.and(query -> {
|
||||||
query.eq(TbCashierCart::getMasterId, finalMasterId)
|
query.eq(TbCashierCart::getMasterId, finalMasterId)
|
||||||
.or()
|
.or()
|
||||||
.isNull(TbCashierCart::getMasterId);
|
.isNull(TbCashierCart::getMasterId)
|
||||||
|
.or()
|
||||||
|
.eq(TbCashierCart::getMasterId, "");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -448,7 +455,7 @@ public class OrderService {
|
|||||||
return Result.success(CodeEnum.SUCCESS, map);
|
return Result.success(CodeEnum.SUCCESS, map);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
// @Transactional(rollbackFor = Exception.class)
|
||||||
public Result delCart(String masterId, Integer cartId) {
|
public Result delCart(String masterId, Integer cartId) {
|
||||||
|
|
||||||
|
|
||||||
@@ -481,13 +488,36 @@ public class OrderService {
|
|||||||
List<String> skuIds=new ArrayList<>();
|
List<String> skuIds=new ArrayList<>();
|
||||||
skuIds.add(cashierCart.getSkuId());
|
skuIds.add(cashierCart.getSkuId());
|
||||||
|
|
||||||
cashierCartMapper.deleteByCartId(masterId, cartId);
|
cashierCartMapper.deleteByPrimaryKey(cartId);
|
||||||
|
|
||||||
|
if (cashierCart.getOrderId() != null) {
|
||||||
|
int list = mpCashierCartMapper.selectCount( new LambdaQueryWrapper<TbCashierCart>()
|
||||||
|
.eq(TbCashierCart::getShopId, cashierCart.getShopId())
|
||||||
|
.eq(TbCashierCart::getStatus, "create").eq(TbCashierCart::getTableId, cashierCart.getTableId())
|
||||||
|
.and(query2 -> {
|
||||||
|
query2.or(query3 -> {
|
||||||
|
query3.eq(TbCashierCart::getTradeDay, DateUtils.getDay())
|
||||||
|
.eq(TbCashierCart::getMasterId, cashierCart.getMasterId());
|
||||||
|
})
|
||||||
|
.or((query4 -> {
|
||||||
|
query4.isNull(TbCashierCart::getTradeDay)
|
||||||
|
.or()
|
||||||
|
.eq(TbCashierCart::getMasterId, "")
|
||||||
|
.or()
|
||||||
|
.eq(TbCashierCart::getMasterId, "");
|
||||||
|
}));
|
||||||
|
}));
|
||||||
|
|
||||||
|
if (list == 0) {
|
||||||
|
tbOrderInfoMapper.deleteByPrimaryKey(Integer.valueOf(cashierCart.getOrderId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
return Result.success(CodeEnum.SUCCESS);
|
return Result.success(CodeEnum.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Result createOrder(OrderVo orderVo, String clientType, String token) {
|
public Result createOrder(OrderVo orderVo, String clientType, String token, Integer oldOrderId, boolean isPrint) {
|
||||||
String day = DateUtils.getDay();
|
String day = DateUtils.getDay();
|
||||||
|
|
||||||
LambdaQueryWrapper<TbCashierCart> queryWrapper = new LambdaQueryWrapper<TbCashierCart>()
|
LambdaQueryWrapper<TbCashierCart> queryWrapper = new LambdaQueryWrapper<TbCashierCart>()
|
||||||
@@ -513,6 +543,9 @@ public class OrderService {
|
|||||||
})
|
})
|
||||||
.or((query4 -> {
|
.or((query4 -> {
|
||||||
query4.isNull(TbCashierCart::getTradeDay)
|
query4.isNull(TbCashierCart::getTradeDay)
|
||||||
|
.or()
|
||||||
|
.eq(TbCashierCart::getMasterId, "")
|
||||||
|
.or()
|
||||||
.eq(TbCashierCart::getMasterId, "");
|
.eq(TbCashierCart::getMasterId, "");
|
||||||
}));
|
}));
|
||||||
});
|
});
|
||||||
@@ -526,6 +559,16 @@ public class OrderService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(ObjectUtil.isEmpty(list)||ObjectUtil.isNull(list)||list.size()<=0){
|
if(ObjectUtil.isEmpty(list)||ObjectUtil.isNull(list)||list.size()<=0){
|
||||||
|
if (oldOrderId != null) {
|
||||||
|
orderDetailMapper.deleteByOUrderId(oldOrderId);
|
||||||
|
TbOrderInfo orderInfo = new TbOrderInfo();
|
||||||
|
orderInfo.setId(oldOrderId);
|
||||||
|
orderInfo.setOrderAmount(BigDecimal.ZERO);
|
||||||
|
orderInfo.setDiscountAmount(BigDecimal.ZERO);
|
||||||
|
orderInfo.setStatus("cancelled");
|
||||||
|
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
|
||||||
|
// tbOrderInfoMapper.deleteByPrimaryKey(oldOrderId);
|
||||||
|
}
|
||||||
return Result.fail(CARTEXIST);
|
return Result.fail(CARTEXIST);
|
||||||
}
|
}
|
||||||
BigDecimal totalAmount = BigDecimal.ZERO;
|
BigDecimal totalAmount = BigDecimal.ZERO;
|
||||||
@@ -600,7 +643,7 @@ public class OrderService {
|
|||||||
orderInfo = new TbOrderInfo(orderNo, totalAmount, packAMount, totalAmount, saleAmount, totalAmount, feeAmount, "",
|
orderInfo = new TbOrderInfo(orderNo, totalAmount, packAMount, totalAmount, saleAmount, totalAmount, feeAmount, "",
|
||||||
"table", "cash", orderVo.getMerchantId().toString(), orderVo.getShopId().toString(),
|
"table", "cash", orderVo.getMerchantId().toString(), orderVo.getShopId().toString(),
|
||||||
"", (byte) 1, day, masterId);
|
"", (byte) 1, day, masterId);
|
||||||
orderInfo.setMasterId(masterId);
|
orderInfo.setMasterId(orderVo.getMasterId());
|
||||||
orderInfo.setRemark(orderVo.getRemark());
|
orderInfo.setRemark(orderVo.getRemark());
|
||||||
orderInfo.setUserId(orderVo.getUserId());
|
orderInfo.setUserId(orderVo.getUserId());
|
||||||
orderInfo.setUseType(StrUtil.isNotBlank(orderVo.getTableId()) ? "postPay" : "afterPay");
|
orderInfo.setUseType(StrUtil.isNotBlank(orderVo.getTableId()) ? "postPay" : "afterPay");
|
||||||
@@ -637,9 +680,7 @@ public class OrderService {
|
|||||||
redisUtil.saveMessage(RedisCst.OUT_NUMBER.concat(orderInfo.getShopId()),object.toString());
|
redisUtil.saveMessage(RedisCst.OUT_NUMBER.concat(orderInfo.getShopId()),object.toString());
|
||||||
orderId = orderInfo.getId();
|
orderId = orderInfo.getId();
|
||||||
|
|
||||||
if (StrUtil.isNotBlank(orderVo.getTableId())) {
|
|
||||||
producer.printMechine(String.valueOf(orderId));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
for (TbOrderDetail orderDetail : orderDetails) {
|
for (TbOrderDetail orderDetail : orderDetails) {
|
||||||
orderDetail.setOrderId(orderId);
|
orderDetail.setOrderId(orderId);
|
||||||
@@ -685,11 +726,13 @@ public class OrderService {
|
|||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.USING.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.USING.getState()));
|
||||||
producer.printMechine(String.valueOf(orderInfo.getId()));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!StrUtil.isBlank(orderVo.getTableId())) {
|
if (!StrUtil.isBlank(orderVo.getTableId())) {
|
||||||
|
if (isPrint) {
|
||||||
|
producer.printMechine(String.valueOf(orderId));
|
||||||
|
}
|
||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.USING.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.USING.getState()));
|
||||||
@@ -1025,21 +1068,26 @@ public class OrderService {
|
|||||||
String day = DateUtils.getDay();
|
String day = DateUtils.getDay();
|
||||||
LambdaQueryWrapper<TbCashierCart> queryWrapper = new LambdaQueryWrapper<TbCashierCart>()
|
LambdaQueryWrapper<TbCashierCart> queryWrapper = new LambdaQueryWrapper<TbCashierCart>()
|
||||||
.eq(TbCashierCart::getShopId, cartVo.getShopId())
|
.eq(TbCashierCart::getShopId, cartVo.getShopId())
|
||||||
.eq(TbCashierCart::getTradeDay, day)
|
|
||||||
.eq(TbCashierCart::getStatus, "create");
|
.eq(TbCashierCart::getStatus, "create");
|
||||||
|
|
||||||
|
|
||||||
// 普通点单
|
// 普通点单
|
||||||
if (StrUtil.isBlank(cartVo.getTableId())) {
|
if (StrUtil.isBlank(cartVo.getTableId())) {
|
||||||
queryWrapper.eq(TbCashierCart::getMasterId, cartVo.getMasterId());
|
queryWrapper.eq(TbCashierCart::getMasterId, cartVo.getMasterId())
|
||||||
queryWrapper.isNull(TbCashierCart::getTableId);
|
.eq(TbCashierCart::getTradeDay, day)
|
||||||
|
.and(query -> {
|
||||||
|
query.isNull(TbCashierCart::getTableId)
|
||||||
|
.or()
|
||||||
|
.eq(TbCashierCart::getTableId, "");
|
||||||
|
});
|
||||||
// 台桌点单
|
// 台桌点单
|
||||||
}else if (StrUtil.isNotBlank(cartVo.getTableId()) ) {
|
}else if (StrUtil.isNotBlank(cartVo.getTableId()) ) {
|
||||||
queryWrapper.eq(TbCashierCart::getTableId, cartVo.getTableId())
|
queryWrapper.eq(TbCashierCart::getTableId, cartVo.getTableId())
|
||||||
.and(query -> {
|
.and(query -> {
|
||||||
query.eq(TbCashierCart::getMasterId, cartVo.getMasterId())
|
query.eq(TbCashierCart::getMasterId, cartVo.getMasterId())
|
||||||
.or()
|
.or()
|
||||||
.isNull(TbCashierCart::getMasterId);
|
.isNull(TbCashierCart::getMasterId)
|
||||||
|
.or()
|
||||||
|
.eq(TbCashierCart::getMasterId, "");
|
||||||
});
|
});
|
||||||
// 会员点单
|
// 会员点单
|
||||||
}
|
}
|
||||||
@@ -1049,7 +1097,12 @@ public class OrderService {
|
|||||||
int orderId = 0;
|
int orderId = 0;
|
||||||
List<ProductSkuPo> productSkuPos = new ArrayList<>();
|
List<ProductSkuPo> productSkuPos = new ArrayList<>();
|
||||||
List<String> skuIds = new ArrayList<>();
|
List<String> skuIds = new ArrayList<>();
|
||||||
|
ArrayList<Integer> ids = new ArrayList<>();
|
||||||
for (TbCashierCart cashierCart : list) {
|
for (TbCashierCart cashierCart : list) {
|
||||||
|
if (StrUtil.isNotBlank(cashierCart.getOrderId()) && StrUtil.isNotBlank(cashierCart.getTableId())) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
ids.add(cashierCart.getId());
|
||||||
// 数量减少, 返还库存
|
// 数量减少, 返还库存
|
||||||
String message = redisUtil.getMessage(RedisCst.ORDER_PRODUCT_NUM + cashierCart.getId());
|
String message = redisUtil.getMessage(RedisCst.ORDER_PRODUCT_NUM + cashierCart.getId());
|
||||||
redisUtil.deleteByKey(RedisCst.ORDER_PRODUCT_NUM + cashierCart.getId());
|
redisUtil.deleteByKey(RedisCst.ORDER_PRODUCT_NUM + cashierCart.getId());
|
||||||
@@ -1082,17 +1135,25 @@ public class OrderService {
|
|||||||
TbOrderInfo orderInfo = tbOrderInfoMapper.selectByPrimaryKey(orderId);
|
TbOrderInfo orderInfo = tbOrderInfoMapper.selectByPrimaryKey(orderId);
|
||||||
if (Objects.nonNull(orderInfo) && !orderInfo.getStatus().equals("pending")){
|
if (Objects.nonNull(orderInfo) && !orderInfo.getStatus().equals("pending")){
|
||||||
tbOrderInfoMapper.updateStatusById(orderId, "cancelled");
|
tbOrderInfoMapper.updateStatusById(orderId, "cancelled");
|
||||||
orderDetailMapper.updateStatusByOrderId(orderId, "cancelled");
|
// orderDetailMapper.updateStatusByOrderId(orderId, "cancelled");
|
||||||
|
orderDetailMapper.deleteByOUrderId(orderId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (!ids.isEmpty()) {
|
||||||
|
mpCashierCartMapper.deleteBatchIds(ids);
|
||||||
|
}
|
||||||
|
// cashierCartMapper.deleteByPrimaryKey()
|
||||||
cashierCartMapper.deleteBymasterId(cartVo.getMasterId(), Integer.valueOf(cartVo.getShopId()), day, "create", cartVo.getUuid());
|
cashierCartMapper.deleteBymasterId(cartVo.getMasterId(), Integer.valueOf(cartVo.getShopId()), day, "create", cartVo.getUuid());
|
||||||
|
|
||||||
// if(ObjectUtil.isNotEmpty(productSkuPos)&&productSkuPos.size()>0){
|
// if(ObjectUtil.isNotEmpty(productSkuPos)&&productSkuPos.size()>0){
|
||||||
// tbProductSkuMapper.batchStockNum(productSkuPos);
|
// tbProductSkuMapper.batchStockNum(productSkuPos);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
|
.eq(TbShopTable::getQrcode, cartVo.getTableId())
|
||||||
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
|
||||||
return Result.success(CodeEnum.SUCCESS);
|
return Result.success(CodeEnum.SUCCESS);
|
||||||
}
|
}
|
||||||
@@ -1152,8 +1213,18 @@ public class OrderService {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
TbShopUserMapper tbShopUserMapper;
|
TbShopUserMapper tbShopUserMapper;
|
||||||
public Result orderDetail(Integer shopId, Integer id) {
|
public Result orderDetail(Integer shopId, Integer id, String clientType, String token, String userId, String staffId) {
|
||||||
|
|
||||||
TbOrderInfo orderInfo = tbOrderInfoMapper.selectByPrimaryKey(id);
|
TbOrderInfo orderInfo = tbOrderInfoMapper.selectByPrimaryKey(id);
|
||||||
|
|
||||||
|
OrderVo orderVo = new OrderVo();
|
||||||
|
orderVo.setMasterId(orderInfo.getMasterId());
|
||||||
|
orderVo.setShopId(Integer.valueOf(orderInfo.getShopId()));
|
||||||
|
orderVo.setTableId(orderInfo.getTableId());
|
||||||
|
orderVo.setMerchantId(Integer.valueOf(userId));
|
||||||
|
createOrder(orderVo, clientType, token, id, false);
|
||||||
|
orderInfo = tbOrderInfoMapper.selectByPrimaryKey(id);
|
||||||
|
|
||||||
if (Objects.nonNull(orderInfo)) {
|
if (Objects.nonNull(orderInfo)) {
|
||||||
List<TbOrderDetail> list = orderDetailMapper.selectAllByOrderId(id);
|
List<TbOrderDetail> list = orderDetailMapper.selectAllByOrderId(id);
|
||||||
orderInfo.setDetailList(list);
|
orderInfo.setDetailList(list);
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.chaozhanggui.system.cashierservice.service;
|
|||||||
|
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
@@ -304,7 +305,10 @@ public class PayService {
|
|||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
|
||||||
|
|
||||||
|
// 打印结算单
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getTableId())) {
|
||||||
|
producer.printMechine(orderId);
|
||||||
|
}
|
||||||
return Result.success(CodeEnum.SUCCESS, object.getJSONObject("data"));
|
return Result.success(CodeEnum.SUCCESS, object.getJSONObject("data"));
|
||||||
} else {
|
} else {
|
||||||
String status = ObjectUtil.isNotEmpty(object.getJSONObject("data")) ? object.getJSONObject("data").getString("status") : null;
|
String status = ObjectUtil.isNotEmpty(object.getJSONObject("data")) ? object.getJSONObject("data").getString("status") : null;
|
||||||
@@ -322,7 +326,10 @@ public class PayService {
|
|||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
// 打印结算单
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getTableId())) {
|
||||||
|
producer.printMechine(orderId);
|
||||||
|
}
|
||||||
|
|
||||||
return Result.success(CodeEnum.PAYING);
|
return Result.success(CodeEnum.PAYING);
|
||||||
}
|
}
|
||||||
@@ -378,7 +385,10 @@ public class PayService {
|
|||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
// 打印结算单
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getTableId())) {
|
||||||
|
producer.printMechine(orderId);
|
||||||
|
}
|
||||||
|
|
||||||
return Result.success(CodeEnum.SUCCESS, mainScanResp);
|
return Result.success(CodeEnum.SUCCESS, mainScanResp);
|
||||||
} else if ("TRADE_AWAIT".equals(mainScanResp.getState())) {
|
} else if ("TRADE_AWAIT".equals(mainScanResp.getState())) {
|
||||||
@@ -393,7 +403,10 @@ public class PayService {
|
|||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
// 打印结算单
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getTableId())) {
|
||||||
|
producer.printMechine(orderId);
|
||||||
|
}
|
||||||
|
|
||||||
return Result.success(CodeEnum.PAYING);
|
return Result.success(CodeEnum.PAYING);
|
||||||
}
|
}
|
||||||
@@ -789,13 +802,13 @@ public class PayService {
|
|||||||
return Result.fail("用户不存在或已被禁用");
|
return Result.fail("用户不存在或已被禁用");
|
||||||
}
|
}
|
||||||
|
|
||||||
long flag = mpShopUserMapper.decrBalance(vipUserId, orderInfo.getOrderAmount());
|
long flag = mpShopUserMapper.decrBalance(vipUserId, (payAmount != null && discountAmount != null) ? payAmount : orderInfo.getOrderAmount());
|
||||||
if (flag < 1) {
|
if (flag < 1) {
|
||||||
return Result.fail("余额不足或扣除余额失败");
|
return Result.fail("余额不足或扣除余额失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
TbShopUserFlow userFlow = new TbShopUserFlow();
|
TbShopUserFlow userFlow = new TbShopUserFlow();
|
||||||
userFlow.setAmount(orderInfo.getOrderAmount());
|
userFlow.setAmount((payAmount != null && discountAmount != null) ? payAmount : orderInfo.getOrderAmount());
|
||||||
userFlow.setBalance(shopUser.getAmount());
|
userFlow.setBalance(shopUser.getAmount());
|
||||||
userFlow.setShopUserId(shopUser.getId());
|
userFlow.setShopUserId(shopUser.getId());
|
||||||
userFlow.setBizCode("vipCardCash");
|
userFlow.setBizCode("vipCardCash");
|
||||||
@@ -808,6 +821,7 @@ public class PayService {
|
|||||||
if (payAmount != null && discountAmount != null) {
|
if (payAmount != null && discountAmount != null) {
|
||||||
orderInfo.setPayAmount(payAmount);
|
orderInfo.setPayAmount(payAmount);
|
||||||
orderInfo.setDiscountAmount(discountAmount);
|
orderInfo.setDiscountAmount(discountAmount);
|
||||||
|
orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount)?payAmount.divide(orderInfo.getOrderAmount(),2,RoundingMode.HALF_UP).setScale(2,RoundingMode.HALF_DOWN):null);
|
||||||
}else {
|
}else {
|
||||||
orderInfo.setPayAmount(orderInfo.getOrderAmount());
|
orderInfo.setPayAmount(orderInfo.getOrderAmount());
|
||||||
}
|
}
|
||||||
@@ -842,6 +856,7 @@ public class PayService {
|
|||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
|
||||||
return Result.success(CodeEnum.SUCCESS);
|
return Result.success(CodeEnum.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -927,6 +942,11 @@ public class PayService {
|
|||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
|
||||||
|
// 打印结算单
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getTableId())) {
|
||||||
|
producer.printMechine(orderId);
|
||||||
|
}
|
||||||
|
|
||||||
return Result.success(CodeEnum.SUCCESS);
|
return Result.success(CodeEnum.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1009,6 +1029,10 @@ public class PayService {
|
|||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
// 打印结算单
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getTableId())) {
|
||||||
|
producer.printMechine(String.valueOf(orderId));
|
||||||
|
}
|
||||||
return Result.success(CodeEnum.SUCCESS);
|
return Result.success(CodeEnum.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1324,6 +1348,11 @@ public class PayService {
|
|||||||
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
.eq(TbShopTable::getQrcode, orderInfo.getTableId())
|
||||||
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
|
||||||
|
// 打印结算单
|
||||||
|
if (StrUtil.isNotBlank(orderInfo.getTableId())) {
|
||||||
|
producer.printMechine(String.valueOf(orderId));
|
||||||
|
}
|
||||||
return Result.success(CodeEnum.SUCCESS);
|
return Result.success(CodeEnum.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,9 +4,12 @@ import cn.hutool.core.bean.BeanUtil;
|
|||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
|
import com.chaozhanggui.system.cashierservice.bean.TableStateEnum;
|
||||||
import com.chaozhanggui.system.cashierservice.dao.*;
|
import com.chaozhanggui.system.cashierservice.dao.*;
|
||||||
import com.chaozhanggui.system.cashierservice.entity.*;
|
import com.chaozhanggui.system.cashierservice.entity.*;
|
||||||
import com.chaozhanggui.system.cashierservice.entity.vo.TbShopTableVO;
|
import com.chaozhanggui.system.cashierservice.entity.vo.TbShopTableVO;
|
||||||
|
import com.chaozhanggui.system.cashierservice.mybatis.MpShopTableMapper;
|
||||||
import com.chaozhanggui.system.cashierservice.sign.CodeEnum;
|
import com.chaozhanggui.system.cashierservice.sign.CodeEnum;
|
||||||
import com.chaozhanggui.system.cashierservice.sign.Result;
|
import com.chaozhanggui.system.cashierservice.sign.Result;
|
||||||
import com.chaozhanggui.system.cashierservice.util.DateUtils;
|
import com.chaozhanggui.system.cashierservice.util.DateUtils;
|
||||||
@@ -15,6 +18,7 @@ import com.chaozhanggui.system.cashierservice.util.TokenUtil;
|
|||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
@@ -37,6 +41,12 @@ public class ShopInfoService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
ShopUserDutyDetailMapper shopUserDutyDetailMapper;
|
ShopUserDutyDetailMapper shopUserDutyDetailMapper;
|
||||||
private final TbOrderInfoMapper orderInfoMapper;
|
private final TbOrderInfoMapper orderInfoMapper;
|
||||||
|
@Qualifier("tbCashierCartMapper")
|
||||||
|
@Autowired
|
||||||
|
private TbCashierCartMapper tbCashierCartMapper;
|
||||||
|
@Autowired
|
||||||
|
private MpShopTableMapper mpShopTableMapper;
|
||||||
|
|
||||||
|
|
||||||
public ShopInfoService(TbOrderInfoMapper orderInfoMapper) {
|
public ShopInfoService(TbOrderInfoMapper orderInfoMapper) {
|
||||||
this.orderInfoMapper = orderInfoMapper;
|
this.orderInfoMapper = orderInfoMapper;
|
||||||
@@ -56,6 +66,17 @@ public class ShopInfoService {
|
|||||||
PageHelperUtil.startPage(page, pageSize);
|
PageHelperUtil.startPage(page, pageSize);
|
||||||
// List<TbShopTable> shopTables=tbShopTableMapper.selectByShopIdAndStatus(shopId,areaId,status);
|
// List<TbShopTable> shopTables=tbShopTableMapper.selectByShopIdAndStatus(shopId,areaId,status);
|
||||||
List<TbShopTableVO> tbShopTableVOList = tbShopTableMapper.selectTableInfo(shopId, areaId, status, DateUtils.getDay());
|
List<TbShopTableVO> tbShopTableVOList = tbShopTableMapper.selectTableInfo(shopId, areaId, status, DateUtils.getDay());
|
||||||
|
for (TbShopTableVO tbShopTableVO : tbShopTableVOList) {
|
||||||
|
if (StrUtil.isBlank(tbShopTableVO.getQrcode())) {
|
||||||
|
tbShopTableVO.setStatus("closed");
|
||||||
|
|
||||||
|
}else if (tbCashierCartMapper.countTable(tbShopTableVO.getQrcode(), tbShopTableVO.getShopId()) < 1) {
|
||||||
|
tbShopTableVO.setStatus("idle");
|
||||||
|
mpShopTableMapper.update(null, new LambdaUpdateWrapper<TbShopTable>()
|
||||||
|
.eq(TbShopTable::getQrcode, tbShopTableVO.getQrcode())
|
||||||
|
.set(TbShopTable::getStatus, TableStateEnum.IDLE.getState()));
|
||||||
|
}
|
||||||
|
}
|
||||||
PageInfo pageInfo=new PageInfo(tbShopTableVOList);
|
PageInfo pageInfo=new PageInfo(tbShopTableVOList);
|
||||||
|
|
||||||
return Result.success(CodeEnum.SUCCESS,pageInfo);
|
return Result.success(CodeEnum.SUCCESS,pageInfo);
|
||||||
|
|||||||
@@ -242,6 +242,6 @@
|
|||||||
and a.status = #{status}
|
and a.status = #{status}
|
||||||
</if>
|
</if>
|
||||||
GROUP BY a.id
|
GROUP BY a.id
|
||||||
order by a.`sort` asc
|
order by a.id desc
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
Reference in New Issue
Block a user