Pu Zhibing
2025-07-04 c8638df756d5c56f2d0c3ed35522fc5a340122c8
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java
@@ -7,7 +7,6 @@
import com.stylefeng.guns.core.beetl.ShiroExtUtil;
import com.stylefeng.guns.core.common.constant.factory.PageFactory;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.shiro.ShiroKit;
import com.stylefeng.guns.core.util.DateUtil;
import com.stylefeng.guns.core.util.SinataUtil;
import com.stylefeng.guns.core.util.WoUtil;
@@ -59,9 +58,6 @@
    private ITCarServiceService tCarServiceService;
    @Autowired
    private ITDriverLineService tDriverLineService;
    @Autowired
    private ITCarBrandService tCarBrandService;
    @Autowired
@@ -75,19 +71,22 @@
    @Autowired
    private ITCarServiceService itCarServiceService;
    @Autowired
    private ITServerCarmodelService itServerCarmodelService;
    @Autowired
    private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
    @Resource
    private CarInsuranceMapper carInsuranceMapper;
    @Resource
    private ShiroExtUtil shiroExtUtil;
    @Value("${pushMinistryOfTransport}")
    private boolean pushMinistryOfTransport;
    /**
     * 跳转到车辆管理首页
     */
@@ -104,16 +103,16 @@
        List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2).eq("state", 0).ne("flag", 3));
        model.addAttribute("companyList", companyList);
    
        Integer roleType = ShiroExtUtil.getUser().getRoleType();
        Integer roleType = shiroExtUtil.getUser().getRoleType();
        model.addAttribute("roleType", roleType);
        if (2 == roleType) {
            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", ShiroExtUtil.getUser().getObjectId()).eq("state", 0).ne("flag", 3));
            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", shiroExtUtil.getUser().getObjectId()).eq("state", 0).ne("flag", 3));
            model.addAttribute("franchiseeList", franchiseeList);
        } else {
            model.addAttribute("franchiseeList", null);
        }
        //查询当前用户所属分公司/加盟商
        model.addAttribute("objectName", tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()).getName());
        model.addAttribute("objectName", tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()).getName());
    
        //车辆品牌
        List<TCarBrand> brandList = tCarBrandService.selectList(new EntityWrapper<TCarBrand>().eq("state", 1));
@@ -153,9 +152,9 @@
        model.addAttribute("item", tCar);
        LogObjectHolder.me().set(tCar);
    
        Integer roleType = ShiroExtUtil.getUser().getRoleType();
        Integer roleType = shiroExtUtil.getUser().getRoleType();
        model.addAttribute("roleType", roleType);
        model.addAttribute("objectName", tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()).getName());
        model.addAttribute("objectName", tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()).getName());
    
        if (1 == roleType) {
            List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2).eq("state", 0).ne("flag", 3));
@@ -163,7 +162,7 @@
            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", tCar.getCompanyId()).eq("state", 0).ne("flag", 3));
            model.addAttribute("franchiseeList", franchiseeList);
        } else if (2 == roleType) {
            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", ShiroExtUtil.getUser().getObjectId()).eq("state", 0).ne("flag", 3));
            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", shiroExtUtil.getUser().getObjectId()).eq("state", 0).ne("flag", 3));
            model.addAttribute("franchiseeList", franchiseeList);
        }
@@ -384,7 +383,7 @@
            endTime = timeArray[1];
        }
        Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
        page.setRecords(tCarService.getCarList(page, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId(), beginTime, endTime, id, brandName, modelName, carColor, serverStr, carLicensePlate, driverName, companyName, franchiseeName));
        page.setRecords(tCarService.getCarList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), beginTime, endTime, id, brandName, modelName, carColor, serverStr, carLicensePlate, driverName, companyName, franchiseeName));
        return super.packForBT(page);
    }
@@ -410,26 +409,26 @@
            tCar.setAddType(2);
            tCar.setIsPlatCar(1);
        } else if (2 == roleType) {  //分公司
            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
                tCar.setCompanyId(ShiroExtUtil.getUser().getObjectId());
            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
                tCar.setCompanyId(shiroExtUtil.getUser().getObjectId());
            }
            if (SinataUtil.isNotEmpty(franchiseeId)) {
                tCar.setFranchiseeId(franchiseeId);
            }
            tCar.setIsPlatCar(2);
            tCar.setAddType(3);
            tCar.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
            tCar.setAddObjectId(shiroExtUtil.getUser().getObjectId());
        } else if (3 == roleType) {  //加盟商
            TCompany tCompany = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId());
            TCompany tCompany = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId());
            if (SinataUtil.isNotEmpty(tCompany)) {
                tCar.setCompanyId(tCompany.getSuperiorId());
            }
            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
                tCar.setFranchiseeId(ShiroExtUtil.getUser().getObjectId());
            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
                tCar.setFranchiseeId(shiroExtUtil.getUser().getObjectId());
            }
            tCar.setIsPlatCar(2);
            tCar.setAddType(4);
            tCar.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
            tCar.setAddObjectId(shiroExtUtil.getUser().getObjectId());
        }
        tCar.setInsertTime(new Date());
        tCar.setState(1);
