wangyingyang

fix

1 +package com.infoloop.tianting.model.dto;
2 +
3 +import com.infoloop.tianting.clientcustomerorderservice.OrderOperationType;
4 +import com.infoloop.tianting.clientcustomerorderservice.OrderSourceEnum;
5 +import com.infoloop.tianting.model.dto.MenuDbDTO.DishRuleJson;
6 +import com.infoloop.tianting.model.dto.MenuDbDTO.OrderRuleJson;
7 +import io.swagger.annotations.ApiModel;
8 +import java.util.List;
9 +import lombok.Builder;
10 +import lombok.Data;
11 +import lombok.ToString;
12 +
13 +@Data
14 +@ApiModel(description = "操作记录DTO")
15 +public class OperationDTO {
16 +
17 + @Data
18 + @Builder
19 + @ToString
20 + @ApiModel(description = "单个操作记录Dto")
21 + public static class SingleOperationDto {
22 +
23 + private Integer orderId;
24 + OrderOperationType type;
25 + private boolean shouldCreateOriginalOrderJson;
26 + private String originalOrderJson;
27 + private boolean shouldCreateAdjustOrderJson;
28 + private String adjustOrderJson;
29 + private boolean shouldCreateOriginalOrderDetailJson;
30 + private String originalOrderDetailJson;
31 + private boolean shouldCreateAdjustOrderDetailJson;
32 + private String adjustOrderDetailJson;
33 + }
34 +
35 + @Data
36 + @Builder
37 + @ToString
38 + @ApiModel(description = "批量操作记录Dto")
39 + public static class BatchOperationDto {
40 + private List<SingleOperationDto> creations;
41 + private Integer enterpriseId;
42 + private Integer createdBy;
43 + private String operator;
44 + private OrderSourceEnum creationSource;
45 + }
46 +
47 +}
...@@ -576,7 +576,10 @@ public class OrderDbDTO { ...@@ -576,7 +576,10 @@ public class OrderDbDTO {
576 @ToString 576 @ToString
577 @ApiModel(description = "检查是否已预定过某一餐单") 577 @ApiModel(description = "检查是否已预定过某一餐单")
578 public static class getMenuOrderCountDto { 578 public static class getMenuOrderCountDto {
579 - private Integer customerId; 579 + @Builder.Default
580 + private String openId = "";
581 + @Builder.Default
582 + private Integer customerId = 0;
580 private Integer menuId; 583 private Integer menuId;
581 private LocalDateTime mealTime; 584 private LocalDateTime mealTime;
582 } 585 }
......
...@@ -102,7 +102,8 @@ public class OrderServiceImpl implements OrderService { ...@@ -102,7 +102,8 @@ public class OrderServiceImpl implements OrderService {
102 createOrderDto.setCustomerId(operatorCreateOrderDto.getCustomerId()); 102 createOrderDto.setCustomerId(operatorCreateOrderDto.getCustomerId());
103 createOrderDto.setStallId(operatorCreateOrderDto.getStallId()); 103 createOrderDto.setStallId(operatorCreateOrderDto.getStallId());
104 createOrderDto.setMenuId(operatorCreateOrderDto.getMenuId()); 104 createOrderDto.setMenuId(operatorCreateOrderDto.getMenuId());
105 - createOrderDto.setMealTime(operatorCreateOrderDto.getMealTime()); 105 + final var mealTime = operatorCreateOrderDto.getMealTime().toLocalDate().atStartOfDay();
106 + createOrderDto.setMealTime(mealTime);
106 createOrderDto.setRemark(operatorCreateOrderDto.getRemark()); 107 createOrderDto.setRemark(operatorCreateOrderDto.getRemark());
107 createOrderDto.setCreatedBy(operatorLoginInfo.getId()); 108 createOrderDto.setCreatedBy(operatorLoginInfo.getId());
108 createOrderDto.setClientId(operator.getClientId()); 109 createOrderDto.setClientId(operator.getClientId());
...@@ -251,8 +252,10 @@ public class OrderServiceImpl implements OrderService { ...@@ -251,8 +252,10 @@ public class OrderServiceImpl implements OrderService {
251 .mealTimeEnd(mealTimeEnd) 252 .mealTimeEnd(mealTimeEnd)
252 .shouldFilterMenuId(true) 253 .shouldFilterMenuId(true)
253 .menuId(checkIfOrdered.getMenuId()) 254 .menuId(checkIfOrdered.getMenuId())
254 - .shouldFilterCustomerIds(true) 255 + .shouldFilterCustomerIds(checkIfOrdered.getCustomerId().equals(0)? false: true)
255 .customerIds(List.of(checkIfOrdered.getCustomerId())) 256 .customerIds(List.of(checkIfOrdered.getCustomerId()))
257 + .shouldFilterOpenId(checkIfOrdered.getOpenId().isEmpty()? false: true)
258 + .openId(checkIfOrdered.getOpenId())
256 .build(); 259 .build();
257 final var orderList = orderServiceRpcClient.getOrdersByCondition(queryOrderDto); 260 final var orderList = orderServiceRpcClient.getOrdersByCondition(queryOrderDto);
258 return orderList.size(); 261 return orderList.size();
......
1 package com.infoloop.tianting.service.impl; 1 package com.infoloop.tianting.service.impl;
2 2
3 import com.infoloop.tianting.clientcustomerorderservice.OrderStatusEnum; 3 import com.infoloop.tianting.clientcustomerorderservice.OrderStatusEnum;
4 +import com.infoloop.tianting.clientcustomerorderservice.ServeStatusEnum;
4 import com.infoloop.tianting.clientcustomerorderservice.SingleClientCustomerOrderDetailRpcResponse; 5 import com.infoloop.tianting.clientcustomerorderservice.SingleClientCustomerOrderDetailRpcResponse;
5 import com.infoloop.tianting.clientcustomerorderservice.SingleClientCustomerOrderRpcResponse; 6 import com.infoloop.tianting.clientcustomerorderservice.SingleClientCustomerOrderRpcResponse;
7 +import com.infoloop.tianting.clientinventoryservice.SingleClientRpcResponse;
6 import com.infoloop.tianting.context.LoginContextHolder; 8 import com.infoloop.tianting.context.LoginContextHolder;
7 import com.infoloop.tianting.enums.SettlementDimensionEnum; 9 import com.infoloop.tianting.enums.SettlementDimensionEnum;
8 import com.infoloop.tianting.exception.ClientEndExceptions.BusinessException; 10 import com.infoloop.tianting.exception.ClientEndExceptions.BusinessException;
...@@ -70,8 +72,8 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -70,8 +72,8 @@ public class SettlementServiceImpl implements SettlementService {
70 72
71 public ByteArrayOutputStream generateOrderSettlementExcelBySku(SettlementRequestDto settlementRequest) { 73 public ByteArrayOutputStream generateOrderSettlementExcelBySku(SettlementRequestDto settlementRequest) {
72 74
73 - final var startDate = settlementRequest.getTimeStart().toLocalDate().atStartOfDay(); 75 + final var startDate = settlementRequest.getTimeStart().plusHours(8).toLocalDate().atStartOfDay();
74 - final var endDate = settlementRequest.getTimeEnd().toLocalDate().plusDays(1).atStartOfDay(); 76 + final var endDate = settlementRequest.getTimeEnd().plusHours(8).toLocalDate().plusDays(1).atStartOfDay();
75 final var operatorLoginInfo = LoginContextHolder.getLoginInfo(); 77 final var operatorLoginInfo = LoginContextHolder.getLoginInfo();
76 final int enterpriseId = LoginContextHolder.hasLogin() ? operatorLoginInfo.getEnterpriseId() : settlementRequest.getEnterpriseId(); 78 final int enterpriseId = LoginContextHolder.hasLogin() ? operatorLoginInfo.getEnterpriseId() : settlementRequest.getEnterpriseId();
77 final var queryOrderDto = QueryOrderByConditionDto.builder() 79 final var queryOrderDto = QueryOrderByConditionDto.builder()
...@@ -90,6 +92,7 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -90,6 +92,7 @@ public class SettlementServiceImpl implements SettlementService {
90 .collect(Collectors.toList()); 92 .collect(Collectors.toList());
91 final var orderDetailList = orderServiceRpcClient.getOrderDetailsByOrderIds(orderIds); 93 final var orderDetailList = orderServiceRpcClient.getOrderDetailsByOrderIds(orderIds);
92 List<Integer> skuIds = orderDetailList.stream() 94 List<Integer> skuIds = orderDetailList.stream()
95 + .filter(d -> !d.getServeStatus().equals(ServeStatusEnum.SERVE_REJECT))
93 .map(SingleClientCustomerOrderDetailRpcResponse::getSkuId) 96 .map(SingleClientCustomerOrderDetailRpcResponse::getSkuId)
94 .distinct() 97 .distinct()
95 .collect(Collectors.toList()); 98 .collect(Collectors.toList());
...@@ -153,7 +156,7 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -153,7 +156,7 @@ public class SettlementServiceImpl implements SettlementService {
153 156
154 //找出当天所有已点的菜品明细 157 //找出当天所有已点的菜品明细
155 final var curOrderDetails = orderDetailList.stream() 158 final var curOrderDetails = orderDetailList.stream()
156 - .filter(d -> curOrderIds.contains(d.getOrderId())) 159 + .filter(d -> curOrderIds.contains(d.getOrderId()) && !d.getServeStatus().equals(ServeStatusEnum.SERVE_REJECT))
157 .collect(Collectors.toList()); 160 .collect(Collectors.toList());
158 161
159 for (SingleMenuDetailRpcResponse m: curMenuDetails) { 162 for (SingleMenuDetailRpcResponse m: curMenuDetails) {
...@@ -198,14 +201,20 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -198,14 +201,20 @@ public class SettlementServiceImpl implements SettlementService {
198 201
199 } 202 }
200 } 203 }
201 - final var client = inventoryServiceRpcClient.getClientById(enterpriseId, 204 +// final var client = inventoryServiceRpcClient.getClientById(enterpriseId,
202 - settlementRequest.getClientId()).getClient(); 205 +// settlementRequest.getClientId()).getClient();
206 + final var stalls = inventoryServiceRpcClient.getStallsByIds(operatorLoginInfo.getEnterpriseId(), settlementRequest.getStallIds()).getClientsList();
207 + final var stallNames = stalls.stream()
208 + .filter(s -> settlementRequest.getStallIds().contains(s.getId()))
209 + .map(SingleClientRpcResponse::getName).collect(Collectors.toList());
210 + String joinedString = String.join(" ", stallNames);
203 final var settlementDataDto = SettlementDataDto.builder() 211 final var settlementDataDto = SettlementDataDto.builder()
204 .classifyOrders(classifyOrders) 212 .classifyOrders(classifyOrders)
205 - .client(client.getName()) 213 + .client(joinedString)
206 - .startTime(DateUtil.formatDate(settlementRequest.getTimeStart(), DateUtil.YYYY_MM_DD)) 214 + .startTime(DateUtil.formatDate(settlementRequest.getTimeStart().plusHours(8), DateUtil.YYYY_MM_DD))
207 - .endTime(DateUtil.formatDate(settlementRequest.getTimeEnd(), DateUtil.YYYY_MM_DD)) 215 + .endTime(DateUtil.formatDate(settlementRequest.getTimeEnd().plusHours(8), DateUtil.YYYY_MM_DD))
208 .build(); 216 .build();
217 +
209 try { 218 try {
210 final var bytes = writeToExcelBySku(settlementDataDto); 219 final var bytes = writeToExcelBySku(settlementDataDto);
211 return bytes; 220 return bytes;
...@@ -319,8 +328,8 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -319,8 +328,8 @@ public class SettlementServiceImpl implements SettlementService {
319 328
320 public ByteArrayOutputStream generateOrderSettlementExcelByMeal(SettlementRequestDto settlementRequest) { 329 public ByteArrayOutputStream generateOrderSettlementExcelByMeal(SettlementRequestDto settlementRequest) {
321 330
322 - final var startDate = settlementRequest.getTimeStart().toLocalDate().atStartOfDay(); 331 + final var startDate = settlementRequest.getTimeStart().plusHours(8).toLocalDate().atStartOfDay();
323 - final var endDate = settlementRequest.getTimeEnd().toLocalDate().plusDays(1).atStartOfDay(); 332 + final var endDate = settlementRequest.getTimeEnd().plusHours(8).toLocalDate().plusDays(1).atStartOfDay();
324 final var operatorLoginInfo = LoginContextHolder.getLoginInfo(); 333 final var operatorLoginInfo = LoginContextHolder.getLoginInfo();
325 final var queryOrderDto = QueryOrderByConditionDto.builder() 334 final var queryOrderDto = QueryOrderByConditionDto.builder()
326 .enterpriseId(LoginContextHolder.hasLogin() ? operatorLoginInfo.getEnterpriseId() : settlementRequest.getEnterpriseId()) 335 .enterpriseId(LoginContextHolder.hasLogin() ? operatorLoginInfo.getEnterpriseId() : settlementRequest.getEnterpriseId())
...@@ -424,8 +433,8 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -424,8 +433,8 @@ public class SettlementServiceImpl implements SettlementService {
424 final var settlementDataByMealDto = SettlementDataByMealDto.builder() 433 final var settlementDataByMealDto = SettlementDataByMealDto.builder()
425 .classifyOrders(classifyOrders) 434 .classifyOrders(classifyOrders)
426 .client(client.getName()) 435 .client(client.getName())
427 - .startTime(settlementRequest.getTimeStart()) 436 + .startTime(settlementRequest.getTimeStart().plusHours(8))
428 - .endTime(settlementRequest.getTimeEnd()) 437 + .endTime(settlementRequest.getTimeEnd().plusHours(8))
429 .build(); 438 .build();
430 try { 439 try {
431 final var bytes = writeToExcelByMeal(settlementDataByMealDto); 440 final var bytes = writeToExcelByMeal(settlementDataByMealDto);
......