package com.objecteye.controller; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.objecteye.common.CommonResult; import com.objecteye.pojo.NameValue; import com.objecteye.pojo.PicVehicleDataResult; import com.objecteye.pojo.VehicleCurrencyReques; import com.objecteye.service.VehicleCurrencyService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.List; import java.util.Map; @CrossOrigin @RestController @RequestMapping("/vehicle") public class VehicleCurrencyController { @Autowired private VehicleCurrencyService vehicleCurrencyService; /** * 通过车牌(支持模糊)、多条件查询车辆信息(平铺) * * @param vehicleCurrencyReques * @return */ @RequestMapping("/car/findByCondition") public CommonResult findByCondition(@RequestBody VehicleCurrencyReques vehicleCurrencyReques) { JSONObject byCondition = vehicleCurrencyService.findByCondition(vehicleCurrencyReques); JSONArray row = byCondition.getJSONArray("row"); if (row != null && row.size() > 0 && byCondition.getInteger("total") > 0) { return CommonResult.success(byCondition); } else if (row == null || row.size() == 0) { return CommonResult.success(201, "没有符合要求的数据", byCondition); } else { return CommonResult.success(byCondition, "数据异常"); } } /** * 通过车辆图片以及其他条件查询车辆 * * @param number * @param threshold * @param currentpage * @param pagevolume * @param picfile * @param starttime * @param endtime * @return */ @RequestMapping("/car/findByPic") public CommonResult findByPic(@RequestParam int number, @RequestParam double threshold, @RequestParam int currentpage, @RequestParam int pagevolume, MultipartFile picfile, @RequestParam Long starttime, @RequestParam Long endtime) throws InterruptedException { return vehicleCurrencyService.findVehicleByPic(number, threshold, currentpage, pagevolume, picfile, starttime, endtime); } /** * 返回所有车辆类型的首字母 * List selectDisplayForInitials(); * * @return */ @RequestMapping("/vehicleBase/getVehicleModelId") public CommonResult> selectDisplayForInitials() { return vehicleCurrencyService.selectDisplayForInitials(); } /** * 根据首字母返回符合要求的车辆品牌 * List selectDisplayForBrand(); * * @return */ @RequestMapping("/vehicleBase/getVehicleModelInitials") public CommonResult> selectDisplayForBrand(@RequestBody Map map) { return vehicleCurrencyService.selectDisplayForBrand(map.get("vehicleModelInitials")); } /** * 根据车辆品牌返回符合要求的车辆子品牌 * List selectDisplayForSubbrand(); * * @return */ @RequestMapping("/vehicleBase/getVehicleModelSubbrandByBrand") public CommonResult> selectDisplayForSubbrand(@RequestBody Map map) { return vehicleCurrencyService.selectDisplayForSubbrand(map.get("vehicleModelBrand")); } /** * 根据车辆子品牌查询生产年限 * List selectDisplayForBirthday(); * * @return */ @RequestMapping("/vehicleBase/getVehicleModelBirthdayBySubbrand") public CommonResult> selectDisplayForBirthday(@RequestBody Map map) { return vehicleCurrencyService.selectDisplayForBirthday(map.get("vehicleModelSubbrand")); } /** * 返回所有车辆类型列表 * * @return */ @RequestMapping("/vehicleBase/getVehicleTypeList") public CommonResult> displayVehicleTypeList() { return vehicleCurrencyService.displayVehicleTypeList(); } /** * 返回所有车辆车身颜色列表 * * @return */ @RequestMapping("/vehicleBase/getVehicleColorList") public CommonResult> displayVehicleColorList() { return vehicleCurrencyService.displayVehicleColorList(); } /** * 返回所有车辆号牌类型列表 * * @return */ @RequestMapping("/vehicleBase/getVehiclePlateTypeList") public CommonResult> displayVehiclePlateTypeList() { return vehicleCurrencyService.displayVehiclePlateTypeList(); } /** * 返回所有车辆年检标个数列表 * * @return */ @RequestMapping("/vehicleBase/getVehicleNjbNumberList") public CommonResult> displayVehicleNjbNumberList() { return vehicleCurrencyService.displayVehicleNjbNumberList(); } }