static void Main(string[] args) { Console.WriteLine("******** Programa exemplo - usando composição (Composition) **********"); Console.WriteLine(); Console.WriteLine(); Console.Write("Departamento: "); string deptoName = Console.ReadLine(); Console.WriteLine(); Console.WriteLine("Dados do trabalhador"); Console.Write("Nome: "); string trabName = Console.ReadLine(); Console.Write("Nivel do trabalhador <Junior/Pleno/Senior>: "); WorkerLevel level = Enum.Parse <WorkerLevel>(Console.ReadLine()); Console.Write("Salario Base: "); double SalarioBase = double.Parse(Console.ReadLine()); Departamento depto = new Departamento(deptoName); Trabalhador worker = new Trabalhador(trabName, level, SalarioBase, depto); Console.WriteLine(); Console.Write("Digite quantos contratos o trabalhador terá?: "); int n = int.Parse(Console.ReadLine()); for (int i = 1; i <= n; i++) { Console.WriteLine($"Entre com os dados do Contrato #{i}: "); Console.Write("Data do contrato: "); DateTime DataContrato = DateTime.Parse(Console.ReadLine()); Console.Write("Valor por hora: "); double ValHora = double.Parse(Console.ReadLine()); Console.Write("Duração do contrato: "); int CargaHora = int.Parse(Console.ReadLine()); HoraContrato TrabContrato = new HoraContrato(DataContrato, ValHora, CargaHora); worker.addContrato(TrabContrato); Console.WriteLine(); } Console.Write("Ente com o mês e ano para calculo de ganho (MM/AAAA): "); string MesAno = Console.ReadLine(); int mes = int.Parse(MesAno.Substring(0, 2)); int ano = int.Parse(MesAno.Substring(3)); Console.WriteLine($"Nome do trabalhador: {worker.Name}"); Console.WriteLine($"Departamento: {worker.Departamento.Name}"); Console.WriteLine($"Ganhos em {MesAno}: {worker.Ganho(ano,mes)}"); }
static void Main(string[] args) { Console.WriteLine("Digite o nome do departamento"); string Depart = Console.ReadLine(); Departamento depto = new Departamento(Depart); Console.WriteLine("Digite as informações do trabalhador"); Console.WriteLine("Nome.:"); string nome = Console.ReadLine(); Console.WriteLine("Digite o nível do Funcionário(Junior | NivelMedio | Senior)"); NivelTrabalhador nivel = Enum.Parse <NivelTrabalhador>(Console.ReadLine()); Console.WriteLine("Digite o salário Base do funcionário"); double salBase = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Trabalhador trabalhador = new Trabalhador(nome, nivel, salBase, depto); Console.WriteLine("Quantos contratos para este trabalhador ?"); int nContrato = int.Parse(Console.ReadLine()); for (int i = 0; i < nContrato; i++) { Console.WriteLine("Entre com os dados do contrato .:" + i); Console.WriteLine("Data do contrato em (DD/MM/YYYY)"); DateTime data = DateTime.Parse(Console.ReadLine()); Console.WriteLine("Digite o valor pago por hora neste contrato"); double valorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Console.WriteLine("Digite a quantidade de horas"); int qtdHoras = int.Parse(Console.ReadLine()); // Após coletar os dados do contrato devemos entao instanciar os contratos HoraContrato contrato = new HoraContrato(data, valorHora, qtdHoras); // Adicionar os contratos ao trabalhador trabalhador.AddContrato(contrato); } Console.WriteLine("Entre com o mês e ano para calcular o valor recebido do trabalhador no período (MM/YYYY) )"); string mesAno = Console.ReadLine(); //string[] mesAnoAux = mesAno.Split("/"); int mes = int.Parse(mesAno.Substring(0, 2)); // pegar a string mesAno recortar a partir da posição 0 dois caracteres int ano = int.Parse(mesAno.Substring(3)); // Imprimir os dados do trbalhador Console.WriteLine("Nome .: " + trabalhador.Nome); Console.WriteLine("Departamento.:" + trabalhador.Departamento.Nome); Console.WriteLine("Valor recebido.: " + mesAno + " : " + trabalhador.Ganho(ano, mes).ToString("F2"), CultureInfo.InvariantCulture); }
static void Main() { Console.Write("Informe o nome do departamento: "); string deptoNome = Console.ReadLine(); Console.Write("\nInforme os dados do colaborador:"); Console.Write("\nNome: "); string nome = Console.ReadLine(); Console.Write("\nNível ({0}): ", ListarNiveis()); ColaboradorLevel nivel = Enum.Parse <ColaboradorLevel>(Console.ReadLine()); Console.Write("\nSalário base: "); double baseSalario = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Departamento depto = new Departamento(deptoNome); Colaborador colaborador = new Colaborador(nome, nivel, baseSalario, depto); Console.Write("\nInforme a quantidade de contratos para este trabalhor: "); int n = int.Parse(Console.ReadLine()); for (int i = 1; i <= n; i++) { Console.WriteLine($"\nDigite os dados do contrato -> {i}"); Console.Write("Data (DD/MM/AAAA): "); DateTime data = DateTime.Parse(Console.ReadLine()); Console.Write("Valor hora: "); double valorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Console.Write("Duração(horas): "); int horas = int.Parse(Console.ReadLine()); HoraContrato contrato = new HoraContrato(data, valorHora, horas); colaborador.AdicionaContrato(contrato); } Console.Write("\nInforme o Mês/Ano para calcular o ganho (MM/AAAA): "); string mesAno = Console.ReadLine(); int mes = int.Parse(mesAno.Substring(0, 2)); int ano = int.Parse(mesAno.Substring(3)); Console.Write("\nNome: " + colaborador.Nome); Console.Write("\nDepartamento: " + colaborador.Departamento.Nome); Console.Write("\nGanho em: " + mesAno + ": " + colaborador.Ganho(ano, mes).ToString("F2", CultureInfo.InvariantCulture)); }
static void Main(string[] args) { Console.WriteLine("Entre com o nome do departamento"); string nomeDepartamento = Console.ReadLine(); Console.WriteLine("-------------Informações do trabalhador-------------"); Console.Write("Nome: "); string nome = Console.ReadLine(); Console.Write("Nivel(Junior, Pleno, Senior): "); Level nivel = Enum.Parse <Level>(Console.ReadLine()); Console.Write("Salario base: "); double salarioBase = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Departamento departamento = new Departamento(nomeDepartamento); Trabalhador trabalhador = new Trabalhador(nome, nivel, salarioBase, departamento); Console.WriteLine("Serão quantos contratos para este trabalhador?"); int n = int.Parse(Console.ReadLine()); for (int i = 1; i <= n; i++) { Console.WriteLine("-----------------"); Console.WriteLine($"Contrato número #{i}:"); Console.Write("Data(DD/MM/AAAA): "); DateTime data = DateTime.Parse(Console.ReadLine()); Console.Write("Valor por hora: "); double valorPorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Console.Write("Duração(horas): "); int horas = int.Parse(Console.ReadLine()); HoraContrato contrato = new HoraContrato(data, valorPorHora, horas); trabalhador.AddContrato(contrato); } Console.WriteLine("-----------------"); Console.WriteLine("Entre com mês e ano para calcular o ganho(MM/AAAA): "); string mesEAno = Console.ReadLine(); Console.WriteLine("-----------------"); int mes = int.Parse(mesEAno.Substring(0, 2)); int ano = int.Parse(mesEAno.Substring(3)); Console.WriteLine("Nome: " + trabalhador.Nome); Console.WriteLine("Departamento: " + trabalhador.Departamento.Nome); Console.WriteLine("Ganho de " + mesEAno + ": " + trabalhador.Ganho(ano, mes).ToString("F2", CultureInfo.InvariantCulture)); }
static void Main(string[] args) { Console.Write("Digite o nome do departamento: "); string nomeDept = Console.ReadLine(); Console.WriteLine("Entre com a data do trabalhador: "); Console.Write("Nome: "); string nome = Console.ReadLine(); Console.Write("Nivel(Junior/Medio/Senior): "); string readNivel = Console.ReadLine(); TrabalhadorNivel nivel; Enum.TryParse(readNivel, true, out nivel); Console.Write("Base salarial: "); double baseSalarial = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Departamento dept = new Departamento(nomeDept); Trabalhador trabalhador = new Trabalhador(nome, nivel, baseSalarial, dept); Console.Write("Quantos contratos para esse trabalhador: "); int n = int.Parse(Console.ReadLine()); for (int i = 1; i <= n; i++) { Console.WriteLine($"Entre #{i} contrato: "); Console.Write("Data (DD/MM/YYYY): "); DateTime date = DateTime.Parse(Console.ReadLine()); Console.Write("Valor por hora: "); double valorPorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Console.Write("Duração de horas: "); int horas = int.Parse(Console.ReadLine()); HoraContrato contrato = new HoraContrato(date, valorPorHora, horas); trabalhador.AddContrato(contrato); } Console.WriteLine(); Console.Write("Entre com o mes e o ano para calcular o ganho(MM/YYYY): "); string mesEano = Console.ReadLine(); int mes = int.Parse(mesEano.Substring(0, 2)); int ano = int.Parse(mesEano.Substring(3)); Console.WriteLine("Nome: " + trabalhador.Nome); Console.WriteLine("Departamento: " + trabalhador.Departamento.Nome); Console.WriteLine("Renda total " + mesEano + ": " + trabalhador.Salario(ano, mes).ToString("F2", CultureInfo.InvariantCulture)); }
static void Main(string[] args) { Console.Write("Entre com o nome do Departamento: "); string deptNome = Console.ReadLine(); Console.WriteLine("Entre com os dados do Colaborador: "); Console.Write("Nome: "); string nome = Console.ReadLine(); Console.Write("Nivel (Junior/Pleno/Senior): "); ColaboradorNivel nivel = Enum.Parse <ColaboradorNivel>(Console.ReadLine()); Console.Write("Salario base: "); double salarioBase = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Departamento dept = new Departamento(deptNome); Colaborador colaborador = new Colaborador(nome, nivel, salarioBase, dept); Console.Write("Quantos contratos para esse colaborador? "); int n = int.Parse(Console.ReadLine()); for (int i = 1; i <= n; i++) { Console.WriteLine($"Entre com o #{i} dado do contrato:"); Console.Write("Data (DD/MM/YYYY): "); DateTime data = DateTime.Parse(Console.ReadLine()); Console.Write("Valor por hora: "); double valorPorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Console.Write("Duracao (horas): "); int horas = int.Parse(Console.ReadLine()); HoraContrato contrato = new HoraContrato(data, valorPorHora, horas); colaborador.AddContrato(contrato); } Console.WriteLine(); Console.Write("Entre com o mes e o ano para calcular o ganho (MM/YYYY): "); string mesEAno = Console.ReadLine(); int mes = int.Parse(mesEAno.Substring(0, 2)); int ano = int.Parse(mesEAno.Substring(3)); Console.WriteLine("Nome: " + colaborador.Nome); Console.WriteLine("Departamento: " + colaborador.Departamento.Nome); Console.WriteLine("Ganho por " + mesEAno + ": " + colaborador.Ganho(ano, mes).ToString("F2"), CultureInfo.InvariantCulture); }
static void Main(string[] args) { Console.Write("Entre com o nome do Departamento: "); string deptNome = Console.ReadLine(); Console.WriteLine("Entre com os dados do Trabalhador: "); Console.Write("Nome :"); string nome = Console.ReadLine(); Console.Write("Level (Junior/MidLevel/Senior): "); WorkerLevel level = Enum.Parse<WorkerLevel>(Console.ReadLine()); Console.Write("Salário base: "); double salarioBase = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Departamento dept = new Departamento(deptNome); Trabalhador trabalhador = new Trabalhador(nome, level, salarioBase, dept); Console.Write("Quantos contratos para este trabalhador? "); int n = int.Parse(Console.ReadLine()); for (int i = 1; i <= n; i++) { Console.WriteLine($"Enter #{i} contract data: "); Console.Write("Date (DD/MM/YYY): "); DateTime data = DateTime.Parse(Console.ReadLine()); Console.Write("Valor por hora: "); double valorPorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture); Console.Write("Duração (horas): "); int horas = int.Parse(Console.ReadLine()); HoraContrato contrato = new HoraContrato(data, valorPorHora, horas); trabalhador.AddContrato(contrato); } Console.WriteLine(); Console.Write("Entre com o mes e ano para calcular o ganho (MM/YYY): "); string mesEAno = Console.ReadLine(); int mes = int.Parse(mesEAno.Substring(0, 2)); int ano = int.Parse(mesEAno.Substring(3)); Console.WriteLine("Nome: " + trabalhador.Nome); Console.WriteLine("Departamento: " + trabalhador.Departamento.Nome); Console.WriteLine("Ganho de " + mesEAno + ": " + trabalhador.Ganho(ano, mes).ToString("F2", CultureInfo.InvariantCulture); }