Pu Zhibing
7 天以前 4c99ee7028c3fe58a2cd4b8273b22c75c45574fc
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -1,8 +1,10 @@
package com.stylefeng.guns.modular.api;
import com.google.api.Http;
import com.stylefeng.guns.modular.system.model.Company;
import com.stylefeng.guns.modular.system.model.Driver;
import com.stylefeng.guns.modular.system.service.IDriverService;
import com.stylefeng.guns.modular.system.service.IOrderEvaluateService;
import com.stylefeng.guns.modular.system.model.UserInfo;
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import com.stylefeng.guns.modular.system.warpper.DriverInfoWarpper;
@@ -17,6 +19,7 @@
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
@@ -34,6 +37,12 @@
    @Autowired
    private IOrderEvaluateService orderEvaluateService;
    @Resource
    private IUserInfoService userInfoService;
    @Autowired
    private ICompanyCityService companyCityService;
@@ -47,14 +56,24 @@
     */
    @ResponseBody
    @PostMapping("/base/driver/queryIdleDriver")
    @ApiOperation(value = "获取5公里范围内空闲司机数量", tags = {"用户端-首页"}, notes = "")
    @ApiOperation(value = "获取5公里范围内空闲司机数量【1.0】", tags = {"用户端-首页"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "业务类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)", name = "type", required = true, dataType = "int"),
            @ApiImplicitParam(value = "乘客当前定位经度", name = "lon", required = true, dataType = "double"),
            @ApiImplicitParam(value = "乘客当前定位纬度", name = "lat", required = true, dataType = "double")
    })
    public ResultUtil<BaseWarpper> queryIdleDriver(Integer type, Double lon, Double lat){
    public ResultUtil<BaseWarpper> queryIdleDriver(Integer type, Double lon, Double lat, HttpServletRequest request){
        try {
            Integer uid = userInfoService.getUserIdFormRedis(request);
            if(null != uid){
                UserInfo userInfo = userInfoService.selectById(uid);
                Company company = companyCityService.query1(uid, lon.toString(), lat.toString());
                if(null != userInfo && null != company){
                    System.err.println("-----更新用户所属公司-----lon:" + lon + "---lat:" + lat);
                    userInfo.setCompanyId(company.getId());
                    userInfoService.updateById(userInfo);
                }
            }
            List<Driver> list = driverService.queryIdleDriver(type, lon, lat, 5D, null);
            BaseWarpper baseWarpper = new BaseWarpper();
            baseWarpper.setNumber(list.size());
@@ -78,12 +97,12 @@
            @ApiImplicitParam(value = "司机id", name = "id", required = true, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<DriverInfoWarpper> queryDriverInfo(Integer id){
    public ResultUtil<DriverInfoWarpper> queryDriverInfo(Integer id, Integer language){
        try {
            Map<String, Object> map = driverService.queryDriverInfo(id);
            String name = String.valueOf(map.get("name"));
            map.put("name", name.substring(0, 1) + "师傅");
            List<BaseWarpper> list = driverService.queryBusiness(id);
//            String name = String.valueOf(map.get("name"));
//            map.put("name", name.substring(0, 1) + (language == 1 ? "师傅" : language == 2 ? "driver" : "Le conducteur"));
            List<BaseWarpper> list = driverService.queryBusiness(id, language);
            map.put("list", list);
            return ResultUtil.success(DriverInfoWarpper.getDriverInfoWarpper(map));
        }catch (Exception e){
@@ -108,9 +127,9 @@
            @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<List<OrderEvaluateWarpper>> queryOrderEvaluate(Integer id, Integer pageNum, Integer size){
    public ResultUtil<List<OrderEvaluateWarpper>> queryOrderEvaluate(Integer language, Integer id, Integer pageNum, Integer size){
        try {
            List<Map<String, Object>> list = orderEvaluateService.queryOrderEvaluate(id, pageNum, size);
            List<Map<String, Object>> list = orderEvaluateService.queryOrderEvaluate(language, id, pageNum, size);
            return ResultUtil.success(OrderEvaluateWarpper.getOrderEvaluateWarpper(list));
        }catch (Exception e){
            e.printStackTrace();