puzhibing
2023-12-08 30d6ddaa04fd7b66e2041f1856e182b7c6a94918
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -1,6 +1,7 @@
package com.stylefeng.guns.modular.api;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.crossCity.model.OrderCrossCity;
import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
@@ -8,10 +9,7 @@
import com.stylefeng.guns.modular.smallLogistics.server.IOrderLogisticsService;
import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar;
import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
import com.stylefeng.guns.modular.system.model.City;
import com.stylefeng.guns.modular.system.model.Driver;
import com.stylefeng.guns.modular.system.model.Income;
import com.stylefeng.guns.modular.system.model.OrderPosition;
import com.stylefeng.guns.modular.system.model.*;
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.util.ALiSendSms;
import com.stylefeng.guns.modular.system.util.ResultUtil;
@@ -80,6 +78,9 @@
    @Value("${share.url}")
    private String shareUrl;
    @Autowired
    private TEmailService emailService;
@@ -184,12 +185,22 @@
    @ApiOperation(value = "验证验证码", tags = {"司机端-注册"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "邮箱", name = "email", required = true, dataType = "String"),
            @ApiImplicitParam(value = "手机号码", name = "phone", required = true, dataType = "String"),
            @ApiImplicitParam(value = "验证码", name = "code", required = true, dataType = "String")
    })
    public ResultUtil checkCaptcha(String email, String code, Integer language){
    public ResultUtil checkCaptcha(String email, String phone, String code, Integer language){
        try {
            boolean b = driverService.checkCaptcha(email, code);
            return b ? ResultUtil.success() : ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide");
            if(ToolUtil.isNotEmpty(phone)){
                String substring = phone.substring(0, 1);
                if("0".equals(substring)){
                    phone = "233" + phone.substring(1);
                }
                if(phone.indexOf("233") < 0){
                    phone = "233" + phone;
                }
            }
            boolean b = driverService.checkCaptcha(email, phone, code);
            return b ? ResultUtil.success() : ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid CAPTCHA" : "CAPTCHA non valide");
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -220,6 +231,20 @@
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            switch (phoneOperator){
                case "MTN":
                    phoneOperator = "GH-MTN-B2C";
                    break;
                case "TIGO":
                    phoneOperator = "GH-TIGO-B2C";
                    break;
                case "VODAFONE":
                    phoneOperator = "GH-VODAFONE-B2C";
                    break;
                case "AIRTEL":
                    phoneOperator = "GH-AIRTEL-B2C";
                    break;
            }
            return driverService.registeredDriver(phoneOperator, phone, code, password, uid, type, userType, language);
        }catch (Exception e){
@@ -256,6 +281,20 @@
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            switch (phoneOperator){
                case "MTN":
                    phoneOperator = "GH-MTN-B2C";
                    break;
                case "TIGO":
                    phoneOperator = "GH-TIGO-B2C";
                    break;
                case "VODAFONE":
                    phoneOperator = "GH-VODAFONE-B2C";
                    break;
                case "AIRTEL":
                    phoneOperator = "GH-AIRTEL-B2C";
                    break;
            }
            return driverService.registeredDriver(phoneOperator, phone, code, password, uid, type, userType, language);
        }catch (Exception e){
@@ -328,6 +367,25 @@
        }
    }
    @ResponseBody
    @PostMapping("/api/driver/getEmailList")
    @ApiOperation(value = "获取邮箱信息", tags = {"司机端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<?> getEmailList(HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            return ResultUtil.success(emailService.selectList(new EntityWrapper<TEmail>().eq("userId",uid).eq("type",2).orderBy("createTime",false)));
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
        }
    }
    /**
@@ -438,7 +496,6 @@
        }
    }
    /**
     * 获取忘记密码页面的电话
     * @return
@@ -502,20 +559,19 @@
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<HomeWarpper> queryHomeData(HttpServletRequest request){
    public ResultUtil<HomeWarpper> queryHomeData(Integer language, HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            Map<String, Object> map = driverService.queryHomeData(uid);
            Map<String, Object> map = driverService.queryHomeData(uid, language);
            return ResultUtil.success(HomeWarpper.getHomeWarpper(map));
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
        }
    }
    /**
     * 司机上下班操作
@@ -597,7 +653,6 @@
        }
    }
    @ResponseBody
    @PostMapping("/api/driver/work2")
    @ApiOperation(value = "司机上下班操作,同时设置接单类型【1.0】", tags = {"司机端-车载端"}, notes = "")
@@ -618,7 +673,6 @@
        }
    }
    @ResponseBody
    @PostMapping("/api/driver/queryHomeNum")
    @ApiOperation(value = "获取首页统计数据", tags = {"司机端-车载端"}, notes = "")
@@ -638,8 +692,6 @@
            return ResultUtil.runErr();
        }
    }
    /**
     * 上班时选择的业务类型
@@ -675,7 +727,6 @@
        }
    }
    /**
     * 存储订单服务中的司机位置
     * @param orderPosition
@@ -693,26 +744,21 @@
        }
    }
    @ResponseBody
    @PostMapping("/base/driver/queryInfo_")
    @ApiOperation(value = "根据用户id获取数据", tags = {"司机端-注册"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "司机id", name = "uid", required = true, dataType = "int"),
    })
    public ResultUtil<DriverInfoWarpper> queryInfo_(Integer uid){
    public ResultUtil<DriverInfoWarpper> queryInfo_(Integer language, Integer uid){
        try {
            Map<String, Object> map = driverService.queryInfo(uid);
            Map<String, Object> map = driverService.queryInfo(language, uid);
            return ResultUtil.success(DriverInfoWarpper.getDriverInfoWarpper(map));
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
        }
    }
    /**
     * 获取个人中心详情
@@ -725,13 +771,13 @@
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<DriverInfoWarpper> queryInfo(HttpServletRequest request){
    public ResultUtil<DriverInfoWarpper> queryInfo(Integer language, HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            Map<String, Object> map = driverService.queryInfo(uid);
            Map<String, Object> map = driverService.queryInfo(language, uid);
            map.put("qrCodeIsOpen",driverService.getAppOpenInfo(1)==1);
            DriverInfoWarpper driverInfoWarpper = DriverInfoWarpper.getDriverInfoWarpper(map);
//            Double money = driverService.getThisWeekMoney(uid);
@@ -743,7 +789,6 @@
            return ResultUtil.runErr();
        }
    }
    /**
     * 修改手机号码
@@ -774,6 +819,20 @@
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            switch (phoneOperator){
                case "MTN":
                    phoneOperator = "GH-MTN-B2C";
                    break;
                case "TIGO":
                    phoneOperator = "GH-TIGO-B2C";
                    break;
                case "VODAFONE":
                    phoneOperator = "GH-VODAFONE-B2C";
                    break;
                case "AIRTEL":
                    phoneOperator = "GH-AIRTEL-B2C";
                    break;
            }
            return driverService.updatePhone(phoneOperator, phone, code, uid, language);
        }catch (Exception e){
            e.printStackTrace();
@@ -802,8 +861,6 @@
        }
    }
    /**
     * 修改密码
     * @param password
@@ -830,7 +887,6 @@
            return ResultUtil.runErr();
        }
    }
    /**
     * 获取设置接单的业务类型列表
@@ -866,10 +922,6 @@
        }
    }
    /**
     * 设置接单规则
     * @param type
@@ -896,7 +948,6 @@
        }
    }
    /**
     * 获取当前车辆及空闲车辆
     * @param request
@@ -921,7 +972,6 @@
            return ResultUtil.runErr();
        }
    }
    /**
     * 更换车辆
@@ -990,13 +1040,13 @@
            @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<BaseWarpper>> queryPenalties(Integer pageNum, Integer size, HttpServletRequest request){
    public ResultUtil<List<BaseWarpper>> queryPenalties(Integer language, Integer pageNum, Integer size, HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            List<Map<String, Object>> list = driverService.queryPenalties(pageNum, size, uid);
            List<Map<String, Object>> list = driverService.queryPenalties(language, pageNum, size, uid);
            List<BaseWarpper> data = new ArrayList<>();
            for(Map<String, Object> map : list){
                BaseWarpper baseWarpper = new BaseWarpper();
@@ -1034,7 +1084,7 @@
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            List<Map<String, Object>> list = driverService.queryActivityIncome(uid, pageNum, size);
            List<Map<String, Object>> list = driverService.queryActivityIncome(language, uid, pageNum, size);
            List<BaseWarpper> data = new ArrayList<>();
            for(Map<String, Object> map : list){
                BaseWarpper baseWarpper = new BaseWarpper();
@@ -1072,7 +1122,7 @@
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            List<Map<String, Object>> list = driverService.queryTotalRevenue(uid, pageNum, size);
            List<Map<String, Object>> list = driverService.queryTotalRevenue(language, uid, pageNum, size);
            List<BaseWarpper> data = new ArrayList<>();
            for(Map<String, Object> map : list){
                BaseWarpper baseWarpper = new BaseWarpper();
@@ -1080,7 +1130,7 @@
                baseWarpper.setAmount(Double.valueOf(String.valueOf(null != map.get("money") ? map.get("money") : 0)));
                switch (Integer.valueOf(String.valueOf(null != map.get("orderType") ? map.get("orderType") : 0))){
                    case 1:
                        baseWarpper.setName(language == 1 ? "专车" : language == 2 ? "Special car" : "véhicules");
                        baseWarpper.setName(language == 1 ? "打车" : language == 2 ? "Ride" : "Course");
                        break;
                    case 2:
                        baseWarpper.setName(language == 1 ? "出租车" : language == 2 ? "taxi" : "taxi");
@@ -1089,7 +1139,7 @@
                        baseWarpper.setName(language == 1 ? "城际出行" : language == 2 ? "Intercity travel" : "Mobilité entre villes");
                        break;
                    case 4:
                        baseWarpper.setName(language == 1 ? "市内小件物流" : language == 2 ? "Small parts logistics in the city" : "Logistique de petites pièces dans la ville");
                        baseWarpper.setName(language == 1 ? "包裹" : language == 2 ? "Package" : "Livraison");
                        break;
                    case 5:
                        baseWarpper.setName(language == 1 ? "跨城小件物流" : language == 2 ? "Cross-city small parts logistics" : "Logistique des petites pièces à travers la ville");
@@ -1166,13 +1216,13 @@
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<List<ActivityWarpper>> queryMyActivity(HttpServletRequest request){
    public ResultUtil<List<ActivityWarpper>> queryMyActivity(Integer language, HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            return ResultUtil.success(driverService.queryMyActivity(uid, new Date()));
            return ResultUtil.success(driverService.queryMyActivity(uid, new Date(), language));
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -1195,13 +1245,13 @@
            @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 queryHistoryActivity(Integer pageNum, Integer size, HttpServletRequest request){
    public ResultUtil queryHistoryActivity(Integer language, Integer pageNum, Integer size, HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            List<Map<String, Object>> list = driverService.queryHistory(uid, pageNum, size);
            List<Map<String, Object>> list = driverService.queryHistory(language, uid, pageNum, size);
            return ResultUtil.success(list);
        }catch (Exception e){
            e.printStackTrace();
@@ -1223,14 +1273,14 @@
            @ApiImplicitParam(value = "查询的给定日期", name = "time", required = true, dataType = "string"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil queryHistoryActivityInfo(String time, HttpServletRequest request){
    public ResultUtil queryHistoryActivityInfo(String time, Integer language, HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
            List<ActivityWarpper> activityWarppers = driverService.queryMyActivity(uid, sdf.parse(time));
            List<ActivityWarpper> activityWarppers = driverService.queryMyActivity(uid, sdf.parse(time), language);
            return ResultUtil.success(activityWarppers);
        }catch (Exception e){
            e.printStackTrace();
@@ -1417,13 +1467,13 @@
            @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 getInviteList(Integer type,Integer pageNum, Integer size, HttpServletRequest request){
    public ResultUtil getInviteList(Integer language, Integer type,Integer pageNum, Integer size, HttpServletRequest request){
        try {
            Integer uid = driverService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            List<Map<String,Object>> list = driverService.queryMyInviteList(type,uid, pageNum, size);
            List<Map<String,Object>> list = driverService.queryMyInviteList(language, type,uid, pageNum, size);
            return ResultUtil.success(DriverInviteInfoWarpper.getDriverInviteInfoWarpper(list));
        }catch (Exception e){
            e.printStackTrace();