improving save logic

This commit is contained in:
2025-10-28 19:20:10 +02:00
parent bbb3d52971
commit 2b4fbbecf5
3 changed files with 5 additions and 4 deletions

View File

@@ -78,7 +78,6 @@ public class StewardIntegrationProcessor implements TransactionProcessorInterfac
transaction.setCreditRef((String) body.get("creditRef")); transaction.setCreditRef((String) body.get("creditRef"));
transaction.setAdditionalData(body.get("additionalData")); transaction.setAdditionalData(body.get("additionalData"));
transaction.setErrorMessage(null); // clear any previous error message transaction.setErrorMessage(null); // clear any previous error message
transactionService.save(transaction);
AdditionalData additionalData = new AdditionalData(); AdditionalData additionalData = new AdditionalData();
additionalData.setTransactionId(transaction.getId().toString()); additionalData.setTransactionId(transaction.getId().toString());
@@ -92,7 +91,7 @@ public class StewardIntegrationProcessor implements TransactionProcessorInterfac
transaction.setErrorMessage((String) body.get("errorMessage")); transaction.setErrorMessage((String) body.get("errorMessage"));
} }
return transactionService.save(transaction); return transaction;
} }

View File

@@ -164,7 +164,7 @@ public class TransactionWorkflow extends WorkflowDefinition {
execution.setVariable("body", Utils.toJson(transaction)); execution.setVariable("body", Utils.toJson(transaction));
return NextAction.moveToState(SALES_INVOICE, "Polling complete"); return NextAction.moveToState(SALES_INVOICE, "Polling complete");
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); log.info(e.getMessage());
return NextAction.moveToState(FAILED, e.getMessage()); return NextAction.moveToState(FAILED, e.getMessage());
} }
} }

View File

@@ -14,6 +14,7 @@ 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.LogicPipeline; import zw.qantra.tm.domain.services.processors.handlers.LogicPipeline;
import zw.qantra.tm.exceptions.ApiException; import zw.qantra.tm.exceptions.ApiException;
import zw.qantra.tm.utils.Utils;
@Service("integration") @Service("integration")
@RequiredArgsConstructor @RequiredArgsConstructor
@@ -69,7 +70,8 @@ public class IntegrationHandler implements HandlerInterface {
transactionEvent.setMessage(transaction.getErrorMessage()); transactionEvent.setMessage(transaction.getErrorMessage());
transactionEventService.save(transactionEvent); transactionEventService.save(transactionEvent);
Transaction t1 = Utils.deepCopy(transaction, Transaction.class);
transactionService.save(transaction); transactionService.save(transaction);
return transaction; return t1;
} }
} }