public async Task <ActionResult> FullUpdateEmployeeAsync(string id, EmployeeBiodataCreateDto employeeBiodataCreateDto) { var employeeModel = await _employeeRepository.GetEmployeeByIdAsync(id); if (employeeModel is null) { return(NotFound(new Response { Status = "Error", Message = $"The employee with ID {id} could not be found." })); } _employeeMapper.Map(employeeBiodataCreateDto, employeeModel); if (!await _employeeRepository.SaveChangesAsync()) { return(BadRequest()); } return(NoContent()); }
public async Task <ActionResult <EmployeeBiodataReadDto> > CreateEmployeeAsync(EmployeeBiodataCreateDto employeeBiodataCreateDto) { try { var employeeModel = _employeeMapper.Map <EmployeeBiodata>(employeeBiodataCreateDto); await _employeeRepository.CreateEmployeeAsync(employeeModel); await _employeeRepository.SaveChangesAsync(); var employeeReadDto = _employeeMapper.Map <EmployeeBiodataReadDto>(employeeModel); return(CreatedAtRoute(nameof(GetEmployeeById), new { employeeReadDto.EmployeeId }, employeeReadDto)); } catch (Exception) { throw; // return StatusCode(StatusCodes.Status500InternalServerError, new Response { Status = "Error", Message = "An Error Occurred!" }); } }
public async Task <ActionResult <EmployeeBiodataReadDto> > CreateEmployeeAsync(EmployeeBiodataCreateDto employeeBiodataCreateDto) { try { var employeeModel = _employeeMapper.Map <EmployeeBiodata>(employeeBiodataCreateDto); await _employeeRepository.CreateEmployeeAsync(employeeModel); await _employeeRepository.SaveChangesAsync(); var employeeReadDto = _employeeMapper.Map <EmployeeBiodataReadDto>(employeeModel); return(CreatedAtRoute(nameof(GetEmployeeById), new { employeeReadDto.EmployeeId }, employeeReadDto)); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, new Response { Success = false, Message = $"{ex.Message} {ex.StackTrace}" })); } }