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}"
                }));
            }
        }