saas_api/packages/v1/administrativo/controllers/t_pessoa_controller.py

107 lines
No EOL
4 KiB
Python

from actions.dynamic_import.dynamic_import import DynamicImport
from api.packages.v1.administrativo.schemas.t_pessoa_schema import TPessoaIdSchema, TPessoaNameSchema, TPessoaSaveSchema, TPessoaTipoSchema, TPessoaUpdateSchema
class TPessoaController:
def __init__(self):
# Action responsável por carregar as services de acordo com o estado
self.dynamic_import = DynamicImport()
# Define o pacote que deve ser carregado
self.dynamic_import.set_package("administrativo")
# Define a tabela que o pacote pertence
self.dynamic_import.set_table("t_pessoa")
pass
# Lista todos os regimes de bens
def index(self, t_pessoa_tipo_schema : TPessoaTipoSchema):
# Importação da classe desejada
t_pessoa_index_service = self.dynamic_import.service("t_pessoa_index_service", "TPessoaIndexService")
# Instância da classe service
self.t_pessoa_index_service = t_pessoa_index_service()
# Lista todos os regimes de bens
return {
'message': 'Pessoas localizados com sucesso',
'data': self.t_pessoa_index_service.execute(t_pessoa_tipo_schema)
}
# Busca um regime de bens específico pelo ID
def show(self, t_pessoa_id_schema : TPessoaIdSchema):
#Importação da classe desejada
t_pessoa_show_service = self.dynamic_import.service('t_pessoa_show_service', 'TPessoaShowService')
# Instância da classe desejada
self.t_pessoa_show_service = t_pessoa_show_service()
# Busca e retorna o regime de bens desejado
return {
'message' : 'Pessoa localizado com sucesso',
'data': self.t_pessoa_show_service.execute(t_pessoa_id_schema)
}
# Busca um regime de bens pela descrição
def get_by_nome(self, t_pessoa_name_schema : TPessoaNameSchema):
#Importação da classe desejada
t_pessoa_show_service = self.dynamic_import.service('t_pessoa_show_service', 'TPessoaShowService')
# Instância da classe desejada
self.t_pessoa_show_service = t_pessoa_show_service()
# Busca e retorna o regime de bens desejado
return {
'message' : 'Pessoa localizado com sucesso',
'data': self.t_pessoa_show_service.execute(regimebens_schema, True)
}
# Cadastra um novo regime de bens
def save(self, t_pessoa_save_schema : TPessoaSaveSchema):
#Importação da classe desejada
t_pessoa_save_service = self.dynamic_import.service('t_pessoa_save_service', 'TPessoaSaveService')
# Instância da classe desejada
self.t_pessoa_save_service = t_pessoa_save_service()
# Busca e retorna o regime de bens desejado
return {
'message' : 'Pessoa salvo com sucesso',
'data': self.t_pessoa_save_service.execute(t_pessoa_save_schema)
}
# Atualiza os dados de um regime de bens
def update(self, t_pessoa_update_schame : TPessoaUpdateSchema):
#Importação da classe desejada
t_pessoa_update_service = self.dynamic_import.service('t_pessoa_update_service', 'TPessoaUpdateService')
# Instância da classe desejada
self.t_pessoa_update_service = t_pessoa_update_service()
# Busca e retorna o regime de bens desejado
return {
'message' : 'Pessoa atualizado com sucesso',
'data': self.t_pessoa_update_service.execute(t_pessoa_update_schame)
}
# Exclui um regime de bens
def delete(self, t_pessoa_id_schema : TPessoaIdSchema):
#Importação da classe desejada
t_pessoa_delete_service = self.dynamic_import.service('t_pessoa_delete_service', 'TPessoaDeleteService')
# Instância da classe desejada
self.t_pessoa_delete_service = t_pessoa_delete_service()
# Busca e retorna o regime de bens desejado
return {
'message' : 'Pessoa removido com sucesso',
'data': self.t_pessoa_delete_service.execute(t_pessoa_id_schema)
}