Pu Zhibing
昨天 a07a063b9e2fbe1ea41b520274dd9821af5ee03a
添加修改司机状态的定时任务
2个文件已修改
1个文件已添加
85 ■■■■■ 已修改文件
DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverZYTravel/guns-admin/src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverZYTravel/guns-admin/src/test/java/com/stylefeng/guns/GunsApplicationTest.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java
@@ -1,12 +1,21 @@
package com.stylefeng.guns.modular.system.util;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar;
import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
import com.stylefeng.guns.modular.system.dao.DriverWorkMapper;
import com.stylefeng.guns.modular.system.model.Driver;
import com.stylefeng.guns.modular.system.model.DriverWork;
import com.stylefeng.guns.modular.system.service.IDriverService;
import com.stylefeng.guns.modular.system.service.IDriverWorkService;
import com.stylefeng.guns.modular.system.service.IOrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -26,8 +35,14 @@
    private JGPushUtil jgPushUtil;
    public Set<Integer> driverIds = new HashSet<>();//存储需要提醒司机预约单的司机id
    @Autowired
    private DriverWorkMapper driverWorkMapper;
    @Autowired
    private IDriverWorkService driverWorkService;
    @Autowired
    private IOrderPrivateCarService orderPrivateCarService;
    /**
@@ -36,6 +51,7 @@
    @Scheduled(fixedRate = 1000 * 60)
    public void taskMinute(){
        try {
            //修改满足活动条件的数据(在线时长,订单量)
//            driverService.taskMinute();
//            处理车载端断电后的自动下班
@@ -53,6 +69,7 @@
    @Scheduled(fixedRate = 1000 * 60)
    public void taskMinute2(){
        try {
            updateDriverState();
            //处于预约单
            orderService.reservationOrder();
        } catch (Exception e) {
@@ -108,4 +125,42 @@
//            e.printStackTrace();
//        }
//    }
    private void updateDriverState(){
        List<Driver> drivers = driverService.selectList(new EntityWrapper<Driver>().eq("authState", 2).ne("flag", 3));
        for (Driver driver : drivers) {
            Integer state = driver.getState();
            int driverWork = driverWorkService.selectCount(new EntityWrapper<DriverWork>().eq("driverId", driver.getId()).eq("state", 1));
            int count = orderPrivateCarService.selectCount(new EntityWrapper<OrderPrivateCar>().eq("driverId", driver.getId())
                    .in("state", Arrays.asList(2, 3, 4, 5, 11)).eq("isDelete", 1).last(" and (orderType = 1 or (orderType = 2 and UNIX_TIMESTAMP(travelTime) - UNIX_TIMESTAMP(NOW()) < 1800))"));
            if(1 == state){
                if(count > 0){
                    driver.setState(3);
                } else if (count == 0 && driverWork > 0) {
                    driver.setState(2);
                }
            }
            if(2 == state){
                if(count > 0){
                    driver.setState(3);
                } else if (0 == driverWork) {
                    driver.setState(1);
                }
            }
            if(3 == state){
                if(count == 0 && driverWork > 0){
                    driver.setState(2);
                }
                if (count == 0 && 0 == driverWork) {
                    driver.setState(1);
                }
            }
        }
        if(!drivers.isEmpty()){
            driverService.updateBatchById(drivers);
        }
    }
}
DriverZYTravel/guns-admin/src/main/resources/application.yml
@@ -55,8 +55,8 @@
  datasource:
    url: jdbc:mysql://localhost:3306/zytravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
#    password: 0KiwEhl6EnIFWNqB7d1FJLWKy9urjvMS
    password: 123456
    password: 0KiwEhl6EnIFWNqB7d1FJLWKy9urjvMS
#    password: 123456
    db-name: guns #用来搜集数据库的所有表
    filters: wall,mergeStat
DriverZYTravel/guns-admin/src/test/java/com/stylefeng/guns/GunsApplicationTest.java
New file
@@ -0,0 +1,26 @@
//package com.stylefeng.guns;
//
//
//import com.stylefeng.guns.modular.system.util.GDFalconUtil;
//import org.junit.Test;
//import org.junit.runner.RunWith;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.boot.test.context.SpringBootTest;
//import org.springframework.test.context.junit4.SpringRunner;
//
//@RunWith(SpringRunner.class)
//@SpringBootTest
//public class GunsApplicationTest {
//
//    @Autowired
//    private GDFalconUtil gdFalconUtil;
//
//
//
//    @Test
//    public void test(){
//        String tid = gdFalconUtil.selectTerminal("15198590535");
//        String result = gdFalconUtil.selectTrack(tid, "70039",1);
//        System.err.println(result);
//    }
//}