disable_features.user_email_verify 기능 추가
This commit is contained in:
@@ -0,0 +1,6 @@
|
|||||||
|
# 광주은행 eAPIM
|
||||||
|
|
||||||
|
## 커스텀 항목
|
||||||
|
### 포탈 Property (EMS 프로퍼티)
|
||||||
|
- `disable_features.user_email_verify' == true
|
||||||
|
이메일 인증 기능 비활성화(회원 가입시 이메일 인증은 한걸로 처리)
|
||||||
@@ -3,6 +3,7 @@ package com.eactive.apim.portal.apps.user.service;
|
|||||||
import com.eactive.apim.portal.apps.user.dto.PortalUserRegistrationDTO;
|
import com.eactive.apim.portal.apps.user.dto.PortalUserRegistrationDTO;
|
||||||
import com.eactive.apim.portal.apps.user.repository.PortalOrgRepository;
|
import com.eactive.apim.portal.apps.user.repository.PortalOrgRepository;
|
||||||
import com.eactive.apim.portal.portalorg.entity.PortalOrg;
|
import com.eactive.apim.portal.portalorg.entity.PortalOrg;
|
||||||
|
import com.eactive.apim.portal.portalproperty.service.PortalPropertyService;
|
||||||
import com.eactive.apim.portal.portaluser.entity.PortalUser;
|
import com.eactive.apim.portal.portaluser.entity.PortalUser;
|
||||||
import com.eactive.apim.portal.portaluser.entity.PortalUserEnums;
|
import com.eactive.apim.portal.portaluser.entity.PortalUserEnums;
|
||||||
import com.eactive.apim.portal.portaluser.entity.PortalUserEnums.ApprovalStatus;
|
import com.eactive.apim.portal.portaluser.entity.PortalUserEnums.ApprovalStatus;
|
||||||
@@ -12,20 +13,33 @@ import com.eactive.apim.portal.portaluser.repository.PortalUserRepository;
|
|||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@Transactional
|
@Transactional
|
||||||
@RequiredArgsConstructor
|
|
||||||
public class PortalUserService {
|
public class PortalUserService {
|
||||||
|
|
||||||
private final PortalUserRepository portalUserRepository;
|
private final PortalUserRepository portalUserRepository;
|
||||||
private final PortalOrgRepository portalOrgRepository;
|
private final PortalOrgRepository portalOrgRepository;
|
||||||
private final PasswordEncoder passwordEncoder;
|
private final PasswordEncoder passwordEncoder;
|
||||||
|
private final PortalPropertyService portalPropertyService;
|
||||||
|
|
||||||
|
|
||||||
|
public PortalUserService(PortalUserRepository portalUserRepository,
|
||||||
|
PortalOrgRepository portalOrgRepository,
|
||||||
|
PasswordEncoder passwordEncoder,
|
||||||
|
PortalPropertyService portalPropertyService) {
|
||||||
|
this.portalUserRepository = portalUserRepository;
|
||||||
|
this.portalOrgRepository = portalOrgRepository;
|
||||||
|
this.passwordEncoder = passwordEncoder;
|
||||||
|
this.portalPropertyService = portalPropertyService;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public PortalUser findById(String userId) {
|
public PortalUser findById(String userId) {
|
||||||
return portalUserRepository.findById(userId).orElse(null);
|
return portalUserRepository.findById(userId).orElse(null);
|
||||||
@@ -81,7 +95,15 @@ public class PortalUserService {
|
|||||||
PortalUser newUser = new PortalUser();
|
PortalUser newUser = new PortalUser();
|
||||||
mapDtoToEntity(newUser, newUserDTO);
|
mapDtoToEntity(newUser, newUserDTO);
|
||||||
setUserProperties(newUser);
|
setUserProperties(newUser);
|
||||||
|
|
||||||
|
Map<String, String> propertyMap = portalPropertyService.getPortalPropertiesAsMap("Portal");
|
||||||
|
|
||||||
newUser.setUserStatus(UserStatus.READY);
|
newUser.setUserStatus(UserStatus.READY);
|
||||||
|
|
||||||
|
// 이메일 인증 기능 비활성화 시 바로 활성화 처리
|
||||||
|
if ("true".equalsIgnoreCase(propertyMap.getOrDefault("disable_features.user_email_verify", ""))) {
|
||||||
|
newUser.setUserStatus(UserStatus.ACTIVE);
|
||||||
|
}
|
||||||
newUser.setApprovalStatus(ApprovalStatus.COMPLETED);
|
newUser.setApprovalStatus(ApprovalStatus.COMPLETED);
|
||||||
setUserRole(newUser, registrationType);
|
setUserRole(newUser, registrationType);
|
||||||
portalUserRepository.save(newUser);
|
portalUserRepository.save(newUser);
|
||||||
|
|||||||
Reference in New Issue
Block a user