Pu Zhibing
10 小时以前 d6a14beb93cb572247db0edff3f25f99e217fcf1
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java
@@ -2,10 +2,7 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.CarBrandMapper;
import com.stylefeng.guns.modular.system.dao.CarMapper;
import com.stylefeng.guns.modular.system.dao.CarModelMapper;
import com.stylefeng.guns.modular.system.dao.CompanyMapper;
import com.stylefeng.guns.modular.system.dao.*;
import com.stylefeng.guns.modular.system.model.*;
import com.stylefeng.guns.modular.system.service.ICarService;
import com.stylefeng.guns.modular.system.service.IDriverService;
@@ -14,7 +11,6 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
@@ -36,6 +32,9 @@
    @Autowired
    private IDriverService driverService;
    @Autowired
    private DriverWorkMapper driverWorkMapper;
@@ -52,6 +51,7 @@
        Integer carId = driver.getCarId();
        map.put("car", "");
        map.put("id", carId);
        if(carId!=null){
            Car car = carMapper.selectById(carId);
            if(car.getCarLicensePlate()!=null){
@@ -62,14 +62,18 @@
        }
        List<Map<String, Object>> list = carMapper.queryIdleDataFromId(driver.getId());
//        List<Map<String, Object>> list = carMapper.queryIdleData(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
//                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
        for (Map<String, Object> stringObjectMap : list) {
            // 1使用中 2空闲中
            if(stringObjectMap.get("id").toString().equals(carId.toString())){
                map.put("useState", 1);
            }else {
                map.put("useState", 0);
            if(null == stringObjectMap.get("useDriverId")){
                stringObjectMap.put("useState", 2);
            }else{
                Integer driverId = Integer.valueOf(stringObjectMap.get("useDriverId").toString());
                DriverWork driverWork = driverWorkMapper.queryNewWork(driverId, null, 1);
                if(null == driverWork){
                    stringObjectMap.put("useState", 2);
                }else{
                    stringObjectMap.put("useState", 1);
                }
            }
        }
        map.put("list", list);
@@ -159,4 +163,29 @@
        this.insert(car);
        return ResultUtil.success();
    }
    @Override
    public boolean useState(Integer carId, Integer uid) {
        List<Driver> drivers = driverService.selectList(new EntityWrapper<Driver>().eq("carId", carId)
                .eq("authState", 2).ne("flag", 3));
        for (Driver driver : drivers) {
            DriverWork driverWork = driverWorkMapper.queryNewWork(driver.getId(), null, 1);
            if(null != driverWork){
                return true;
            }
        }
        return false;
    }
    @Override
    public void updateUseState(Integer carId, Integer uid) {
        carMapper.updateUseState(uid);
        Car car = carMapper.selectById(carId);
        car.setUseDriverId(uid);
        this.baseMapper.updateById(car);
    }
    @Override
    public void updateUseState(Integer uid) {
        carMapper.updateUseState(uid);
    }
}