@@ -7,10 +7,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import ru.soune.nocopy.dto.payout.AddBankTransferRequest;
|
import ru.soune.nocopy.dto.payout.AddBankTransferRequest;
|
||||||
import ru.soune.nocopy.dto.payout.AddCardRequest;
|
import ru.soune.nocopy.dto.payout.AddCardRequest;
|
||||||
import ru.soune.nocopy.dto.payout.PayoutMethodDTO;
|
import ru.soune.nocopy.dto.payout.PayoutMethodDTO;
|
||||||
import ru.soune.nocopy.entity.payout.BankTransferPayoutMethod;
|
import ru.soune.nocopy.entity.payout.*;
|
||||||
import ru.soune.nocopy.entity.payout.CardPayoutMethod;
|
|
||||||
import ru.soune.nocopy.entity.payout.InternalPayoutMethod;
|
|
||||||
import ru.soune.nocopy.entity.payout.PayoutMethod;
|
|
||||||
import ru.soune.nocopy.entity.user.User;
|
import ru.soune.nocopy.entity.user.User;
|
||||||
import ru.soune.nocopy.exception.DuplicateMethodException;
|
import ru.soune.nocopy.exception.DuplicateMethodException;
|
||||||
import ru.soune.nocopy.repository.PayoutMethodRepository;
|
import ru.soune.nocopy.repository.PayoutMethodRepository;
|
||||||
@@ -90,6 +87,16 @@ public class PayoutMethodService {
|
|||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public CardPayoutMethod addCardMethod(Long userId, AddCardRequest request) {
|
public CardPayoutMethod addCardMethod(Long userId, AddCardRequest request) {
|
||||||
|
List<PayoutMethod> byUserId = payoutMethodRepository.findByUserId(userId);
|
||||||
|
|
||||||
|
if (!byUserId.isEmpty()) {
|
||||||
|
for (PayoutMethod payoutMethod : byUserId) {
|
||||||
|
if (payoutMethod.getMethodType().equals(PayoutType.CARD.getDisplayName())) {
|
||||||
|
payoutMethodRepository.delete(payoutMethod);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
String cardHash = generateCardHash(request.getCardNumber());
|
String cardHash = generateCardHash(request.getCardNumber());
|
||||||
|
|
||||||
if (payoutMethodRepository.existsByCardHash(cardHash)) {
|
if (payoutMethodRepository.existsByCardHash(cardHash)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user