def calcula(self, orcamento):

        desconto = Desconto_por_cinco_itens(
            Desconto_por_mais_de_quinhentos_reais(Sem_desconto())
            ).calcular(orcamento)

        return desconto
    def calcula(self, orcamento):
        #:todo:. pattern projeto -  Chain of Responsibility_ sequencia de nós encadeados,
        #:todo:. onde cada nó possui uma determinada responsabilidade.
        desconto = Desconto_por_cinco_itens(
            Desconto_por_mais_de_quinhentos_reais(
                Sem_desconto())).calcula(orcamento)

        print(desconto)
Beispiel #3
0
    def calcula(self, orcamento):

        #Quando o desconto aparece chama o próximo eu adicono nessa cadeia
        desconto = Desconto_por_cinco_itens(
            Desconto_por_mais_de_quinhentos_reais(Sem_desconto())
        ).calcula(orcamento)
        

        return desconto
    def calcula(self, orcamento):

        # aplicação do Chain of Responsability
        desconto = Desconto_por_cinco_itens(
            Desconto_por_mais_de_quinhentos_reais(
                Sem_desconto() # o último desconto da corrente não recebe argumentos
            )
        )

        return desconto.calcula(orcamento)
Beispiel #5
0
    def calcula(self, orcamento):
        #if orcamento.total_itens >5:
        #    return orcamento.valor * 0.1
        #elif orcamento.valor >500:
        #    return orcamento.valor * 0.07

        #desconto = Desconto_por_cinco_itens()
        #desconto = desconto.calcula(orcamento)
        #if desconto ==0 :
        #    desconto = Desconto_por_mais_de_quinhentos_reais()
        #    desconto = desconto.calcula(orcamento)
        
        # Chain of Responsability
        desconto = Desconto_por_cinco_itens(
            Desconto_por_mais_de_quinhentos_reais(
                Sem_desconto()
            )
        ).calcula(orcamento)
        
        return desconto
Beispiel #6
0
 def calcula_desconto(orcamento):
     """Função que monta a cadeia de responsabilidade"""
     desconto = Desconto_por_5_itens(Desconto_por_500_reais(Sem_desconto()))
     return desconto.calcula(orcamento)