Ejemplo n.º 1
0
 def __init__(self,
              codigo: str = None,
              cliente=Cliente(),
              fechaCreacion: datetime = None,
              estado: str = None,
              fechaEntrega: datetime = None,
              direccionEntrega: str = None,
              repartidor=Colaborador(),
              ubicacion=Localizacion(),
              tarifa: float = None):
     self.__codigo = codigo
     self.__cliente = cliente
     self.__fechaCreacion = fechaCreacion
     self.__estado = estado
     self.__fechaEntrega = fechaEntrega
     self.__direccionEntrega = direccionEntrega
     self.__repartidor = repartidor
     self.__ubicacion = ubicacion
     self.__tarifa = tarifa
Ejemplo n.º 2
0
 def asignar_repartidor(self, repartidor=Colaborador()):
     """Recibe un objeto repartidor. Asigna el repartidor al pedido en la db."""
     id_repartidor = repartidor.email
     #Conexión a base de datos
     db = sqlite3.connect("linioexp_parcial_lab3.db")
     try:
         #Objeto cursor
         cursor = db.cursor()
         query = """UPDATE pedidos SET codigo_colaborador = '{}'""".format(
             id_repartidor)
         #Ejecutar Update
         cursor.execute(query)
         #Confirmar cambios
         database.commit()
     except Exception as e:
         #Hacer rollback en caso de error
         database.rollback()
         raise e
     finally:
         #Cerrar conexion a db
         db.close()
Ejemplo n.º 3
0
from folha_pagamento import FolhaPagamento
from colaborador import Colaborador
from movimento_folha import MovimentoFolha
from tipo_movimento import TipoMovimento

if __name__ == '__main__':
    # Questão 1
    FP = FolhaPagamento(9, 2019)

    # Questão 2
    CL1 = Colaborador(100, 'Manoel Claudino', 'Av 13 de Maio 2081', '88671020', 'Benfica', '60020-060', '124543556-89',
                      4500)
    CL2 = Colaborador(200, 'Carmelina da Silva', 'Avenida dos Expedicionários 1200', '3035-1280', 'Aeroporto',
                      '60530-020', '301789435-54', 2500)
    CL3 = Colaborador(300, 'Gurmelina Castro Saraiva', 'Av João Pessoa 1020', '3235-1089', 'Damas', '60330-090',
                      '350245632-76', 3000)

    # Questão 3
    MF1 = MovimentoFolha(CL1, 'Gratificação', 4500, TipoMovimento.PROVENTO)
    MF2 = MovimentoFolha(CL1, 'Plano Saúde', 1000, TipoMovimento.PROVENTO)
    MF3 = MovimentoFolha(CL1, 'Pensão', 600, TipoMovimento.DESCONTO)

    MF4 = MovimentoFolha(CL2, 'Gratificação', 2500, TipoMovimento.PROVENTO)
    MF5 = MovimentoFolha(CL2, 'Plano Saúde', 1000, TipoMovimento.PROVENTO)
    MF6 = MovimentoFolha(CL2, 'Faltas', 600, TipoMovimento.DESCONTO)

    MF7 = MovimentoFolha(CL3, 'Gratificação', 4500, TipoMovimento.PROVENTO)
    MF8 = MovimentoFolha(CL3, 'Plano Saúde', 1000, TipoMovimento.PROVENTO)
    MF9 = MovimentoFolha(CL3, 'Pensão', 600, TipoMovimento.DESCONTO)

    movimentos = [MF1, MF2, MF3, MF4, MF5, MF6, MF7, MF8, MF9]
Ejemplo n.º 4
0
from colaborador import Colaborador
from gerente import Gerente
from diretor import Diretor

func1 = Colaborador('Neylson', 'Analytics')
func1.getNome()
func1.getSetor()
print("")

func2 = Gerente('Sérgio', 'Analytics', 3000)
func2.getNome()
func2.getSetor()
func2.getRenda()
print("")

