Archived
2

PUT method for condition

This commit is contained in:
VLE2FE
2020-05-11 13:05:54 +02:00
parent 0ec9b44462
commit c9be3f4eb7
11 changed files with 253 additions and 28 deletions

View File

@ -32,10 +32,8 @@ export default class ConditionValidate {
}
else if (param === 'change') {
return Joi.object({
sample_id: this.condition.sample_id,
number: this.condition.number,
parameters: this.condition.parameters,
treatment_template: this.condition.treatment_template
parameters: this.condition.parameters
}).validate(data);
}
else {

View File

@ -1,35 +1,33 @@
import Joi from '@hapi/joi';
export default class ParametersValidate {
static input (data, parameters) {
static input (data, parameters, param) { // data to validate, parameters from template, param: 'new', 'change'
let joiObject = {};
parameters.forEach(parameter => {
if (parameter.range.hasOwnProperty('values')) {
joiObject[parameter.name] = Joi.alternatives()
.try(Joi.string(), Joi.number(), Joi.boolean())
.valid(...parameter.range.values)
.required();
.valid(...parameter.range.values);
}
else if (parameter.range.hasOwnProperty('min') && parameter.range.hasOwnProperty('max')) {
joiObject[parameter.name] = Joi.number()
.min(parameter.range.min)
.max(parameter.range.max)
.required();
.max(parameter.range.max);
}
else if (parameter.range.hasOwnProperty('min')) {
joiObject[parameter.name] = Joi.number()
.min(parameter.range.min)
.required();
.min(parameter.range.min);
}
else if (parameter.range.hasOwnProperty('max')) {
joiObject[parameter.name] = Joi.number()
.max(parameter.range.max)
.required();
.max(parameter.range.max);
}
else {
joiObject[parameter.name] = Joi.alternatives()
.try(Joi.string(), Joi.number(), Joi.boolean())
.required();
.try(Joi.string(), Joi.number(), Joi.boolean());
}
if (param === 'new') {
joiObject[parameter.name] = joiObject[parameter.name].required()
}
});
return Joi.object(joiObject).validate(data);