-
Notifications
You must be signed in to change notification settings - Fork 0
/
Factura.py~
27 lines (21 loc) · 1.02 KB
/
Factura.py~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import estrategiasFacturacion as ef
#Clase que implementa una factura en la BD.
#Mediante el patron estrategia, se decide el metodo de facturacion
class Factura:
#Constructor de la clase
def __init__(self):
pass
#Mediante el patron estrategia, decidimos como facturar
def ObtenerEstrategia(self,flag):
self.estrategia=ef.ObtenerEstrategia(flag)
#Funcion a ser llamada por la fachada, con la info que provee se decide (mediante estrategia)
#el metodo de facturacion y se factura.
def facturar(self,cliente,ladiciona,lconsumos,lincluPlan,lincluServ,lplan,lproductos,lservicios,mes,anio,flag):
#Obtenemos la estrategia segun la informacion que nos llegue.
self.ObtenerEstrategia(flag)
#Aplicamos la estrategia adecuada (la clase abstracta estrategia decide)
retorno=self.estrategia.aplicar(cliente,ladiciona,lconsumos,lincluPlan,lincluServ,lplan,lproductos,lservicios,mes,anio)
self.monto=retorno[0]
self.descripcionImpr=retorno[1]
def imprimir(self):
print self.descripcion