public IActionResult UpdateEmployee(int id, [FromBody] EmployeeValidationWrapper employee) { try { if (employee == null) { _logger.LogInformation("Invalid request body."); return(StatusCode(400, "Invalid request body.")); } _logger.LogInformation("Validating request body..."); if (!ModelState.IsValid) { _logger.LogInformation($"Errors in validation: {ModelState}"); return(BadRequest(ModelState)); } var updatedEmployee = _employeeRepository.UpdateEmployee(id, employee); if (updatedEmployee == null) { return(StatusCode(400, $"Employee with id {id} not found")); } //else //{ return(CreatedAtRoute("GetEmployee", new { id = updatedEmployee.Id }, updatedEmployee)); //} } catch (Exception e) { _logger.LogError($"Something went wrong: {e}"); return(StatusCode(500, "Internal Server Error")); } }
public EmployeeDTO UpdateEmployee(int employeeId, EmployeeValidationWrapper employee) { var toUpdate = _context.Employees.Where(e => e.Id == employeeId).FirstOrDefault(); if (toUpdate == null) { _logger.LogInformation($"Employee with id {employeeId} does not exist."); return(null); } _logger.LogInformation($"Updating employee with id {employeeId}..."); Mapper.Map(employee, toUpdate); _context.SaveChanges(); _logger.LogInformation($"Successfully updated employee with id {employeeId}."); return(Mapper.Map <EmployeeDTO>(toUpdate)); }