puzhibing
2023-07-04 b5ff50145e846637838a7905610aed3f4ada5e72
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java
@@ -123,6 +123,13 @@
            try {
               /* HttpSession session = request.getSession();
                String code = (String)session.getAttribute(Constants.KAPTCHA_SESSION_KEY);*/
                String substring = phone.substring(0, 1);
                if("0".equals(substring)){
                    phone = "233" + phone.substring(1);
                }
                if(phone.indexOf("233") < 0){
                    phone = "233" + phone;
                }
                String code = redisUtil.getValue(phone+"_Code");
                System.out.println("缓存中验证码为:"+code);
                if (ToolUtil.isEmpty(kaptcha) || !kaptcha.equalsIgnoreCase(code)) {
@@ -150,6 +157,13 @@
    public ResultUtil queryCaptcha1(String phone, Integer type){
        if(ToolUtil.isNotEmpty(phone)){
            try {
                String substring = phone.substring(0, 1);
                if("0".equals(substring)){
                    phone = "233" + phone.substring(1);
                }
                if(phone.indexOf("233") < 0){
                    phone = "233" + phone;
                }
                return userInfoService.queryCaptcha(phone, type);
            }catch (Exception e){
                e.printStackTrace();
@@ -239,17 +253,25 @@
     */
    @ResponseBody
    @PostMapping("/base/user/captchaLogin")
    @ApiOperation(value = "手机验证码登录", tags = {"用户端-登录"}, notes = "")
    @ApiOperation(value = "手机验证码登录【1.1】", tags = {"用户端-登录"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "手机号运营商(GH-MTN-B2C、GH-TIGO-B2C、GH-VODAFONE-B2C、GH-AIRTEL-B2C)", name = "phoneOperator", required = true, dataType = "String"),
            @ApiImplicitParam(value = "手机号码", name = "phone", required = true, dataType = "String"),
            @ApiImplicitParam(value = "短信验证码", name = "code", required = true, dataType = "String"),
            @ApiImplicitParam(value = "ip地址", name = "registIp", required = false, dataType = "String"),
            @ApiImplicitParam(value = "纬度", name = "lat", required = false, dataType = "double"),
            @ApiImplicitParam(value = "经度", name = "lng", required = false, dataType = "double")
    })
    public ResultUtil<LoginWarpper> captchaLogin(String phone, String code, String registIp, Double lat, Double lng, Integer language){
    public ResultUtil<LoginWarpper> captchaLogin(String phoneOperator, String phone, String code, String registIp, Double lat, Double lng, Integer language){
        try {
            return userInfoService.captchaLogin(phone, code, registIp, lat, lng,null,null,null,language);
            String substring = phone.substring(0, 1);
            if("0".equals(substring)){
                phone = "233" + phone.substring(1);
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            return userInfoService.captchaLogin(phoneOperator, phone, code, registIp, lat, lng,null,null,null,language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -266,17 +288,25 @@
     */
    @ResponseBody
    @PostMapping("/base/user/captchaLogin_")
    @ApiOperation(value = "手机验证码登录", tags = {"分享专用"}, notes = "")
    @ApiOperation(value = "手机验证码登录【1.1】", tags = {"分享专用"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "手机号运营商(GH-MTN-B2C、GH-TIGO-B2C、GH-VODAFONE-B2C、GH-AIRTEL-B2C)", name = "phoneOperator", required = true, dataType = "String"),
            @ApiImplicitParam(value = "手机号码", name = "phone", required = true, dataType = "String"),
            @ApiImplicitParam(value = "短信验证码", name = "code", required = true, dataType = "String"),
            @ApiImplicitParam(value = "分享的用户id", name = "uid", required = true, dataType = "int"),
            @ApiImplicitParam(value = "用户类型(1=用户,2=司机)", name = "type", required = true, dataType = "int"),
            @ApiImplicitParam(value = "注册类型(1=司机注册,2=用户注册)", name = "userType", required = true, dataType = "int")
    })
    public ResultUtil<LoginWarpper> captchaLogin_(String phone, String code, Integer uid, Integer type, Integer userType, Integer language){
    public ResultUtil<LoginWarpper> captchaLogin_(String phoneOperator, String phone, String code, Integer uid, Integer type, Integer userType, Integer language){
        try {
            return userInfoService.captchaLogin(phone, code, uid, type, userType, language);
            String substring = phone.substring(0, 1);
            if("0".equals(substring)){
                phone = "233" + phone.substring(1);
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            return userInfoService.captchaLogin(phoneOperator, phone, code, uid, type, userType, language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -303,6 +333,13 @@
    public ResultUtil<LoginWarpper> userLogin(String phone, String password, Integer language){
        if(ToolUtil.isNotEmpty(phone) && ToolUtil.isNotEmpty(password)){
            try {
                String substring = phone.substring(0, 1);
                if("0".equals(substring)){
                    phone = "233" + phone.substring(1);
                }
                if(phone.indexOf("233") < 0){
                    phone = "233" + phone;
                }
                return userInfoService.userLogin(phone, password, language);
            }catch (Exception e){
                e.printStackTrace();
@@ -332,6 +369,13 @@
    public ResultUtil forgetPassword(String phone, String code, String password, Integer language){
        if(ToolUtil.isNotEmpty(phone) && ToolUtil.isNotEmpty(code) && ToolUtil.isNotEmpty(password)){
            try {
                String substring = phone.substring(0, 1);
                if("0".equals(substring)){
                    phone = "233" + phone.substring(1);
                }
                if(phone.indexOf("233") < 0){
                    phone = "233" + phone;
                }
                return userInfoService.forgetPassword(phone, code, password, language);
            }catch (Exception e){
                e.printStackTrace();
@@ -431,19 +475,27 @@
     */
    @ResponseBody
    @PostMapping("/api/user/bindingPhone")
    @ApiOperation(value = "设置电话号码", tags = {"用户端-登录"}, notes = "")
    @ApiOperation(value = "设置电话号码【1.1】", tags = {"用户端-登录"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "手机号运营商(GH-MTN-B2C、GH-TIGO-B2C、GH-VODAFONE-B2C、GH-AIRTEL-B2C)", name = "phoneOperator", required = true, dataType = "String"),
            @ApiImplicitParam(value = "电话号码", name = "phone", required = true, dataType = "String"),
            @ApiImplicitParam(value = "验证码", name = "code", required = false, dataType = "String"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<LoginWarpper> bindingPhone(String phone, String code, Integer language, HttpServletRequest request){
    public ResultUtil<LoginWarpper> bindingPhone(String phoneOperator, String phone, String code, Integer language, HttpServletRequest request){
        try {
            Integer uid = userInfoService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            return userInfoService.bindingPhone(uid, phone, code, language);
            String substring = phone.substring(0, 1);
            if("0".equals(substring)){
                phone = "233" + phone.substring(1);
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            return userInfoService.bindingPhone(uid, phoneOperator, phone, code, language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -514,6 +566,13 @@
    })
    public ResultUtil<Object> queryUser(String phone){
        try {
            String substring = phone.substring(0, 1);
            if("0".equals(substring)){
                phone = "233" + phone.substring(1);
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            Map<String, Object> map = userInfoService.queryUser(phone);
            if(null != map){
                return ResultUtil.success(UserInfoWarpper.getUserInfoWarpper(map));
@@ -573,6 +632,13 @@
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            String substring = phone.substring(0, 1);
            if("0".equals(substring)){
                phone = "233" + phone.substring(1);
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            userInfoService.setUrgentUser(name, phone, uid);
            return ResultUtil.success();
        }catch (Exception e){
@@ -591,20 +657,21 @@
     */
    @ResponseBody
    @PostMapping("/api/user/depositBalance")
    @ApiOperation(value = "余额充值", tags = {"用户端-个人中心"}, notes = "")
    @ApiOperation(value = "余额充值【1.1】", tags = {"用户端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "支付方式(1=线上支付)", name = "payType", required = true, dataType = "int"),
            @ApiImplicitParam(value = "支付方式(1=手机充值,2=银行卡充值)", name = "payType", required = true, dataType = "int"),
            @ApiImplicitParam(value = "银行卡id", name = "bankCardId", required = false, dataType = "int"),
            @ApiImplicitParam(value = "充值金额", name = "money", required = true, dataType = "double"),
            @ApiImplicitParam(value = "支付端(1=用户APP端,2=司机APP端,3=用户小程序端)", name = "type", required = false, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil depositBalance(Integer payType, Double money, Integer type, Integer language, HttpServletRequest request){
    public ResultUtil depositBalance(Integer payType, String bankCardId, Double money, Integer type, Integer language, HttpServletRequest request){
        try {
            Integer uid = userInfoService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            return userInfoService.depositBalance(payType, "user_" + uid, money, uid, type, language);
            return userInfoService.depositBalance(payType, bankCardId, money, uid, type, language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -621,19 +688,27 @@
     */
    @ResponseBody
    @PostMapping("/api/user/updatePhone")
    @ApiOperation(value = "修改手机号码", tags = {"用户端-个人中心"}, notes = "")
    @ApiOperation(value = "修改手机号码【1.1】", tags = {"用户端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "验证码", name = "code", required = true, dataType = "string"),
            @ApiImplicitParam(value = "手机号运营商(GH-MTN-B2C、GH-TIGO-B2C、GH-VODAFONE-B2C、GH-AIRTEL-B2C)", name = "phoneOperator", required = true, dataType = "String"),
            @ApiImplicitParam(value = "新手机号", name = "phone", required = true, dataType = "string"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil updatePhone(String code, String phone, Integer language, HttpServletRequest request){
    public ResultUtil updatePhone(String code, String phoneOperator, String phone, Integer language, HttpServletRequest request){
        try {
            Integer uid = userInfoService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            return userInfoService.updatePhone(code, phone, uid, language);
            String substring = phone.substring(0, 1);
            if("0".equals(substring)){
                phone = "233" + phone.substring(1);
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            return userInfoService.updatePhone(code, phoneOperator, phone, uid, language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
@@ -654,6 +729,13 @@
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            String substring = phone.substring(0, 1);
            if("0".equals(substring)){
                phone = "233" + phone.substring(1);
            }
            if(phone.indexOf("233") < 0){
                phone = "233" + phone;
            }
            UserInfo userInfo = userInfoService.selectById(uid);
            smsrecordService.saveData(4, userInfo.getPhone(), code, "短信验证码【" + code + "】已发到您的手机,验证码将在5分钟后失效,请及时登录!");
            boolean b = userInfoService.checkCaptcha(phone, code);