From d33fc7f1df66c1e451c5d79ab59a5bc9dce4e496 Mon Sep 17 00:00:00 2001 From: Tomas <tomasysh@gmail.com> Date: 星期四, 14 九月 2023 18:01:18 +0800 Subject: [PATCH] Update: http 攔截器,檢查 base url 的檢查 method --- pamapi/src/main/java/com/pollex/pam/service/CustomerService.java | 37 ++++++++++++++++++++++++------------- 1 files changed, 24 insertions(+), 13 deletions(-) diff --git a/pamapi/src/main/java/com/pollex/pam/service/CustomerService.java b/pamapi/src/main/java/com/pollex/pam/service/CustomerService.java index c944a44..98af88a 100644 --- a/pamapi/src/main/java/com/pollex/pam/service/CustomerService.java +++ b/pamapi/src/main/java/com/pollex/pam/service/CustomerService.java @@ -2,25 +2,34 @@ import java.util.Optional; -import com.pollex.pam.security.SecurityUtils; -import com.pollex.pam.service.dto.CustomerDTO; -import com.pollex.pam.service.mapper.CustomerMapper; +import com.pollex.pam.business.security.SecurityUtils; +import com.pollex.pam.business.service.OtpTmpService; +import com.pollex.pam.business.service.UsernameAlreadyUsedException; +import com.pollex.pam.business.service.dto.CustomerDTO; +import com.pollex.pam.business.service.mapper.CustomerMapper; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.pollex.pam.domain.Customer; -import com.pollex.pam.domain.OtpTmp; -import com.pollex.pam.enums.OtpLoginTypeEnum; -import com.pollex.pam.enums.OtpTmpStatusEnum; -import com.pollex.pam.repository.CustomerRepository; -import com.pollex.pam.service.dto.CustomerRegisterDTO; -import com.pollex.pam.service.mapper.CustomerDTOMapper; +import com.pollex.pam.business.domain.Customer; +import com.pollex.pam.business.domain.OtpTmp; +import com.pollex.pam.business.enums.DataFromEnum; +import com.pollex.pam.business.enums.OtpLoginTypeEnum; +import com.pollex.pam.business.enums.OtpTmpStatusEnum; +import com.pollex.pam.business.repository.CustomerRepository; +import com.pollex.pam.business.service.dto.CustomerRegisterDTO; +import com.pollex.pam.business.service.mapper.CustomerDTOMapper; @Service @Transactional public class CustomerService { + + private static final Logger log = LoggerFactory.getLogger(CustomerService.class); + @Autowired CustomerRepository customerRepository; @@ -42,6 +51,7 @@ } public Customer registerCustomer(CustomerRegisterDTO registDTO) { + boolean isCustomerExist = checkCustomerExist(registDTO); if(isCustomerExist) { throw new UsernameAlreadyUsedException(); @@ -52,6 +62,7 @@ OtpTmp otpTmp = otpTmpService.findByAccountAndIndexKey(account, registDTO.getIndexKey()); if(otpTmp.getStatus() == OtpTmpStatusEnum.VERRIFIED) { Customer customer = customerDTOMapper.toCustomer(registDTO); + customer.setDataFrom(DataFromEnum.PAM); save(customer); return customer; }else { @@ -64,7 +75,7 @@ } public void updateLoggedCustomer(CustomerDTO customerDTO) { - Long customerId = SecurityUtils.getCustomerId(); + Long customerId = SecurityUtils.getCustomerDBId(); Customer customer = customerRepository.findById(customerId) .orElseThrow(() -> new UsernameNotFoundException("customerId which is from token is not found in customer db table, customer id = " + customerId)); @@ -75,7 +86,7 @@ } public CustomerDTO getLoggedCustomerDTO() { - Long customerId = SecurityUtils.getCustomerId(); + Long customerId = SecurityUtils.getCustomerDBId(); Customer customer = customerRepository.findById(customerId) .orElseThrow(() -> new UsernameNotFoundException("customerId which is from token is not found in customer db table, customer id = " + customerId)); @@ -88,7 +99,7 @@ private boolean checkCustomerExist(CustomerRegisterDTO registDTO) { String account = getCustomerAccount(registDTO); - Optional<Customer> customer = customerRepository.findOneByEmailEqualsOrPhoneEquals(account, account); + Optional<Customer> customer = customerRepository.findOneByEmailEqualsOrPhoneEquals(account); return customer.isPresent(); } } -- Gitblit v1.8.0