public async Task <IActionResult> CreateEmployeeAsync(CreateOrEditEmployeeRequest model) { var employee = EmployeeStaticMapper.MapFromModel(model); try { await _employeeRepository.CreateAsync(employee); } catch (Exception e) { return(BadRequest(e.Message)); } return(CreatedAtAction(nameof(GetEmployeeByIdAsync), new { id = employee.Id }, null)); }
public static Employee MapFromModel(CreateOrEditEmployeeRequest model, Employee employee = null) { if (employee == null) { employee = new Employee(); employee.Id = Guid.NewGuid(); } employee.Name = model.Name; employee.Salary = model.Salary; employee.DepartmentId = model.DepartmentId; return(employee); }
public async Task <ActionResult> UpdateEmployeeAsync(Guid id, CreateOrEditEmployeeRequest model) { Employee employee = await _employeeRepository.GetByIdAsync(id); if (employee == null) { return(BadRequest()); } employee = EmployeeStaticMapper.MapFromModel(model, employee); try { await _employeeRepository.UpdateAsync(employee); } catch (Exception e) { return(BadRequest(e.Message)); } return(NoContent()); }