zhuyifan

fix(service): 修复订单创建时的时区问题

...@@ -593,7 +593,7 @@ public class OrderServiceRpcClient { ...@@ -593,7 +593,7 @@ public class OrderServiceRpcClient {
593 .setMenuId(createOrderDto.getMenuId()) 593 .setMenuId(createOrderDto.getMenuId())
594 .setTotalNum(createOrderDto.getTotalNum()) 594 .setTotalNum(createOrderDto.getTotalNum())
595 .setShouldCreatePayPrice(createOrderDto.getOnlinePay() == OnlinePayEnum.LEAVE_HOSPITAL).setPayPrice(createOrderDto.getPayPrice()) 595 .setShouldCreatePayPrice(createOrderDto.getOnlinePay() == OnlinePayEnum.LEAVE_HOSPITAL).setPayPrice(createOrderDto.getPayPrice())
596 - .setMealTime(createOrderDto.getMealTime().toLocalDate().atStartOfDay(DateUtil.CHINA_ZONE).toInstant().toEpochMilli()) 596 + .setMealTime(createOrderDto.getMealTime().atZone(ZoneOffset.UTC).withZoneSameInstant(DateUtil.CHINA_ZONE).toLocalDate().atStartOfDay(DateUtil.CHINA_ZONE).toInstant().toEpochMilli())
597 .setShouldCreatePickupCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY)).setPickupCode(generatePickupCode()) 597 .setShouldCreatePickupCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY)).setPickupCode(generatePickupCode())
598 .setShouldCreateOrderType(true).setOrderType(menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.RESERVATION ? OrderTypeEnum.DELIVERY : OrderTypeEnum.DINE_IN) 598 .setShouldCreateOrderType(true).setOrderType(menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.RESERVATION ? OrderTypeEnum.DELIVERY : OrderTypeEnum.DINE_IN)
599 .setShouldCreateRemark(true).setRemark(createOrderDto.getRemark()) 599 .setShouldCreateRemark(true).setRemark(createOrderDto.getRemark())
...@@ -601,6 +601,7 @@ public class OrderServiceRpcClient { ...@@ -601,6 +601,7 @@ public class OrderServiceRpcClient {
601 .setCloseTimeType(createOrderDto.getCloseTimeType()) 601 .setCloseTimeType(createOrderDto.getCloseTimeType())
602 .setShouldCreateOrderDetails(true).addAllOrderDetails(orderDetails) 602 .setShouldCreateOrderDetails(true).addAllOrderDetails(orderDetails)
603 .build(); 603 .build();
604 + log.info("createOrder mealTime:{}", createOrderDto.getMealTime());
604 605
605 if (menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) { 606 if (menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) {
606 final var skuIds = createOrderDto.getOrderDetailDtos().stream().map(CreateOrderDetailDto::getSkuId).collect(Collectors.toList()); 607 final var skuIds = createOrderDto.getOrderDetailDtos().stream().map(CreateOrderDetailDto::getSkuId).collect(Collectors.toList());
......
...@@ -98,7 +98,7 @@ public class OrderServiceImpl implements OrderService { ...@@ -98,7 +98,7 @@ public class OrderServiceImpl implements OrderService {
98 createOrderDto.setCustomerId(operatorCreateOrderDto.getCustomerId()); 98 createOrderDto.setCustomerId(operatorCreateOrderDto.getCustomerId());
99 createOrderDto.setStallId(operatorCreateOrderDto.getStallId()); 99 createOrderDto.setStallId(operatorCreateOrderDto.getStallId());
100 createOrderDto.setMenuId(operatorCreateOrderDto.getMenuId()); 100 createOrderDto.setMenuId(operatorCreateOrderDto.getMenuId());
101 - createOrderDto.setMealTime(operatorCreateOrderDto.getMealTime().toLocalDate().atStartOfDay()); 101 + createOrderDto.setMealTime(operatorCreateOrderDto.getMealTime());
102 createOrderDto.setRemark(operatorCreateOrderDto.getRemark()); 102 createOrderDto.setRemark(operatorCreateOrderDto.getRemark());
103 createOrderDto.setCreatedBy(operatorLoginInfo.getId()); 103 createOrderDto.setCreatedBy(operatorLoginInfo.getId());
104 createOrderDto.setClientId(operator.getClientId()); 104 createOrderDto.setClientId(operator.getClientId());
......