From 3406ccf08f8d56fc282deb49c07c16727be67c06 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期一, 30 十二月 2024 19:43:21 +0800 Subject: [PATCH] bug修改 --- UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java index d55346c..fb75265 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java @@ -1314,23 +1314,35 @@ @Override public void run() { try { + System.out.println("进入订单推送111111111111"); orderIds.add(orderTaxi.getId());//添加记录,防止调用接口重复提醒无人接单 String vehicle = redisUtil.getValue("VEHICLE"); List<Integer> integers = new ArrayList<>(); if(ToolUtil.isNotEmpty(vehicle)){ integers = JSON.parseArray(vehicle).toJavaList(Integer.class); } + System.out.println("进入订单推送22222222222222=========="+integers); Company query = companyCityService.query(String.valueOf(orderTaxi.getStartLon()), String.valueOf(orderTaxi.getStartLat()));//获取起点所属分公司 + System.out.println("进入订单推送=========3==========="+query); List<PushOrder> querys = pushOrderService.querys(null, 2, query.getId());//获取需要推送的次数 + System.out.println("进入订单推送=========4==========="+querys); for(int i = 1; i <= querys.size(); i++){ + System.out.println("进入订单推送"); PushOrder pushOrder = pushOrderService.querys(i, 2, query.getId()).get(0); + System.out.println("进入订单推送"); //获取空闲司机 List<Driver> list = driverService.queryIdleDriver(2, orderTaxi.getStartLon(), orderTaxi.getStartLat(), pushOrder.getPushDistance(), null);//所有附近空闲司机 + System.out.println("获取空闲司机============="+list); if(list.size() > 0){ + System.out.println("进入司机推送"); double driverProportion = pushOrder.getDriverProportion() / 100;//推送占比计算成小数 + System.out.println("推送占比计算成小数======="+driverProportion); int lastIndex = Double.valueOf(list.size() * driverProportion).intValue();//计算占比转成整数(下标截取) + System.out.println("计算占比转成整数======="+lastIndex); list = list.subList(0, lastIndex);//获取空闲司机中占比数据 + System.out.println("获取空闲司机中占比数据======="+list); for(Driver driver : list){//开始进行推送 + System.out.println("开始进行推送======="+driver); //查询是否在限制推单范围内 boolean bo = false; for(Integer integer : integers){ @@ -1342,7 +1354,9 @@ if(bo){ continue; } + System.out.println("推送订单前"); pushUtil.pushOrderState(2, driver.getId(), orderTaxi.getId(), 2, orderTaxi.getState(), pushOrder.getPushTime()); + System.out.println("推送订单后"); } } Thread.sleep(pushOrder.getPushTime() * 1000);//设置等待时间 -- Gitblit v1.7.1