| | |
| | | import com.xiaopeng.api.model.vehicleConvoy.XpFleet; |
| | | import com.xiaopeng.api.model.vehicleConvoy.XpVehicle; |
| | | import com.xiaopeng.api.vo.OrderType; |
| | | import com.xiaopeng.api.vo.account.CalculateDiscountAmountVo; |
| | | import com.xiaopeng.api.vo.account.UserCouponVo; |
| | | import com.xiaopeng.api.vo.automaticPilot.VehiclePosition; |
| | | import com.xiaopeng.api.vo.automaticPilot.protobuf.OrderOperationType; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public R<FareBreakdownVo> fareBreakdown(Long orderId, String uid) { |
| | | XpOrder order = this.getById(orderId); |
| | | public R<FareBreakdownVo> fareBreakdown(com.xiaopeng.order.vo.FareBreakdownVo vo, String uid) { |
| | | XpOrder order = this.getById(vo.getOrderId()); |
| | | //根据新的优惠券计算优惠金额 |
| | | if(null != order.getCouponId()){ |
| | | CalculateDiscountAmountVo discountAmountVo = new CalculateDiscountAmountVo(); |
| | | BigDecimal data = xpAppUserCouponClient.calculateDiscountAmount(discountAmountVo).getData(); |
| | | order.setCouponId(vo.getUserCouponId()); |
| | | order.setCouponMoney(data); |
| | | } |
| | | order.setAppUserId(null); |
| | | FareBreakdownVo res = new FareBreakdownVo(); |
| | | res.setChangeMoneyFlag(order.getChangeMoneyFlag()); |
| | |
| | | List<FareBreakdownDetailVo> duration = new ArrayList<>(); |
| | | List<FareBreakdownDetailVo> longDistance = new ArrayList<>(); |
| | | |
| | | List<XpOrderDetail> xpOrderDetails = xpOrderDetailMapper.selectList(new LambdaQueryWrapper<XpOrderDetail>().eq(XpOrderDetail::getOrderId, orderId)); |
| | | List<XpOrderDetail> xpOrderDetails = xpOrderDetailMapper.selectList(new LambdaQueryWrapper<XpOrderDetail>().eq(XpOrderDetail::getOrderId, vo.getOrderId())); |
| | | for (XpOrderDetail xpOrderDetail : xpOrderDetails) { |
| | | FareBreakdownDetailVo detail = new FareBreakdownDetailVo(); |
| | | detail.setType(xpOrderDetail.getType()); |
| | |
| | | res.setDuration(duration); |
| | | res.setLongDistance(longDistance); |
| | | res.setRedPacketMoney(order.getRedPacketMoney()); |
| | | res.setUserCouponId(order.getCouponId()); |
| | | res.setCouponMoney(order.getCouponMoney()); |
| | | res.setOrderMoney(order.getOrderMoney()); |
| | | res.setKilometer(order.getMileageKilometers() == null ? BigDecimal.ZERO : BigDecimal.valueOf(order.getMileageKilometers()).multiply(BigDecimal.valueOf(1000))); |
| | |
| | | return R.ok(res); |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public R payment(XpOrderPayDto dto, String uid) { |
| | | // mvp版本不做支付 使用优惠券抵扣为0元订单处理 处理订单状态即可 |