Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from abc import ABC, abstractmethod
- class Cliente(ABC):
- def __init__(self,email,password,cuenta):
- self.email=email
- self.password=password
- self.cuenta=cuenta
- def get_email(self):
- return self.email
- def get_password(self):
- return self.password
- def get_cuenta(self):
- return self.cuenta
- def set_email(self,email):
- self.email=email
- def set_password(self,password):
- self.password=password
- def set_cuenta(self,cuenta):
- self.cuenta=cuenta
- class Persona(Cliente):
- def __init__(self,email,password,nombre,apellido,dni,cuenta):
- Cliente.__init__(self,email,password,cuenta)
- self.nombre=nombre
- self.apellido=apellido
- self.dni=dni
- def get_nombre(self):
- return self.nombre
- def get_apellido(self):
- return self.apellido
- def get_dni(self):
- return self.dni
- def get_cuenta(self):
- return self.cuenta
- def set_nombre(self,nombre):
- self.nombre=nombre
- def set_apellido(self,apellido):
- self.apellido=apellido
- def set_dni(self,dni):
- self.dni=dni
- def set_cuenta(self,cuenta):
- self.cuenta=cuenta
- def cobrar_servicios(self):
- if self.cuenta.get_nombre()=='Classic':
- resultado=self.cuenta.get_balance()-100
- self.cuenta.set_balance(resultado)
- elif self.cuenta.get_nombre()=='Gold':
- resultado=len(self.get_apellido())*10
- self.cuenta.set_balance(resultado)
- elif self.cuenta.get_nombre()=='Platinium':
- resultado=self.cuenta.get_balance()*0.10
- self.cuenta.set_balance(resultado)
- else:
- resultado=self.cuenta.get_balance()-500-100*self.cuenta.get_fecha_ultimo_moviento().weekday()
- self.cuenta.set_balance(resultado)
- from abc import ABC, abstractmethod
- from datetime import datetime
- class Cuenta(ABC):
- def __init__(self,cbu):
- self.cbu=cbu
- self.balance=0
- self.fecha_ult_movimiento=datetime.now()
- def get_cbu(self):
- return self.cbu
- def get_balance(self):
- return self.balance
- def get_fecha_ult_movimiento(self):
- return self.fecha_ult_movimiento
- def set_cbu(self,cbu):
- self.cbu=cbu
- def set_balance(self,balance):
- self.balance=balance
- def set_fecha_ult_movimiento(self,fecha_ultimo_moviento):
- self.fecha_ult_movimiento=fecha_ultimo_moviento
- def acreditar(self,saldo):
- self.balance+=saldo
- self.fecha_ult_movimiento=datetime.now()
- def get_nombre(self):
- return self.__class__.__name__
- @abstractmethod
- def debitar(self):
- pass
- from cuenta import Cuenta
- class Classic(Cuenta):
- def __init__(self,cbu):
- Cuenta.__init__(self,cbu)
- self.cbu=cbu
- def debitar(self,monto,lugar):
- if lugar=='Banelco':
- self.balance-=monto+(monto*0.05)
- elif lugar=='Link':
- self.balance-=monto+(monto*0.10)
- else:
- self.balance-=monto
- def acreditar(self,monto):
- monto=monto-(monto*0.05)
- super(Classic,self).acreditar(monto)
- """def debitar(self):
- pass"""
- cuenta1=Classic(2013302012320)
- print(cuenta1.get_fecha_ult_movimiento())
- cuenta1.acreditar(5000)
- print('Plata Acreditada')
- print(cuenta1.get_balance())
- cuenta1.debitar(300,'Link')
- print(cuenta1.get_balance())
- from cuenta import Cuenta
- class Gold(Cuenta):
- def __init__(self,cbu):
- Cuenta.__init__(self,cbu)
- self.cbu=cbu
- def debitar(self,monto,lugar):
- if lugar=='Link':
- self.balance-=monto+(monto*0.05)
- else:
- self.balance-=monto
- def acreditar(self,monto):
- monto=monto-(monto*0.05)
- super(Gold,self).acreditar(monto)
- """def debitar(self):
- pass"""
- gold=Gold(2030405060607)
- print(gold.get_fecha_ult_movimiento())
- gold.acreditar(5000)
- print('Plata Acreditada')
- print(gold.get_balance())
- gold.debitar(4000,'banelco')
- print(gold.get_balance())
- gold.acreditar(150000)
- print(gold.get_fecha_ult_movimiento())
- print(gold.get_balance())
- gold.debitar(10000,'link')
- print(gold.get_balance())
- from cuenta import Cuenta
- class Platiniun(Cuenta):
- def __init__(self,cbu):
- Cuenta.__init__(self,cbu)
- self.cbu=cbu
- def debitar(self,monto,lugar):
- if self.balance<=5000:
- self.balance-=monto+(monto*0.05)
- else:
- self.balance-=monto
- """def debitar(self):
- pass"""
- platiniu=Platiniun(1112000304050)
- print(platiniu.get_fecha_ult_movimiento())
- platiniu.acreditar(5000)
- print(platiniu.get_fecha_ult_movimiento())
- print(platiniu.get_balance())
- platiniu.debitar(2000,'Link')
- print(platiniu.get_balance())
- from cuenta import Cuenta
- class Black(Cuenta):
- def __init__(self,cbu):
- Cuenta.__init__(self,cbu)
- self.cbu=cbu
- def debitar(self,monto,lugar):
- self.balance-=monto
- def acreditar(self,monto):
- if monto<1000000:
- super(Black,self).acreditar(monto)
- else:
- monto=monto-(monto*0.04)
- super(Black,self).acreditar(monto)
- """def debitar(self):
- pass"""
- black=Black(201232012131203)
- print(black.get_fecha_ult_movimiento())
- black.acreditar(250000)
- print("Se acredito 25000$")
- print(black.get_balance())
- from cliente import Persona
- from classic import Classic
- cuenta=Classic(232323232323)
- persona1=Persona('adisonespinoza95@hotmail.com',232323,'adison','espinoza',96323232,cuenta)
- print(persona1.get_cuenta().get_cbu())
- persona1.get_cuenta().acreditar(4000)
- print(persona1.get_cuenta().get_balance())
- persona1.cobrar_servicios()
- print(persona1.get_cuenta().get_balance())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement