转桌问题
This commit is contained in:
@@ -566,19 +566,13 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService {
|
|||||||
.eq(OrderInfo::getStatus, OrderStatusEnums.UNPAID.getCode()));
|
.eq(OrderInfo::getStatus, OrderStatusEnums.UNPAID.getCode()));
|
||||||
if (targetOrder == null) {
|
if (targetOrder == null) {
|
||||||
ShopTable shopTable = shopTableService.getOneByTableCode(sourceOrder.getShopId(), param.getTargetTableCode());
|
ShopTable shopTable = shopTableService.getOneByTableCode(sourceOrder.getShopId(), param.getTargetTableCode());
|
||||||
OrderInfoAddDTO addDTO = new OrderInfoAddDTO();
|
sourceOrder.setTableCode(shopTable.getTableCode());
|
||||||
addDTO.setShopId(sourceOrder.getShopId());
|
sourceOrder.setTableName(shopTable.getName());
|
||||||
addDTO.setStaffId(sourceOrder.getStaffId());
|
OrderInfo upOrder = new OrderInfo();
|
||||||
addDTO.setTableCode(param.getTargetTableCode());
|
upOrder.setTableCode(shopTable.getTableCode());
|
||||||
addDTO.setOrderType(sourceOrder.getOrderType());
|
upOrder.setTableName(shopTable.getName());
|
||||||
addDTO.setPlatformType(sourceOrder.getPlatformType());
|
orderInfoService.update(upOrder, new QueryWrapper().eq(OrderInfo::getId, sourceOrder.getId()));
|
||||||
addDTO.setPayMode(sourceOrder.getPayMode());
|
targetOrder=sourceOrder;
|
||||||
addDTO.setDineMode("dine-in");
|
|
||||||
addDTO.setPlaceNum(1);
|
|
||||||
addDTO.setWaitCall(false);
|
|
||||||
addDTO.setVipPrice(false);
|
|
||||||
ShopInfo shopInfo = shopInfoService.getById(sourceOrder.getShopId());
|
|
||||||
targetOrder = initOrderInfo(addDTO, shopInfo, shopTable);
|
|
||||||
} else {
|
} else {
|
||||||
targetOrder.setPlaceNum(targetOrder.getPlaceNum() + 1);
|
targetOrder.setPlaceNum(targetOrder.getPlaceNum() + 1);
|
||||||
//下单次数+1
|
//下单次数+1
|
||||||
@@ -586,23 +580,26 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService {
|
|||||||
updateTargetOrder.setId(targetOrder.getId());
|
updateTargetOrder.setId(targetOrder.getId());
|
||||||
updateTargetOrder.setPlaceNum(targetOrder.getPlaceNum() + 1);
|
updateTargetOrder.setPlaceNum(targetOrder.getPlaceNum() + 1);
|
||||||
orderInfoService.updateById(updateTargetOrder);
|
orderInfoService.updateById(updateTargetOrder);
|
||||||
}
|
|
||||||
OrderDetail orderDetailUp = new OrderDetail();
|
OrderDetail orderDetailUp = new OrderDetail();
|
||||||
orderDetailUp.setOrderId(targetOrder.getId());
|
orderDetailUp.setOrderId(targetOrder.getId());
|
||||||
orderDetailUp.setPlaceNum(targetOrder.getPlaceNum());
|
orderDetailUp.setPlaceNum(targetOrder.getPlaceNum());
|
||||||
if (CollUtil.isEmpty(param.getDetailIds())) {
|
if (CollUtil.isEmpty(param.getDetailIds())) {
|
||||||
long count = orderDetailService.count(new QueryWrapper().eq(OrderDetail::getOrderId, sourceOrder.getId()));
|
long count = orderDetailService.count(new QueryWrapper().eq(OrderDetail::getOrderId, sourceOrder.getId()));
|
||||||
if (count < 1) {
|
if (count < 1) {
|
||||||
throw new CzgException("转台失败,该订单无可转商品");
|
throw new CzgException("转台失败,该订单无可转商品");
|
||||||
|
}
|
||||||
|
orderDetailService.update(orderDetailUp,new QueryWrapper().eq(OrderDetail::getOrderId, sourceOrder.getId()));
|
||||||
|
} else {
|
||||||
|
orderDetailService.update(orderDetailUp,
|
||||||
|
new QueryWrapper().eq(OrderDetail::getOrderId, sourceOrder.getId()).in(OrderDetail::getId, param.getDetailIds()));
|
||||||
|
}
|
||||||
|
if(param.getAllMerge()==1){
|
||||||
|
orderInfoService.remove(new QueryWrapper().eq(OrderInfo::getId, sourceOrder.getId()));
|
||||||
}
|
}
|
||||||
orderDetailService.update(orderDetailUp,new QueryWrapper().eq(OrderDetail::getOrderId, sourceOrder.getId()));
|
|
||||||
} else {
|
|
||||||
orderDetailService.update(orderDetailUp,
|
|
||||||
new QueryWrapper().eq(OrderDetail::getOrderId, sourceOrder.getId()).in(OrderDetail::getId, param.getDetailIds()));
|
|
||||||
}
|
}
|
||||||
if(param.getAllMerge()==1){
|
if(param.getAllMerge()==1){
|
||||||
shopTableService.updateStatus(sourceOrder.getShopId(), null, sourceOrder.getTableCode(), ShopTableStatusEnum.IDLE.getValue());
|
shopTableService.updateStatus(sourceOrder.getShopId(), null, sourceOrder.getTableCode(), ShopTableStatusEnum.IDLE.getValue());
|
||||||
orderInfoService.remove(new QueryWrapper().eq(OrderInfo::getId, sourceOrder.getId()));
|
|
||||||
}
|
}
|
||||||
shopTableService.updateStatus(sourceOrder.getShopId(), null, targetOrder.getTableCode(), ShopTableStatusEnum.UNSETTLED.getValue());
|
shopTableService.updateStatus(sourceOrder.getShopId(), null, targetOrder.getTableCode(), ShopTableStatusEnum.UNSETTLED.getValue());
|
||||||
return CzgResult.success();
|
return CzgResult.success();
|
||||||
|
|||||||
Reference in New Issue
Block a user