Ejemplo n.º 1
0
 public Trabalhador(string nome, NivelTrabalhador nivel, double salarioBase, Departamento departamento)
 {
     Nome         = nome;
     Nivel        = nivel;
     SalarioBase  = salarioBase;
     Departamento = departamento;
 }
Ejemplo n.º 2
0
 //construtor com argumentos, lembrando que não podemos adicionar lista aos argumentos. ela começa vazia
 //depois que irá adicionar os dados a ela, então por via de regra, não é usual.
 public Trabalhador(string nome, NivelTrabalhador nivel, double basesalarial, Departamento departamento)
 {
     Nome         = nome;
     Nivel        = nivel;
     BaseSalarial = basesalarial;
     Departamento = departamento;
 }
Ejemplo n.º 3
0
        static void Main(string[] args)
        {
            //Dados do Departamento de trabalho
            Console.Write("DEPARTAMENTO: ");
            string nomeDepartamento = Console.ReadLine();

            //Dados do Trabalhador
            Console.WriteLine("DADOS DO TRABALHADOR");
            Console.Write("Nome: ");
            string nomeTrabalhador = Console.ReadLine();

            //Converter string para o tipo de Enum criado
            Console.Write("Nível: ");
            NivelTrabalhador nivelTrabalhador = Enum.Parse <NivelTrabalhador>(Console.ReadLine());

            Console.Write("Salário-base: ");
            double salarioBase = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);

            //Instanciação de objetos para preenchimento dos dados
            Departamento departamento = new Departamento(nomeDepartamento);
            Trabalhador  trabalhador  = new Trabalhador(nomeTrabalhador, nivelTrabalhador,
                                                        salarioBase, departamento);

            //Adicionando contratos
            Console.Write("Quantos contratos deseja cadastrar para o trabalhador? ");
            int numeroContratos = int.Parse(Console.ReadLine());

            Console.WriteLine("DADOS DO CONTRATO");
            for (int i = 0; i < numeroContratos; i++)
            {
                Console.WriteLine();
                Console.Write($"Contrato número #{i + 1}: ");
                Console.Write("Data(DD/MM/YYYY): ");
                DateTime dataContrato = DateTime.Parse(Console.ReadLine());
                Console.Write("Valor cobrado  por Hora: ");
                double valorPorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
                Console.Write("Duração em horas do contrato: ");
                int            duracaoContrato = int.Parse(Console.ReadLine());
                HoraContratada contrato        = new HoraContratada(dataContrato, valorPorHora, duracaoContrato);
                //Adicionando o contrato aos contratos do Trabalhador em questão
                trabalhador.AdicionarContrato(contrato);
            }

            Console.WriteLine();
            Console.WriteLine("CÁLCULO DE GANHO DO TRABALHADOR EM UM DADO MÊS E ANO");
            Console.Write("Data(MM/YYYY): ");
            string mesAno = Console.ReadLine();
            int    mes    = int.Parse(mesAno.Substring(0, 2)); //recorta da posição 0 dois caracteres. No caso a posição 0 e 1 (mês)
            int    ano    = int.Parse(mesAno.Substring(3));    //corta da posição 3 em diante (ano)

            Console.WriteLine();
            Console.WriteLine("Resultado: ");
            Console.WriteLine("Nome: " + trabalhador.Nome);
            Console.WriteLine("Departamento: " + trabalhador.Departamento.Nome);
            Console.WriteLine("Ganho " + "no mês e ano " + mesAno
                              + ": "
                              + "R$ " + trabalhador.GanhoAnoMes(mes, ano).ToString("F2", CultureInfo.InvariantCulture));
        }
