fixing additional data issues
This commit is contained in:
@@ -2,14 +2,21 @@ package zw.qantra.tm.domain.workflows.handlers;
|
|||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import zw.qantra.tm.domain.enums.RequestType;
|
||||||
import zw.qantra.tm.domain.enums.Status;
|
import zw.qantra.tm.domain.enums.Status;
|
||||||
|
import zw.qantra.tm.domain.models.AdditionalData;
|
||||||
import zw.qantra.tm.domain.models.Transaction;
|
import zw.qantra.tm.domain.models.Transaction;
|
||||||
import zw.qantra.tm.domain.models.TransactionEvent;
|
import zw.qantra.tm.domain.models.TransactionEvent;
|
||||||
|
import zw.qantra.tm.domain.services.AdditionalDataService;
|
||||||
import zw.qantra.tm.domain.services.TransactionEventService;
|
import zw.qantra.tm.domain.services.TransactionEventService;
|
||||||
import zw.qantra.tm.domain.services.TransactionService;
|
import zw.qantra.tm.domain.services.TransactionService;
|
||||||
import zw.qantra.tm.domain.services.factories.PaymentProcessorFactory;
|
import zw.qantra.tm.domain.services.factories.PaymentProcessorFactory;
|
||||||
import zw.qantra.tm.domain.services.processors.TransactionProcessorInterface;
|
import zw.qantra.tm.domain.services.processors.TransactionProcessorInterface;
|
||||||
import zw.qantra.tm.domain.services.processors.handlers.*;
|
import zw.qantra.tm.domain.services.processors.handlers.*;
|
||||||
|
import zw.qantra.tm.utils.Utils;
|
||||||
|
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Service("confirm")
|
@Service("confirm")
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@@ -17,6 +24,7 @@ public class ConfirmHandler implements HandlerInterface {
|
|||||||
private final TransactionEventService transactionEventService;
|
private final TransactionEventService transactionEventService;
|
||||||
private final PaymentProcessorFactory paymentProcessorFactory;
|
private final PaymentProcessorFactory paymentProcessorFactory;
|
||||||
private final TransactionService transactionService;
|
private final TransactionService transactionService;
|
||||||
|
private final AdditionalDataService additionalDataService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object process(Transaction transaction) throws Exception {
|
public Object process(Transaction transaction) throws Exception {
|
||||||
@@ -52,6 +60,15 @@ public class ConfirmHandler implements HandlerInterface {
|
|||||||
transactionEvent.setMessage(transaction.getErrorMessage());
|
transactionEvent.setMessage(transaction.getErrorMessage());
|
||||||
transactionEventService.save(transactionEvent);
|
transactionEventService.save(transactionEvent);
|
||||||
|
|
||||||
return transactionService.save(transaction);
|
transaction = transactionService.save(transaction);
|
||||||
|
// fetch additionalData
|
||||||
|
AdditionalData data = additionalDataService.getAdditionalDataRepository()
|
||||||
|
.findByTransactionIdAndRequestType(
|
||||||
|
transaction.getId().toString(), RequestType.CONFIRM).orElse(null);
|
||||||
|
if(data != null) {
|
||||||
|
transaction.setAdditionalData(Utils.fromJson(data.getJsonString(), List.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
return transaction;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user