无关风月
2024-11-11 185f5dc7c3c49f565da51cd9c2f7750f30990d4a
xinquan-auth/src/main/java/com/xinquan/auth/controller/TokenController.java
@@ -13,6 +13,7 @@
import com.xinquan.common.security.auth.AuthUtil;
import com.xinquan.common.security.service.TokenService;
import com.xinquan.common.security.utils.SecurityUtils;
import com.xinquan.system.api.domain.AppUser;
import com.xinquan.system.api.domain.SysMenu;
import com.xinquan.system.api.domain.SysRole;
import com.xinquan.system.api.domain.SysUser;
@@ -22,6 +23,7 @@
import com.xinquan.system.api.model.AppVerifyCellPhoneBody;
import com.xinquan.system.api.model.AppWXLoginBody;
import com.xinquan.system.api.model.LoginUser;
import com.xinquan.user.api.feign.RemoteAppUserService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -30,6 +32,7 @@
import java.util.List;
import java.util.Objects;
import java.util.Set;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
@@ -57,6 +60,8 @@
    private SysLoginService sysLoginService;
    @Autowired
    private SysUserClient userClient;
    @Resource
    private RemoteAppUserService remoteAppUserService;
    /**
     * 发送验证码
@@ -71,10 +76,27 @@
    public R<?> sendCaptchaCode(
            @RequestParam(value = "cellPhone", required = true) String cellPhone,
            @RequestParam("type") Integer type) {
        if(type == 3){
            SysUser sysUser = userClient.queryUserByPhone(cellPhone).getData();
            if(Objects.isNull(sysUser)){
                return R.fail("该手机号未注册");
        if(type==5){
            LoginUser loginUser = tokenService.getLoginUser();
            if (loginUser==null){
                return R.tokenError("登录失效");
            }
            AppUser data1 = remoteAppUserService.getAppUserById(loginUser.getUserid() + "").getData();
            if (!cellPhone.equals(data1.getCellPhone())){
                return R.fail("手机号错误");
            }
        }
        if(type==5){
            AppUser data = remoteAppUserService.getUserByPhone(cellPhone).getData();
            if (data!=null){
                return R.fail("当前手机号已被绑定");
            }
        }
        if(type==4){
            AppUser data = remoteAppUserService.getUserByPhone(cellPhone).getData();
            if (data!=null && (data.getWxOpenId()!=null||data.getAppleId()!=null)){
                return R.fail("当前手机号已被绑定");
            }
        }
        sysLoginService.sendCaptchaCode(cellPhone, type);