Add validation for credit and debit amounts in transactions

Introduced checks to ensure credit and debit amounts are present and greater than zero in transaction-related methods. Returns appropriate error responses if validation fails, improving input validation and error handling.
Naeem-PRE-PRODUCTION-26
Naeem Ullah 2 weeks ago
parent 70244da27b
commit ad1057474b

@ -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";

Loading…
Cancel
Save