@@ -510,19 +509,19 @@
                tCar.setFranchiseeId(0);
            }
        } else if (2 == roleType) {  //分公司
            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
                tCar.setCompanyId(ShiroExtUtil.getUser().getObjectId());
            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
                tCar.setCompanyId(shiroExtUtil.getUser().getObjectId());
            }
            if (SinataUtil.isNotEmpty(franchiseeId)) {
                tCar.setFranchiseeId(franchiseeId);
            }
        } else if (3 == roleType) {  //加盟商
            TCompany tCompany = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId());
            TCompany tCompany = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId());
            if (SinataUtil.isNotEmpty(tCompany)) {
                tCar.setCompanyId(tCompany.getSuperiorId());
            }
            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
                tCar.setFranchiseeId(ShiroExtUtil.getUser().getObjectId());
            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
                tCar.setFranchiseeId(shiroExtUtil.getUser().getObjectId());
            }
        }
@@ -617,9 +616,6 @@
        shellList.add("服务模式:快车[是/否]");
        shellList.add("服务模式:出租车[是/否]");
        shellList.add("服务模式:跨城出行[是/否]");
        shellList.add("服务模式:小件同城物流[是/否]");
        shellList.add("服务模式:小件跨城物流[是/否]");
        shellList.add("服务模式:包车[是/否]");
        shellList.add("车辆品牌");
        shellList.add("车辆类型");
        shellList.add("车辆颜色[黑色/银色/白色/红色/黄色/橙色/蓝色]");
