| | |
| | | orderCrossCity.setPassengers(userInfo.getNickName()); |
| | | orderCrossCity.setPassengersPhone(userInfo.getPhone()); |
| | | orderCrossCity.setPeopleNumber(orderCrossCityWarpper.getPeopleNumber()); |
| | | orderCrossCity.setSeatNumber(orderCrossCityWarpper.getSeatNumber()); |
| | | List<OrderCrossCity> orderCrossCities = this.selectList(new EntityWrapper<OrderCrossCity>().eq("orderNum", orderCrossCity.getOrderNum()).eq("isDelete", 1)); |
| | | orderCrossCity.setSort(orderCrossCities.size() + 1); |
| | | orderCrossCity.setState(7);//待支付 |
| | |
| | | orderCrossCity.setIsDelete(1); |
| | | orderCrossCity.setRemark(orderCrossCityWarpper.getRemark()); |
| | | orderCrossCity.setIsReassign(1); |
| | | if(1 == orderCrossCity.getTravelMode()){ |
| | | orderCrossCity.setSeatNumber(orderCrossCityWarpper.getSeatNumber()); |
| | | }else{ |
| | | orderCrossCity.setSeatNumber(lineShiftDriver.getLaveSeatNumber()); |
| | | } |
| | | // //调用高德创建轨迹 |
| | | // String s = gdFalconUtil.selectTerminal(driver.getPhone()); |
| | | // String track = gdFalconUtil.createTrack(s); |
| | |
| | | |
| | | // 是否推广订单 |
| | | Integer promotion = isPromotion(uid); |
| | | orderCrossCity.setPromotion(promotion); |
| | | if(promotion!=null){ |
| | | orderCrossCity.setPromotion(2); |
| | | Driver driver1 = driverService.selectById(promotion); |
| | | orderCrossCity.setPromotionUser(driver1.getName()); |
| | | orderCrossCity.setPromotionPhone(driver1.getPhone()); |
| | | orderCrossCity.setPromotionDriverId(promotion); |
| | | }else{ |
| | | orderCrossCity.setPromotion(1); |
| | | } |
| | | |
| | | this.insert(orderCrossCity); |
| | | |
| | |
| | | return ResultUtil.success(baseWarpper); |
| | | } |
| | | |
| | | |
| | | private Integer isPromotion(Integer userId){ |
| | | UserInfo userInfo = userInfoService.selectById(userId); |
| | | if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){ |
| | | String registAreaCode = userInfo.getRegistAreaCode(); |
| | | TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).ge("startTime", new Date()).lt("endTime", new Date()).last("AND FIND_IN_SET(" + 3 + ", bizType) limit 1")); |
| | | TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("state",1).eq("districtCode", registAreaCode).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 3 + ", bizType) limit 1")); |
| | | if(tDriverPromotionActivity!=null){ |
| | | return 2; |
| | | return userInfo.getBindDriverId(); |
| | | } |
| | | } |
| | | return null; |
| | | |
| | | } |
| | | /** |
| | | * 获取订单 |
| | |
| | | if(map.get("abnormalIntro")!=null){ |
| | | map.put("appealStatus", 1); |
| | | } |
| | | |
| | | if(map.get("travelMode")!=null &&map.get("travelMode").toString().equals("2") ){ |
| | | map.put("zwNum", 1); |
| | | }else { |
| | | map.put("zwNum", 2); |
| | | } |
| | | |
| | | Map<String, String> geocode = gdMapGeocodingUtil.geocode(map.get("startLon").toString(), map.get("startLat").toString()); |
| | | map.put("startCity", geocode.get("city")); |
| | | geocode = gdMapGeocodingUtil.geocode(map.get("endLon").toString(), map.get("endLat").toString()); |
| | |
| | | OrderPrivateCarServiceImpl.orderIds.add(orderPrivateCar.getId());//添加记录,防止调用接口重复提醒无人接单 |
| | | OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString()); |
| | | List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//获取需要推送的次数 |
| | | for (int i = 1; i <= querys.size() + 5; i++) { |
| | | for (int i = 1; i <= querys.size() + 15; i++) { |
| | | //订单被抢后的处理 |
| | | Integer state = orderPrivateCarMapper.selectById(orderId).getState(); |
| | | if (state != 1) { |
| | |
| | | for (Map<String, Integer> map : datas) { |
| | | Integer orderType = map.get("orderType"); |
| | | Integer orderId = map.get("orderId"); |
| | | if (orderType == 1 && orderId != orderPrivateCar.getId()) { |
| | | if (orderType == 1 && !orderId.equals(orderPrivateCar.getId())) { |
| | | orderPrivateCarMapper.deleteById(orderId); |
| | | } |
| | | if (orderType == 2) { |
| | |
| | | |
| | | //所有推送完后的处理 |
| | | Boolean b = pushEndMap.get(orderPrivateCar.getCrossCityOrderId()); |
| | | if (i == querys.size() + 5 && state == 1 && (null != b && !b.booleanValue())) { |
| | | if (i == querys.size() + 15 && state == 1 && (null != b && !b.booleanValue())) { |
| | | pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1); |
| | | OrderPrivateCarServiceImpl.orderIds.remove(orderPrivateCar.getId()); |
| | | pushEndMap.put(orderPrivateCar.getCrossCityOrderId(), Boolean.TRUE);//推送后添加标识 |
| | |
| | | OrderTaxiServiceImpl.orderIds.add(orderTaxi.getId());//添加记录,防止调用接口重复提醒无人接单 |
| | | OpenCity openCity = openCityService.openCity1(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString()); |
| | | List<PushOrder> querys = pushOrderService.querys(null, 2, openCity.getId());//获取需要推送的次数 |
| | | for (int i = 1; i <= querys.size() + 5; i++) { |
| | | for (int i = 1; i <= querys.size() + 15; i++) { |
| | | //处理订单被抢 |
| | | Integer state = orderTaxiMapper.selectById(orderId).getState(); |
| | | if (state != 1) { |
| | |
| | | if (orderType == 1) { |
| | | orderPrivateCarMapper.deleteById(orderId); |
| | | } |
| | | if (orderType == 2 && orderId != orderTaxi.getId()) { |
| | | if (orderType == 2 && !orderId.equals(orderTaxi.getId())) { |
| | | orderTaxiMapper.deleteById(orderId); |
| | | } |
| | | } |
| | |
| | | if (bo) { |
| | | continue; |
| | | } |
| | | |
| | | |
| | | pushUtil.pushOrderState(2, driver.getId(), orderTaxi.getId(), 2, orderTaxi.getState(), pushOrder.getPushTime()); |
| | | } |
| | | } |
| | | |
| | | //所有推送完后的处理 |
| | | Boolean b = pushEndMap.get(orderTaxi.getCrossCityOrderId()); |
| | | if (i == querys.size() + 5 && state == 1 && (null != b && !b.booleanValue())) { |
| | | if (i == querys.size() + 15 && state == 1 && (null != b && !b.booleanValue())) { |
| | | pushUtil.pushEndPush(1, orderTaxi.getUserId(), orderTaxi.getId(), 2); |
| | | OrderTaxiServiceImpl.orderIds.remove(orderTaxi.getId()); |
| | | pushEndMap.put(orderTaxi.getCrossCityOrderId(), Boolean.TRUE);//推送后添加标识 |