当前位置: 首页 > news >正文

潍坊市做网站岳阳网站建设渠道

潍坊市做网站,岳阳网站建设渠道,网上备案查询,一键wordpress 伪静态加载当前订单 需求 无论是司机端#xff0c;还是乘客端#xff0c;遇到页面切换#xff0c;重新登录小程序等#xff0c;只要回到首页面#xff0c;查看当前是否有正在执行订单#xff0c;如果有跳转到当前订单执行页面 之前这个接口已经开发#xff0c;为了测试…加载当前订单 需求 无论是司机端还是乘客端遇到页面切换重新登录小程序等只要回到首页面查看当前是否有正在执行订单如果有跳转到当前订单执行页面 之前这个接口已经开发为了测试临时跳过去默认没有当前订单的 乘客端查找当前订单 Operation(summary 乘客端查找当前订单) GetMapping(/searchCustomerCurrentOrder/{customerId}) public ResultCurrentOrderInfoVo searchCustomerCurrentOrder(PathVariable Long customerId) {return Result.ok(orderInfoService.searchCustomerCurrentOrder(customerId)); }//乘客端查找当前订单 Override public CurrentOrderInfoVo searchCustomerCurrentOrder(Long customerId) {//封装条件//乘客idLambdaQueryWrapperOrderInfo wrapper new LambdaQueryWrapper();wrapper.eq(OrderInfo::getCustomerId,customerId);//各种状态// 这些状态都表明该订单在执行中所以要所有状态都查询Integer[] statusArray {OrderStatus.ACCEPTED.getStatus(),OrderStatus.DRIVER_ARRIVED.getStatus(),OrderStatus.UPDATE_CART_INFO.getStatus(),OrderStatus.START_SERVICE.getStatus(),OrderStatus.END_SERVICE.getStatus(),OrderStatus.UNPAID.getStatus()};wrapper.in(OrderInfo::getStatus,statusArray);//获取最新一条记录wrapper.orderByDesc(OrderInfo::getId);wrapper.last( limit 1);//调用方法OrderInfo orderInfo orderInfoMapper.selectOne(wrapper);//封装到CurrentOrderInfoVoCurrentOrderInfoVo currentOrderInfoVo new CurrentOrderInfoVo();if(orderInfo ! null) {currentOrderInfoVo.setOrderId(orderInfo.getId());currentOrderInfoVo.setStatus(orderInfo.getStatus());currentOrderInfoVo.setIsHasCurrentOrder(true);} else {currentOrderInfoVo.setIsHasCurrentOrder(false);}return currentOrderInfoVo; }/*** 乘客端查找当前订单* param customerId* return*/ GetMapping(/order/info/searchCustomerCurrentOrder/{customerId}) ResultCurrentOrderInfoVo searchCustomerCurrentOrder(PathVariable(customerId) Long customerId);Operation(summary 乘客端查找当前订单) GuiguLogin GetMapping(/searchCustomerCurrentOrder) public ResultCurrentOrderInfoVo searchCustomerCurrentOrder() {Long customerId AuthContextHolder.getUserId();return Result.ok(orderService.searchCustomerCurrentOrder(customerId)); }//乘客查找当前订单 Override public CurrentOrderInfoVo searchCustomerCurrentOrder(Long customerId) {return orderInfoFeignClient.searchCustomerCurrentOrder(customerId).getData(); }司机端查找当前订单 Operation(summary 司机端查找当前订单) GetMapping(/searchDriverCurrentOrder/{driverId}) public ResultCurrentOrderInfoVo searchDriverCurrentOrder(PathVariable Long driverId) {return Result.ok(orderInfoService.searchDriverCurrentOrder(driverId)); }//司机端查找当前订单 Override public CurrentOrderInfoVo searchDriverCurrentOrder(Long driverId) {//封装条件LambdaQueryWrapperOrderInfo wrapper new LambdaQueryWrapper();wrapper.eq(OrderInfo::getDriverId,driverId);Integer[] statusArray {OrderStatus.ACCEPTED.getStatus(),OrderStatus.DRIVER_ARRIVED.getStatus(),OrderStatus.UPDATE_CART_INFO.getStatus(),OrderStatus.START_SERVICE.getStatus(),OrderStatus.END_SERVICE.getStatus()};wrapper.in(OrderInfo::getStatus,statusArray);wrapper.orderByDesc(OrderInfo::getId);wrapper.last( limit 1);OrderInfo orderInfo orderInfoMapper.selectOne(wrapper);//封装到voCurrentOrderInfoVo currentOrderInfoVo new CurrentOrderInfoVo();if(null ! orderInfo) {currentOrderInfoVo.setStatus(orderInfo.getStatus());currentOrderInfoVo.setOrderId(orderInfo.getId());currentOrderInfoVo.setIsHasCurrentOrder(true);} else {currentOrderInfoVo.setIsHasCurrentOrder(false);}return currentOrderInfoVo; }/*** 司机端查找当前订单* param driverId* return*/ GetMapping(/order/info/searchDriverCurrentOrder/{driverId}) ResultCurrentOrderInfoVo searchDriverCurrentOrder(PathVariable(driverId) Long driverId);Operation(summary 司机端查找当前订单) GuiguLogin GetMapping(/searchDriverCurrentOrder) public ResultCurrentOrderInfoVo searchDriverCurrentOrder() {Long driverId AuthContextHolder.getUserId();return Result.ok(orderService.searchDriverCurrentOrder(driverId)); }Override public CurrentOrderInfoVo searchDriverCurrentOrder(Long driverId) {return orderInfoFeignClient.searchDriverCurrentOrder(driverId).getData(); }获取订单信息 进入首页在有执行中订单的情况下我们需要获取订单信息才能知道页面跳转到那里去因此现在把这个接口给实现了。 订单的各个状态获取的订单信息不一样当前我们只是获取订单基本信息后续完善 Operation(summary 根据订单id获取订单信息) GetMapping(/getOrderInfo/{orderId}) public ResultOrderInfo getOrderInfo(PathVariable Long orderId) {return Result.ok(orderInfoService.getById(orderId)); }/*** 远程调用* 根据订单id获取订单信息* param orderId* return*/ GetMapping(/order/info/getOrderInfo/{orderId}) ResultOrderInfo getOrderInfo(PathVariable(orderId) Long orderId);// 乘客端web接口 Operation(summary 获取订单信息) GuiguLogin GetMapping(/getOrderInfo/{orderId}) public ResultOrderInfoVo getOrderInfo(PathVariable Long orderId) {Long customerId AuthContextHolder.getUserId();return Result.ok(orderService.getOrderInfo(orderId, customerId)); }Override public OrderInfoVo getOrderInfo(Long orderId, Long customerId) {OrderInfo orderInfo orderInfoFeignClient.getOrderInfo(orderId).getData();//判断if(orderInfo.getCustomerId() ! customerId) {throw new GuiguException(ResultCodeEnum.ILLEGAL_REQUEST);}OrderInfoVo orderInfoVo new OrderInfoVo();orderInfoVo.setOrderId(orderId);BeanUtils.copyProperties(orderInfo,orderInfoVo);return orderInfoVo; }// 司机端web接口 Operation(summary 获取订单账单详细信息) GuiguLogin GetMapping(/getOrderInfo/{orderId}) public ResultOrderInfoVo getOrderInfo(PathVariable Long orderId) {Long driverId AuthContextHolder.getUserId();return Result.ok(orderService.getOrderInfo(orderId, driverId)); }Override public OrderInfoVo getOrderInfo(Long orderId, Long driverId) {OrderInfo orderInfo orderInfoFeignClient.getOrderInfo(orderId).getData();if(orderInfo.getDriverId() ! driverId) {throw new GuiguException(ResultCodeEnum.ILLEGAL_REQUEST);}OrderInfoVo orderInfoVo new OrderInfoVo();orderInfoVo.setOrderId(orderId);BeanUtils.copyProperties(orderInfo,orderInfoVo);return orderInfoVo; }司乘同显 司机抢单成功后要赶往上车点我们要计算司机赶往上车点的最佳线路司机端与乘客端都要显示司机乘同显这样乘客就能实时看见司机的动向。 司机端司乘同显 司机所在地址司乘同显开始位置代驾地址就是司乘同显终点计算司机司乘同显最佳路线 Operation(summary 计算最佳驾驶线路) GuiguLogin PostMapping(/calculateDrivingLine) public ResultDrivingLineVo calculateDrivingLine(RequestBody CalculateDrivingLineForm calculateDrivingLineForm) {return Result.ok(orderService.calculateDrivingLine(calculateDrivingLineForm)); }//计算最佳驾驶线路 Override public DrivingLineVo calculateDrivingLine(CalculateDrivingLineForm calculateDrivingLineForm) {return mapFeignClient.calculateDrivingLine(calculateDrivingLineForm).getData(); }更新位置到Redis里面 司机要赶往代驾地址实时更新司机当前最新位置经纬度到Redis里面乘客看到司机的动向司机端更新乘客端获取 Operation(summary 司机赶往代驾起始点更新订单地址到缓存) PostMapping(/updateOrderLocationToCache) public ResultBoolean updateOrderLocationToCache(RequestBody UpdateOrderLocationForm updateOrderLocationForm) {return Result.ok(locationService.updateOrderLocationToCache(updateOrderLocationForm)); }//司机赶往代驾起始点更新订单地址到缓存 Override public Boolean updateOrderLocationToCache(UpdateOrderLocationForm updateOrderLocationForm) {OrderLocationVo orderLocationVo new OrderLocationVo();orderLocationVo.setLongitude(updateOrderLocationForm.getLongitude());orderLocationVo.setLatitude(updateOrderLocationForm.getLatitude());String key RedisConstant.UPDATE_ORDER_LOCATION updateOrderLocationForm.getOrderId();redisTemplate.opsForValue().set(key,orderLocationVo);return true; }/*** 司机赶往代驾起始点更新订单地址到缓存* param updateOrderLocationForm* return*/ PostMapping(/map/location/updateOrderLocationToCache) ResultBoolean updateOrderLocationToCache(RequestBody UpdateOrderLocationForm updateOrderLocationForm);Operation(summary 司机赶往代驾起始点更新订单位置到Redis缓存) GuiguLogin PostMapping(/updateOrderLocationToCache) public Result updateOrderLocationToCache(RequestBody UpdateOrderLocationForm updateOrderLocationForm) {return Result.ok(locationService.updateOrderLocationToCache(updateOrderLocationForm)); }Override public Boolean updateOrderLocationToCache(UpdateOrderLocationForm updateOrderLocationForm) {return locationFeignClient.updateOrderLocationToCache(updateOrderLocationForm).getData(); }获取司机基本信息 乘客进入司乘同显页面需要加载司机基本信息司机姓名头像等信息 Operation(summary 获取司机基本信息) GetMapping(/getDriverInfo/{driverId}) public ResultDriverInfoVo getDriverInfoOrder(PathVariable Long driverId) {return Result.ok(driverInfoService.getDriverInfoOrder(driverId)); }//获取司机基本信息 Override public DriverInfoVo getDriverInfoOrder(Long driverId) {//司机id获取基本信息DriverInfo driverInfo driverInfoMapper.selectById(driverId);//封装DriverInfoVoDriverInfoVo driverInfoVo new DriverInfoVo();BeanUtils.copyProperties(driverInfo,driverInfoVo);//计算驾龄//获取当前年int currentYear new DateTime().getYear();//获取驾驶证初次领证日期//driver_license_issue_dateint firstYear new DateTime(driverInfo.getDriverLicenseIssueDate()).getYear();int driverLicenseAge currentYear - firstYear;driverInfoVo.setDriverLicenseAge(driverLicenseAge);return driverInfoVo; }/*** 获取司机基本信息* param driverId* return*/ GetMapping(/driver/info/getDriverInfo/{driverId}) ResultDriverInfoVo getDriverInfo(PathVariable(driverId) Long driverId);Operation(summary 根据订单id获取司机基本信息) GuiguLogin GetMapping(/getDriverInfo/{orderId}) public ResultDriverInfoVo getDriverInfo(PathVariable Long orderId) {Long customerId AuthContextHolder.getUserId();return Result.ok(orderService.getDriverInfo(orderId, customerId)); }Override public DriverInfoVo getDriverInfo(Long orderId, Long customerId) {//根据订单id获取订单信息OrderInfo orderInfo orderInfoFeignClient.getOrderInfo(orderId).getData();if(orderInfo.getCustomerId() ! customerId) {throw new GuiguException(ResultCodeEnum.DATA_ERROR);}return driverInfoFeignClient.getDriverInfo(orderInfo.getDriverId()).getData(); }乘客端获取司机经纬度位置 Operation(summary 司机赶往代驾起始点获取订单经纬度位置) GetMapping(/getCacheOrderLocation/{orderId}) public ResultOrderLocationVo getCacheOrderLocation(PathVariable Long orderId) {return Result.ok(locationService.getCacheOrderLocation(orderId)); }Override public OrderLocationVo getCacheOrderLocation(Long orderId) {String key RedisConstant.UPDATE_ORDER_LOCATION orderId;OrderLocationVo orderLocationVo (OrderLocationVo)redisTemplate.opsForValue().get(key);return orderLocationVo; }/*** 司机赶往代驾起始点获取订单经纬度位置* param orderId* return*/ GetMapping(/map/location/getCacheOrderLocation/{orderId}) ResultOrderLocationVo getCacheOrderLocation(PathVariable(orderId) Long orderId);Operation(summary 司机赶往代驾起始点获取订单经纬度位置) GetMapping(/getCacheOrderLocation/{orderId}) public ResultOrderLocationVo getCacheOrderLocation(PathVariable Long orderId) {return Result.ok(locationService.getCacheOrderLocation(orderId)); }Override public OrderLocationVo getCacheOrderLocation(Long orderId) {return locationFeignClient.getCacheOrderLocation(orderId).getData(); }Operation(summary 计算最佳驾驶线路) GuiguLogin PostMapping(/calculateDrivingLine) public ResultDrivingLineVo calculateDrivingLine(RequestBody CalculateDrivingLineForm calculateDrivingLineForm) {return Result.ok(orderService.calculateDrivingLine(calculateDrivingLineForm)); }Override public DrivingLineVo calculateDrivingLine(CalculateDrivingLineForm calculateDrivingLineForm) {return mapFeignClient.calculateDrivingLine(calculateDrivingLineForm).getData(); }司机到达起始点 司机到达代驾起始点之后更新当前代驾订单数据更新订单状态司机到达更新订单到达时间 Operation(summary 司机到达起始点) GetMapping(/driverArriveStartLocation/{orderId}/{driverId}) public ResultBoolean driverArriveStartLocation(PathVariable Long orderId, PathVariable Long driverId) {return Result.ok(orderInfoService.driverArriveStartLocation(orderId, driverId)); }//司机到达起始点 Override public Boolean driverArriveStartLocation(Long orderId, Long driverId) {// 更新订单状态和到达时间条件orderId driverIdLambdaQueryWrapperOrderInfo wrapper new LambdaQueryWrapper();wrapper.eq(OrderInfo::getId,orderId);wrapper.eq(OrderInfo::getDriverId,driverId);OrderInfo orderInfo new OrderInfo();orderInfo.setStatus(OrderStatus.DRIVER_ARRIVED.getStatus());orderInfo.setArriveTime(new Date());int rows orderInfoMapper.update(orderInfo, wrapper);if(rows 1) {return true;} else {throw new GuiguException(ResultCodeEnum.UPDATE_ERROR);} }/*** 司机到达起始点* param orderId* param driverId* return*/ GetMapping(/order/info/driverArriveStartLocation/{orderId}/{driverId}) ResultBoolean driverArriveStartLocation(PathVariable(orderId) Long orderId, PathVariable(driverId) Long driverId);Operation(summary 司机到达代驾起始地点) GuiguLogin GetMapping(/driverArriveStartLocation/{orderId}) public ResultBoolean driverArriveStartLocation(PathVariable Long orderId) {Long driverId AuthContextHolder.getUserId();return Result.ok(orderService.driverArriveStartLocation(orderId, driverId)); }//司机到达代驾起始地点 Override public Boolean driverArriveStartLocation(Long orderId, Long driverId) {return orderInfoFeignClient.driverArriveStartLocation(orderId,driverId).getData(); }司机更新代驾车辆信息 司机到达代驾起始点联系了乘客见到了代驾车辆要拍照与录入车辆信息 Operation(summary 更新代驾车辆信息) PostMapping(/updateOrderCart) public ResultBoolean updateOrderCart(RequestBody UpdateOrderCartForm updateOrderCartForm) {return Result.ok(orderInfoService.updateOrderCart(updateOrderCartForm)); }Boolean updateOrderCart(UpdateOrderCartForm updateOrderCartForm);Transactional(rollbackFor Exception.class) Override public Boolean updateOrderCart(UpdateOrderCartForm updateOrderCartForm) {LambdaQueryWrapperOrderInfo queryWrapper new LambdaQueryWrapper();queryWrapper.eq(OrderInfo::getId, updateOrderCartForm.getOrderId());queryWrapper.eq(OrderInfo::getDriverId, updateOrderCartForm.getDriverId());OrderInfo updateOrderInfo new OrderInfo();BeanUtils.copyProperties(updateOrderCartForm, updateOrderInfo);updateOrderInfo.setStatus(OrderStatus.UPDATE_CART_INFO.getStatus());//只能更新自己的订单int row orderInfoMapper.update(updateOrderInfo, queryWrapper);if(row 1) {//记录日志this.log(updateOrderCartForm.getOrderId(), OrderStatus.UPDATE_CART_INFO.getStatus());} else {throw new GuiguException(ResultCodeEnum.UPDATE_ERROR);}return true; }/*** 更新代驾车辆信息* param updateOrderCartForm* return*/ PostMapping(/order/info//updateOrderCart) ResultBoolean updateOrderCart(RequestBody UpdateOrderCartForm updateOrderCartForm);Operation(summary 更新代驾车辆信息) GuiguLogin PostMapping(/updateOrderCart) public ResultBoolean updateOrderCart(RequestBody UpdateOrderCartForm updateOrderCartForm) {Long driverId AuthContextHolder.getUserId();updateOrderCartForm.setDriverId(driverId);return Result.ok(orderService.updateOrderCart(updateOrderCartForm)); }Override public Boolean updateOrderCart(UpdateOrderCartForm updateOrderCartForm) {return orderInfoFeignClient.updateOrderCart(updateOrderCartForm).getData(); }公司只有一个总的理想员工不能要求公司去实现你的理想你必须适应这个总的理想参加主力部队作战发挥你的作用。我们的主航道不会变化你们与大学合作的面宽一点到2012实验室的时候窄一点到产品研发更是窄窄的要有长期性的清晰指标。 https://baijiahao.baidu.com/s?id1760664270073856317wfrspiderforpc 擦亮花火、共创未来——任正非在“难题揭榜”花火奖座谈会上的讲话 任正非
http://www.dnsts.com.cn/news/68082.html

