package com.kidgrow.common.model; import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Getter; import lombok.Setter; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.SimpleGrantedAuthority; import org.springframework.social.security.SocialUserDetails; import org.springframework.util.CollectionUtils; import java.util.Collection; import java.util.HashSet; import java.util.Set; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020
* * @Description: 用户实体绑定spring security
* @Project:
* @CreateDate: Created in 2020/2/3 16:15
* @Author: liuke */ @Getter @Setter public class LoginAppUser extends SysUser implements SocialUserDetails { private static final long serialVersionUID = -3685249101751401211L; private Set permissions; /*** * 权限重写 */ @JsonIgnore @Override public Collection getAuthorities() { Collection collection = new HashSet<>(); if (!CollectionUtils.isEmpty(super.getRoles())) { super.getRoles().parallelStream().forEach(role -> collection.add(new SimpleGrantedAuthority(role.getCode()))); } return collection; } @Override public boolean isAccountNonExpired() { return true; } @Override public boolean isAccountNonLocked() { return true; } @Override public boolean isCredentialsNonExpired() { return true; } @Override public boolean isEnabled() { return getEnabled(); } @Override public String getUserId() { return getOpenId(); } // @Override // public List getOrganizations() { // return getOrganizations(); // } }