| | |
| | | } |
| | | wrapper.eq(Objects.nonNull(query.getUid()), XpOrder::getAppUserId, query.getUid()); |
| | | wrapper.orderByDesc(XpOrder::getCreateTime); |
| | | if(null != query.getActivityId()){ |
| | | wrapper.eq(XpOrder::getActivityId, query.getActivityId()); |
| | | } |
| | | |
| | | List<XpOrder> list = this.list(wrapper); |
| | | BigDecimal orderMoney = list.stream().map(XpOrder::getOrderMoney).collect(Collectors.toList()).stream().reduce(BigDecimal::add).orElse(BigDecimal.ZERO); |
| | | BigDecimal couponMoney = list.stream().map(XpOrder::getCouponMoney).collect(Collectors.toList()).stream().reduce(BigDecimal::add).orElse(BigDecimal.ZERO); |
| | | |
| | | // 2. 分页查询 |
| | | Page<XpOrder> page = new Page<>(query.getPageNum(), query.getPageSize()); |
| | |
| | | |
| | | // 5. 组装 VO |
| | | List<XpOrderPageVO> voList = pageResult.getRecords().stream() |
| | | .map(order -> convertToPageVO(order, userInfoMap, vehicleMap, fleetMap)) |
| | | .map(order -> convertToPageVO(order, userInfoMap, vehicleMap, fleetMap, orderMoney, couponMoney)) |
| | | .collect(Collectors.toList()); |
| | | |
| | | // 6. 返回分页结果 |
| | |
| | | private XpOrderPageVO convertToPageVO(XpOrder order, |
| | | Map<String, UcUserInfo> userInfoMap, |
| | | Map<Long, XpVehicle> vehicleMap, |
| | | Map<Long, XpFleet> fleetMap) { |
| | | Map<Long, XpFleet> fleetMap, |
| | | BigDecimal orderMoney, |
| | | BigDecimal couponMoney) { |
| | | XpOrderPageVO vo = new XpOrderPageVO(); |
| | | vo.setId(order.getId()); |
| | | vo.setOrderNumber(order.getOrderNumber()); |
| | |
| | | vo.setStatus(order.getStatus()); |
| | | vo.setStartPointName(order.getStartPointName()); |
| | | vo.setEndPointName(order.getEndPointName()); |
| | | vo.setOrderTotalAmount(orderMoney); |
| | | vo.setDiscountTotalAmount(couponMoney); |
| | | |
| | | // 用户信息 |
| | | if (Objects.nonNull(order.getAppUserId()) && userInfoMap != null && userInfoMap.containsKey(order.getAppUserId().toString())) { |