You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
UCO-BS/src/main/java/com/mfsys/uco/controller/TransactionController.java

70 lines
2.8 KiB
Java

package com.mfsys.uco.controller;
import com.mfsys.uco.UCOURI;
import com.mfsys.uco.dto.*;
import com.mfsys.uco.dto.Transaction.TransactionOtpRequestModel;
import com.mfsys.uco.model.TransactionTrail;
import com.mfsys.uco.service.TransactionService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
@RestController
@RequiredArgsConstructor
public class TransactionController {
private final TransactionService transactionService;
@PostMapping(UCOURI.GET_DR_TRANSACTION_PIN)
public TransactionPinResponseModel getDrTransactionOtp(@RequestBody TransactionOtpRequestModel transactionOtpRequestModel) {
return transactionService.sendOtpAndValidateTranPin(transactionOtpRequestModel,false);
}
@PostMapping(UCOURI.RESEND_GET_DR_TRANSACTION_PIN)
public TransactionPinResponseModel resendDrTransactionOtp(@RequestBody TransactionOtpRequestModel transactionOtpRequestModel) {
return transactionService.sendOtpAndValidateTranPin(transactionOtpRequestModel,true);
}
@PostMapping(UCOURI.SUBMIT_DR_TRANSACTION)
public Map<String, Object> cashInTransaction(@RequestBody CashInTransactionRequest transactionRequest) {
return transactionService.cashInTransaction(transactionRequest);
}
@PostMapping(UCOURI.SUBMIT_ADD_MONEY_GL_ACC_DR_TRANSACTION)
public Map<String, Object> addMoneyGlAccTransaction(@RequestBody GLAccontTranasctionRequestModel glAccontTranasctionRequestModel) {
return transactionService.glAccountTransaction(glAccontTranasctionRequestModel);
}
@PostMapping(UCOURI.SUBMIT_CR_TRANSACTION)
public Map<String, Object> cashOutTransaction(@RequestBody CashOutTransactionRequest transactionRequest) {
return transactionService.cashOutTransaction(transactionRequest);
}
@GetMapping(UCOURI.PENDING_CR_TRANSACTION)
public List<TransactionTrail> getDepositAccounts(
@RequestParam String porOrgacode,
@RequestParam String mbmBkmsnumber) {
return transactionService.fetchPendingCrTransactions(porOrgacode, mbmBkmsnumber);
}
@GetMapping(UCOURI.ACCOUNT_STATEMENT)
public List<TransactionTrail> getAccountStatement(
@RequestParam String porOrgacode,
@RequestParam String mbmBkmsnumber) {
return transactionService.fetchDepositAccountStatement(porOrgacode, mbmBkmsnumber);
}
@GetMapping(UCOURI.CURRENCY_EVALUATION)
public EvaluatedCurrencyReponse getEvaluatedCurrency(
@RequestParam String porOrgacode,
@RequestParam String baseCurrency,
@RequestParam String targetCurrency,
@RequestParam double sgtGntramtfc) {
return transactionService.getEvaluatedCurrency(porOrgacode, baseCurrency,targetCurrency,sgtGntramtfc);
}
}