회원가입, 회원정보수정, 회원탈퇴, 패스워드초기화, 상태수정, 역할 추가, 역할 삭제, 회원목록 추가
This commit is contained in:
@@ -5,6 +5,7 @@ import com.kamco.cd.kamcoback.members.dto.MembersDto;
|
||||
import com.kamco.cd.kamcoback.postgres.core.MembersCoreService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.mindrot.jbcrypt.BCrypt;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -15,6 +16,9 @@ public class AdminService {
|
||||
|
||||
private final MembersCoreService membersCoreService;
|
||||
|
||||
@Value("${member.init_password}")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 회원가입
|
||||
*
|
||||
@@ -23,11 +27,11 @@ public class AdminService {
|
||||
*/
|
||||
@Transactional
|
||||
public Long saveMember(MembersDto.AddReq addReq) {
|
||||
// salt 생성
|
||||
String salt = BCryptSaltGenerator.generateSaltWithEmployeeNo(addReq.getEmployeeNo());
|
||||
// salt 생성, 사번이 salt
|
||||
String salt = BCryptSaltGenerator.generateSaltWithEmployeeNo(addReq.getEmployeeNo().trim());
|
||||
|
||||
// 패스워드 암호화
|
||||
String hashedPassword = BCrypt.hashpw(addReq.getPassword(), salt);
|
||||
// 패스워드 암호화, 초기 패스워드 고정
|
||||
String hashedPassword = BCrypt.hashpw(password, salt);
|
||||
addReq.setPassword(hashedPassword);
|
||||
return membersCoreService.saveMembers(addReq);
|
||||
}
|
||||
@@ -50,4 +54,31 @@ public class AdminService {
|
||||
public void deleteRoles(MembersDto.RolesDto rolesDto) {
|
||||
membersCoreService.deleteRoles(rolesDto);
|
||||
}
|
||||
|
||||
/**
|
||||
* 역할 수정
|
||||
*
|
||||
* @param statusDto
|
||||
*/
|
||||
public void updateStatus(MembersDto.StatusDto statusDto) {
|
||||
membersCoreService.updateStatus(statusDto);
|
||||
}
|
||||
|
||||
/**
|
||||
* 회원 탈퇴
|
||||
*
|
||||
* @param statusDto
|
||||
*/
|
||||
public void deleteAccount(MembersDto.StatusDto statusDto) {
|
||||
membersCoreService.deleteAccount(statusDto);
|
||||
}
|
||||
|
||||
/**
|
||||
* 패스워드 초기화
|
||||
*
|
||||
* @param id
|
||||
*/
|
||||
public void resetPassword(Long id) {
|
||||
membersCoreService.resetPassword(id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
package com.kamco.cd.kamcoback.members.service;
|
||||
|
||||
import com.kamco.cd.kamcoback.config.BCryptSaltGenerator;
|
||||
import com.kamco.cd.kamcoback.members.dto.MembersDto;
|
||||
import com.kamco.cd.kamcoback.members.dto.MembersDto.Basic;
|
||||
import com.kamco.cd.kamcoback.postgres.core.MembersCoreService;
|
||||
import java.util.UUID;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.mindrot.jbcrypt.BCrypt;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.http.converter.HttpMessageNotReadableException;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -24,4 +29,30 @@ public class MembersService {
|
||||
public Page<Basic> findByMembers(MembersDto.SearchReq searchReq) {
|
||||
return membersCoreService.findByMembers(searchReq);
|
||||
}
|
||||
|
||||
/**
|
||||
* 회원정보 수정
|
||||
*
|
||||
* @param uuid
|
||||
* @param updateReq
|
||||
*/
|
||||
public void updateMember(UUID uuid, MembersDto.UpdateReq updateReq) {
|
||||
|
||||
if (StringUtils.isNotBlank(updateReq.getPassword())) {
|
||||
|
||||
if (StringUtils.isBlank(updateReq.getEmployeeNo())) {
|
||||
throw new HttpMessageNotReadableException("패스워드 변경시 사번은 필수 값입니다.");
|
||||
}
|
||||
|
||||
// salt 생성, 사번이 salt
|
||||
String salt =
|
||||
BCryptSaltGenerator.generateSaltWithEmployeeNo(updateReq.getEmployeeNo().trim());
|
||||
|
||||
// 패스워드 암호화, 초기 패스워드 고정
|
||||
String hashedPassword = BCrypt.hashpw(updateReq.getPassword(), salt);
|
||||
updateReq.setPassword(hashedPassword);
|
||||
}
|
||||
|
||||
membersCoreService.updateMembers(uuid, updateReq);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user