Exemplo n.º 1
0
        public AccountBalanceDto GetAccountBalance(Guid customerId, Guid accountId)
        {
            string query = $@"SELECT acc.CustomerId, acc.AccountId, ca.CreatedOn, 
                            CASE WHEN ca.AccountType = 1 THEN 'Saving' ELSE 'Current' END AccountType, 
                            ca.AccountNumber, BalanceAmount
                            FROM
                            (
	                            SELECT CustomerId, AccountId, SUM(DrAmount - CrAmount) BalanceAmount 
	                            FROM AccountTransaction 
	                            WHERE CustomerId = '{customerId.ToString()}' 
	                            and   AccountId = '{accountId.ToString()}'
	                            and   TransactionDate <= GETDATE()
	                            GROUP BY CustomerId, AccountId
                            )acc INNER JOIN CustomerAccount ca ON acc.CustomerId = ca.CustomerId and acc.AccountId = ca.AccountId";


            var v = new AccountBalanceDto();

            using (var con = new SqlConnection(_connectionString))
            {
                v = con.Query <AccountBalanceDto>(query).FirstOrDefault();
            }

            return(v);
        }
Exemplo n.º 2
0
        public SingleObjectModel GetAccountBalance([FromUri] string accountNumber)
        {
            using (var usecases = AccountBalanceUseCases.UseCaseInteractor()) {
                AccountBalanceDto accountBalance = usecases.AccountBalance(accountNumber);

                return(new SingleObjectModel(this.Request, accountBalance));
            }
        }
        public async Task <Object> ProcessTransaction1(AccountBalanceDto mpesaRequest, string token)
        {
            HttpClient client = new HttpClient();

            client.DefaultRequestHeaders.Clear();
            client.BaseAddress = new Uri("https://sandbox.safaricom.co.ke");

            client.DefaultRequestHeaders.Add("Authorization", $"Bearer {token}");
            var json = JsonConvert.SerializeObject(mpesaRequest);

            var httpContent = new StringContent(json, Encoding.UTF8, "application/json");

            var resWithToken = client.PostAsync("/mpesa/transactionstatus/v1/query", httpContent).Result;

            stringData = resWithToken.Content.ReadAsStringAsync().Result;
            var response = JsonConvert.DeserializeObject <AccountBalanceResponse>(stringData);

            return(response);
        }
Exemplo n.º 4
0
 public void SaveAccountBalanceDto(AccountBalanceDto balance)
 {
     Set(balance.Id, balance);
 }