func3 = Diretor('Marco', 'Analytics', 5000)
func3.getNome()
func3.getSetor()
func3.getRenda()
func3.obterLucro(1000)
func3.getRenda()
Ejemplo n.º 5
0
 def __init__(self, nome, email, endereco, senha, codigo):
     Colaborador.__init__(self, nome, email, endereco, senha, codigo)
     self.instituicoes = []
Ejemplo n.º 6
0
# classe com alto acomplamento fora do princípio SRP
from colaborador import Colaborador

pedro = Colaborador("Pedro")
for dia in range(29, 32):
    print("************************* DIA %s ******************************" %
          dia)
    pedro.trabalhar()
    pedro.receberSalario(dia)
    print(
        "************************ FIM DIA %s ****************************\n" %
        dia)

# classe com baixo acomplamento seguindo o princípio SRP
from colaborador_refatorado import ColaboradorRefatorado
from usuario import Usuario
from administrativo import Administrativo

pedro = ColaboradorRefatorado("Pedro")
administrativo = Administrativo()
for dia in range(29, 32):
    print("************************* DIA %s ******************************" %
          dia)
    pedro.trabalhar()
    administrativo.receberSalario(dia, pedro)
    print(
        "************************ FIM DIA %s ****************************\n" %
        dia)
Ejemplo n.º 7
0
 def __init__(self,nome,email,endereco,senha,codigo):
     Colaborador.__init__(self,nome,email,endereco,senha,codigo)
     self.instituicoes = []
     self.revisoes = []
Ejemplo n.º 8
0
    def main():

        FP = FolhaPagamento(9, 2019)

        #Cinco objetos CL (Colaborador)
        CL01 = Colaborador(100, "Manoel Claudino", "Av 13 de Maio 2081",
                           "88671020", "Benfica", "60020-060", "124543556-89",
                           4500.00)

        CL02 = Colaborador(200, "Carmelina da Silva",
                           "Avenida dos Expedicionários 1200", "3035-1280",
                           "Aeroporto", "60530-020", "301789435-54", 2500.00)

        CL03 = Colaborador(300, "Gurmelina Castro Saraiva",
                           "Av João Pessoa 1020", "3235-1089", "Damas",
                           "60330-090", "350245632-76", 3000.00)

        CL04 = Colaborador(400, "José Guimarães", "R. Sátiro Dias", "89346754",
                           "Montese", "60420-430", "560285652-86", 3500.00)

        CL05 = Colaborador(500, "Carol Freitas da Silva", "R. Haroldo Torres",
                           "92345678", "Alagadico Sao Gerardo", "60320-104",
                           "780238662-93", 4000.00)

        #Objetos MovimentoFolha
        MF01 = MovimentoFolha(100, "Salario", 4500.00, TipoMovimento.P)

        MF02 = MovimentoFolha(100, "Plano Saúde", 1000.00, TipoMovimento.P)

        MF03 = MovimentoFolha(100, "Pensão", 600.00, TipoMovimento.D)

        MF04 = MovimentoFolha(200, "Salario", 2500.00, TipoMovimento.P)

        MF05 = MovimentoFolha(200, "Gratificação", 1000.00, TipoMovimento.P)

        MF06 = MovimentoFolha(200, "Faltas", 600.00, TipoMovimento.D)

        MF07 = MovimentoFolha(300, "Salario", 4500.00, TipoMovimento.P)

        MF08 = MovimentoFolha(300, "Plano Saúde", 1000.00, TipoMovimento.P)

        MF09 = MovimentoFolha(300, "Pensão", 600.00, TipoMovimento.D)

        #Inserir todos os objetos do tipo MovimentoFolha da lista movimentos do objeto FP
        FP.inserir_movimentos(MF01)

        FP.inserir_movimentos(MF02)

        FP.inserir_movimentos(MF03)

        FP.inserir_movimentos(MF04)

        FP.inserir_movimentos(MF05)

        FP.inserir_movimentos(MF06)

        FP.inserir_movimentos(MF07)

        FP.inserir_movimentos(MF08)

        FP.inserir_movimentos(MF09)

        #Inserir os objetos do tipo MovimentoFolha na lista movimentos de cada objeto Colaborador.
        CL01.inserir_movimentos(MF01)

        CL01.inserir_movimentos(MF02)

        CL01.inserir_movimentos(MF03)

        CL02.inserir_movimentos(MF04)

        CL02.inserir_movimentos(MF05)

        CL02.inserir_movimentos(MF06)

        CL03.inserir_movimentos(MF07)

        CL03.inserir_movimentos(MF08)

        CL03.inserir_movimentos(MF09)

        #Inserir os colaboradres na Folha de Pagamento

        FP.inserir_colaboradores(CL01)

        FP.inserir_colaboradores(CL02)

        FP.inserir_colaboradores(CL03)

        FP.inserir_colaboradores(CL04)

        FP.inserir_colaboradores(CL05)

        #Imprimir Folha de Pagamento
        FP.calcular_folha()

        #Imprimir Salário do CL01
        CL01.calcular_salario()

        #Imprimir Salário do CL02
        CL02.calcular_salario()

        #Imprimir Salário do CL03
        CL03.calcular_salario()

        #Imprimir Salário do CL04
        CL04.calcular_salario()

        #Imprimir Salário do CL05
        CL05.calcular_salario()
