| | |
| | | import com.xiaopeng.api.model.operation.XpGeoQueryEntity; |
| | | import com.xiaopeng.api.model.operation.XpFeedbackType; |
| | | import com.xiaopeng.api.model.operation.XpPoint; |
| | | import com.xiaopeng.api.model.operation.XpPricing; |
| | | import com.xiaopeng.api.model.order.XpOrder; |
| | | import com.xiaopeng.api.model.order.XpOrderCancel; |
| | | import com.xiaopeng.api.model.order.XpOrderEvaluate; |
| | |
| | | |
| | | userVehicleClient.cancelTaxiPassenger(cancelTaxiPassengerVo); |
| | | } |
| | | // 根据订单所属开通城市id 查询定价 |
| | | R<XpPricing> pricingByCityId = xpPricingClient.getPricingByCityId(order.getCityId()); |
| | | XpPricing pricing = pricingByCityId.getData(); |
| | | if (pricing == null) { |
| | | throw new ServiceException("当前城市未配置定价规则", I18nKeyConstant.ORDER_PRICING_NOT_EXISTS); |
| | | } |
| | | // 费用 |
| | | // 查询订单轨迹 |
| | | List<OrderTrajectory> trajectories = mongoTemplate.find( |
| | |
| | | ); |
| | | List<TaxiPricingDemoService.GpsPoint> gpsPoints = new ArrayList<>(); |
| | | for (OrderTrajectory trajectory : trajectories) { |
| | | TaxiPricingDemoService.GpsPoint point = new TaxiPricingDemoService.GpsPoint(trajectory.getDistance(),trajectory.getLocatetime() ); |
| | | TaxiPricingDemoService.GpsPoint point = new TaxiPricingDemoService.GpsPoint(trajectory.getDistance(), trajectory.getLocatetime()); |
| | | gpsPoints.add(point); |
| | | } |
| | | TaxiPricingDemoService.PricingConfig config = new TaxiPricingDemoService.PricingConfig(); |
| | |
| | | config.night = new TaxiPricingDemoService.PricingRule("夜间行驶", "14:47", "14:48", 18.0, 3.0, 5.0, 3.5, 1.0); |
| | | config.holiday = new TaxiPricingDemoService.PricingRule("节假日", "18:47", "18:48", 18.0, 3.0, 5.0, 4, 2.0); |
| | | config.normals.add(new TaxiPricingDemoService.PricingRule("普通时段", "14:46", "14:47", 10.0, 3.0, 5.0, 2.4, 0.5)); |
| | | JSONArray objects = JSONArray.parseArray(pricing.getStartingFareJson()); |
| | | config.normals.add(new TaxiPricingDemoService.PricingRule("普通时段", "14:48", "17:59", 10.0, 3.0, 5.0, 2.4, 0.5)); |
| | | |
| | | // --- 远途加价区间配置 (关键修改) --- |
| | |
| | | System.err.println("应付总额: " + totalAmount + " 元"); |
| | | |
| | | // // 计算实际价格 |
| | | // // 根据订单所属开通城市id 查询定价 |
| | | // R<XpPricing> pricingByCityId = xpPricingClient.getPricingByCityId(order.getCityId()); |
| | | // XpPricing pricing = pricingByCityId.getData(); |
| | | // if (pricing == null) { |
| | | // throw new ServiceException("当前城市未配置定价规则", I18nKeyConstant.ORDER_PRICING_NOT_EXISTS); |
| | | // } |
| | | |
| | | // // 查询订单轨迹 |
| | | // List<OrderTrajectory> trajectories = mongoTemplate.find( |
| | | // new Query(Criteria.where("orderId").is(orderId)) |
| | |
| | | order.setAcceptanceTime(LocalDateTime.now()); |
| | | |
| | | R<XpVehicle> byVehicleVin = xpVehicleClient.findByVehicleVin(dto.getXpVehicleVin()); |
| | | if (byVehicleVin.getCode()==200){ |
| | | if (byVehicleVin.getCode() == 200) { |
| | | order.setVehicleId(byVehicleVin.getData().getId()); |
| | | } |
| | | order.setStatus(2); |