示例#1
0
        public async Task AddCategory(string name, string userId)
        {
            try
            {
                AdminExpenseCategory category = new AdminExpenseCategory()
                {
                    Name        = name,
                    DateCreated = DateTime.Now,
                    AppUserId   = userId
                };
                var appUsers = await _userManager.GetUsersInRoleAsync("Users");

                List <string> idList = new List <string>();
                foreach (var item in appUsers)
                {
                    idList.Add(item.Id);
                }
                _adminCategoryRepository.Insert(category);
                AddCategoryForUsers(category.Name, idList);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
                _logger.LogCritical(ex.StackTrace);
            }
        }
示例#2
0
        public async Task <IActionResult> UpdateCategory(AdminExpenseCategory category)
        {
            if (category == null || !ModelState.IsValid)
            {
                return(View(category));
            }
            var user = await GetCurrentUser();

            //Which is a better practice, send the appUserId to the view or
            // set here in the controller with the HttpContext property
            //category.AppUserId = user.Id;
            _adminCategoryService.UpdateCategory(category, user.Id);

            TempData["Message"] = $"Category \"{category.Name}\" was updated successfully!";

            return(RedirectToAction("Index"));
        }
示例#3
0
 private void AddCategoryForUsers(string catName, List <string> idList)
 {
     try
     {
         AdminExpenseCategory category = new AdminExpenseCategory();
         //category = GetCategoryById(catId);
         //List<AppUser> appUsersList = appUsers.ToList();
         foreach (var item in idList)
         {
             _expenseCategoryService.AddCategoryWithoutSaveChanges(catName, item);
         }
         _expenseCategoryService.SaveChanges();
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.Message);
         _logger.LogCritical(ex.StackTrace);
     }
 }
示例#4
0
 public void Update(AdminExpenseCategory obj)
 {
     _context.Entry(obj).State = EntityState.Modified;
     _context.SaveChanges();
 }
示例#5
0
        public void Insert(AdminExpenseCategory obj)
        {
            _context.AdminExpenseCategories.Add(obj);

            //   _context.SaveChanges();
        }
示例#6
0
 public void Delete(AdminExpenseCategory category)
 {
     _context.AdminExpenseCategories.Remove(category);
     _context.SaveChanges();
 }
示例#7
0
 public void UpdateCategory(AdminExpenseCategory adminCategory, string userId)
 {
     adminCategory.AppUserId = userId;
     _adminCategoryRepository.Update(adminCategory);
 }
示例#8
0
 public void DeleteCategory(AdminExpenseCategory category)
 {
     _adminCategoryRepository.Delete(category);
 }