@@ -696,69 +692,50 @@
                    five = String.valueOf(cell5.getStringCellValue()).trim();
                }
                Cell cell6 = row.getCell(6);  //服务模式:小件跨城物流[是/否]
                String six = null;
                if (SinataUtil.isNotEmpty(cell6)){
                    six = String.valueOf(cell6.getStringCellValue()).trim();
                }
                Cell cell7 = row.getCell(7);  //服务模式:小件跨城物流[是/否]
                String seven = null;
                if (SinataUtil.isNotEmpty(cell7)){
                    seven = String.valueOf(cell7.getStringCellValue()).trim();
                }
                Cell cell8 = row.getCell(8);  //服务模式:包车[是/否]
                String eight = null;
                if (SinataUtil.isNotEmpty(cell8)){
                    eight = String.valueOf(cell8.getStringCellValue()).trim();
                }
                Cell cell9 = row.getCell(9);  //车辆品牌
                Cell cell9 = row.getCell(6);  //车辆品牌
                String nine = null;
                if (SinataUtil.isNotEmpty(cell9)){
                    nine = String.valueOf(cell9.getStringCellValue()).trim();
                }
                Cell cell10 = row.getCell(10);  //车辆类型
                Cell cell10 = row.getCell(7);  //车辆类型
                String ten = null;
                if (SinataUtil.isNotEmpty(cell10)){
                    ten = String.valueOf(cell10.getStringCellValue()).trim();
                }
                Cell cell11 = row.getCell(11);  //车辆颜色[黑色/银色/白色/红色/黄色/橙色/蓝色]
                Cell cell11 = row.getCell(8);  //车辆颜色[黑色/银色/白色/红色/黄色/橙色/蓝色]
                String eleven = null;
                if (SinataUtil.isNotEmpty(cell11)){
                    eleven = String.valueOf(cell11.getStringCellValue()).trim();
                }
                Cell cell12 = row.getCell(12);  //车牌号
                Cell cell12 = row.getCell(9);  //车牌号
                String twelve = null;
                if (SinataUtil.isNotEmpty(cell12)){
                    twelve = String.valueOf(cell12.getStringCellValue()).trim();
                }
                Cell cell13 = row.getCell(13);  //行驶证编号
                Cell cell13 = row.getCell(10);  //行驶证编号
                String thirteen = null;
                if (SinataUtil.isNotEmpty(cell13)){
                    thirteen = String.valueOf(cell13.getStringCellValue()).trim();
                }
                Cell cell14 = row.getCell(14);  //年检到期时间
                Cell cell14 = row.getCell(11);  //年检到期时间
                String fourteen = null;
                if (SinataUtil.isNotEmpty(cell14)){
                    fourteen = String.valueOf(cell14.getStringCellValue()).trim();
                }
                Cell cell15 = row.getCell(15);  //商业保险到期时间
                Cell cell15 = row.getCell(12);  //商业保险到期时间
                String fifteen = null;
                if (SinataUtil.isNotEmpty(cell15)){
                    fifteen = String.valueOf(cell15.getStringCellValue()).trim();
                }
                if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(three) || SinataUtil.isEmpty(four)
                        || SinataUtil.isEmpty(five) || SinataUtil.isEmpty(six) || SinataUtil.isEmpty(seven)
                        || SinataUtil.isEmpty(eight) || SinataUtil.isEmpty(nine) || SinataUtil.isEmpty(ten)
                        || SinataUtil.isEmpty(five) || SinataUtil.isEmpty(nine) || SinataUtil.isEmpty(ten)
                        || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(twelve) || SinataUtil.isEmpty(thirteen)
                        || SinataUtil.isEmpty(fourteen) || SinataUtil.isEmpty(fifteen)){
                    return new ErrorTip(500, "单元格不能为空");
@@ -778,18 +755,6 @@
                    //判断服务模式【跨城出行】
                    if (!five.equals("是") && !five.equals("否")){
                        return new ErrorTip(500, "服务模式【跨城出行】内容不正确");
                    }
                    //判断服务模式【小件同城物流】
                    if (!six.equals("是") && !six.equals("否")){
                        return new ErrorTip(500, "服务模式【小件同城物流】内容不正确");
                    }
                    //判断服务模式【小件跨城物流】
                    if (!seven.equals("是") && !seven.equals("否")){
                        return new ErrorTip(500, "服务模式【小件跨城物流】内容不正确");
                    }
                    //判断服务模式【包车】
                    if (!eight.equals("是") && !eight.equals("否")){
                        return new ErrorTip(500, "服务模式【包车】内容不正确");
                    }
                    //判断车辆颜色
                    if (!eleven.equals("黑色") && !eleven.equals("银色") && !eleven.equals("白色") && !eleven.equals("红色") && !eleven.equals("黄色") && !eleven.equals("橙色") && !eleven.equals("蓝色")){
@@ -868,14 +833,14 @@
                    car.setCommercialInsuranceTime(DateUtil.parseDate(fifteen));
                    car.setInsertTime(new Date());
                    car.setState(1);
                    if (ShiroExtUtil.getUser().getRoleType() == 1) {
                    if (shiroExtUtil.getUser().getRoleType() == 1) {
                        car.setAddType(2);
                    } else if (ShiroExtUtil.getUser().getRoleType() == 2) {
                    } else if (shiroExtUtil.getUser().getRoleType() == 2) {
                        car.setAddType(3);
                        car.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
                    } else if (ShiroExtUtil.getUser().getRoleType() == 3) {
                        car.setAddObjectId(shiroExtUtil.getUser().getObjectId());
                    } else if (shiroExtUtil.getUser().getRoleType() == 3) {
                        car.setAddType(4);
                        car.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
                        car.setAddObjectId(shiroExtUtil.getUser().getObjectId());
                    }
                    tCarService.insert(car);
@@ -898,27 +863,6 @@
                        TCarService service = new TCarService();
                        service.setCarId(car.getId());
                        service.setType(3);
                        tCarServiceService.insert(service);
                    }
                    //添加小件同城物流服务模式
                    if ("是".equals(six)){
                        TCarService service = new TCarService();
                        service.setCarId(car.getId());
                        service.setType(4);
                        tCarServiceService.insert(service);
                    }
                    //添加小件跨城物流服务模式
                    if ("是".equals(seven)){
                        TCarService service = new TCarService();
                        service.setCarId(car.getId());
                        service.setType(5);
                        tCarServiceService.insert(service);
                    }
                    //添加包车服务模式
                    if ("是".equals(eight)){
                        TCarService service = new TCarService();
                        service.setCarId(car.getId());
                        service.setType(6);
                        tCarServiceService.insert(service);
                    }
                }
@@ -968,7 +912,7 @@
     */
    @RequestMapping(value = "/outCar")
    public void outCar(HttpServletRequest request, HttpServletResponse response) {
        List<Map<String, Object>> listMap = tCarService.getCarListNoPage(ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId());
        List<Map<String, Object>> listMap = tCarService.getCarListNoPage(shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId());
        // 表格数据【封装】
        List<List<String>> dataList = new ArrayList<>();