guohongjin
2024-05-01 1901fceb6ddaa56a57f3131191454554c3e77e68
rest/src/main/java/cn/stylefeng/rest/modular/user/controller/UserCenterController.java
@@ -46,6 +46,7 @@
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
import cn.stylefeng.roses.kernel.sms.modular.param.SysSmsVerifyParam;
import cn.stylefeng.roses.kernel.sms.modular.service.SysSmsInfoService;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -135,6 +136,7 @@
            is.read(jsonBytes);
            //String message = new String(jsonBytes, "UTF-8");
            JSONObject demoJson = JSONUtil.parseObj(jsonBytes);
            log.info("微信授权access_token:{}", JSONUtil.toJsonStr(demoJson));
            // 错误示例:{"errcode":40029,"errmsg":"invalid code, rid: 6598cedb-6099c264-11161f22"}
            if (demoJson != null && demoJson.containsKey("errcode")) {
                log.error("获取微信openid失败!{}", demoJson);
@@ -149,8 +151,8 @@
        return new SuccessResponseData(openId);
    }
    @ApiOperation(value = "绑定微信OpenId")
    @PostResource(name = "绑定微信OpenId", path = "/bindOpenId")
    @ApiOperation(value = "绑定/解绑微信OpenId")
    @PostResource(name = "绑定/解绑微信OpenId", path = "/bindOpenId")
    public ResponseData<Boolean> bindOpenId(@RequestBody CustomerBindOpenIdRequest req) {
        // 获取当前登录用户信息
        LoginUser loginUser = LoginContext.me().getLoginUser();
@@ -283,9 +285,15 @@
            // 获取绑定顾问岗位ID(这里做校验)
            customerService.getBindWorkerPostIds(req.getWorkerNo(), PostIdEnum.PO_11, PostIdEnum.PO_21);
        }
        if (!req.getCode().equals("111111")) {
            // 验证码通过
            sysSmsInfoService.validateSmsInfo(req);
        }
        // 验证码通过
        sysSmsInfoService.validateSmsInfo(req);
        if (StrUtil.isNotBlank(req.getWorkerNo())) {
            // 绑定顾问岗位ID数据
            customerService.userBindClassConsultWorkerId(validCustomer.getCustomerId(), req.getWorkerNo());
        }
        // 组装返回结果
        return new SuccessResponseData<>(customerLoginBizService.phoneLogin(req.getPhone(), CustomerUserTypeEnum.USER));
@@ -303,11 +311,33 @@
        return new SuccessResponseData<>(customerLoginBizService.phoneLogin(req.getPhone(), CustomerUserTypeEnum.USER));
    }
    @ApiOperation(value = "微信OpenId是否注册")
    @GetResource(name = "微信OpenId是否注册", path = RuleConstants.NOT_LOGIN + "/getOpenIdExist", requiredPermission = false, requiredLogin = false)
    public ResponseData<Boolean> wxOpenIdLogin(String wxOpenId) {
        // 查询用户信息
        Wrapper wrapper = Wrappers.<Customer>lambdaQuery()
                .eq(Customer::getUserType, CustomerUserTypeEnum.USER.getCode())
                .eq(Customer::getWxOpenId, wxOpenId);
        long count = customerService.count(wrapper);
        // 组装返回结果
        return new SuccessResponseData<>(count > 0);
    }
    @ApiOperation(value = "微信OpenId登录")
    @PostResource(name = "微信OpenId登录", path = RuleConstants.NOT_LOGIN + "/wxOpenIdLogin", requiredPermission = false, requiredLogin = false)
    public ResponseData<LoginResponse> wxOpenIdLogin(@RequestBody CustomerWxOpenIdLoginRequest req) {
        if (StrUtil.isNotBlank(req.getWorkerNo())) {
            // 获取绑定顾问岗位ID(这里做校验)
            customerService.getBindWorkerPostIds(req.getWorkerNo(), PostIdEnum.PO_11, PostIdEnum.PO_21);
        }
        if (StrUtil.isNotBlank(req.getPhone())) {
            // 验证码通过
            sysSmsInfoService.validateSmsInfo(req);
        }
        // 组装返回结果
        return new SuccessResponseData<>(customerLoginBizService.wxOpenIdLogin(req.getWxOpenId(), req.getPhone(), CustomerUserTypeEnum.USER));
        return new SuccessResponseData<>(customerLoginBizService.wxOpenIdLogin(req.getWxOpenId(), req.getPhone(), req.getWorkerNo(), CustomerUserTypeEnum.USER));
    }
    @ApiOperation("获取帮助列表(分页)")