Ejemplo n.º 4
0
        static void Main(string[] args)
        {
            //inserindo os dados do trabalhador
            Console.Write("Digite o Nome do Departamento: ");
            string nomeDep = Console.ReadLine();

            Console.WriteLine("Entre com os dados do Trabalhador: ");
            Console.Write("Nome: ");
            string nome = Console.ReadLine();

            Console.Write("Qual o Nível do trabalhor, Junior/Pleno/Senior: ");
            //aqui precisamos converter Enum para string, usando os parametros do projeto tipo netcore.
            NivelTrabalhador nivel = Enum.Parse <NivelTrabalhador>(Console.ReadLine());

            //caso quisessemos converter pelo projeto do tipo netframework faziamos a opção abaixo:
            //NivelTrabalhador nivel2 = (NivelTrabalhador)Enum.Parse(typeof(NivelTrabalhador), Console.ReadLine());
            Console.Write("Base Salarial do Funcionário: ");
            double baseSalario = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);

            //instanciando as classes e inserindo os atributos que o usuário digitou
            Departamento dep  = new Departamento(nomeDep);
            Trabalhador  trab = new Trabalhador(nome, nivel, baseSalario, dep);

            //Fazendo os Contratos.
            Console.Write("Quantos Contratos para esse Trabalhador?  ");
            int qntContrato = int.Parse(Console.ReadLine());

            //fazendo um for de acordo com a quantidade de contratos
            for (int i = 1; i <= qntContrato; i++)
            {
                Console.WriteLine($"Entre com os dados do contrato número {i}: ");
                Console.Write($"Data do Contrato número {i} (DD/MM/YYYY): ");
                DateTime data = DateTime.Parse(Console.ReadLine());
                Console.Write($"Valor por Hora do Contrato número {i} (00.00): ");
                double valorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
                Console.Write($"Duração em Horas do Contrato número {i} (00): ");
                int duracao = int.Parse(Console.ReadLine());
                //agora instanciaremos o contrato dentro do for passando os dados que foram inseridos acima
                HorasContratadas contrato = new HorasContratadas(data, valorHora, duracao);
                //agora iremos adicionar o contrato acima dentro do contrato do trabalhador.
                trab.AdicionarContrato(contrato);
            }
            Console.WriteLine();
            Console.Write("Entre com o mês e ano para calcular o Ganho (MM/YYYY): ");
            string mesEAno = Console.ReadLine();
            //agora iremos recortar o mes e o ano digitado acima.
            //utilizando o metodo Substring iremos pegar a string que começa no 0 e termina no 2, e converter em int
            int mes = int.Parse(mesEAno.Substring(0, 2));
            //e depois pegamos o ano que inicia no 3 e vai até o final da string, e converter em int também
            int ano = int.Parse(mesEAno.Substring(3));

            Console.WriteLine("Nome: " + trab.Nome);
            //repare que aqui estamos navegando entre os objetos para buscar o nome do departamento.
            Console.WriteLine("Nome: " + trab.Departamento.Nome);
            //aqui estamos navegando dentro do trab, e chamando o metodo Ganho, colocando como valor o mes e o ano.
            Console.WriteLine("Ganho no mês de " + mesEAno + ", é de : " + trab.Ganho(mes, ano));
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        static void Main(string[] args)
        {
            //Entrada de dados:
            Console.Write("Entre com o nome do departamento: ");
            Departamento departamento = new Departamento(Console.ReadLine());

            Console.WriteLine("Entre com os dados do trabalhador: ");

            Console.Write("Nome: ");
            string nome = Console.ReadLine();

            Console.Write("Nível (Junior/Pleno/Senior): ");
            NivelTrabalhador nivel = (NivelTrabalhador)Enum.Parse(typeof(NivelTrabalhador), Console.ReadLine()); // Convertendo a string para Enum

            Console.Write("Salario base: ");
            double salarioBase = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);

            Trabalhador trabalhador1 = new Trabalhador(nome, nivel, salarioBase, departamento);

            Console.Write("Quantos contratos tem esse trabalhador: ");
            int n = int.Parse(Console.ReadLine());

            for (int i = 0; i < n; i++)
            {
                Console.WriteLine($"Entre com os dados do contrato #{(i + 1)}");
                Console.Write("Data (DD/MM/YYY): ");
                DateTime date = DateTime.Parse(Console.ReadLine());

                Console.Write("Valor por hora: ");
                double valorHora = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);

                Console.Write("Duração (Horas): ");
                int horas = int.Parse(Console.ReadLine());

                trabalhador1.Contrato.Add(new ContratoDeHoras(date, valorHora, horas));
                Console.WriteLine();
            }

            Console.Write("Entre com o mes e o ano para calcular a renda (MM/YYYY): ");
            DateTime dateRenda = DateTime.Parse(Console.ReadLine());

            Console.WriteLine();

            Console.WriteLine("nome: " + trabalhador1.Nome);
            Console.WriteLine("Departamento: " + trabalhador1.Departamento.Nome);
            Console.WriteLine($"Renda de {dateRenda.ToString("MM/yyyy")}: " +
                              $"R$ {trabalhador1.Renda(dateRenda.Year, dateRenda.Month).ToString("F2", CultureInfo.InvariantCulture)}");



            Console.ReadLine();
        }
