Exemplo n.º 1
0
        // Metodo Procedure (sem retorno)
        // Que irá inserir um unico objeto Funcionario dentro da lista de objetos Funcionarios
        public void ArmazenarFuncionario(string nome, string cpf, string cargo, float salario,
                                         float desconto, float adicional, bool semDesconto)
        {
            Funcionario funcionarioObj;

            CheckCPF.Check(this.Funcionarios, cpf);
            // Cada item (indice) da lista é um objeto Funcionario que contem nome, cpf, salario, desconto
            if (cargo == "Gerente")
            {
                funcionarioObj = new Gerente(nome, cpf, cargo, salario, desconto, adicional);
            }
            else
            {
                funcionarioObj = new Funcionario(nome, cpf, cargo, salario, desconto, adicional);
            }

            // dependendo do valor da variavel semDesconto
            // executa versões diferentes da CalcularLiquido (conceito de sobrecarga)
            if (semDesconto)
            {
                funcionarioObj.CalcularLiquido(funcionarioObj.salarioBruto, funcionarioObj.adicional);
            }
            else
            {
                funcionarioObj.CalcularLiquido(funcionarioObj.salarioBruto, funcionarioObj.desconto, funcionarioObj.adicional);
            }

            funcionarioObj.CalculaBonus();

            // Função add é herdada da list
            Funcionarios.Add(funcionarioObj);
            Cadastro cadastro = new Cadastro(funcionarioObj.nome, funcionarioObj.cpf, funcionarioObj.Cargo, funcionarioObj.salarioBruto,
                                             funcionarioObj.desconto, funcionarioObj.adicional);
        }
Exemplo n.º 2
0
 //Sabrecarga utilizada no load do forms cadastro de funcionáios.
 public void ArmazenarFuncionario(Funcionario funcionario)
 {
     CheckCPF.Check(this.Funcionarios, funcionario.cpf);
     Funcionarios.Add(funcionario);
 }