public Funcionario(string nome, NivelFuncionario nivel, double salarioBase, Departamentos departamentos) { Nome = nome; Nivel = nivel; SalarioBase = salarioBase; Departamentos = departamentos; }
static void Main(string[] args) { Console.WriteLine("Digite o nome do departamento: "); string nomeDepartamento = Console.ReadLine(); Console.WriteLine("Entre com o nome do Funcionario: "); Console.Write("Nome: "); string nome = Console.ReadLine(); Console.Write("Nível - Junior, Pleno, Senior: "); /*converter de enum para string que sera digitado*/ NivelFuncionario nivel = Enum.Parse <NivelFuncionario>(Console.ReadLine()); Console.WriteLine("Entre com o salario base: "); double salarioBase = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Departamentos departamentos = new Departamentos(nomeDepartamento); Funcionario func = new Funcionario(nome, nivel, salarioBase, departamentos); Console.WriteLine("Quantos contratos serao cadastrados ? "); int x = int.Parse(Console.ReadLine()); for (int i = 1; i <= x; i++) { Console.WriteLine($"Entre #{i} data do contrato: "); Console.Write("Data = (DIA/MES/ANO): "); DateTime data = DateTime.Parse(Console.ReadLine()); double valorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Console.Write("Duracao em horas: "); int horas = int.Parse(Console.ReadLine()); HorasContrato contrato = new HorasContrato(data, valorHora, horas); func.AdicionarContrato(contrato); } Console.WriteLine(); Console.WriteLine("Entre com mes e ano para calcular o ganho do Funcionario: "); string mesEano = Console.ReadLine(); /* uso do substring para tirar o mes e ano para guardar na variável*/ int mes = int.Parse(mesEano.Substring(0, 2)); int ano = int.Parse(mesEano.Substring(3)); Console.WriteLine("Nome: " + func.Nome); Console.WriteLine("Departamentos: " + func.Departamentos.Nome); Console.WriteLine("Os ganhos " + mesEano + ": " + func.Ganhos(ano, mes).ToString("F2", CultureInfo.InvariantCulture)); }
static void Main(string[] args) { Console.WriteLine("Digite o departamento do usuário:"); Departamento nomeDepartamento = new Departamento(Console.ReadLine()); Console.WriteLine("Digite os dados do funcionário"); Console.Write("Nome: "); string nomeFuncionario = Console.ReadLine(); Console.Write("Nivel (Junior, Senior, Pleno): "); NivelFuncionario nivelFuncionario = Enum.Parse <NivelFuncionario>(Console.ReadLine()); Console.Write("Salário Base: "); double salarioBase = double.Parse(Console.ReadLine()); Funcionario funcionario = new Funcionario(nomeFuncionario, salarioBase, nivelFuncionario, nomeDepartamento); Console.Write("Quantos contratos esse funcionário tem: "); int quantidadeContratos = int.Parse(Console.ReadLine()); for (int x = 1; x <= quantidadeContratos; x++) { Console.WriteLine("Entre os dados do contrato"); Console.Write("Data (DD/MM/AAAA):"); var data = DateTime.Parse(Console.ReadLine()); Console.Write("Valor por hora :"); var valorHora = double.Parse(Console.ReadLine()); Console.Write("Duração :"); var duracao = int.Parse(Console.ReadLine()); HorasContratadas contrato = new HorasContratadas(data, valorHora, duracao); funcionario.AdicionarContrato(contrato); } Console.WriteLine("Entre o mes e o ano para calcular o salário mensal (MM/AAAA)"); string periodoSalario = Console.ReadLine(); int mes = int.Parse(periodoSalario.Substring(0, 2)); int ano = int.Parse(periodoSalario.Substring(3)); double soma = funcionario.SalarioMes(mes, ano); Console.WriteLine("Nome: " + funcionario.Nome); Console.WriteLine("Departamento: " + funcionario.Setor.Nome); Console.WriteLine("Salário do periodo " + mes + "/" + ano + ": " + soma); }