25 lines
No EOL
1 KiB
Python
25 lines
No EOL
1 KiB
Python
from packages.v1.administrativo.schemas.client_schema import ClientIdSchema
|
|
from packages.v1.administrativo.repositories.client.client_delete_repository import ClientDeleteRepository
|
|
|
|
|
|
class ClientDeleteAction:
|
|
"""
|
|
Action para a exclusão de um registro na tabela 'client'.
|
|
Utiliza o schema com o ID do cliente e delega a operação ao repositório.
|
|
"""
|
|
|
|
def execute(self, client_schema: ClientIdSchema):
|
|
"""
|
|
Executa a lógica de exclusão do cliente.
|
|
|
|
A exclusão requer apenas a chave primária ('client_id'), que deve ser
|
|
encapsulada no schema 'ClientIdSchema'.
|
|
|
|
:param client_schema: Schema contendo o ID do cliente a ser excluído.
|
|
:return: Resultado da operação de exclusão do repositório.
|
|
"""
|
|
# Instancia o repositório específico para a exclusão de clientes
|
|
delete_repository = ClientDeleteRepository()
|
|
|
|
# Chama o método execute do repositório, passando o schema do cliente
|
|
return delete_repository.execute(client_schema) |