diff --git a/dist/routes/config.js b/dist/routes/config.js index 2d2a154..edeff07 100644 --- a/dist/routes/config.js +++ b/dist/routes/config.js @@ -16,6 +16,29 @@ const config = (app) => { } const config = new Config_1.Config(JSON.parse(configString)); const configDAO = new ConfigDAO_1.ConfigDAO(advertiser); + const validateArray = (array) => { + for (let i = 0; i < array.length; i++) { + for (let j = 0; j < array.length; j++) { + if (array[i] === array[j] && i != j) { + apiResponse.statusCode = 500; + apiResponse.responseText = 'Erro ao criar a configuração! Configuração com valores repetidos!'; + apiResponse.errorMessage = 'Erro ao criar a configuração! Configuração com valores repetidos!'; + res.status(apiResponse.statusCode).send(apiResponse.jsonResponse); + return; + } + } + } + }; + const percorreObjeto = (objetos) => { + for (const propriedade in objetos) { + if (Array.isArray(objetos[propriedade])) { + console.log(validateArray(objetos[propriedade]), objetos[propriedade]); + } else if (typeof objetos[propriedade] == 'object') { + percorreObjeto(objetos[propriedade]); + } + } + }; + percorreObjeto(JSON.parse(configString)); configDAO .addConfig(config) .then(() => { diff --git a/src/ts/routes/config.ts b/src/ts/routes/config.ts index 1228ebb..150e769 100644 --- a/src/ts/routes/config.ts +++ b/src/ts/routes/config.ts @@ -19,6 +19,31 @@ const config = (app: { [key: string]: any }): void => { const config = new Config(JSON.parse(configString)); const configDAO = new ConfigDAO(advertiser); + const validateArray = (array: any) => { + for (let i = 0; i < array.length; i++) { + for (let j = 0; j < array.length; j++) { + if (array[i] === array[j] && i != j) { + apiResponse.statusCode = 500; + apiResponse.responseText = 'Erro ao criar a configuração! Configuração com valores repetidos!'; + apiResponse.errorMessage = 'Erro ao criar a configuração! Configuração com valores repetidos!'; + res.status(apiResponse.statusCode).send(apiResponse.jsonResponse); + return; + } + } + } + }; + + const percorreObjeto = (objetos: any) => { + for (const propriedade in objetos) { + if (Array.isArray(objetos[propriedade])) { + console.log(validateArray(objetos[propriedade]), objetos[propriedade]); + } else if (typeof objetos[propriedade] == 'object') { + percorreObjeto(objetos[propriedade]); + } + } + }; + percorreObjeto(JSON.parse(configString)); + configDAO .addConfig(config) .then(() => {