Ejemplo n.º 7
0
        static void Main(string[] args)
        {
            Console.Write("Enter department's name: ");
            string nomeDepartamento = Console.ReadLine();

            Console.WriteLine("Enter worker data: ");
            Console.Write("Name: ");
            string nomeTrabalhador = Console.ReadLine();

            Console.Write("Level (Junior/MidLevel/Senior): ");
            NivelTrabalhador nivel = Enum.Parse <NivelTrabalhador>(Console.ReadLine());

            Console.Write("Base salary: ");
            double salarioBase = double.Parse(Console.ReadLine());

            //Instanciando classe departamento e atribuindo parameto.
            Departamento dep = new Departamento(nomeDepartamento);

            //Instanciando Classe trabalhador e atribuindo parametros.
            Trabalhador trabalhador = new Trabalhador(nomeTrabalhador, nivel, salarioBase, dep);

            Console.Write("How many contracts to this worker? ");
            int n = int.Parse(Console.ReadLine());

            for (int i = 0; i < n; i++)
            {
                Console.WriteLine("Enter #{0} contract data:", (i + 1));
                Console.Write("Date (DD/MM/YYYY): ");
                DateTime data = DateTime.Parse(Console.ReadLine());
                Console.Write("Value per hour: ");
                double valorPorHora = double.Parse(Console.ReadLine());
                Console.Write("Duration (hours):  ");
                int horas = int.Parse(Console.ReadLine());

                //Instanciando Classe contrato e atribuindo parametros.
                ContratoDeHora contrato = new ContratoDeHora(data, valorPorHora, horas);
                //Adicionando contrato ao trabalhador.
                trabalhador.AddContrato(contrato);
            }

            Console.Write("\n\nEnter month and year to calculate income (MM/YYYY): ");
            string mesEano = Console.ReadLine();
            int    mes     = int.Parse(mesEano.Substring(0, 2));
            int    ano     = int.Parse(mesEano.Substring(3));

            Console.WriteLine("Name: " + trabalhador.Nome);
            Console.WriteLine("Department: " + trabalhador.Departamento.Nome);
            Console.WriteLine("Income for " + mesEano + ": " + trabalhador.Ganho(ano, mes));
        }
Ejemplo n.º 8
0
        static void Main(string[] args)
        {
            Console.WriteLine("Entre com o nome do departamento: ");
            string departamento = Console.ReadLine();

            Console.WriteLine("Data de trabalho: ");
            Console.Write("Nome: ");
            string nome = Console.ReadLine();

            Console.Write("Nivel: ");
            NivelTrabalhador Nivel = Enum.Parse <NivelTrabalhador>(Console.ReadLine());

            Console.WriteLine("Base salarial: ");
            double       basesalario = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            Departamento dept        = new Departamento(departamento);
            Trabalhador  trab        = new Trabalhador(nome, Nivel, basesalario, dept);

            Console.WriteLine("Quanto cadastro serão realizados: ");
            int qtd = int.Parse(Console.ReadLine());

            for (int i = 1; i <= qtd; i++)
            {
                Console.WriteLine("Entre com os dados do contrato #" + i);
                Console.WriteLine("Data (DD/MM/YYY): ");
                DateTime datacontrato = DateTime.Parse(Console.ReadLine());
                Console.WriteLine("Valor por hora: ");
                double hora = double.Parse(Console.ReadLine());
                Console.WriteLine("Quantidade de horas: ");
                int           qtdhoras = int.Parse(Console.ReadLine());
                HorasContrato horas    = new HorasContrato(datacontrato, hora, qtdhoras);
                trab.AdicionarContrato(horas);
            }

            Console.WriteLine("Entre com o mês/ano para calcular: ");
            string mesano = Console.ReadLine();
            int    mes    = int.Parse(mesano.Substring(0, 2));
            int    ano    = int.Parse(mesano.Substring(3));

            Console.WriteLine("Nome: " + trab.Nome);
            Console.WriteLine("Departamento: " + trab.Departamento.Setor);
            Console.WriteLine("Valor: " + trab.GanhoTotal(ano, mes));
        }