public async Task Vincular(CargoDoFuncionarioDto cargoDoFuncionarioDto) { var funcionario = await _funcionarioRepositorio.ObterPorIdAsync(cargoDoFuncionarioDto.FuncionarioId); var cargo = await _cargoRepositorio.ObterPorIdAsync(cargoDoFuncionarioDto.CargoId); var cargoDoFuncionario = new CargoDoFuncionario(funcionario, cargo, cargoDoFuncionarioDto.DataDeVinculo); if (!cargoDoFuncionario.Validar()) { await NotificarValidacoesDeDominioAsync(cargoDoFuncionario.ValidationResult); return; } await _funcionarioRepositorio.AdicionarCargoParaFuncionarioAsync(cargoDoFuncionario); }