public async Task <IActionResult> GetById(Guid id) { CropCategory cropCategory = await _repository.GetByIdAsync(id); if (cropCategory == null) { return(NotFound()); } return(Ok(_mapper.Map(cropCategory))); }
public async Task <IActionResult> Post(CropCategoryRequest request) { try { CropCategory cropCategory = _mapper.Map(request); cropCategory = await _repository.AddAsync(cropCategory); return(CreatedAtAction(nameof(GetById), new { id = cropCategory.Id }, _mapper.Map(cropCategory))); } catch (DataStoreException e) { _logger.LogError(e.Message, e, request); return(StatusCode(StatusCodes.Status500InternalServerError, e.Message)); } }
public ActionResult Add(CropCategory category, HttpPostedFileBase file) { category.CreatorID = User.Identity.GetUserId <int>(); category.CreationDate = DateTime.UtcNow; if (DB.CropCategories.Any(c => c.Name.Contains(category.Name))) { ModelState.AddModelError(nameof(category.Name), "The category already exists"); } if (ModelState.IsValid) { DB.CropCategories.Add(category); DB.SaveChanges(); return(RedirectToAction(nameof(Details), new { category.ID })); } ViewBag.branches = new SelectList(DB.Branches.OrderBy(c => c.Name), nameof(Branch.ID), nameof(Branch.Name), category.BranchID); ViewBag.Title = "Add a crop category"; return(View(category)); }
public async Task <IActionResult> Delete(Guid id) { try { CropCategory cropCategory = await _repository.GetByIdAsync(id); if (cropCategory == null) { return(NotFound()); } await _repository.DeleteAsync(cropCategory); return(Ok(id)); } catch (DataStoreException e) { _logger.LogError(e.Message, e, id); return(StatusCode(StatusCodes.Status500InternalServerError, e.Message)); } }
public async Task <IActionResult> Put(Guid id, CropCategoryRequest request) { try { CropCategory cropCategory = await _repository.GetByIdAsync(id); if (cropCategory == null) { return(NotFound()); } _mapper.Map(cropCategory, request); await _repository.UpdateAsync(cropCategory); return(Ok()); } catch (DataStoreException e) { _logger.LogError(e.Message, e, request); return(StatusCode(StatusCodes.Status500InternalServerError, e.Message)); } }