[documentos]class Exp_Funcionarios():
"""Almacena los expedientes de los funcionarios que estan o han estado en la universidad.
Cuenta con los siguientes atributos.
- Dic_func = Almacena cada funcionario que esta o ha laborado en la universidad
- Cant = Cantidad de expedientes de funcionario que tiene registrados.
"""
def __init__(self):
self.__dic_func = {}
self.cant = 0
[documentos] def agrega_fun(self,funcionario):
"""
Hace registro de un funcionario en los expedientes
y actualiza la cantidad de expedients que se tiene en el sistema
:param funcionario: Objeto de tipo funcionario
:type kind: Boolean
:raise Lista de errores que son controlados.
:return: Boolean: True si se registro exitosamente
False si no se logro registrar.
:rtype: Boolean xxxx
"""
if funcionario.num_empl in self.__dic_func:
print(" Ya existe un empleado con este numero. ")
return False
else:
self.__dic_func[funcionario.num_empl] = funcionario
self.cant = len(self.__dic_func)
return True
[documentos] def buscar_func(self, numero):
"""
Realiza la busquea de un funcionario
:param numero: numero del empleado
:type kind: Boolean
:raise Lista de errores que son controlados.
:return: Funcionario : Clase Funcionario en caso de que exista
None: Retorna valor nulo en caso de que no exista funcionario
:rtype: Boolean xxxx
"""
if numero in self.__dic_func:
return self.__dic_func[numero]
else:
return None
[documentos] def listar_func(self):
"""Realizar un despliegue por ventana de todos los funcionarios de la
Universidad.
:type kind: Boolean
:raise Lista de errores que son controlados.
:return: Funcionario : No tiene retorno
:rtype: Boolean xxxx
"""
print("-" * 40)
print(" " * 10, " Lista de funcionarios")
for k,v in self.__dic_func.items():
print(v)
print("-" * 40)
[documentos] def borrar_funcionario(self, funcionario):
"""Realiza el borrado de un funcionario..
Args:
funcionario (Funcionario): clase de tipo funcionario
"""
pass