| | |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.core.enums.OrderStatusEnum; |
| | | import com.xiaopeng.common.core.exception.ServiceException; |
| | | import com.xiaopeng.common.core.utils.SensitiveDataCryptoUtil; |
| | | import com.xiaopeng.common.core.utils.StringUtils; |
| | | import com.xiaopeng.common.core.utils.WebUtils; |
| | | import com.xiaopeng.common.core.web.page.PageInfo; |
| | |
| | | } |
| | | return R.ok(0L); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 查询是否有未支付订单 |
| | | * 返回0 可以下单,非0为未支付订单ID |
| | | */ |
| | | @PostMapping("/logan/inner/order/has-unpay-order") |
| | | @ApiOperation(value = "查询是否有未支付订单", tags = {"内部接口"}) |
| | | public R<Long> hasUnPayOrder(String uid) { |
| | | XpOrder order = xpOrderService.getOne(new LambdaQueryWrapper<XpOrder>() |
| | | .eq(XpOrder::getAppUserId, Long.parseLong(uid)) |
| | | .eq(XpOrder::getStatus, 8) |
| | | .last("LIMIT 1")); |
| | | if (order != null) { |
| | | return R.ok(order.getId()); |
| | | } |
| | | return R.ok(0L); |
| | | } |
| | | |
| | | /** |
| | |
| | | String uid = request.getHeader("XP-Uid"); |
| | | // 查询订单信息 |
| | | XpOrder xpOrder = xpOrderService.getById(dto.getOrderId()); |
| | | // 获取路线规划 |
| | | // RouteVo routeVo = redisService.getCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +dto.getRouteType()); |
| | | |
| | | String key = ""; |
| | | //接驾情况,获取车辆位置到起点的导航 |
| | | if (xpOrder.getStatus() < 5) { |
| | |
| | | Object cacheObject = redisService.getCacheObject(key); |
| | | RouteVo routeVo = JSON.parseObject(cacheObject.toString(), RouteVo.class); |
| | | XpVehicle xpVehicle = xpVehicleClient.queryById(xpOrder.getVehicleId()).getData(); |
| | | // VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(xpVehicle.getVehicleVin())), VehiclePosition.class); |
| | | // routeVo.setDirection(null != vehiclePosition ? vehiclePosition.getCourse() : 90); |
| | | |
| | | Long vehicleId = xpOrder.getVehicleId(); |
| | | XpOrder one = xpOrderService.getOne(new QueryWrapper<XpOrder>().eq("vehicle_id", vehicleId).in("status", Arrays.asList(6, 7)).eq("is_deleted", 0)); |
| | | if(null != one){ |
| | | routeVo.setEndLongitude(one.getEndLon()); |
| | | routeVo.setEndLatitude(one.getEndLat()); |
| | | } |
| | | |
| | | String vin = SensitiveDataCryptoUtil.decryptIfPossible(xpVehicle.getVehicleVin()); |
| | | VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(vin)), VehiclePosition.class); |
| | | routeVo.setDirection(null != vehiclePosition ? vehiclePosition.getCourse() : 90); |
| | | routeVo.setEndLongitude(xpOrder.getEndLon()); |
| | | routeVo.setEndLatitude(xpOrder.getEndLat()); |
| | | return R.ok(routeVo); |
| | | } |
| | | |
| | |
| | | routeVo.setPolyline(polyline); |
| | | XpOrder xpOrder = xpOrderService.getById(orderId); |
| | | XpVehicle xpVehicle = xpVehicleClient.queryById(xpOrder.getVehicleId()).getData(); |
| | | VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(xpVehicle.getVehicleVin())), VehiclePosition.class); |
| | | String vin = SensitiveDataCryptoUtil.decryptIfPossible(xpVehicle.getVehicleVin()); |
| | | VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(vin)), VehiclePosition.class); |
| | | routeVo.setDirection(null != vehiclePosition ? vehiclePosition.getCourse() : 0); |
| | | return R.ok(routeVo); |
| | | } |
| | |
| | | return R.ok(); |
| | | } |
| | | XpVehicle xpVehicle = xpVehicleClient.queryById(xpOrder.getVehicleId()).getData(); |
| | | String vin = SensitiveDataCryptoUtil.decryptIfPossible(xpVehicle.getVehicleVin()); |
| | | GetBleInfoVo getBleInfoVo = new GetBleInfoVo(); |
| | | getBleInfoVo.setVin(xpVehicle.getVehicleVin()); |
| | | getBleInfoVo.setVin(vin); |
| | | BleInfoResponseDto bleInfoResponseDto = vehicleMacClient.getBleInfo(uid, getBleInfoVo); |
| | | if (null == bleInfoResponseDto || 200 != bleInfoResponseDto.getCode()) { |
| | | throw new ServiceException("获取蓝牙信息失败"); |
| | |
| | | @GetMapping("/api/v1/mini-program/order/queryOrderStatusFromOrderId") |
| | | @XpClientCheck(checkToken = false, checkOtpToken = true) |
| | | public R<OrderStatusFromOrderIdVo> queryOrderStatusFromOrderId(Long orderId) { |
| | | |
| | | XpOrder order = xpOrderService.getById(orderId); |
| | | |
| | | OrderStatusFromOrderIdVo orderStatusFromOrderIdVo = new OrderStatusFromOrderIdVo(); |
| | | orderStatusFromOrderIdVo.setOrderId(order.getId()); |
| | | orderStatusFromOrderIdVo.setStatus(order.getStatus()); |
| | | return R.ok( xpOrderService.queryOrderStatusFromOrderId(orderId)); |
| | | return R.ok(orderStatusFromOrderIdVo); |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 查询是否有未支付订单 |
| | | */ |
| | | @PostMapping("/logan/inner/order/has-unpay-order") |
| | | public R<Long> hasUnPayOrder(@RequestParam String uid){ |
| | | long count = xpOrderService.count(new QueryWrapper<XpOrder>().eq("app_user_id", Long.valueOf(uid)) |
| | | .eq("status", 8).eq("is_deleted", 0)); |
| | | return R.ok(count); |
| | | } |
| | | } |