package com.dbnt.kcgfilemanager.service; import com.dbnt.kcgfilemanager.mapper.UserInfoMapper; import com.dbnt.kcgfilemanager.model.UserInfo; import com.dbnt.kcgfilemanager.repository.UserInfoRepository; import lombok.RequiredArgsConstructor; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.security.crypto.password.Pbkdf2PasswordEncoder; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; @Service @RequiredArgsConstructor public class UserInfoService implements UserDetailsService { private final UserInfoRepository userInfoRepository; private final UserInfoMapper userInfoMapper; @Transactional public String insertUserInfo(UserInfo userInfo){ Pbkdf2PasswordEncoder passwordEncoder = new Pbkdf2PasswordEncoder(); userInfo.setPassword(passwordEncoder.encode(userInfo.getPassword())); return userInfoRepository.save(userInfo).getUserId(); } @Override public UserDetails loadUserByUsername(String userId) throws UsernameNotFoundException { return userInfoRepository.findByUserId(userId).orElseThrow(() -> new UsernameNotFoundException(userId)); } public List selectUserInfoList(UserInfo userInfo) { return userInfoMapper.selectUserInfoList(userInfo); } public Integer selectUserInfoListCnt(UserInfo userInfo) { return userInfoMapper.selectUserInfoListCnt(userInfo); } }