Ejemplo n.º 9
0
def main():

    fp = FolhaPagamento(9, 2019, 0, 0)

    CL01 = Colaborador("100", "Manoel Claudino", "Av 13 de Maio 2081", "88671020",
                       "Benfica", "60020-060", "124543556-89", 4500.00)
    CL02 = Colaborador("200", "Carmelina da Silva", "Avenida dos Expedicionários 1200",
                       "3035-1280", "Aeroporto", "60530-020", "301789435-54",
                       2500.00)
    CL03 = Colaborador("300", "Gurmelina Castro Saraiva", "Av João Pessoa 1020",
                       "3235-1089", "Damas", "60330-090", "350245632-76", 3000.00)

    MF01 = MovimentoFolha(CL01, "Salario", 4500.00, TipoMovimento.P)
    MF02 = MovimentoFolha(CL01, "Plano Saúde", 1000.00, TipoMovimento.P)
    MF03 = MovimentoFolha(CL01, "Pensão", 600.00, TipoMovimento.D)
    MF04 = MovimentoFolha(CL02, "Salario", 2500.00, TipoMovimento.P)
    MF05 = MovimentoFolha(CL02, "Gratificação", 1000.00, TipoMovimento.P)
    MF06 = MovimentoFolha(CL02, "Faltas", 600.00, TipoMovimento.D)
    MF07 = MovimentoFolha(CL03, "Salario", 4500.00, TipoMovimento.P)
    MF08 = MovimentoFolha(CL03, "Plano Saúde", 1000.00, TipoMovimento.P)
    MF09 = MovimentoFolha(CL03, "Pensão", 600.00, TipoMovimento.D)

    fp.set_colaborador(CL01)
    fp.set_colaborador(CL02)
    fp.set_colaborador(CL03)

    movimentos = [MF01, MF02, MF03, MF04, MF05, MF06, MF07, MF08, MF09]

    for x in movimentos:
        fp.inserir_movimento_fp(x)

    for m in range(len(movimentos)):
        if m < 3:
            CL01.inserir_movimentos_colab(movimentos[m])
        elif m < 6:
            CL02.inserir_movimentos_colab(movimentos[m])
        else:
            CL03.inserir_movimentos_colab(movimentos[m])


    CL01.calcular_salario()
    CL02.calcular_salario()
    CL03.calcular_salario()

    fp.calcular_folha()