longz
2026-06-04 da780b14b8db78043d2c0f27d3bfd73111e6d550
ManagementYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java
@@ -539,6 +539,13 @@
    @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,String bindDriverId) {
        String serviceModelError = validateCarServiceModel(serverBox, zcModel, kcModel);
        if (serviceModelError != null) {
            return ResultUtil.error(serviceModelError);
        }
        if (isCarLicensePlateExists(tCar.getCarLicensePlate())) {
            return ResultUtil.error("车牌号已存在");
        }
        if (1 == roleType){  //平台
            if (2 == companyType.intValue()){
                if (SinataUtil.isNotEmpty(oneId)){
@@ -678,6 +685,10 @@
    @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,String bindDriverId) {
        String serviceModelError = validateCarServiceModel(serverBox, zcModel, kcModel);
        if (serviceModelError != null) {
            return ResultUtil.error(serviceModelError);
        }
        if (1 == roleType){  //平台
            if (2 == companyType.intValue()){
                if (SinataUtil.isNotEmpty(oneId)){
@@ -787,6 +798,53 @@
            }
        }).start();
        return ResultUtil.success();
    }
    private String validateCarServiceModel(String serverBox, String zcModel, String kcModel) {
        if (hasCarServiceType(serverBox, "1") && !isPositiveInteger(zcModel)) {
            return "请选择快车车型";
        }
        if (hasCarServiceType(serverBox, "3") && !isPositiveInteger(kcModel)) {
            return "请选择跨城出行车型";
        }
        return null;
    }
    private boolean hasCarServiceType(String serverBox, String serviceType) {
        if (isBlank(serverBox)) {
            return false;
        }
        String[] serverArray = serverBox.split(",");
        for (String item : serverArray) {
            if (serviceType.equals(item.trim())) {
                return true;
            }
        }
        return false;
    }
    private boolean isBlank(String value) {
        return value == null || value.trim().length() == 0;
    }
    private boolean isCarLicensePlateExists(String carLicensePlate) {
        if (isBlank(carLicensePlate)) {
            return false;
        }
        return tCarService.selectCount(new EntityWrapper<TCar>()
                .eq("carLicensePlate", carLicensePlate.trim())
                .ne("state", 2)) > 0;
    }
    private boolean isPositiveInteger(String value) {
        if (isBlank(value)) {
            return false;
        }
        try {
            return Integer.valueOf(value) > 0;
        } catch (NumberFormatException e) {
            return false;
        }
    }
@@ -1142,6 +1200,10 @@
                        }
                    }
                    if (isCarLicensePlateExists(twelve)) {
                        return new ErrorTip(500, "车牌号已存在:" + twelve);
                    }
                    //添加车辆对象
                    TCar car = new TCar();
                    if ("平台车辆".equals(zero)){