public void UpdateResource(UpdateResourceViewModel resourceViewModel, Resource resource) { resource.Title = resourceViewModel.Title; resource.Description = resourceViewModel.Description; resource.Format = resourceViewModel.Format; resource.SecurityLevel = resourceViewModel.SecurityLevel; resource.Language = resourceViewModel.Language; resource.Priority = resourceViewModel.Priority; var tagNames = new Collection <string>(resourceViewModel.Tags.Split(',')); var tags = _tagService.GetTagsWithNames(tagNames); //tags.Except(resource.Tags).ToList().ForEach(tag => resource.Tags.Add(tag)); _uow.Save(); }
public ActionResult Edit(UpdateResourceViewModel resourceViewModel) { var resource = _resourceService.GetById(resourceViewModel.Id.GetValueOrDefault(-1)); if (resource == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (!User.IsInRole("Admin")) { resource.ResourceStatus = ResourceStatus.PendingForEditApprove; } if (ModelState.IsValid) { _resourceService.UpdateResource(resourceViewModel, resource); } return(View(resource)); }
public ActionResult Edit(UpdateResourceViewModel resourceViewModel) { var resource = _resourceService.GetById(resourceViewModel.Id.GetValueOrDefault(-1)); if (resource == null) { return(new StatusCodeResult(400)); } if (!User.IsInRole("Admin")) { resource.ResourceStatus = ResourceStatus.PendingForEditApprove; } if (ModelState.IsValid) { _resourceService.UpdateResource(resourceViewModel, resource); } ViewBag.Readonly = !resource.IsEditable; return(View(resource)); }
public async Task <RequestResult <ResourceViewModel> > UpdateResource(int resourceId, UpdateResourceViewModel resourceViewModel) { var resource = await _resourceRepository.FindResource(resourceId, false); if (resource == null) { return(RequestResult <ResourceViewModel> .Failed("Ресурс не найден")); } var existingResource = await _resourceRepository.FindResourceByName(resourceViewModel.Name); if (existingResource != null && existingResource.ResourceId != resource.ResourceId) { return(RequestResult <ResourceViewModel> .Failed("Ресурс с таким именем уже существует")); } resource.ResourceName = resourceViewModel.Name; resource.Price = resourceViewModel.Price; await _resourceRepository.UpdateResource(resource); return(RequestResult <ResourceViewModel> .Success(new ResourceViewModel(resource))); }
public async Task<IActionResult> UpdateResource(int id, [FromBody] UpdateResourceViewModel model) { var result = await _resourceService.UpdateResource(id, model); return result.ToJsonResult(); }