kcgFileManager/src/main/java/com/dbnt/kcgfilemanager/service/UserInfoService.java

64 lines
2.4 KiB
Java
Raw Normal View History

2021-11-30 10:05:43 +00:00
package com.dbnt.kcgfilemanager.service;
2021-11-19 08:47:02 +00:00
2021-12-03 09:07:14 +00:00
import com.dbnt.kcgfilemanager.mapper.UserInfoMapper;
2021-11-30 10:05:43 +00:00
import com.dbnt.kcgfilemanager.model.UserInfo;
import com.dbnt.kcgfilemanager.repository.UserInfoRepository;
2021-11-19 08:47:02 +00:00
import lombok.RequiredArgsConstructor;
2021-11-22 09:33:19 +00:00
import org.springframework.security.core.userdetails.UserDetails;
2021-11-19 08:47:02 +00:00
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;
2021-12-03 09:07:14 +00:00
import java.util.List;
2021-11-19 08:47:02 +00:00
@Service
@RequiredArgsConstructor
public class UserInfoService implements UserDetailsService {
2021-11-30 10:05:43 +00:00
2021-12-03 09:07:14 +00:00
private final UserInfoRepository userInfoRepository;
private final UserInfoMapper userInfoMapper;
@Transactional
public String insertUserInfo(UserInfo userInfo){
userInfo.setPassword(convertPassword(userInfo.getPassword()));
2021-12-03 09:07:14 +00:00
return userInfoRepository.save(userInfo).getUserId();
}
@Transactional
public String updateUserInfo(UserInfo userInfo){
UserInfo targetUserInfo = userInfoRepository.findById(userInfo.getUserSeq()).orElse(null);
if(userInfo.getPassword() != null){
targetUserInfo.setPassword(convertPassword(userInfo.getPassword()));
}
targetUserInfo.setName(userInfo.getName());
targetUserInfo.setPosition(userInfo.getPosition());
targetUserInfo.setDepartment(userInfo.getDepartment());
targetUserInfo.setUserRole(userInfo.getUserRole());
2021-12-06 08:37:46 +00:00
targetUserInfo.setUserStatus(userInfo.getUserStatus());
return targetUserInfo.getUserId();
}
private String convertPassword(String password){
Pbkdf2PasswordEncoder passwordEncoder = new Pbkdf2PasswordEncoder();
return passwordEncoder.encode(password);
}
2021-11-19 08:47:02 +00:00
2021-12-03 09:07:14 +00:00
@Override
public UserDetails loadUserByUsername(String userId) throws UsernameNotFoundException {
return userInfoRepository.findByUserId(userId).orElseThrow(() -> new UsernameNotFoundException(userId));
}
2021-11-19 08:47:02 +00:00
2021-12-03 09:07:14 +00:00
public List<UserInfo> selectUserInfoList(UserInfo userInfo) {
return userInfoMapper.selectUserInfoList(userInfo);
}
2021-11-19 08:47:02 +00:00
2021-12-03 09:07:14 +00:00
public Integer selectUserInfoListCnt(UserInfo userInfo) {
return userInfoMapper.selectUserInfoListCnt(userInfo);
}
public UserInfo selectUserInfo(UserInfo userInfo) {
return userInfoRepository.findById(userInfo.getUserSeq()).orElse(null);
}
2021-11-19 08:47:02 +00:00
}