diff --git a/aconnect/src/main/java/com/mfsys/aconnect/client/service/TransactionService.java b/aconnect/src/main/java/com/mfsys/aconnect/client/service/TransactionService.java index 5969d86..cdbfe40 100644 --- a/aconnect/src/main/java/com/mfsys/aconnect/client/service/TransactionService.java +++ b/aconnect/src/main/java/com/mfsys/aconnect/client/service/TransactionService.java @@ -59,6 +59,18 @@ public class TransactionService { Double creditAmount = accountGLTransactionRequest.getCreditGl().getSgtGntramtfc(); Double debitAmount = accountGLTransactionRequest.getDebitAcc().getSgtGntramtfc(); + if (creditAmount == null || debitAmount == null) { + return ResponseEntity + .badRequest() + .body("Credit and Debit amounts are required"); + } + + if (creditAmount <= 0 || debitAmount <= 0) { + return ResponseEntity + .badRequest() + .body("Credit and Debit amounts must be greater than 0"); + } + if (!creditAmount.equals(debitAmount)) { return ResponseEntity .badRequest() @@ -95,11 +107,24 @@ public class TransactionService { Double creditAmount = gLtoGLRequest.getCreditGl().getSgtGntramtfc(); Double debitAmount = gLtoGLRequest.getDebitGl().getSgtGntramtfc(); + if (creditAmount == null || debitAmount == null) { + return ResponseEntity + .badRequest() + .body("Credit and Debit amounts are required"); + } + + if (creditAmount <= 0 || debitAmount <= 0) { + return ResponseEntity + .badRequest() + .body("Credit and Debit amounts must be greater than 0"); + } + if (!creditAmount.equals(debitAmount)) { return ResponseEntity .badRequest() .body("Credit and Debit amounts must be equal"); } + String porOrgacode = gLtoGLRequest.getPorOrgacode(); String url = generalledgerURI + "/generalledger/" + "/organizations/" + porOrgacode + "/transactions" + ACONNECT +"/gltogls"; HttpHeaders headers = new HttpHeaders(); @@ -129,6 +154,19 @@ public class TransactionService { BigDecimal creditAmount = accountToAccountDTO.getCreditAcc().getSgtGntramtfc(); BigDecimal debitAmount = accountToAccountDTO.getDebitAcc().getSgtGntramtfc(); + if (creditAmount == null || debitAmount == null) { + return ResponseEntity + .badRequest() + .body("Credit and Debit amounts are required"); + } + + if (creditAmount.compareTo(BigDecimal.ZERO) <= 0 || + debitAmount.compareTo(BigDecimal.ZERO) <= 0) { + return ResponseEntity + .badRequest() + .body("Credit and Debit amounts must be greater than 0"); + } + if (!creditAmount.equals(debitAmount)) { return ResponseEntity .badRequest() @@ -171,6 +209,13 @@ public class TransactionService { .body("Credit and Debit amounts must be equal"); } + if (creditAmount.compareTo(BigDecimal.ZERO) <= 0 || + debitAmount.compareTo(BigDecimal.ZERO) <= 0) { + return ResponseEntity + .badRequest() + .body("Credit and Debit amounts must be greater than 0"); + } + String porOrgacode = glToAccountDTO.getPorOrgacode(); String url = depositURI + "/deposit" + "/organizations/" + porOrgacode + "/transactions" + ACONNECT + "/gl-to-account";