namespace Teste4_Alura.ExercicioOO;
internal class Consultoria : IServico
{
string tipoTarefa = string.Empty;
public Consultoria(string tipoTarefa, Funcionario2 funcionario2)
{
this.tipoTarefa = tipoTarefa;
Funcionario2 = funcionario2;
}
public Funcionario2 Funcionario2 { get; set; }
public void ExcecutarServico()
{
//Funcionario2 = new Funcionario2(Funcionario2.Nome,Funcionario2.Departamento);
Console.WriteLine($"""
Executando servico de Consultoria: {tipoTarefa}
Responsavel: {Funcionario2.Nome} - Departamento: {Funcionario2.Departamento}
""");
}
}
namespace Teste4_Alura.ExercicioOO;
internal class Manutencao : IServico
{
string tipoServico = string.Empty;
public Manutencao(string tipoServico, Funcionario2 funcionario2)
{
this.tipoServico = tipoServico;
Funcionario2 = funcionario2;
}
public Funcionario2 Funcionario2 { get; set; }
public void ExcecutarServico()
{
Console.WriteLine($"""
Executando servico de manutencao: {tipoServico}
Responsavel: {Funcionario2.Nome} - Departamento: {Funcionario2.Departamento}
""");
}
}
namespace Teste4_Alura.ExercicioOO;
class Funcionario2
{
public string Nome { get; set; }
public string Departamento { get; set; }
public Funcionario2(string nome, string departamento)
{
Nome = nome;
Departamento = departamento;
}
}
namespace Teste4_Alura.ExercicioOO;
internal interface IServico
{
void ExcecutarServico();
}
#region Desafio Gestao de Servicos
using Teste4_Alura.ExercicioOO;
Funcionario2 tecnico = new Funcionario2("Joao","TI");
IServico s1 = new Manutencao("Atualizacao de servidor", tecnico );
Funcionario2 analista = new Funcionario2("Maria", "Consultoria");
IServico s2 = new Consultoria("Planejamento estrategico",analista);
s1.ExcecutarServico();
s2.ExcecutarServico();
#endregion