public async Task <IActionResult> UpdateEmployee(int id, EmployeeForDetailDto employeeForDetailDto) { if (employeeForDetailDto == null) { return(BadRequest(new ErrorModel(1, 400, "Empty Body"))); } var employeeFromRepository = await _repository.GetEmployee(id); if (employeeFromRepository == null) { return(BadRequest(new ErrorModel(2, 400, "employee not available"))); } employeeFromRepository.Name = employeeForDetailDto.Name; employeeFromRepository.ContactNumber = employeeForDetailDto.ContactNumber; employeeFromRepository.NIC = employeeForDetailDto.NIC; employeeFromRepository.Address = employeeForDetailDto.Address; employeeFromRepository.Type = employeeForDetailDto.Type; employeeFromRepository.Salary = employeeForDetailDto.Salary; employeeFromRepository.Role = employeeForDetailDto.Role; if (await _repository.SaveAll()) { return(NoContent()); } throw new System.Exception($"Updating employee {id} failed on save"); }
public async Task <IActionResult> CreateEmployee(EmployeeForDetailDto employeeForDetailDto) { if (employeeForDetailDto == null) { return(BadRequest(new ErrorModel(1, 400, "Empty Body"))); } var EmployeeToCreate = _mapper.Map <Employee>(employeeForDetailDto); await _repository.CreateEmployee(EmployeeToCreate); if (await _repository.SaveAll()) { var employeeToReturn = _mapper.Map <EmployeeForDetailDto>(EmployeeToCreate); return(CreatedAtRoute(nameof(GetEmployee), new { EmployeeToCreate.Id }, employeeToReturn)); } return(BadRequest("Could not create Employee")); }