[BE-03] feat(crud): adiciona crud de usuários

This commit is contained in:
Keven Willian Pereira de Souza 2025-08-13 10:22:43 -03:00
parent e147adc487
commit cd78473d87
22 changed files with 17298 additions and 46 deletions

View file

@ -10,10 +10,120 @@
"name": "Administrativo",
"item": [
{
"name": "Caixa",
"name": "Usuário",
"item": [
{
"name": "Login",
"event": [
{
"listen": "prerequest",
"script": {
"exec": [
""
],
"type": "text/javascript",
"packages": {}
}
},
{
"listen": "test",
"script": {
"exec": [
"const response = pm.response.json();\r",
"\r",
"// Salvando em variáveis da *collection*\r",
"pm.collectionVariables.set(\"BearerToken\", response.data.token);\r",
"\r",
"pm.test(\"Status code é 201 ou 200\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([200, 201]);\r",
"});\r",
"\r",
"pm.test(\"Resposta contém ID ou confirmação\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData).to.have.any.keys(\"id\", \"message\", \"status\");\r",
"});\r",
"\r",
"pm.test(\"Mensagem indica sucesso\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData.message || \"\").to.match(/sucesso|criado|registrado/i);\r",
"});"
],
"type": "text/javascript",
"packages": {}
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{BearerToken}}",
"type": "string"
}
]
},
"method": "POST",
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"login\" : \"keven\",\r\n \"senha_api\" : \"123\"\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{BaseUrlV1}}administrativo/usuarios/login",
"host": [
"{{BaseUrlV1}}administrativo"
],
"path": [
"usuarios",
"login"
]
}
},
"response": []
},
{
"name": "All",
"event": [
{
"listen": "prerequest",
"script": {
"exec": [
""
],
"type": "text/javascript",
"packages": {}
}
},
{
"listen": "test",
"script": {
"exec": [
"pm.test(\"Status code é 201 ou 200\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([200, 201]);\r",
"});\r",
"\r",
"pm.test(\"Resposta contém ID ou confirmação\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData).to.have.any.keys(\"id\", \"message\", \"status\");\r",
"});\r",
"\r",
"pm.test(\"Mensagem indica sucesso\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData.message || \"\").to.match(/sucesso|criado|registrado/i);\r",
"});"
],
"type": "text/javascript",
"packages": {}
}
}
],
"protocolProfileBehavior": {
"disableBodyPruning": true
},
@ -32,7 +142,161 @@
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"data_pagamento\": {\r\n \"date_start\": \"2024-01-01\",\r\n \"date_end\": \"2024-02-01\"\r\n }\r\n}",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{BaseUrlV1}}administrativo/usuarios",
"host": [
"{{BaseUrlV1}}administrativo"
],
"path": [
"usuarios"
]
}
},
"response": []
},
{
"name": "Me",
"event": [
{
"listen": "prerequest",
"script": {
"exec": [
""
],
"type": "text/javascript",
"packages": {}
}
},
{
"listen": "test",
"script": {
"exec": [
"pm.test(\"Status code é 201 ou 200\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([200, 201]);\r",
"});\r",
"\r",
"pm.test(\"Resposta contém ID ou confirmação\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData).to.have.any.keys(\"id\", \"message\", \"status\");\r",
"});\r",
"\r",
"pm.test(\"Mensagem indica sucesso\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData.message || \"\").to.match(/sucesso|criado|registrado/i);\r",
"});\r",
""
],
"type": "text/javascript",
"packages": {}
}
}
],
"protocolProfileBehavior": {
"disableBodyPruning": true
},
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{BearerToken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{BaseUrlV1}}administrativo/usuarios/me",
"host": [
"{{BaseUrlV1}}administrativo"
],
"path": [
"usuarios",
"me"
]
}
},
"response": []
}
]
},
{
"name": "Caixa",
"item": [
{
"name": "All",
"event": [
{
"listen": "prerequest",
"script": {
"exec": [
""
],
"type": "text/javascript",
"packages": {}
}
},
{
"listen": "test",
"script": {
"exec": [
"pm.test(\"Status code é 201 ou 200\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([200, 201]);\r",
"});\r",
"\r",
"pm.test(\"Resposta contém ID ou confirmação\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData).to.have.any.keys(\"id\", \"message\", \"status\");\r",
"});\r",
"\r",
"pm.test(\"Mensagem indica sucesso\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData.message || \"\").to.match(/sucesso|criado|registrado/i);\r",
"});\r",
""
],
"type": "text/javascript",
"packages": {}
}
}
],
"protocolProfileBehavior": {
"disableBodyPruning": true
},
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{BearerToken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
@ -53,6 +317,47 @@
},
{
"name": "Create",
"event": [
{
"listen": "prerequest",
"script": {
"exec": [
"\r",
""
],
"type": "text/javascript",
"packages": {}
}
},
{
"listen": "test",
"script": {
"exec": [
"const response = pm.response.json();\r",
"\r",
"// Salvando em variáveis da *collection*\r",
"pm.collectionVariables.set(\"caixaItemId\", response.data.caixa_item_id);\r",
"\r",
"pm.test(\"Status code é 201 ou 200\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([200, 201]);\r",
"});\r",
"\r",
"pm.test(\"Resposta contém ID ou confirmação\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData).to.have.any.keys(\"id\", \"message\", \"status\");\r",
"});\r",
"\r",
"pm.test(\"Mensagem indica sucesso\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData.message || \"\").to.match(/sucesso|criado|registrado/i);\r",
"});\r",
""
],
"type": "text/javascript",
"packages": {}
}
}
],
"request": {
"auth": {
"type": "bearer",
@ -68,7 +373,7 @@
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"especie_pagamento\": \"D\",\r\n \"caixa_item_id\": 275547.00,\r\n \"caixa_servico_id\": 2.00,\r\n \"usuario_servico_id\": 123456.00,\r\n \"usuario_caixa_id\": 123456.00,\r\n \"descricao\": \"{{$randomProductName}}\",\r\n \"data_pagamento\": \"2025-07-02 00:00:00.000\",\r\n \"situacao\": \"4\",\r\n \"tipo_documento\": \"C\",\r\n \"tipo_transacao\": \"C\",\r\n \"valor_servico\": 123123.000,\r\n \"valor_pago\": 123123.000,\r\n \"observacao\": \"{{$randomJobDescriptor}}\",\r\n \"hora_pagamento\": \"12:58\",\r\n \"tipo_servico\": \"25\",\r\n \"registrado\": \"3\"\r\n}\r\n",
"raw": "{\r\n \"especie_pagamento\": \"D\",\r\n \"caixa_servico_id\": 2,\r\n \"usuario_servico_id\": 123456,\r\n \"usuario_caixa_id\": 123456,\r\n \"descricao\": \"{{$randomProductName}}\",\r\n \"data_pagamento\": \"2025-07-07 00:00:00.000\", \r\n \"situacao\": \"4\",\r\n \"tipo_documento\": \"C\",\r\n \"tipo_transacao\": \"C\",\r\n \"valor_servico\": {{$randomPrice}},\r\n \"valor_pago\": {{$randomPrice}},\r\n \"observacao\": \"{{$randomJobDescriptor}}\",\r\n \"hora_pagamento\": \"12:58\",\r\n \"tipo_servico\": \"25\",\r\n \"registrado\": \"3\"\r\n}\r\n",
"options": {
"raw": {
"language": "json"
@ -89,6 +394,31 @@
},
{
"name": "Get",
"event": [
{
"listen": "test",
"script": {
"exec": [
"pm.test(\"Status code é 201 ou 200\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([200, 201]);\r",
"});\r",
"\r",
"pm.test(\"Resposta contém ID ou confirmação\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData).to.have.any.keys(\"id\", \"message\", \"status\");\r",
"});\r",
"\r",
"pm.test(\"Mensagem indica sucesso\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData.message || \"\").to.match(/sucesso|criado|registrado/i);\r",
"});\r",
""
],
"type": "text/javascript",
"packages": {}
}
}
],
"protocolProfileBehavior": {
"disableBodyPruning": true
},
@ -121,13 +451,13 @@
]
},
"url": {
"raw": "{{BaseUrlV1}}administrativo/caixa/27551",
"raw": "{{BaseUrlV1}}administrativo/caixa/{{caixaItemId}}",
"host": [
"{{BaseUrlV1}}administrativo"
],
"path": [
"caixa",
"27551"
"{{caixaItemId}}"
]
}
},
@ -135,6 +465,31 @@
},
{
"name": "Delete",
"event": [
{
"listen": "test",
"script": {
"exec": [
"pm.test(\"Status code é 201 ou 200\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([200, 201]);\r",
"});\r",
"\r",
"pm.test(\"Resposta contém ID ou confirmação\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData).to.have.any.keys(\"id\", \"message\", \"status\");\r",
"});\r",
"\r",
"pm.test(\"Mensagem indica sucesso\", function () {\r",
" const jsonData = pm.response.json();\r",
" pm.expect(jsonData.message || \"\").to.match(/sucesso|criado|registrado/i);\r",
"});\r",
""
],
"type": "text/javascript",
"packages": {}
}
}
],
"request": {
"auth": {
"type": "bearer",
@ -164,13 +519,13 @@
]
},
"url": {
"raw": "{{BaseUrlV1}}administrativo/caixa/1",
"raw": "{{BaseUrlV1}}administrativo/caixa/{{caixaItemId}}",
"host": [
"{{BaseUrlV1}}administrativo"
],
"path": [
"caixa",
"1"
"{{caixaItemId}}"
]
}
},
@ -211,7 +566,12 @@
},
{
"key": "BearerToken",
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eXBlIjoiYWNjZXNzX3Rva2VuIiwiZXhwIjoxNzUwNjMxNDYxLCJpYXQiOjE3NTAwMjY2NjEsInN1YiI6IjEzIn0.Qnf9kpxgCCUKzjIi3lwR2LZUfpKQeaWhEDUHHZjpBis",
"value": "",
"type": "string"
},
{
"key": "caixaItemId",
"value": "",
"type": "string"
}
]

View file

@ -0,0 +1,11 @@
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
from packages.v1.administrativo.repositories.g_usuario.delete_repository import DeleteRepository
class DeleteAction:
def execute(self, usuario_schema : GUsuarioSchema):
delete_repository = DeleteRepository()
return delete_repository.execute(usuario_schema)

View file

@ -0,0 +1,11 @@
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
from packages.v1.administrativo.repositories.g_usuario.save_repository import SaveRepository
class SaveAction:
def execute(self, usuario_schema : GUsuarioSchema):
save_repository = SaveRepository()
return save_repository.execute(usuario_schema)

View file

@ -0,0 +1,16 @@
from abstracts.action import BaseAction
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
from packages.v1.administrativo.repositories.g_usuario.show_repository import ShowRepository
class ShowAction(BaseAction):
def execute(self, usuario_schema : GUsuarioSchema):
# Instânciamento do repositório sql
show_repository = ShowRepository()
# Execução do sql
response = show_repository.execute(usuario_schema)
# Retorno da informação
return response

View file

@ -57,4 +57,60 @@ class GUsuarioController:
return {
'message': 'Usuários localizados com sucesso',
'data': self.indexService.execute()
}
def show(self, usuario_schema : GUsuarioSchema):
#Importação da classe desejada
show_service = self.dynamic_import.service('show_service', 'ShowService')
# Instânciamento da classe desejada
self.show_service = show_service()
# Busca e retorna o usuário desejado
return {
'message' : 'Usuário localizado com sucesso',
'data': self.show_service.execute(usuario_schema)
}
def save(self, usuario_schema : GUsuarioSchema):
#Importação da classe desejada
save_service = self.dynamic_import.service('save_service', 'SaveService')
# Instânciamento da classe desejada
self.save_service = save_service()
# Busca e retorna o usuário desejado
return {
'message' : 'Usuário salvo com sucesso',
'data': self.save_service.execute(usuario_schema)
}
def update(self, usuario_schema : GUsuarioSchema):
#Importação da classe desejada
save_service = self.dynamic_import.service('save_service', 'SaveService')
# Instânciamento da classe desejada
self.save_service = save_service()
# Busca e retorna o usuário desejado
return {
'message' : 'Usuário salvo com sucesso',
'data': self.save_service.execute(usuario_schema)
}
def delete(self, usuario_schema : GUsuarioSchema):
#Importação da classe desejada
delete_service = self.dynamic_import.service('delete_service', 'DeleteService')
# Instânciamento da classe desejada
self.delete_service = delete_service()
# Busca e retorna o usuário desejado
return {
'message' : 'Usuário removido com sucesso',
'data': self.delete_service.execute(usuario_schema)
}

View file

@ -48,5 +48,59 @@ async def index(current_user: dict = Depends(get_current_user)):
# Busca todos os usuários cadastrados
response = g_usuario_controller.index()
# Retorna os dados localizados
return response
@router.get('/{usuario_id}',
status_code=status.HTTP_200_OK,
summary='Busca um registro em especifico',
response_description='Busca um registro em especifico')
async def show(usuario_id : int, current_user: dict = Depends(get_current_user)):
# Cria o schema com os dados recebidos
usuario_schema = GUsuarioSchema(usuario_id=usuario_id)
# Busca todos os usuários cadastrados
response = g_usuario_controller.show(usuario_schema)
# Retorna os dados localizados
return response
@router.post('/',
status_code=status.HTTP_200_OK,
summary='Cadastra um usuário',
response_description='Cadastra um usuário')
async def save(usuario_schema : GUsuarioSchema, current_user: dict = Depends(get_current_user)):
# Busca todos os usuários cadastrados
response = g_usuario_controller.save(usuario_schema)
# Retorna os dados localizados
return response
@router.put('/',
status_code=status.HTTP_200_OK,
summary='Atualiza um usuário',
response_description='Atualiza um usuário')
async def update(usuario_schema : GUsuarioSchema, current_user: dict = Depends(get_current_user)):
# Busca todos os usuários cadastrados
response = g_usuario_controller.update(usuario_schema)
# Retorna os dados localizados
return response
@router.delete('/{usuario_id}',
status_code=status.HTTP_200_OK,
summary='Remove um usuário',
response_description='Remove um usuário')
async def delete(usuario_id : int, current_user: dict = Depends(get_current_user)):
# Cria o schema com os dados recebidos
usuario_schema = GUsuarioSchema(usuario_id=usuario_id)
# Busca todos os usuários cadastrados
response = g_usuario_controller.delete(usuario_schema)
# Retorna os dados localizados
return response

View file

@ -1,6 +1,6 @@
from packages.v1.administrativo.schemas.c_caixa_item_schema import \
CaixaItemSchema
from Api.abstracts.repository import BaseRepository
from abstracts.repository import BaseRepository
class Delete(BaseRepository):

View file

@ -1,6 +1,6 @@
from packages.v1.administrativo.schemas.c_caixa_item_schema import \
CaixaItemSearchSchema
from Api.abstracts.repository import BaseRepository
from abstracts.repository import BaseRepository
class Index(BaseRepository):

View file

@ -1,7 +1,7 @@
# Importação de bibliotecas
from packages.v1.administrativo.schemas.c_caixa_item_schema import \
CaixaItemSchema
from Api.abstracts.repository import BaseRepository
from abstracts.repository import BaseRepository
class Save(BaseRepository):

View file

@ -1,6 +1,6 @@
from packages.v1.administrativo.schemas.c_caixa_item_schema import \
CaixaItemSchema
from Api.abstracts.repository import BaseRepository
from abstracts.repository import BaseRepository
class Show(BaseRepository):

View file

@ -0,0 +1,22 @@
from packages.v1.administrativo.schemas.g_usuario_schema import \
GUsuarioSchema
from abstracts.repository import BaseRepository
class DeleteRepository(BaseRepository):
def execute(self, usuario_schema : GUsuarioSchema):
# Montagem do sql
sql = """ DELETE FROM g_usuario gu WHERE gu.usuario_id = :usuarioId """
# Preenchimento de parâmetros
params = {
"usuarioId" : usuario_schema.usuario_id
}
#Execução do sql
response = self.run(sql, params)
# Retorna o resultado
return response

View file

@ -0,0 +1,116 @@
from abstracts.repository import BaseRepository
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
class SaveRepository(BaseRepository):
def execute(self, usuario_schema : GUsuarioSchema):
# Montagem do SQL
sql = """ UPDATE OR INSERT INTO G_USUARIO(
USUARIO_ID,
TROCARSENHA,
LOGIN,
SENHA,
SITUACAO,
NOME_COMPLETO,
FUNCAO,
ASSINA,
SIGLA,
USUARIO_TAB,
ULTIMO_LOGIN,
ULTIMO_LOGIN_REGS,
DATA_EXPIRACAO,
SENHA_ANTERIOR,
ANDAMENTO_PADRAO,
LEMBRETE_PERGUNTA,
LEMBRETE_RESPOSTA,
ANDAMENTO_PADRAO2,
RECEBER_MENSAGEM_ARROLAMENTO,
EMAIL,
ASSINA_CERTIDAO,
RECEBER_EMAIL_PENHORA,
FOTO,
NAO_RECEBER_CHAT_TODOS,
PODE_ALTERAR_CAIXA,
RECEBER_CHAT_CERTIDAO_ONLINE,
RECEBER_CHAT_CANCELAMENTO,
CPF,
SOMENTE_LEITURA,
RECEBER_CHAT_ENVIO_ONR,
TIPO_USUARIO,
SENHA_API
) VALUES (
:usuario_id,
:trocarsenha,
:login,
:senha,
:situacao,
:nome_completo,
:funcao,
:assina,
:sigla,
:usuario_tab,
:ultimo_login,
:ultimo_login_regs,
:data_expiracao,
:senha_anterior,
:andamento_padrao,
:lembrete_pergunta,
:lembrete_resposta,
:andamento_padrao2,
:receber_mensagem_arrolamento,
:email,
:assina_certidao,
:receber_email_penhora,
:foto,
:nao_receber_chat_todos,
:pode_alterar_caixa,
:receber_chat_certidao_online,
:receber_chat_cancelamento,
:cpf,
:somente_leitura,
:receber_chat_envio_onr,
:tipo_usuario,
:senha_api
) MATCHING (usuario_id) RETURNING *;"""
# Preenchimento de parâmetros
params = {
'usuario_id': usuario_schema.usuario_id,
'trocarsenha': usuario_schema.trocarsenha,
'login': usuario_schema.login,
'senha': usuario_schema.senha,
'situacao': usuario_schema.situacao,
'nome_completo': usuario_schema.nome_completo,
'funcao': usuario_schema.funcao,
'assina': usuario_schema.assina,
'sigla': usuario_schema.sigla,
'usuario_tab': usuario_schema.usuario_tab,
'ultimo_login': usuario_schema.ultimo_login,
'ultimo_login_regs': usuario_schema.ultimo_login_regs,
'data_expiracao': usuario_schema.data_expiracao,
'senha_anterior': usuario_schema.senha_anterior,
'andamento_padrao': usuario_schema.andamento_padrao,
'lembrete_pergunta': usuario_schema.lembrete_pergunta,
'lembrete_resposta': usuario_schema.lembrete_resposta,
'andamento_padrao2': usuario_schema.andamento_padrao2,
'receber_mensagem_arrolamento': usuario_schema.receber_mensagem_arrolamento,
'email': usuario_schema.email,
'assina_certidao': usuario_schema.assina_certidao,
'receber_email_penhora': usuario_schema.receber_email_penhora,
'foto': usuario_schema.foto,
'nao_receber_chat_todos': usuario_schema.nao_receber_chat_todos,
'pode_alterar_caixa': usuario_schema.pode_alterar_caixa,
'receber_chat_certidao_online': usuario_schema.receber_chat_certidao_online,
'receber_chat_cancelamento': usuario_schema.receber_chat_cancelamento,
'cpf': usuario_schema.cpf,
'somente_leitura': usuario_schema.somente_leitura,
'receber_chat_envio_onr': usuario_schema.receber_chat_envio_onr,
'tipo_usuario': usuario_schema.tipo_usuario,
'senha_api': usuario_schema.senha_api
}
# Excução do sql
return self.run_and_return(sql, params)

View file

@ -0,0 +1,17 @@
from abstracts.repository import BaseRepository
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
class ShowRepository(BaseRepository):
def execute(self, usuario_schema : GUsuarioSchema):
# Montagem do sql
sql = """ SELECT * FROM G_USUARIO gu WHERE gu.usuario_id = :usuarioId """
# Preenchimento de parâmetros
params = {
'usuarioId' : usuario_schema.usuario_id
}
# Execução do sql
return self.fetch_one(sql, params)

View file

@ -3,37 +3,38 @@ from typing import Optional
from datetime import datetime
class GUsuarioSchema(BaseModel):
usuario_id: Optional[int]
trocarsenha: Optional[bool] = False
login: Optional[str]
senha: Optional[str]
situacao: Optional[str]
nome_completo: str
funcao: Optional[str]
assina: Optional[bool] = False
sigla: Optional[str]
usuario_tab: Optional[str]
ultimo_login: Optional[datetime]
ultimo_login_regs: Optional[datetime]
data_expiracao: Optional[datetime]
senha_anterior: Optional[str]
andamento_padrao: Optional[str]
lembrete_pergunta: Optional[str]
lembrete_resposta: Optional[str]
andamento_padrao2: Optional[str]
receber_mensagem_arrolamento: Optional[bool] = False
email: Optional[EmailStr]
assina_certidao: Optional[bool] = False
receber_email_penhora: Optional[bool] = False
foto: Optional[str] # base64 ou caminho para imagem
nao_receber_chat_todos: Optional[bool] = False
pode_alterar_caixa: Optional[bool] = False
receber_chat_certidao_online: Optional[bool] = False
receber_chat_cancelamento: Optional[bool] = False
cpf: Optional[str]
somente_leitura: Optional[bool] = False
receber_chat_envio_onr: Optional[bool] = False
tipo_usuario: Optional[str]
usuario_id: Optional[int] = None
trocarsenha: Optional[str] = None
login: Optional[str] = None
senha: Optional[str] = None
situacao: Optional[str] = None
nome_completo: Optional[str] = None
funcao: Optional[str] = None
assina: Optional[str] = None
sigla: Optional[str] = None
usuario_tab: Optional[str] = None
ultimo_login: Optional[datetime] = None
ultimo_login_regs: Optional[datetime] = None
data_expiracao: Optional[datetime] = None
senha_anterior: Optional[str] = None
andamento_padrao: Optional[str] = None
lembrete_pergunta: Optional[str] = None
lembrete_resposta: Optional[str] = None
andamento_padrao2: Optional[str] = None
receber_mensagem_arrolamento: Optional[str] = None
email: Optional[EmailStr] = None
assina_certidao: Optional[str] = None
receber_email_penhora: Optional[str] = None
foto: Optional[str] = None
nao_receber_chat_todos: Optional[str] = None
pode_alterar_caixa: Optional[str] = None
receber_chat_certidao_online: Optional[str] = None
receber_chat_cancelamento: Optional[str] = None
cpf: Optional[str] = None
somente_leitura: Optional[str] = None
receber_chat_envio_onr: Optional[str] = None
tipo_usuario: Optional[str]= None
senha_api: Optional[str]= None
class Config:
from_attributes = True

View file

@ -0,0 +1,15 @@
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
from packages.v1.administrativo.actions.g_usuario.delete_action import DeleteAction
class DeleteService:
def execute(self, usuario_schema: GUsuarioSchema):
# Instânciamento de ação
delete_action = DeleteAction()
# Executa a ação em questão
data = delete_action.execute(usuario_schema)
# Retorno da informação
return data

View file

@ -0,0 +1,32 @@
from packages.v1.sequencia.schemas.g_sequencia import GSequenciaSchema
from packages.v1.sequencia.services.g_sequencia.generate_service import GenerateService
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
from packages.v1.administrativo.actions.g_usuario.save_action import SaveAction
class SaveService:
def execute(self, usuario_schema: GUsuarioSchema):
# Verifica se precisa gerar o id de sequencia
if not usuario_schema.usuario_id:
# Crio um objeto de sequencia
sequencia_schema = GSequenciaSchema()
# Define os dados para atualizar a sequencia
sequencia_schema.tabela = 'G_USUARIO'
# Busco a sequência atualizada
generate = GenerateService()
# Busco a sequência atualizada
sequencia = generate.execute(sequencia_schema)
# Atualiza os dados da chave primária
usuario_schema.usuario_id = sequencia.sequencia
# Instânciamento de ações
saveAction = SaveAction()
# Retorna todos produtos desejados
return saveAction.execute(usuario_schema)

View file

@ -0,0 +1,24 @@
from fastapi import HTTPException, status
from packages.v1.administrativo.schemas.g_usuario_schema import GUsuarioSchema
from packages.v1.administrativo.actions.g_usuario.show_action import ShowAction
class ShowService:
def execute(self, usuario_schema: GUsuarioSchema):
# Instânciamento de ação
show_action = ShowAction()
# Executa a ação em questão
data = show_action.execute(usuario_schema)
if not data:
# Retorna uma exceção
raise HTTPException(
status_code=status.HTTP_404_NOT_FOUND,
detail='Não foi possível localizar o registro'
)
# Retorno da informação
return data

View file

@ -1,5 +1,5 @@
from packages.v1.sequencia.schemas.g_sequencia import GSequenciaSchema
from Api.abstracts.repository import BaseRepository
from abstracts.repository import BaseRepository
class Get(BaseRepository):

View file

@ -1,5 +1,5 @@
from packages.v1.sequencia.schemas.g_sequencia import GSequenciaSchema
from Api.abstracts.repository import BaseRepository
from abstracts.repository import BaseRepository
class Save(BaseRepository):

View file

@ -1,4 +1,4 @@
from Api.abstracts.repository import BaseRepository
from abstracts.repository import BaseRepository
class FirebirdCheckAction(BaseRepository):

View file

@ -108,5 +108,467 @@
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/http_exception_handler.json",
"storage/temp/validation_exception_handler.json",
"storage/temp/http_exception_handler.json"
]

File diff suppressed because it is too large Load diff