package com.stylefeng.guns.modular.crossCity.controller; import com.stylefeng.guns.modular.crossCity.server.ILineService; import com.stylefeng.guns.modular.crossCity.warpper.LineWarpper; import com.stylefeng.guns.modular.system.dao.CarMapper; import com.stylefeng.guns.modular.system.model.Car; import com.stylefeng.guns.modular.system.model.Company; import com.stylefeng.guns.modular.system.service.ICompanyService; import com.stylefeng.guns.modular.system.util.ResultUtil; import com.stylefeng.guns.modular.system.warpper.BaseWarpper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import java.util.List; import java.util.Map; /** * 线路控制器 */ @Api @RestController @RequestMapping("") public class LineController { @Autowired private ILineService lineService; @Autowired private CarMapper carMapper; @Autowired private ICompanyService companyService; @ResponseBody @RequestMapping(value = "/base/line/queryLines", method = RequestMethod.POST) @ApiOperation(value = "根据选择的起点和终点获取线路", tags = {"用户端-跨城"}, notes = "") @ApiImplicitParams({ @ApiImplicitParam(value = "起始站点id", name = "startId", required = true, dataType = "int"), @ApiImplicitParam(value = "终点站点id", name = "endId", required = true, dataType = "int"), @ApiImplicitParam(value = "司机id", name = "driverId", required = false, dataType = "int") }) public ResultUtil> queryLines(Integer startId, Integer endId, Integer driverId){ try { List> list = lineService.queryLines(startId, endId, driverId); return ResultUtil.success(LineWarpper.getLineWarppers(list)); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } @ResponseBody @RequestMapping(value = "/base/line/queryFirstLineDestinations", method = RequestMethod.POST) @ApiOperation(value = "根据起始站点和终点站点获取第一条线路目的地列表", tags = {"用户端-跨城"}, notes = "可能为空") @ApiImplicitParams({ @ApiImplicitParam(value = "起始站点id", name = "startId", required = true, dataType = "int"), @ApiImplicitParam(value = "终点站点id", name = "endId", required = true, dataType = "int") }) public ResultUtil>> queryFirstLineDestinations(Integer startId, Integer endId){ try { return ResultUtil.success(lineService.queryFirstLineDestinations(startId, endId)); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } @ResponseBody @RequestMapping(value = "/base/line/queryFutureLinesByDriver", method = RequestMethod.POST) @ApiOperation(value = "根据司机id获取当前时间之后发车的城际线路", tags = {"用户端-跨城"}, notes = "") @ApiImplicitParams({ @ApiImplicitParam(value = "司机id", name = "driverId", required = true, dataType = "int") }) public ResultUtil>> queryFutureLinesByDriver(Integer driverId){ try { return ResultUtil.success(lineService.queryFutureLinesByDriver(driverId)); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } @ResponseBody @RequestMapping(value = "/base/line/confirm", method = RequestMethod.POST) @ApiOperation(value = "判断当前是否需要摆渡车", tags = {"用户端-跨城"}, notes = "") public ResultUtil confirm(Integer carId){ Car car = carMapper.selectById(carId); Company company = companyService.selectById(car.getCompanyId()); return ResultUtil.success(company.getIsNeedFerry()); } // @ResponseBody // @RequestMapping(value = "/base/line/scanCodeQueryLines", method = RequestMethod.POST) // @ApiOperation(value = "扫码获取线路信息", tags = {"用户端-跨城"}, notes = "") // @ApiImplicitParams({ // @ApiImplicitParam(value = "司机id", name = "driverId", required = true, dataType = "int") // }) // public ResultUtil> scanCodeQueryLines(Integer driverId){ // try { // List> list = lineService.scanCodeQueryLines(driverId); // return ResultUtil.success(BaseWarpper.getBaseWarppers(list)); // }catch (Exception e){ // e.printStackTrace(); // return ResultUtil.runErr(); // } // } }