Ejemplo n.º 1
0
        public IActionResult Update([FromRoute] Guid id, [FromBody] ServiceUpdateRequest service)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetReadableString()));
            }

            var serviceToUpdate = ServiceRepository.Get(id);

            if (serviceToUpdate == default(Service))
            {
                return(NotFound());
            }

            var duplicateServices = ServiceRepository
                                    .GetAll(new ServiceFilters()
            {
                Name = service.Name
            })
                                    .Any(s => s.Id != id);

            if (duplicateServices)
            {
                return(Conflict($"A Service with this name already exists."));
            }

            var serviceRecord = new Service()
            {
                Name           = service.Name,
                Description    = service.Description,
                Id             = serviceToUpdate.Id,
                LastUpdateDate = DateTime.UtcNow,
                LastUpdateById = User.GetId(),
            };

            try
            {
                var updatedService = ServiceRepository.Update(serviceRecord);
                return(Ok(updatedService));
            }
            catch (Exception ex)
            {
                throw new Exception($"Error creating the specified Service: {ex.Message}. See inner exception for details.", ex);
            }
        }
Ejemplo n.º 2
0
 void UpdateService(string id, ServiceUpdateRequest request);