build
This commit is contained in:
parent
1ae6fb6d51
commit
2c3f2b5a66
6 changed files with 113 additions and 58 deletions
|
|
@ -1,21 +1,31 @@
|
|||
export enum codigosResposta {
|
||||
sucesso = 200,
|
||||
erroConhecido = 400,
|
||||
erroPermissao = 401,
|
||||
erroDesconhecido = 500,
|
||||
}
|
||||
|
||||
export type tipoRespostaSucesso<T> = {
|
||||
cod: 200
|
||||
cod: codigosResposta.sucesso
|
||||
valor: T
|
||||
mensagem: undefined
|
||||
eErro: false
|
||||
eCerto: true
|
||||
detalhe?: undefined
|
||||
detalhes?: string[]
|
||||
}
|
||||
|
||||
export type tipoRespostaErro = {
|
||||
//400 é um erro conhecido,
|
||||
//500 é um erro desconhecido, geralmente tem origem de um exception
|
||||
cod: 400 | 401 | 500
|
||||
cod:
|
||||
| codigosResposta.erroConhecido
|
||||
| codigosResposta.erroDesconhecido
|
||||
| codigosResposta.erroPermissao
|
||||
valor: undefined
|
||||
mensagem: string
|
||||
eErro: true
|
||||
eCerto: false
|
||||
detalhe?: string[]
|
||||
detalhes?: string[]
|
||||
}
|
||||
|
||||
export type tipoResposta<T> = tipoRespostaSucesso<T> | tipoRespostaErro
|
||||
|
|
@ -26,52 +36,59 @@ export const gerarRespostas = <T>(
|
|||
/**
|
||||
* Gera uma resposta de sucesso
|
||||
*/
|
||||
const valor = <T>(valor: T): tipoRespostaSucesso<T> => {
|
||||
const valor = <T>(valor: T, detalhes?: string[]): tipoRespostaSucesso<T> => {
|
||||
return {
|
||||
cod: 200,
|
||||
cod: codigosResposta.sucesso,
|
||||
valor,
|
||||
mensagem: undefined,
|
||||
eErro: false,
|
||||
eCerto: true,
|
||||
detalhes,
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gera uma resposta de sucesso com valor true
|
||||
*/
|
||||
const valorTrue = (): tipoRespostaSucesso<true> => {
|
||||
const valorTrue = (detalhes?: string[]): tipoRespostaSucesso<true> => {
|
||||
return {
|
||||
cod: 200,
|
||||
cod: codigosResposta.sucesso,
|
||||
valor: true,
|
||||
mensagem: undefined,
|
||||
eErro: false,
|
||||
eCerto: true,
|
||||
detalhes,
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gera uma resposta de erro conhecido
|
||||
*/
|
||||
const erro = (mensagem: string): tipoRespostaErro => {
|
||||
const erro = (mensagem: string, detalhes?: string[]): tipoRespostaErro => {
|
||||
return {
|
||||
cod: 400,
|
||||
cod: codigosResposta.erroConhecido,
|
||||
valor: undefined,
|
||||
mensagem,
|
||||
eErro: true,
|
||||
eCerto: false,
|
||||
detalhes,
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gera uma resposta de erro de permissão,será necessário fazer o login novamente
|
||||
*/
|
||||
const erroPermissao = (mensagem?: string): tipoRespostaErro => {
|
||||
const erroPermissao = (
|
||||
mensagem?: string | undefined | null,
|
||||
detalhes?: string[],
|
||||
): tipoRespostaErro => {
|
||||
return {
|
||||
cod: 401,
|
||||
cod: codigosResposta.erroPermissao,
|
||||
valor: undefined,
|
||||
mensagem: mensagem || "Sem permissão para esse recurso.",
|
||||
eErro: true,
|
||||
eCerto: false,
|
||||
detalhes,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -84,7 +101,7 @@ export const gerarRespostas = <T>(
|
|||
const mensagemFim = `${mensagem || "Erro interno"}`
|
||||
|
||||
return {
|
||||
cod: 500,
|
||||
cod: codigosResposta.erroDesconhecido,
|
||||
valor: undefined,
|
||||
mensagem: mensagemFim,
|
||||
eErro: true,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue