public IHttpActionResult Post(WithdrawModel withdraw) { Withdrawal withdrawTemp = new Withdrawal(); var balance = Uow.Repository <Balance>().FirstOrDefault(a => a.UserId == withdraw.UserId); if (withdraw.Amount <= balance.BalanceAmount) { var account = Uow.Repository <AccountDetail>().FirstOrDefault(a => a.AccountNumber == withdraw.AccountNumber); var branch = Uow.Repository <BankBranch>().FirstOrDefault(a => (a.IFSC_Code == withdraw.IFSC) && (a.Bank.BankId == withdraw.BankId)); if (account != null && branch != null) { if (account.BankBranchId == branch.BankBranchId) { withdrawTemp.AccountId = account.AccountId; withdrawTemp.WithdrawalAmount = withdraw.Amount; withdrawTemp.UserId = withdraw.UserId; withdrawTemp.BankId = withdraw.BankId; var date = DateTime.Now; withdrawTemp.WithdrawDate = date; withdrawTemp.WithdrawStatus = true; withdrawTemp.BalanceId = balance.BalanceId; withdrawTemp.Comment = withdraw.Comment; var withdrawMessage = WithdrawDomain.Post(withdrawTemp); if (withdrawMessage == "Withdrawal Successfull!!") { var tempBalance = BalanceDomain.GetBy(withdraw.UserId); tempBalance.BalanceAmount = tempBalance.BalanceAmount - withdraw.Amount; var accountDetail = AccountDetailsDomain.Getby(account.AccountId); accountDetail.AccountBalance = accountDetail.AccountBalance + withdraw.Amount; BalanceDomain.Put(tempBalance); AccountDetailsDomain.Put(accountDetail); return(Ok("successfull")); } return(Ok("not successfull")); } else { return(Ok("error")); } } else { return(Ok("error")); } } else { return(Ok("error")); } }
public IHttpActionResult Getby(int id) { return(Ok(WithdrawDomain.GetbyId(id))); }
public IHttpActionResult Get() { return(Ok(WithdrawDomain.Get())); }