public async Task Update(Guid id, UpsertCategoryModel model) { var category = await _repository.GetById(id); category.Update(model.Name, model.Description); _repository.Update(category); await _repository.SaveChanges(); }
/// <summary> /// Provides an actionresult for adding a new category /// </summary> /// <returns>Actionresult for adding a new category</returns> public async Task <IActionResult> AddCategory() { var model = new UpsertCategoryModel { AvailableParentCategories = await CreateAvailableParentCategoriesSelectList(new CategoryModel()), CategoryModel = new CategoryModel() }; return(View("UpsertCategory", model)); }
public async Task <CategoryModel> Add(UpsertCategoryModel model) { var category = _mapper.Map <Category>(model); await _repository.Add(category); await _repository.SaveChanges(); return(_mapper.Map <CategoryModel>(category)); }
/// <summary> /// Upserts the category model to the database /// </summary> /// <param name="model">Model to upsert</param> /// <returns>Index page and message if success</returns> public async Task <IActionResult> UpsertCategory(UpsertCategoryModel model) { if (model.CategoryModel.Id > 0) { if (!ModelState.IsValid) { return(RedirectToAction("EditCategory", new { model.CategoryModel.Id })); } try { await _categoryService.UpdateCategoryForCurrentUser(model.CategoryModel); TempDataHelper.SetTemporaryMessage(TempData, MessageState.Success, Resources.CategoryUpdated); } catch (NotFoundException) { TempDataHelper.SetTemporaryMessage(TempData, MessageState.Error, Resources.CategoryNotFound); } } else { if (!ModelState.IsValid) { return(RedirectToAction("AddCategory")); } try { await _categoryService.CreateCategoryForCurrentUser(model.CategoryModel); TempDataHelper.SetTemporaryMessage(TempData, MessageState.Success, Resources.CategoryCreated); } catch (AlreadyExistsException) { TempDataHelper.SetTemporaryMessage(TempData, MessageState.Error, string.Format(Resources.CategoryAlreadyExists, model.CategoryModel.Name)); } } return(RedirectToAction("Index")); }
/// <summary> /// Provides an actionresult for editing a new category /// </summary> /// <param name="categoryId">Id of category to edit</param> /// <param name="includeTransactions">Include transactions or not for overview</param> /// <returns>Actionresult for editing a new category</returns> public async Task <IActionResult> EditCategory(int categoryId) { try { var category = await _categoryService.GetCategoryByIdForCurrentUser(categoryId); var availableParentCategories = await CreateAvailableParentCategoriesSelectList(category); var model = new UpsertCategoryModel { CategoryModel = category, AvailableParentCategories = availableParentCategories }; return(View("UpsertCategory", model)); } catch (NotFoundException) { TempDataHelper.SetTemporaryMessage(TempData, MessageState.Error, Resources.CategoryNotFound); return(RedirectToAction("Index")); } }
public async Task <IActionResult> Update([FromRoute] Guid id, [FromBody] UpsertCategoryModel model) { await _categoriesService.Update(id, model); return(NoContent()); }
public async Task <IActionResult> Add([FromBody] UpsertCategoryModel model) { var result = await _categoriesService.Add(model); return(Created(result.Id.ToString(), null)); }