feat: refs #8387 crudModel #3355

Merged
robert merged 16 commits from 8387-itemTagCrudModel into dev 2025-01-27 11:38:09 +00:00
3 changed files with 11 additions and 6 deletions
Showing only changes of commit 3d5bfb81da - Show all commits

View File

@ -399,5 +399,5 @@
"All tickets have a route order": "Todos los tickets tienen orden de ruta", "All tickets have a route order": "Todos los tickets tienen orden de ruta",
"Price cannot be blank": "Price cannot be blank", "Price cannot be blank": "Price cannot be blank",
"There are tickets to be invoiced": "La zona tiene tickets por facturar", "There are tickets to be invoiced": "La zona tiene tickets por facturar",
"The value must be a number or a range of numbers": "The value must be a number or a range of numbers" "The value must be a number or a range of numbers": "El valor debe ser un número o un rango de números"
} }

View File

@ -12,7 +12,6 @@ module.exports = Self => {
}); });
Self.observe('before save', async ctx => { Self.observe('before save', async ctx => {
const validValue = new RegExp('^\\d{1,3}(-\\d{1,3})?$');
let tagFk; let tagFk;
let value; let value;
@ -24,10 +23,13 @@ module.exports = Self => {
value = ctx.data.value; value = ctx.data.value;
} }
const models = Self.app.models; const models = Self.app.models;
const validTag = await models.Tag.findOne({where: {name: 'Longitud(m)'}}); const validTag = await models.Tag.findOne({where: {id: tagFk}});
robert marked this conversation as resolved Outdated
Outdated
Review

findById

findById
if (tagFk === validTag.id) { if (validTag.validationRegex) {
robert marked this conversation as resolved
Review

&& de value deberia ir a este nivel no?

&& de value deberia ir a este nivel no?
Review

validTag.validationRegex comprueba si la columna validationRegex de la tabla tag tiene una expresión regular, y en caso de tener, se comprueba si el valor cumple la expresión regular

validTag.validationRegex comprueba si la columna validationRegex de la tabla tag tiene una expresión regular, y en caso de tener, se comprueba si el valor cumple la expresión regular
if ((value && !validValue.test(value))) const regexString = validTag.validationRegex.replace(/\\\\/g, '\\');
const validExpresion = new RegExp(regexString);
if (value && !validExpresion.test(value))
throw new UserError('The value must be a number or a range of numbers'); throw new UserError('The value must be a number or a range of numbers');
} }
}); });

View File

@ -30,6 +30,9 @@
"mysql": { "mysql": {
"columnName": "isQuantitatif" "columnName": "isQuantitatif"
} }
},
"validationRegex": {
"type": "string"
} }
}, },
"acls": [ "acls": [