Erro CS0104 - "Diretor" é uma referência ambígua entre "TesteBybteBank.Funcionarios.Diretor" e "TesteBybteBank.Sistemas.Diretor"
using System;
using TesteBybteBank.Funcionarios;
using TesteBybteBank.Sistemas;
namespace TesteBybteBank
{
class Program
{
public static void Main(string[] args)
{
// CalcularBonificação();
UsarSistema();
}
public static void UsarSistema ()
{
SistemaInterno sistemaInterno = new SistemaInterno();
{
Diretor roberta = new Diretor("159.753.398-04");
roberta.Nome = "Roberta";
roberta.Senha = "123";
sistemaInterno.Logar(roberta, "123");
sistemaInterno.Logar(roberta, "abc");
}
}
public static void CalcularBonificação ()
{
GerenciadorBonificação gerenciadorBonificação = new GerenciadorBonificação();
Designer pedro = new Designer("833.222.048-39");
pedro.Nome = "Pedro";
Diretor roberta = new Diretor("159.753.398-04");
roberta.Nome = "Roberta";
Auxiliar igor = new Auxiliar("981.198.778-53");
igor.Nome = "Igor";
GerenteDeConta camila = new GerenteDeConta("326.985.628-89");
camila.Nome = "Camila";
gerenciadorBonificação.Registrar(pedro);
gerenciadorBonificação.Registrar(roberta);
gerenciadorBonificação.Registrar(igor);
gerenciadorBonificação.Registrar(camila);
Console.WriteLine("O total de bonificações do mês " + gerenciadorBonificação.GetTotalBonificação());
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TesteBybteBank.Funcionarios;
namespace TesteBybteBank.Sistemas
{
public class SistemaInterno
{
public bool Logar(Diretor funcionario, string senha)
{
bool usuarioAutenticado = funcionario.Autenticar (senha);
if (usuarioAutenticado)
{
Console.WriteLine("Bem vindo ao sistema!");
return true;
}
else
{
Console.WriteLine("Senha incorreta!");
return false;
}
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace TesteBybteBank.Funcionarios
{
public class Diretor : Funcionario
{
public string Senha { get; set; }
public Diretor(string cpf): base(5000, cpf)
{
Console.WriteLine("Criando Diretor");
}
public bool Autenticar (string senha)
{
return Senha == senha;
}
public override void AumentarSalario ()
{
Salario *= 1.15;
}
public override double GetBonificação()
{
return Salario * 0.5;
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace TesteBybteBank.Funcionarios
{
public abstract class Funcionario
{
public static int totalDeFuncionarios { get; private set;}
public string Nome { get; set; }
public string CPF { get; private set; }
public double Salario { get; protected set; }
public Funcionario(double salario, string cpf)
{
Console.WriteLine("Criando Funcionário");
CPF = cpf;
Salario = salario;
totalDeFuncionarios++;
}
public abstract void AumentarSalario();
public abstract double GetBonificação();
}
}