liujie
4 天以前 9495425698ee25afa66e648a26404c0b7181ce4e
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java
@@ -1,6 +1,7 @@
package com.stylefeng.guns.modular.system.controller.general;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.base.tips.ErrorTip;
@@ -16,6 +17,7 @@
import com.stylefeng.guns.modular.system.util.ExcelExportUtil;
import com.stylefeng.guns.modular.system.util.PushMinistryOfTransportUtil;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.sun.org.apache.bcel.internal.generic.NEW;
import org.apache.commons.lang.time.DateUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
@@ -80,7 +82,7 @@
    
    @Resource
    private CarInsuranceMapper carInsuranceMapper;
    @Resource
    @Autowired
    private ShiroExtUtil shiroExtUtil;
    
    
@@ -230,6 +232,90 @@
        return PREFIX + "tCar_edit.html";
    }
    @RequestMapping("/tCar_update1/{tCarId}")
    public String tCarUpdate1(@PathVariable Integer tCarId, Model model) {
        TCar tCar = tCarService.selectById(tCarId);
        model.addAttribute("item", tCar);
        LogObjectHolder.me().set(tCar);
        Integer roleType = shiroExtUtil.getUser().getRoleType();
        model.addAttribute("roleType", roleType);
        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));
            model.addAttribute("companyList", companyList);
            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));
            model.addAttribute("franchiseeList", franchiseeList);
        }
        //查询平台ID
        TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
        //判断是平台司机还是加盟司机
        if ((SinataUtil.isEmpty(tCar.getCompanyId()) || tCar.getCompanyId() == 0 || tCar.getCompanyId() == company.getId()) && (SinataUtil.isEmpty(tCar.getFranchiseeId()) || tCar.getFranchiseeId() == 0)){
            model.addAttribute("companyType",1);
        }else{
            model.addAttribute("companyType",2);
        }
        //获取经营业务
        List<TCarService> serviceList = tCarServiceService.selectList(new EntityWrapper<TCarService>().eq("carId", tCar.getId()));
        Integer one = 1;
        Integer two = 1;
        Integer three = 1;
        Integer four = 1;
        Integer five = 1;
        Integer six = 1;
        Integer zcModel = 0;
        Integer kcModel = 0;
        for (TCarService obj : serviceList){
            if (obj.getType() == 1){
                one = 2;
                zcModel = obj.getServerCarModelId();
            }
            if (obj.getType() == 2){
                two = 2;
            }
            if (obj.getType() == 3){
                three = 2;
                kcModel = obj.getServerCarModelId();
            }
            if (obj.getType() == 4){
                four = 2;
            }
            if (obj.getType() == 5){
                five = 2;
            }
            if (obj.getType() == 6){
                six = 2;
            }
        }
        model.addAttribute("one",one);
        model.addAttribute("two",two);
        model.addAttribute("three",three);
        model.addAttribute("four",four);
        model.addAttribute("five",five);
        model.addAttribute("six",six);
        model.addAttribute("zcModel",zcModel);
        model.addAttribute("kcModel",kcModel);
        List<TServerCarmodel> zcModelList = itServerCarmodelService.selectList(new EntityWrapper<TServerCarmodel>().eq("type", 1).eq("state", 1));
        model.addAttribute("zcModelList",zcModelList);
        List<TServerCarmodel> kcModelList = itServerCarmodelService.selectList(new EntityWrapper<TServerCarmodel>().eq("type", 2).eq("state", 1));
        model.addAttribute("kcModelList",kcModelList);
        //车辆品牌
        List<TCarBrand> brandList = tCarBrandService.selectList(new EntityWrapper<TCarBrand>().eq("state", 1));
        model.addAttribute("brandList",brandList);
        //车辆类型
        List<TCarModel> modelList = tCarModelService.selectList(new EntityWrapper<TCarModel>().eq("brandId",tCar.getCarBrandId()).eq("state", 1));
        model.addAttribute("modelList",modelList);
        return PREFIX + "tCar_edit1.html";
    }
    /**
     * 跳转到保险列表页
@@ -316,6 +402,9 @@
    }
    /**
     * 获取保险列表
     * @param carId
@@ -392,7 +481,7 @@
     */
    @RequestMapping(value = "/add")
    @ResponseBody
    public Object add(TCar tCar,@RequestParam String serverBox,Integer roleType,Integer companyType,Integer oneId,Integer twoId,Integer franchiseeId,String zcModel,String kcModel) {
    public Object add(TCar tCar,@RequestParam String serverBox,Integer roleType,Integer companyType,Integer oneId,Integer twoId,Integer franchiseeId,String zcModel,String kcModel,String bindDriverId) {
        if (1 == roleType){  //平台
            if (2 == companyType.intValue()){
                if (SinataUtil.isNotEmpty(oneId)){
@@ -432,6 +521,7 @@
        }
        tCar.setInsertTime(new Date());
        tCar.setState(1);
        tCar.setBindDriverId(bindDriverId);
        tCarService.insert(tCar);
        //添加经营业务
@@ -488,13 +578,26 @@
        }).start();
        return SUCCESS_TIP;
    }
    @ResponseBody
    @RequestMapping(value = "/selectDriverFromCompanyId", method = RequestMethod.POST)
    public Object selectDriverFromCompanyId(Integer companyId){
        Wrapper<TDriver> companyId1 = new EntityWrapper<TDriver>().eq("companyId", companyId).eq("authState", 2).ne("flag", 3);
        List<TDriver> tDrivers = tDriverService.selectList(companyId1);
        ArrayList<Map<String, Object>> list = new ArrayList<>();
        for (TDriver tDriver : tDrivers){
            HashMap<String, Object> map = new HashMap<>();
            map.put("id", tDriver.getId());
            map.put("name", tDriver.getName());
            list.add(map);
        }
        return list;
    }
    /**
     * 修改车辆管理
     */
    @RequestMapping(value = "/update")
    @ResponseBody
    public Object update(TCar tCar,@RequestParam String serverBox,Integer roleType,Integer companyType,Integer oneId,Integer twoId,Integer franchiseeId,String zcModel,String kcModel) {
    public Object update(TCar tCar,@RequestParam String serverBox,Integer roleType,Integer companyType,Integer oneId,Integer twoId,Integer franchiseeId,String zcModel,String kcModel,String bindDriverId) {
        if (1 == roleType){  //平台
            if (2 == companyType.intValue()){
                if (SinataUtil.isNotEmpty(oneId)){
@@ -577,6 +680,10 @@
        obj.setGPSModel(tCar.getGPSModel());
        obj.setRegisterDate(tCar.getRegisterDate());
        obj.setCommercialType(tCar.getCommercialType());
        if(bindDriverId==null){
            bindDriverId="";
        }
        obj.setBindDriverId(bindDriverId);
        tCarService.updateAllColumnById(obj);
        new Thread(new Runnable() {
            @Override
@@ -586,6 +693,17 @@
                }
            }
        }).start();
        return SUCCESS_TIP;
    }
    @RequestMapping(value = "/update1")
    @ResponseBody
    public Object update1(TCar tCar,String bindDriverId) {
        TCar obj = tCarService.selectById(tCar.getId());
        if(bindDriverId==null){
            bindDriverId="";
        }
        obj.setBindDriverId(bindDriverId);
        tCarService.updateById(obj);
        return SUCCESS_TIP;
    }
@@ -659,79 +777,183 @@
                Cell cell0 = row.getCell(0);  //所属机构[平台车辆/加盟车辆]
                String zero = null;
                if (SinataUtil.isNotEmpty(cell0)){
                    zero = String.valueOf(cell0.getStringCellValue()).trim();
                    int cellType = cell0.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            zero = cell0.getStringCellValue().trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            zero = String.valueOf((long)cell0.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell1 = row.getCell(1);  //所属分公司[提示:加盟车辆选填]
                String one = null;
                if (SinataUtil.isNotEmpty(cell1)){
                    one = String.valueOf(cell1.getStringCellValue()).trim();
                    int cellType = cell1.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            one = cell1.getStringCellValue().trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            one = String.valueOf((long)cell1.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell2 = row.getCell(2);  //所属加盟商[提示:加盟车辆选填]
                String two = null;
                if (SinataUtil.isNotEmpty(cell2)){
                    two = String.valueOf(cell2.getStringCellValue()).trim();
                    int cellType = cell2.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            two = cell2.getStringCellValue().trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            two = String.valueOf((long)cell2.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell3 = row.getCell(3);  //服务模式:快车[是/否]
                String three = null;
                if (SinataUtil.isNotEmpty(cell3)){
                    three = String.valueOf(cell3.getStringCellValue()).trim();
                    int cellType = cell3.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            three = cell3.getStringCellValue().trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            three = String.valueOf((long)cell3.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell4 = row.getCell(4);  //服务模式:出租车[是/否]
                String four = null;
                if (SinataUtil.isNotEmpty(cell4)){
                    four = String.valueOf(cell4.getStringCellValue()).trim();
                    int cellType = cell4.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            four = cell4.getStringCellValue().trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            four = String.valueOf((long)cell4.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell5 = row.getCell(5);  //服务模式:跨城出行[是/否]
                String five = null;
                if (SinataUtil.isNotEmpty(cell5)){
                    five = String.valueOf(cell5.getStringCellValue()).trim();
                    int cellType = cell5.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            five = cell5.getStringCellValue().trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            five = String.valueOf((long)cell5.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell9 = row.getCell(6);  //车辆品牌
                String nine = null;
                if (SinataUtil.isNotEmpty(cell9)){
                    nine = String.valueOf(cell9.getStringCellValue()).trim();
                    int cellType = cell9.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            nine = String.valueOf(cell9.getStringCellValue()).trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            nine = String.valueOf((long)cell9.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell10 = row.getCell(7);  //车辆类型
                String ten = null;
                if (SinataUtil.isNotEmpty(cell10)){
                    ten = String.valueOf(cell10.getStringCellValue()).trim();
                    int cellType = cell10.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            ten = String.valueOf(cell10.getStringCellValue()).trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            ten = String.valueOf((long)cell10.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell11 = row.getCell(8);  //车辆颜色[黑色/银色/白色/红色/黄色/橙色/蓝色]
                String eleven = null;
                if (SinataUtil.isNotEmpty(cell11)){
                    eleven = String.valueOf(cell11.getStringCellValue()).trim();
                    int cellType = cell11.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            eleven = String.valueOf(cell11.getStringCellValue()).trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            eleven = String.valueOf((long)cell11.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell12 = row.getCell(9);  //车牌号
                String twelve = null;
                if (SinataUtil.isNotEmpty(cell12)){
                    twelve = String.valueOf(cell12.getStringCellValue()).trim();
                    int cellType = cell12.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            twelve = String.valueOf(cell12.getStringCellValue()).trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            twelve = String.valueOf((long)cell12.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell13 = row.getCell(10);  //行驶证编号
                String thirteen = null;
                if (SinataUtil.isNotEmpty(cell13)){
                    thirteen = String.valueOf(cell13.getStringCellValue()).trim();
                    int cellType = cell13.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            thirteen = String.valueOf(cell13.getStringCellValue()).trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            thirteen = String.valueOf((long)cell13.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell14 = row.getCell(11);  //年检到期时间
                String fourteen = null;
                if (SinataUtil.isNotEmpty(cell14)){
                    fourteen = String.valueOf(cell14.getStringCellValue()).trim();
                    int cellType = cell14.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            fourteen = String.valueOf(cell14.getStringCellValue()).trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            fourteen = String.valueOf((long)cell14.getNumericCellValue()).trim();
                            break;
                    }
                }
                Cell cell15 = row.getCell(12);  //商业保险到期时间
                String fifteen = null;
                if (SinataUtil.isNotEmpty(cell15)){
                    fifteen = String.valueOf(cell15.getStringCellValue()).trim();
                    int cellType = cell15.getCellType();
                    switch (cellType) {
                        case Cell.CELL_TYPE_STRING:
                            fifteen = String.valueOf(cell15.getStringCellValue()).trim();
                            break;
                        case Cell.CELL_TYPE_NUMERIC:
                            fifteen = String.valueOf((long)cell15.getNumericCellValue()).trim();
                            break;
                    }
                }
                if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(three) || SinataUtil.isEmpty(four)