相关文章:

  • 网站被加入js广告微信小程序开通支付功能
  • 淘宝网站可以做百度快照吗河南建设人才教育信息网
  • 比格设计网站官网网站单页支付宝支付怎么做的
  • 网站建设做网站费用网站备案主体 被拉黑
  • 做海报的网站有哪些内容莆田网站建站
  • 金石文化规划 设计 开发风景区网站建设腾讯云搭建网站
  • 网站开发背景怎么写asp评价网站开发文档
  • 做短租有哪些网站建设制作外贸网站公司
  • 网站建设费的账务处理苏州网站建设上往建站
  • 常州网站建设怎么样wordpress内容评论可见
  • 家居网站建设全网营销上海专业网站建
  • 建设网站是几个步骤互联网下的网络营销
  • 哈尔滨网站建设好wordpress 活动
  • 做网站的那些高清图上哪里找wordpress 执行sql
  • 强企网做网站asp.net做音乐网站
  • 做网站泉州合肥企业网站建设公司
  • 优秀设计方案网站给你一个网站怎么优化
  • 旅游网站开发的国内外现状建设网站对公司起什么作用
  • 阿里云建设网站能干嘛wordpress 国外 企业主题
  • 搬瓦工可以做网站吗品牌设计公司网站
  • 阿里国际站网站建设网络营销方式方法有哪些
  • 站长要维护网站wordpress访客量
  • 徐州市徐州市城乡建设局网站关闭评论 WordPress
  • 网站seo优化外包经典网站设计风格
  • php网站建设公司企业解决方案顾问
  • 重庆有哪些做网站公司好做公司网站的流程
  • 图片 展示 网站模板南宁市网站建设
  • 山东网站备案注销申请表创意工作室网站
  • 锡盟建设局网站asp access 做网站
  • 企业网站建设公司上海做电商网站的