| | |
| | | package com.jilongda.applet.security; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.jilongda.applet.mapper.TAppUserMapper; |
| | | import com.jilongda.applet.model.SecUser; |
| | | import com.jilongda.applet.model.TAppUser; |
| | | import com.jilongda.common.basic.Constant; |
| | | import com.jilongda.common.utils.SpringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.security.core.userdetails.UserDetailsService; |
| | | import org.springframework.security.core.userdetails.UsernameNotFoundException; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.time.LocalDateTime; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | |
| | | /** |
| | |
| | | @Component("loadUserDetailsService") |
| | | public class SysUserDetailsService implements UserDetailsService { |
| | | @Autowired |
| | | private SecUserMapper secUserMapper; |
| | | @Autowired |
| | | private SecRoleMapper secRoleMapper; |
| | | // @Autowired |
| | | // private SecResourcesMapper secResourcesMapper; |
| | | @Autowired |
| | | private SecUserService secUserService; |
| | | private TAppUserMapper appUserMapper; |
| | | |
| | | |
| | | @Override |
| | | public SecurityUserDetails loadUserByUsername(String username) throws UsernameNotFoundException { |
| | | SecUser user = secUserMapper.selectOne(Wrappers.lambdaQuery(SecUser.class).eq(SecUser::getPhone, username).last(" LIMIT 1")); |
| | | public SecurityUserDetails loadUserByUsername(String openId) throws UsernameNotFoundException { |
| | | TAppUser user = appUserMapper.selectOne(Wrappers.lambdaQuery(TAppUser.class).eq(TAppUser::getOpenId, openId).last(" LIMIT 1")); |
| | | |
| | | if (Objects.isNull(user)) { |
| | | throw new UsernameNotFoundException("无效手机号码"); |
| | | throw new UsernameNotFoundException("该用户不存在"); |
| | | } |
| | | |
| | | SecurityUserDetails vo = SpringUtils.beanCopy(user, SecurityUserDetails.class); |
| | | // if (user.getAccount().equals(Constant.ADMIN)) { |
| | | // getAdminPermission(vo); |
| | |
| | | // secUserMapper.updateById(securityUserDetails); |
| | | return vo; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 为管理员赋所有权限 |
| | | * |
| | | * @param |
| | | * @return |
| | | */ |
| | | // private SecurityUserDetails getAdminPermission(SecurityUserDetails details) { |
| | | // List<SecRole> roles = secRoleMapper.selectList(Wrappers.emptyWrapper()); |
| | | // List<SecResourceVO> resources = secUserService.selectUserResourcesTag(details.getId()); |
| | | // details.setRoles(roles); |
| | | // details.setResources(resources); |
| | | // return details; |
| | | // } |
| | | } |