zhuyifan

feat(MenuService): 添加出院状态在 MenuService.proto 文件中,为未知枚举类型增加了出院(LEAVE_HOSPITAL)状态。

...@@ -2,6 +2,7 @@ package com.infoloop.tianting.model.dto; ...@@ -2,6 +2,7 @@ package com.infoloop.tianting.model.dto;
2 2
3 import com.infoloop.tianting.annotation.RequestKeyParam; 3 import com.infoloop.tianting.annotation.RequestKeyParam;
4 import com.infoloop.tianting.clientcustomerorderservice.CloseTimeType; 4 import com.infoloop.tianting.clientcustomerorderservice.CloseTimeType;
5 +import com.infoloop.tianting.clientcustomerorderservice.OnlinePayEnum;
5 import com.infoloop.tianting.clientcustomerorderservice.OrderSourceEnum; 6 import com.infoloop.tianting.clientcustomerorderservice.OrderSourceEnum;
6 import com.infoloop.tianting.clientcustomerorderservice.OrderStatusEnum; 7 import com.infoloop.tianting.clientcustomerorderservice.OrderStatusEnum;
7 import com.infoloop.tianting.clientcustomerorderservice.PayStatusEnum; 8 import com.infoloop.tianting.clientcustomerorderservice.PayStatusEnum;
...@@ -222,6 +223,9 @@ public class OrderDbDTO { ...@@ -222,6 +223,9 @@ public class OrderDbDTO {
222 @ApiModelProperty(value = "备注") 223 @ApiModelProperty(value = "备注")
223 private String remark; 224 private String remark;
224 225
226 + @ApiModelProperty(value = "支付方式")
227 + private OnlinePayEnum onlinePay;
228 +
225 @ApiModelProperty(value = "订单菜品详情列表") 229 @ApiModelProperty(value = "订单菜品详情列表")
226 private List<OperatorCreateOrderDetailDto> orderDetailDtos; 230 private List<OperatorCreateOrderDetailDto> orderDetailDtos;
227 } 231 }
...@@ -260,8 +264,8 @@ public class OrderDbDTO { ...@@ -260,8 +264,8 @@ public class OrderDbDTO {
260 @ApiModelProperty(value = "实际支付金额,单位为分") 264 @ApiModelProperty(value = "实际支付金额,单位为分")
261 private Integer payPrice; 265 private Integer payPrice;
262 266
263 - @ApiModelProperty(value = "是否在线付费;0=未付费,1=付费") 267 + @ApiModelProperty(value = "支付方式")
264 - private Boolean onlinePay; 268 + private OnlinePayEnum onlinePay;
265 269
266 @ApiModelProperty(value = "支付时间") 270 @ApiModelProperty(value = "支付时间")
267 private LocalDateTime payTime; 271 private LocalDateTime payTime;
...@@ -364,8 +368,8 @@ public class OrderDbDTO { ...@@ -364,8 +368,8 @@ public class OrderDbDTO {
364 @ApiModelProperty(value = "实际支付金额,单位为分") 368 @ApiModelProperty(value = "实际支付金额,单位为分")
365 private Integer payPrice; 369 private Integer payPrice;
366 370
367 - @ApiModelProperty(value = "是否在线付费;0=未付费,1=付费") 371 + @ApiModelProperty(value = "支付方式")
368 - private Boolean onlinePay; 372 + private OnlinePayEnum onlinePay;
369 373
370 @ApiModelProperty(value = "支付时间") 374 @ApiModelProperty(value = "支付时间")
371 private String payTime; 375 private String payTime;
......
...@@ -22,10 +22,12 @@ import com.infoloop.tianting.clientcustomerorderservice.GetClientCustomerOrderDe ...@@ -22,10 +22,12 @@ import com.infoloop.tianting.clientcustomerorderservice.GetClientCustomerOrderDe
22 import com.infoloop.tianting.clientcustomerorderservice.GetClientCustomerOrderDetailsByOrderIdsRpcRequest; 22 import com.infoloop.tianting.clientcustomerorderservice.GetClientCustomerOrderDetailsByOrderIdsRpcRequest;
23 import com.infoloop.tianting.clientcustomerorderservice.GetClientCustomerOrdersByCustomerIdRpcRequest; 23 import com.infoloop.tianting.clientcustomerorderservice.GetClientCustomerOrdersByCustomerIdRpcRequest;
24 import com.infoloop.tianting.clientcustomerorderservice.MealDetail; 24 import com.infoloop.tianting.clientcustomerorderservice.MealDetail;
25 +import com.infoloop.tianting.clientcustomerorderservice.OnlinePayEnum;
25 import com.infoloop.tianting.clientcustomerorderservice.OrderOperationRecordCreation; 26 import com.infoloop.tianting.clientcustomerorderservice.OrderOperationRecordCreation;
26 import com.infoloop.tianting.clientcustomerorderservice.OrderOperationType; 27 import com.infoloop.tianting.clientcustomerorderservice.OrderOperationType;
27 import com.infoloop.tianting.clientcustomerorderservice.OrderSourceEnum; 28 import com.infoloop.tianting.clientcustomerorderservice.OrderSourceEnum;
28 import com.infoloop.tianting.clientcustomerorderservice.OrderStatusEnum; 29 import com.infoloop.tianting.clientcustomerorderservice.OrderStatusEnum;
30 +import com.infoloop.tianting.clientcustomerorderservice.OrderTypeEnum;
29 import com.infoloop.tianting.clientcustomerorderservice.PayStatusEnum; 31 import com.infoloop.tianting.clientcustomerorderservice.PayStatusEnum;
30 import com.infoloop.tianting.clientcustomerorderservice.QueryClientCustomerOrdersByConditionRpcRequest; 32 import com.infoloop.tianting.clientcustomerorderservice.QueryClientCustomerOrdersByConditionRpcRequest;
31 import com.infoloop.tianting.clientcustomerorderservice.QueryClientCustomerOrdersByPaginationRpcRequest; 33 import com.infoloop.tianting.clientcustomerorderservice.QueryClientCustomerOrdersByPaginationRpcRequest;
...@@ -524,9 +526,7 @@ public class OrderServiceRpcClient { ...@@ -524,9 +526,7 @@ public class OrderServiceRpcClient {
524 .setShowName(orderDetailDto.getShowName()) 526 .setShowName(orderDetailDto.getShowName())
525 .setPrice(orderDetailDto.getPrice()) 527 .setPrice(orderDetailDto.getPrice())
526 .setMealDetailJson(mealDetail) 528 .setMealDetailJson(mealDetail)
527 -// .setAdjustSkuRemark(orderDetailDto.getAdjustSkuRemark())
528 .setServeStatus(ServeStatusEnum.SERVE_NOT_START) 529 .setServeStatus(ServeStatusEnum.SERVE_NOT_START)
529 -// .setShouldCreateAdjustSkuRemark(true)
530 .setShouldCreatePrice(true) 530 .setShouldCreatePrice(true)
531 .setShouldCreateMealDetailJson(true) 531 .setShouldCreateMealDetailJson(true)
532 .setSkuId(orderDetailDto.getSkuId()) 532 .setSkuId(orderDetailDto.getSkuId())
...@@ -537,43 +537,33 @@ public class OrderServiceRpcClient { ...@@ -537,43 +537,33 @@ public class OrderServiceRpcClient {
537 .addAllAvoids(createOrderDto.getCustomerNoticeJson().getAvoids()) 537 .addAllAvoids(createOrderDto.getCustomerNoticeJson().getAvoids())
538 .addAllDoctors(createOrderDto.getCustomerNoticeJson().getDoctors()) 538 .addAllDoctors(createOrderDto.getCustomerNoticeJson().getDoctors())
539 .build(); 539 .build();
540 -
541 final var menuById = menuServiceRpcClient.getMenuById(createOrderDto.getEnterpriseId(), createOrderDto.getMenuId()); 540 final var menuById = menuServiceRpcClient.getMenuById(createOrderDto.getEnterpriseId(), createOrderDto.getMenuId());
542 OrderStatusEnum orderStatus = OrderStatusEnum.TO_PREPARE; 541 OrderStatusEnum orderStatus = OrderStatusEnum.TO_PREPARE;
543 if (menuById.getResponse().getOrderRuleJson().getModeOfPayment() == ModeOfPaymentEnum.ONLINE && menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) { 542 if (menuById.getResponse().getOrderRuleJson().getModeOfPayment() == ModeOfPaymentEnum.ONLINE && menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) {
544 orderStatus = OrderStatusEnum.PREPARING; 543 orderStatus = OrderStatusEnum.PREPARING;
545 } 544 }
546 -
547 final var creation = ClientCustomerOrderCreation.newBuilder() 545 final var creation = ClientCustomerOrderCreation.newBuilder()
548 .setShouldCreateCustomerId(createOrderDto.getShouldCreateCustomerId()) 546 .setShouldCreateCustomerId(createOrderDto.getShouldCreateCustomerId())
549 - .setCustomerId(createOrderDto.getCustomerId()) 547 + .setShouldCreateCustomerId(true).setCustomerId(createOrderDto.getCustomerId())
550 .setStallId(createOrderDto.getStallId()) 548 .setStallId(createOrderDto.getStallId())
551 .setStatus(orderStatus) 549 .setStatus(orderStatus)
552 .setAddress(createOrderDto.getAddress()) 550 .setAddress(createOrderDto.getAddress())
553 .setClientId(createOrderDto.getClientId()) 551 .setClientId(createOrderDto.getClientId())
554 - .setShouldCreateOpenId(!LoginContextHolder.getOpenId().isEmpty()) 552 + .setShouldCreateOpenId(!LoginContextHolder.getOpenId().isEmpty()).setOpenId(LoginContextHolder.getOpenId())
555 - .setOpenId(LoginContextHolder.getOpenId()) 553 + .setShouldCreateRoomNo(!createOrderDto.getRoomNo().isEmpty()).setRoomNo(createOrderDto.getRoomNo())
556 - .setShouldCreateRoomNo(!createOrderDto.getRoomNo().isEmpty()) 554 + .setShouldCreateTableCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY) || StringUtils.isNotEmpty(createOrderDto.getTableCode())).setTableCode(createOrderDto.getTableCode() == null ? "" : createOrderDto.getTableCode())
557 - .setRoomNo(createOrderDto.getRoomNo()) 555 + .setShouldCreateOnlinePay(true).setOnlinePay(createOrderDto.getOnlinePay())
558 - .setTableCode(createOrderDto.getTableCode() == null ? "" : createOrderDto.getTableCode()) 556 + .setShouldCreatePayStatus(true).setPayStatus(createOrderDto.getOnlinePay() == OnlinePayEnum.ONLINE || createOrderDto.getOnlinePay() == OnlinePayEnum.LEAVE_HOSPITAL ? PayStatusEnum.TO_PAY : PayStatusEnum.SUCCEED)
559 - .setShouldCreateOnlinePay(true)
560 - .setOnlinePay(createOrderDto.getOnlinePay())
561 - .setShouldCreatePayStatus(createOrderDto.getOnlinePay())
562 - .setPayStatus(PayStatusEnum.TO_PAY)
563 .setMenuId(createOrderDto.getMenuId()) 557 .setMenuId(createOrderDto.getMenuId())
564 .setTotalNum(createOrderDto.getTotalNum()) 558 .setTotalNum(createOrderDto.getTotalNum())
565 - .setPayPrice(createOrderDto.getPayPrice()) 559 + .setShouldCreatePayPrice(createOrderDto.getOnlinePay() == OnlinePayEnum.LEAVE_HOSPITAL).setPayPrice(createOrderDto.getPayPrice())
566 .setMealTime(createOrderDto.getMealTime().toLocalDate().atStartOfDay().toInstant(ZoneOffset.UTC).toEpochMilli()) 560 .setMealTime(createOrderDto.getMealTime().toLocalDate().atStartOfDay().toInstant(ZoneOffset.UTC).toEpochMilli())
567 - .setShouldCreateTableCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY) || StringUtils.isNotEmpty(createOrderDto.getTableCode())) 561 + .setShouldCreatePickupCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY)).setPickupCode(generatePickupCode())
568 - .setShouldCreatePickupCode(createOrderDto.getCloseTimeType().equals(CloseTimeType.IMMEDIATELY)) 562 + .setShouldCreateOrderType(true).setOrderType(menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.RESERVATION ? OrderTypeEnum.DELIVERY : OrderTypeEnum.DINE_IN)
569 - .setPickupCode(generatePickupCode()) 563 + .setShouldCreateRemark(true).setRemark(createOrderDto.getRemark())
570 - .setShouldCreateRemark(true) 564 + .setShouldCreateCustomerNoticeJson(true).setCustomerNoticeJson(customerNotice)
571 - .setRemark(createOrderDto.getRemark())
572 - .setShouldCreateCustomerNoticeJson(true)
573 - .setCustomerNoticeJson(customerNotice)
574 .setCloseTimeType(createOrderDto.getCloseTimeType()) 565 .setCloseTimeType(createOrderDto.getCloseTimeType())
575 - .setShouldCreateOrderDetails(true) 566 + .setShouldCreateOrderDetails(true).addAllOrderDetails(orderDetails)
576 - .addAllOrderDetails(orderDetails)
577 .build(); 567 .build();
578 568
579 if (menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) { 569 if (menuById.getResponse().getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.IMMEDIATELY) {
......
...@@ -16,7 +16,6 @@ import com.infoloop.tianting.deliveryruleservice.SingleClientLabelRpcResponse; ...@@ -16,7 +16,6 @@ import com.infoloop.tianting.deliveryruleservice.SingleClientLabelRpcResponse;
16 import com.infoloop.tianting.exception.ClientEndExceptions; 16 import com.infoloop.tianting.exception.ClientEndExceptions;
17 import com.infoloop.tianting.exception.ErrorCodeEnum; 17 import com.infoloop.tianting.exception.ErrorCodeEnum;
18 import com.infoloop.tianting.menuservice.CloseTimeTypeEnum; 18 import com.infoloop.tianting.menuservice.CloseTimeTypeEnum;
19 -import com.infoloop.tianting.menuservice.ModeOfPaymentEnum;
20 import com.infoloop.tianting.menuservice.SingleMenuDetailRpcResponse; 19 import com.infoloop.tianting.menuservice.SingleMenuDetailRpcResponse;
21 import com.infoloop.tianting.model.common.OrderPageResult; 20 import com.infoloop.tianting.model.common.OrderPageResult;
22 import com.infoloop.tianting.model.dto.ClientLabelDTO.HisAllergy; 21 import com.infoloop.tianting.model.dto.ClientLabelDTO.HisAllergy;
...@@ -102,9 +101,9 @@ public class OrderServiceImpl implements OrderService { ...@@ -102,9 +101,9 @@ public class OrderServiceImpl implements OrderService {
102 createOrderDto.setCreatedBy(operatorLoginInfo.getId()); 101 createOrderDto.setCreatedBy(operatorLoginInfo.getId());
103 createOrderDto.setClientId(operator.getClientId()); 102 createOrderDto.setClientId(operator.getClientId());
104 createOrderDto.setAddress(record.getDepartmentName() + record.getRoomNo()); 103 createOrderDto.setAddress(record.getDepartmentName() + record.getRoomNo());
104 + createOrderDto.setOnlinePay(createOrderDto.getOnlinePay());
105 createOrderDto.setPayPrice(0); 105 createOrderDto.setPayPrice(0);
106 - final var menu = menuServiceRpcClient.getMenuById(operator.getEnterpriseId(), 106 + final var menu = menuServiceRpcClient.getMenuById(operator.getEnterpriseId(), createOrderDto.getMenuId()).getResponse();
107 - createOrderDto.getMenuId()).getResponse();
108 final var placeOrderCount = menu.getOrderRuleJson().getPlaceOrderCount(); 107 final var placeOrderCount = menu.getOrderRuleJson().getPlaceOrderCount();
109 if (placeOrderCount != 0 && menuOrderCount >= placeOrderCount) { 108 if (placeOrderCount != 0 && menuOrderCount >= placeOrderCount) {
110 throw ClientEndExceptions.OperationForbidden.build(ErrorCodeEnum.ORDER_COUNT_LIMIT.name()); 109 throw ClientEndExceptions.OperationForbidden.build(ErrorCodeEnum.ORDER_COUNT_LIMIT.name());
...@@ -113,8 +112,7 @@ public class OrderServiceImpl implements OrderService { ...@@ -113,8 +112,7 @@ public class OrderServiceImpl implements OrderService {
113 createOrderDto.setRoomNo(record.getRoomNo()); 112 createOrderDto.setRoomNo(record.getRoomNo());
114 createOrderDto.setCreationSource(OrderSourceEnum.STALL.getNumber()); 113 createOrderDto.setCreationSource(OrderSourceEnum.STALL.getNumber());
115 createOrderDto.setEnterpriseId(operatorLoginInfo.getEnterpriseId()); 114 createOrderDto.setEnterpriseId(operatorLoginInfo.getEnterpriseId());
116 - var onlinePay = menu.getOrderRuleJson().getModeOfPayment() == ModeOfPaymentEnum.ONLINE; 115 + createOrderDto.setOnlinePay(operatorCreateOrderDto.getOnlinePay());
117 - createOrderDto.setOnlinePay(onlinePay);
118 OrderTypeEnum orderType; 116 OrderTypeEnum orderType;
119 if (menu.getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.RESERVATION) { 117 if (menu.getOrderRuleJson().getCloseTimeType() == CloseTimeTypeEnum.RESERVATION) {
120 orderType = OrderTypeEnum.DELIVERY; 118 orderType = OrderTypeEnum.DELIVERY;
...@@ -123,30 +121,24 @@ public class OrderServiceImpl implements OrderService { ...@@ -123,30 +121,24 @@ public class OrderServiceImpl implements OrderService {
123 } 121 }
124 createOrderDto.setOrderType(orderType.getNumber()); 122 createOrderDto.setOrderType(orderType.getNumber());
125 createOrderDto.setShouldCreateCustomerId(true); 123 createOrderDto.setShouldCreateCustomerId(true);
126 -
127 final var labelRefs = clientCustomerServiceRpcClient.getCustomerLabelsByCustomerId(customer.getEnterpriseId(), customer.getId()).getResponsesList(); 124 final var labelRefs = clientCustomerServiceRpcClient.getCustomerLabelsByCustomerId(customer.getEnterpriseId(), customer.getId()).getResponsesList();
128 final var labelIds = labelRefs.stream().map(SingleClientCustomerLabelRefRpcResponse::getLabelId).collect(Collectors.toList()); 125 final var labelIds = labelRefs.stream().map(SingleClientCustomerLabelRefRpcResponse::getLabelId).collect(Collectors.toList());
129 final var labels = deliveryRuleServiceRpcClient.GetClientLabelsByIds(customer.getEnterpriseId(), labelIds).getResponsesList(); 126 final var labels = deliveryRuleServiceRpcClient.GetClientLabelsByIds(customer.getEnterpriseId(), labelIds).getResponsesList();
130 - final var avoids = labels.stream().filter(l -> l.getType() == ClientLabelTypeEnum.CLIENT_LABEL_TYPE_AVOID).map( 127 + final var avoids = labels.stream().filter(l -> l.getType() == ClientLabelTypeEnum.CLIENT_LABEL_TYPE_AVOID).map(SingleClientLabelRpcResponse::getName).collect(Collectors.toList());
131 - SingleClientLabelRpcResponse::getName).collect(Collectors.toList());
132 List<HisAllergy> hisAllergies = new ArrayList<>(); 128 List<HisAllergy> hisAllergies = new ArrayList<>();
133 - List<HisMedicalAdviceDto> origionalHisDoctors = new ArrayList<>(); 129 + List<HisMedicalAdviceDto> originalHisDoctors = new ArrayList<>();
134 if (!customer.getHISCustomerId().isEmpty()) { 130 if (!customer.getHISCustomerId().isEmpty()) {
135 hisAllergies = meiZhongYiHeService.getHisCustomerAllergiesByCustomerId(customer.getHISCustomerId()); 131 hisAllergies = meiZhongYiHeService.getHisCustomerAllergiesByCustomerId(customer.getHISCustomerId());
136 - origionalHisDoctors = meiZhongYiHeService.getHisCustomerMedicalAdvicesByContractNo(record.getContractNo()); 132 + originalHisDoctors = meiZhongYiHeService.getHisCustomerMedicalAdvicesByContractNo(record.getContractNo());
137 } 133 }
138 -
139 final var allergyCodes = hisAllergies.stream().map(HisAllergy::getAllergyCode).collect(Collectors.toList()); 134 final var allergyCodes = hisAllergies.stream().map(HisAllergy::getAllergyCode).collect(Collectors.toList());
140 final var allLabels = deliveryRuleServiceRpcClient.getLabelsByTypes(QueryLabelsDto.builder() 135 final var allLabels = deliveryRuleServiceRpcClient.getLabelsByTypes(QueryLabelsDto.builder()
141 .enterpriseId(operatorLoginInfo.getEnterpriseId()) 136 .enterpriseId(operatorLoginInfo.getEnterpriseId())
142 .types(List.of(ClientLabelTypeEnum.CLIENT_LABEL_TYPE_AVOID, ClientLabelTypeEnum.CLIENT_LABEL_TYPE_DOCTOR, ClientLabelTypeEnum.CLIENT_LABEL_TYPE_ALLERGENS)) 137 .types(List.of(ClientLabelTypeEnum.CLIENT_LABEL_TYPE_AVOID, ClientLabelTypeEnum.CLIENT_LABEL_TYPE_DOCTOR, ClientLabelTypeEnum.CLIENT_LABEL_TYPE_ALLERGENS))
143 .build()); 138 .build());
144 final var mappingAllergies = allLabels.getResponsesList().stream().filter(l -> allergyCodes.contains(l.getCode())).map(SingleClientLabelRpcResponse::getName).collect(Collectors.toList()); 139 final var mappingAllergies = allLabels.getResponsesList().stream().filter(l -> allergyCodes.contains(l.getCode())).map(SingleClientLabelRpcResponse::getName).collect(Collectors.toList());
145 - 140 + final var dietDoctors = originalHisDoctors.stream().filter(d -> d.getMedicalAdviceType().equals(MedicalAdviceTypeEnum.DIET)).map(HisMedicalAdviceDto::getConnotation).collect(Collectors.toList());
146 - final var dietDoctors = origionalHisDoctors.stream().filter(d -> d.getMedicalAdviceType().equals( 141 + final var doctors = labels.stream().filter(l -> l.getType() == ClientLabelTypeEnum.CLIENT_LABEL_TYPE_DOCTOR).map(SingleClientLabelRpcResponse::getName).collect(Collectors.toList());
147 - MedicalAdviceTypeEnum.DIET)).map(HisMedicalAdviceDto::getConnotation).collect(Collectors.toList());
148 - final var doctors = labels.stream().filter(l -> l.getType() == ClientLabelTypeEnum.CLIENT_LABEL_TYPE_DOCTOR).map(
149 - SingleClientLabelRpcResponse::getName).collect(Collectors.toList());
150 final var customerNotice = CustomerNotice.builder() 142 final var customerNotice = CustomerNotice.builder()
151 .avoids(Stream.of(avoids, mappingAllergies).flatMap(List::stream).collect(Collectors.toList())) 143 .avoids(Stream.of(avoids, mappingAllergies).flatMap(List::stream).collect(Collectors.toList()))
152 .doctors(Stream.of(doctors, dietDoctors).flatMap(List::stream).collect(Collectors.toList())) 144 .doctors(Stream.of(doctors, dietDoctors).flatMap(List::stream).collect(Collectors.toList()))
...@@ -154,13 +146,11 @@ public class OrderServiceImpl implements OrderService { ...@@ -154,13 +146,11 @@ public class OrderServiceImpl implements OrderService {
154 createOrderDto.setCustomerNoticeJson(customerNotice); 146 createOrderDto.setCustomerNoticeJson(customerNotice);
155 createOrderDto.setUpdatedBy(operatorLoginInfo.getId()); 147 createOrderDto.setUpdatedBy(operatorLoginInfo.getId());
156 createOrderDto.setUpdateSource(OrderSourceEnum.STALL.getNumber()); 148 createOrderDto.setUpdateSource(OrderSourceEnum.STALL.getNumber());
157 - List<CreateOrderDetailDto> orderDetailDtoList = new ArrayList<>(); 149 + final var orderDetailDtoList = new ArrayList<CreateOrderDetailDto>();
158 final var menuDetails = menuServiceRpcClient.queryMenuDetailsByMenuId(menu.getEnterpriseId(), operatorCreateOrderDto.getMenuId()).getResponsesList(); 150 final var menuDetails = menuServiceRpcClient.queryMenuDetailsByMenuId(menu.getEnterpriseId(), operatorCreateOrderDto.getMenuId()).getResponsesList();
159 - final var skuIds = menuDetails.stream() 151 + final var skuIds = menuDetails.stream().map(SingleMenuDetailRpcResponse::getSkuId).collect(Collectors.toList());
160 - .map(SingleMenuDetailRpcResponse::getSkuId)
161 - .collect(Collectors.toList());
162 final var rpcSkus = skuServiceRpcClient.getDishSkusByIds(skuIds).getResponseList(); 152 final var rpcSkus = skuServiceRpcClient.getDishSkusByIds(skuIds).getResponseList();
163 - Integer totalSkuCount = 0; 153 + int totalSkuCount = 0;
164 for (OperatorCreateOrderDetailDto orderDetail : operatorCreateOrderDto.getOrderDetailDtos()) { 154 for (OperatorCreateOrderDetailDto orderDetail : operatorCreateOrderDto.getOrderDetailDtos()) {
165 totalSkuCount += orderDetail.getCount(); 155 totalSkuCount += orderDetail.getCount();
166 final var optionalTargetMenuDetail = menuDetails.stream().filter(detail -> detail.getId() == orderDetail.getMenuDetailId()).findFirst(); 156 final var optionalTargetMenuDetail = menuDetails.stream().filter(detail -> detail.getId() == orderDetail.getMenuDetailId()).findFirst();
...@@ -175,8 +165,7 @@ public class OrderServiceImpl implements OrderService { ...@@ -175,8 +165,7 @@ public class OrderServiceImpl implements OrderService {
175 final var skuAvoids = optionalSku.get().getAvoidsList().stream().map(SingleResponse::getName).collect(Collectors.toList()); 165 final var skuAvoids = optionalSku.get().getAvoidsList().stream().map(SingleResponse::getName).collect(Collectors.toList());
176 final var tastes = optionalSku.get().getTastesList().stream().map(SingleResponse::getName).collect(Collectors.toList()); 166 final var tastes = optionalSku.get().getTastesList().stream().map(SingleResponse::getName).collect(Collectors.toList());
177 final var efficacies = optionalSku.get().getEfficaciesList().stream().map(SingleResponse::getName).collect(Collectors.toList()); 167 final var efficacies = optionalSku.get().getEfficaciesList().stream().map(SingleResponse::getName).collect(Collectors.toList());
178 - final var allergies = optionalSku.get().getAllergiesList().stream().map( 168 + final var allergies = optionalSku.get().getAllergiesList().stream().map(SingleSpecialResponse::getName).collect(Collectors.toList());
179 - SingleSpecialResponse::getName).collect(Collectors.toList());
180 final var skuDoctors = optionalSku.get().getDoctorsList().stream().map(SingleSpecialResponse::getName).collect(Collectors.toList()); 169 final var skuDoctors = optionalSku.get().getDoctorsList().stream().map(SingleSpecialResponse::getName).collect(Collectors.toList());
181 final var mealDetail = MealDetailDto 170 final var mealDetail = MealDetailDto
182 .builder() 171 .builder()
...@@ -207,7 +196,6 @@ public class OrderServiceImpl implements OrderService { ...@@ -207,7 +196,6 @@ public class OrderServiceImpl implements OrderService {
207 } 196 }
208 createOrderDto.setOrderDetailDtos(orderDetailDtoList); 197 createOrderDto.setOrderDetailDtos(orderDetailDtoList);
209 createOrderDto.setTotalNum(totalSkuCount); 198 createOrderDto.setTotalNum(totalSkuCount);
210 - // createOrderDto.setPayPrice();
211 return orderServiceRpcClient.createOrder(createOrderDto); 199 return orderServiceRpcClient.createOrder(createOrderDto);
212 } 200 }
213 201
......
...@@ -81,6 +81,15 @@ enum CloseTimeType { ...@@ -81,6 +81,15 @@ enum CloseTimeType {
81 RESERVATION = 1; 81 RESERVATION = 1;
82 } 82 }
83 83
84 +enum OnlinePayEnum {
85 + UNKNOWN = 0;
86 + ONLINE = 1; //在线
87 + OFFLINE = 2; //线下
88 + LEAVE_HOSPITAL = 3;//出院
89 + EMPLOYEE_CARD = 4; //员工卡
90 + PAPER_VERIFICATION = 5; //纸质核销
91 +}
92 +
84 enum ServeStatusEnum { 93 enum ServeStatusEnum {
85 UNKNOWN_SERVE_STATUS = 0; 94 UNKNOWN_SERVE_STATUS = 0;
86 SERVE_NOT_START = 1; 95 SERVE_NOT_START = 1;
...@@ -106,7 +115,7 @@ message SingleClientCustomerOrderRpcResponse { ...@@ -106,7 +115,7 @@ message SingleClientCustomerOrderRpcResponse {
106 CloseTimeType closeTimeType = 10; 115 CloseTimeType closeTimeType = 10;
107 int32 totalNum = 11; 116 int32 totalNum = 11;
108 int32 payPrice = 12; 117 int32 payPrice = 12;
109 - bool onlinePay = 13; 118 + OnlinePayEnum onlinePay = 13;
110 int64 payTime = 14; 119 int64 payTime = 14;
111 PayStatusEnum payStatus = 15; 120 PayStatusEnum payStatus = 15;
112 string errorMsg = 16; 121 string errorMsg = 16;
...@@ -205,7 +214,7 @@ message QueryClientCustomerOrdersByConditionRpcRequest { ...@@ -205,7 +214,7 @@ message QueryClientCustomerOrdersByConditionRpcRequest {
205 bool shouldFilterCloseTimeType = 16; 214 bool shouldFilterCloseTimeType = 16;
206 CloseTimeType closeTimeType = 17; 215 CloseTimeType closeTimeType = 17;
207 bool shouldFilterOnlinePay = 18; 216 bool shouldFilterOnlinePay = 18;
208 - bool onlinePay = 19; 217 + OnlinePayEnum onlinePay = 19;
209 bool shouldFilterPayTimeStart = 20; 218 bool shouldFilterPayTimeStart = 20;
210 int64 payTimeStart = 21; 219 int64 payTimeStart = 21;
211 bool shouldFilterPayTimeEnd = 22; 220 bool shouldFilterPayTimeEnd = 22;
...@@ -254,7 +263,7 @@ message ClientCustomerOrderCreation{ ...@@ -254,7 +263,7 @@ message ClientCustomerOrderCreation{
254 bool shouldCreatePayPrice = 12; 263 bool shouldCreatePayPrice = 12;
255 int32 payPrice = 13; 264 int32 payPrice = 13;
256 bool shouldCreateOnlinePay = 14; 265 bool shouldCreateOnlinePay = 14;
257 - bool onlinePay = 15; 266 + OnlinePayEnum onlinePay = 15;
258 bool shouldCreatePayTime = 16; 267 bool shouldCreatePayTime = 16;
259 int64 payTime = 17; 268 int64 payTime = 17;
260 bool shouldCreatePayStatus = 18; 269 bool shouldCreatePayStatus = 18;
...@@ -330,7 +339,7 @@ message ClientCustomerOrderModification { ...@@ -330,7 +339,7 @@ message ClientCustomerOrderModification {
330 bool shouldUpdatePayPrice = 20; 339 bool shouldUpdatePayPrice = 20;
331 int32 payPrice = 21; 340 int32 payPrice = 21;
332 bool shouldUpdateOnlinePay = 22; 341 bool shouldUpdateOnlinePay = 22;
333 - bool onlinePay = 23; 342 + OnlinePayEnum onlinePay = 23;
334 bool shouldUpdatePayTime = 24; 343 bool shouldUpdatePayTime = 24;
335 int64 payTime = 25; 344 int64 payTime = 25;
336 bool shouldUpdatePayStatus = 26; 345 bool shouldUpdatePayStatus = 26;
......
...@@ -115,6 +115,7 @@ enum ModeOfPaymentEnum { ...@@ -115,6 +115,7 @@ enum ModeOfPaymentEnum {
115 UNKNOWN = 0; 115 UNKNOWN = 0;
116 ONLINE = 1; //在线 116 ONLINE = 1; //在线
117 OFFLINE = 2; //线下 117 OFFLINE = 2; //线下
118 + LEAVE_HOSPITAL = 3;//出院
118 } 119 }
119 120
120 enum DishTypeEnum { 121 enum DishTypeEnum {
......