yanghui
2022-11-11 74a02276be3564efac5f49d9fa93c08cd705e16a
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/handel/UserAuthenticationProvider.java
@@ -13,7 +13,9 @@
import javax.crypto.NoSuchPaddingException;
import com.panzhihua.auth.config.MyAESUtil;
import com.panzhihua.common.constants.Constants;
import com.panzhihua.common.model.helper.AESUtil;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.utlis.AES;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
@@ -34,6 +36,8 @@
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.service.user.UserService;
import static java.util.Objects.nonNull;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 登录认证
@@ -46,6 +50,8 @@
    private UserService userService;
    @Resource
    private RedisTemplate redisTemplate;
    @Resource
    private CommunityService communityService;
    private static String LOGIN_FAIL="LOGIN_FAIL_";
@@ -97,6 +103,17 @@
            }
            // 维护最后登录时间
            userService.putUserLastLoginTime(loginUserInfoVO.getUserId());
            //是否为专家登陆
            if (nonNull(loginUserInfoVO.getPhone())){
                R r1 = communityService.isExpert(loginUserInfoVO.getPhone());
                if (r1.getCode()== Constants.SUCCESS){
                    loginUserInfoVO.setType(13);
                }
                R r2 = userService.propertyCheck(loginUserInfoVO.getPhone());
                if (r2.getCode() == Constants.SUCCESS){
                    loginUserInfoVO.setPropertyId((Long)r2.getData());
                }
            }
            return new UsernamePasswordAuthenticationToken(loginUserInfoVO, password, grantedAuthorityList);
        }
        else {
@@ -126,6 +143,17 @@
            }
            // 维护最后登录时间
            userService.putUserLastLoginTime(loginUserInfoVO.getUserId());
            //是否为专家登陆
            if (nonNull(loginUserInfoVO.getPhone())){
                R r1 = communityService.isExpert(loginUserInfoVO.getPhone());
                if (r1.getCode() == Constants.SUCCESS){
                    loginUserInfoVO.setType(13);
                }
                R r2 = userService.propertyCheck(loginUserInfoVO.getPhone());
                if (r2.getCode() == Constants.SUCCESS){
                    loginUserInfoVO.setPropertyId((Long)r2.getData());
                }
            }
            return new UsernamePasswordAuthenticationToken(loginUserInfoVO, password, grantedAuthorityList);
        }