Showing
1 changed file
with
6 additions
and
9 deletions
| ... | @@ -539,8 +539,11 @@ public class OrderServiceRpcClient { | ... | @@ -539,8 +539,11 @@ public class OrderServiceRpcClient { |
| 539 | .build(); | 539 | .build(); |
| 540 | final var menuById = menuServiceRpcClient.getMenuById(createOrderDto.getEnterpriseId(), createOrderDto.getMenuId()); | 540 | final var menuById = menuServiceRpcClient.getMenuById(createOrderDto.getEnterpriseId(), createOrderDto.getMenuId()); |
| 541 | OrderStatusEnum orderStatus = OrderStatusEnum.TO_PREPARE; | 541 | OrderStatusEnum orderStatus = OrderStatusEnum.TO_PREPARE; |
| 542 | - if (menuById.getResponse().getOrderRuleJson().getModeOfPayment() == ModeOfPaymentEnum.ONLINE && menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) { | 542 | + if (createOrderDto.getOnlinePay() != OnlinePayEnum.ONLINE) { |
| 543 | - orderStatus = OrderStatusEnum.PREPARING; | 543 | + var orderRuleJson = menuById.getResponse().getOrderRuleJson(); |
| 544 | + if (orderRuleJson.getModeOfPayment() == ModeOfPaymentEnum.ONLINE && orderRuleJson.getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) { | ||
| 545 | + orderStatus = OrderStatusEnum.PREPARING; | ||
| 546 | + } | ||
| 544 | } | 547 | } |
| 545 | final var creation = ClientCustomerOrderCreation.newBuilder() | 548 | final var creation = ClientCustomerOrderCreation.newBuilder() |
| 546 | .setShouldCreateCustomerId(createOrderDto.getShouldCreateCustomerId()) | 549 | .setShouldCreateCustomerId(createOrderDto.getShouldCreateCustomerId()) |
| ... | @@ -553,7 +556,7 @@ public class OrderServiceRpcClient { | ... | @@ -553,7 +556,7 @@ public class OrderServiceRpcClient { |
| 553 | .setShouldCreateRoomNo(!createOrderDto.getRoomNo().isEmpty()).setRoomNo(createOrderDto.getRoomNo()) | 556 | .setShouldCreateRoomNo(!createOrderDto.getRoomNo().isEmpty()).setRoomNo(createOrderDto.getRoomNo()) |
| 554 | .setShouldCreateTableCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY) || StringUtils.isNotEmpty(createOrderDto.getTableCode())).setTableCode(createOrderDto.getTableCode() == null ? "" : createOrderDto.getTableCode()) | 557 | .setShouldCreateTableCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY) || StringUtils.isNotEmpty(createOrderDto.getTableCode())).setTableCode(createOrderDto.getTableCode() == null ? "" : createOrderDto.getTableCode()) |
| 555 | .setShouldCreateOnlinePay(true).setOnlinePay(createOrderDto.getOnlinePay()) | 558 | .setShouldCreateOnlinePay(true).setOnlinePay(createOrderDto.getOnlinePay()) |
| 556 | - .setShouldCreatePayStatus(true).setPayStatus(createOrderDto.getOnlinePay() == OnlinePayEnum.ONLINE || createOrderDto.getOnlinePay() == OnlinePayEnum.LEAVE_HOSPITAL ? PayStatusEnum.TO_PAY : PayStatusEnum.SUCCEED) | 559 | + .setShouldCreatePayStatus(true).setPayStatus(createOrderDto.getOnlinePay() == OnlinePayEnum.ONLINE ? PayStatusEnum.TO_PAY : PayStatusEnum.SUCCEED) |
| 557 | .setMenuId(createOrderDto.getMenuId()) | 560 | .setMenuId(createOrderDto.getMenuId()) |
| 558 | .setTotalNum(createOrderDto.getTotalNum()) | 561 | .setTotalNum(createOrderDto.getTotalNum()) |
| 559 | .setShouldCreatePayPrice(createOrderDto.getOnlinePay() == OnlinePayEnum.LEAVE_HOSPITAL).setPayPrice(createOrderDto.getPayPrice()) | 562 | .setShouldCreatePayPrice(createOrderDto.getOnlinePay() == OnlinePayEnum.LEAVE_HOSPITAL).setPayPrice(createOrderDto.getPayPrice()) |
| ... | @@ -571,13 +574,10 @@ public class OrderServiceRpcClient { | ... | @@ -571,13 +574,10 @@ public class OrderServiceRpcClient { |
| 571 | final var skuSellQuantities = this.querySkuSellQuantitiesByStallAndSkuIds(createOrderDto.getEnterpriseId(), createOrderDto.getStallId(), skuIds); | 574 | final var skuSellQuantities = this.querySkuSellQuantitiesByStallAndSkuIds(createOrderDto.getEnterpriseId(), createOrderDto.getStallId(), skuIds); |
| 572 | final var skuSellQuantityMap = skuSellQuantities.stream().collect(Collectors.toMap(SingleSkuSellQuantityRpcResponse::getSkuId, Function.identity())); | 575 | final var skuSellQuantityMap = skuSellQuantities.stream().collect(Collectors.toMap(SingleSkuSellQuantityRpcResponse::getSkuId, Function.identity())); |
| 573 | final var skuMap = skuServiceRpcClient.getSkusByIds(skuIds).stream().collect(Collectors.toMap(SingleSkuResponse::getId, Function.identity())); | 576 | final var skuMap = skuServiceRpcClient.getSkusByIds(skuIds).stream().collect(Collectors.toMap(SingleSkuResponse::getId, Function.identity())); |
| 574 | - final var soldOutSkus = new ArrayList<String>(); | ||
| 575 | final var skuStockMap = new HashMap<String, Integer>(); | 577 | final var skuStockMap = new HashMap<String, Integer>(); |
| 576 | for (var orderDetail : createOrderDto.getOrderDetailDtos()) { | 578 | for (var orderDetail : createOrderDto.getOrderDetailDtos()) { |
| 577 | final var skuSellQuantityRpcResponse = skuSellQuantityMap.get(orderDetail.getSkuId()); | 579 | final var skuSellQuantityRpcResponse = skuSellQuantityMap.get(orderDetail.getSkuId()); |
| 578 | if (skuSellQuantityRpcResponse == null) { | 580 | if (skuSellQuantityRpcResponse == null) { |
| 579 | - log.error("skuSellQuantityRpcResponse is null; stallId:{}, skuId:{}", createOrderDto.getStallId(), orderDetail.getSkuId()); | ||
| 580 | - soldOutSkus.add(skuMap.get(orderDetail.getSkuId()).getName()); | ||
| 581 | continue; | 581 | continue; |
| 582 | } | 582 | } |
| 583 | if ((skuSellQuantityRpcResponse.getTodaySellQuantity() + orderDetail.getCount()) > skuSellQuantityRpcResponse.getMaxSellQuantity()) { | 583 | if ((skuSellQuantityRpcResponse.getTodaySellQuantity() + orderDetail.getCount()) > skuSellQuantityRpcResponse.getMaxSellQuantity()) { |
| ... | @@ -585,9 +585,6 @@ public class OrderServiceRpcClient { | ... | @@ -585,9 +585,6 @@ public class OrderServiceRpcClient { |
| 585 | skuStockMap.put(skuMap.get(orderDetail.getSkuId()).getName(), skuSellQuantityRpcResponse.getMaxSellQuantity() - skuSellQuantityRpcResponse.getTodaySellQuantity()); | 585 | skuStockMap.put(skuMap.get(orderDetail.getSkuId()).getName(), skuSellQuantityRpcResponse.getMaxSellQuantity() - skuSellQuantityRpcResponse.getTodaySellQuantity()); |
| 586 | } | 586 | } |
| 587 | } | 587 | } |
| 588 | - if (!soldOutSkus.isEmpty()) { | ||
| 589 | - throw ClientEndExceptions.BusinessException.build(ErrorCodeEnum.SKUS_SOLD_OUT_TODAY, String.join(",", soldOutSkus)); | ||
| 590 | - } | ||
| 591 | if (!skuStockMap.isEmpty()) { | 588 | if (!skuStockMap.isEmpty()) { |
| 592 | final var noEnoughSkus = String.join(", ", skuStockMap.keySet()); | 589 | final var noEnoughSkus = String.join(", ", skuStockMap.keySet()); |
| 593 | throw ClientEndExceptions.BusinessException.build(ErrorCodeEnum.SKUS_STOCK_NO_ENOUGH_TODAY, noEnoughSkus); | 590 | throw ClientEndExceptions.BusinessException.build(ErrorCodeEnum.SKUS_STOCK_NO_ENOUGH_TODAY, noEnoughSkus); | ... | ... |
-
Please register or login to post a comment