Пример #1
0
        public IActionResult AddUsers(AppUser appUser)
        {
            var errors        = new List <string>();
            var appUserAccess = new AppUserAccess(_appConfiguration)
            {
                ExpenseConnection = _expenseConnection
            };
            var userPassword = System.Guid.NewGuid().ToString().Substring(0, 5);

            try
            {
                appUser.Password = userPassword;
                _expenseConnection.BeginTransaction();
                appUserAccess.Insert(appUser);
                _expenseConnection.Commit();

                _logger.LogInformation("User : {username} added new user '{appUsername}'", LoggedInUser, appUser.Username);
            }
            catch (CustomExceptions Ex)
            {
                _logger.LogWarning("User : {username} get validation exception while adding user with name '{appUsername}' ", LoggedInUser, appUser.Username);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                errors = (List <string>)Ex.Data["errors"];
            }
            catch (Exception Ex)
            {
                _logger.LogWarning("User : {username} get exception while adding appuser with name '{appUsername}' ", LoggedInUser, appUser.Username);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                LogExecption(Ex, _expenseConnection);

                errors = new List <string>()
                {
                    _appConfiguration.Messages.InternalServerError
                };
            }

            return(Json(new
            {
                success = (errors.Count == 0),
                data = appUser,
                error = errors
            }));
        }
Пример #2
0
        public IActionResult CreateCategory(Category category)
        {
            var errors         = new List <string>();
            var categoryAccess = new CategoryAccess()
            {
                ExpenseConnection = _expenseConnection
            };

            try
            {
                _expenseConnection.BeginTransaction();
                categoryAccess.Insert(category);
                _expenseConnection.Commit();

                _logger.LogInformation("User : {username} added new category '{categoryname}'", LoggedInUser, category.Name);
            }
            catch (CustomExceptions Ex)
            {
                _logger.LogWarning("User : {username} get validation exception while adding category with name '{categoryname}' ", LoggedInUser, category.Name);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                errors = (List <string>)Ex.Data["errors"];
            }
            catch (Exception Ex)
            {
                _logger.LogWarning("User : {username} get exception while adding category with name '{categoryname}' ", LoggedInUser, category.Name);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                LogExecption(Ex, _expenseConnection);

                errors = new List <string>()
                {
                    _appConfiguration.Messages.InternalServerError
                };
            }

            return(Json(new
            {
                success = (errors.Count == 0),
                data = category,
                error = errors
            }));
        }
Пример #3
0
        public IActionResult ChangePassword(ChangePassword changePassword)
        {
            var errors = new List <String>();
            var changePasswordAccess = new ChangePasswordAccess(_appConfiguration)
            {
                ExpenseConnection = _expenseConnection
            };

            try
            {
                _expenseConnection.BeginTransaction();
                changePasswordAccess.ChangePassword(changePassword);
                _expenseConnection.Commit();
            }
            catch (CustomExceptions Ex)
            {
                _logger.LogWarning("User : {username} get exception while changing the password", LoggedInUser);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                errors = (List <string>)Ex.Data["errors"];
            }
            catch (Exception Ex)
            {
                _logger.LogWarning("User : {username} get exception while changing the password", LoggedInUser);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                LogExecption(Ex, _expenseConnection);

                errors = new List <string>()
                {
                    Ex.Message
                };
            }

            return(Json(new
            {
                success = (errors.Count == 0),
                data = changePassword,
                error = errors
            }));
        }
Пример #4
0
        public IActionResult GetCategoryWiseData()
        {
            var     errors         = new List <string>();
            var     dashBoardQuery = new DashboardQuery(_expenseConnection);
            dynamic dashboardData  = null;

            try
            {
                dashboardData = dashBoardQuery.GetCategoryWiseExpenseAmount();

                _logger.LogInformation("User : {username} fetches dashboard data", LoggedInUser);
            }
            catch (Exception Ex)
            {
                _logger.LogInformation("User : {username} gets expection while trying to get dashboard data", LoggedInUser);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                LogExecption(Ex, _expenseConnection);

                errors = new List <string>()
                {
                    _appConfiguration.Messages.InternalServerError
                };
            }

            return(Json(new
            {
                success = (errors.Count == 0),
                data = dashboardData,
                error = errors
            }));
        }
        public async Task <IActionResult> Login(AppUser appUser)
        {
            var errors = new List <string>();

            try
            {
                AppUserAccess appUserAccess = new AppUserAccess(_appConfiguration)
                {
                    ExpenseConnection = _expenseConnection
                };

                if (appUserAccess.VerifyUser(ref appUser))
                {
                    var claims = new List <Claim>
                    {
                        new Claim(ClaimTypes.Name, appUser.Username),
                        new Claim(ClaimTypes.PrimarySid, appUser.Id.ToString())
                    };

                    var userIdentity = new ClaimsIdentity(claims, "login");

                    ClaimsPrincipal principal = new ClaimsPrincipal(userIdentity);
                    await HttpContext.SignInAsync(principal);

                    return(Json(new
                    {
                        success = true,
                        data = appUser,
                        error = errors
                    }));
                }
            }
            catch (Exception ex)
            {
                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }
            }
            return(Json(new { success = false, error = errors }));
        }
Пример #6
0
        public IActionResult AddExpenses(Expenses expenses)
        {
            var errors        = new List <string>();
            var expenseAccess = new ExpensesAccess()
            {
                ExpenseConnection = _expenseConnection
            };

            try
            {
                expenses.AddedBy    = GetLoggedUserId;
                expenses.PostedDate = DateTime.Now;
                _expenseConnection.BeginTransaction();
                expenseAccess.Insert(expenses);
                _expenseConnection.Commit();

                _logger.LogInformation("User: { username}added new expense of '{category}'", LoggedInUser, expenses.Category);
            }
            catch (CustomExceptions ex)
            {
                _logger.LogInformation("User : {username} get validation exception while adding expenses of category '{categoryname}' ", LoggedInUser, expenses.Category);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                errors = (List <string>)ex.Data["errors"];
            }
            catch (Exception Ex)
            {
                _logger.LogInformation("User : {username} get exception while adding expenses of category '{categoryname}' ", LoggedInUser, expenses.Category);

                if (_expenseConnection.InTransaction)
                {
                    _expenseConnection.RollBack();
                }

                LogExecption(Ex, _expenseConnection);

                errors = new List <string>()
                {
                    _appConfiguration.Messages.InternalServerError
                };
            }

            return(Json(new { success = (errors.Count == 0), data = expenses, error = errors }));
        }