예제 #1
0
        public void ProcessTransactions()
        {
            try
            {
                var transactions = provider.GetTransactions();

                foreach (var tran in transactions)
                {
                    rulesManager.GetRules().ForEach(r => r.Apply(tran));
                    cosnumer.ConsumeTransaction(tran);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error processing transactions:");
                Console.WriteLine(ex);
            }
        }
예제 #2
0
        public async Task <ActionResult> TransactionHistory(int id)
        {
            if (HttpContext.Session.GetString("UserRole") == null)
            {
                return(RedirectToAction("Login", "Login"));
            }
            //else
            //{
            List <TransactionHistoryViewModel> model = new List <TransactionHistoryViewModel>();

            try
            {
                var response = await _transactionProvider.GetTransactions(id);

                if (response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    var JsonContent = await response.Content.ReadAsStringAsync();

                    model = JsonConvert.DeserializeObject <List <TransactionHistoryViewModel> >(JsonContent);
                    return(View(model));
                }
                else if (response.StatusCode == System.Net.HttpStatusCode.NotFound)
                {
                    ViewBag.Message = "Having server issue while adding record";
                    return(View(model));
                }
                else if (response.StatusCode == System.Net.HttpStatusCode.InternalServerError)
                {
                    ViewBag.Message = "Internal Server Error! Please try again later";
                    return(View(model));
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Exceptions occured due to " + ex.Message);
            }
            return(View(model));
            //}
        }