moaisf
This commit is contained in:
@@ -108,14 +108,17 @@ const userProductSchema = Joi.object({
|
||||
Joi.string().allow(''),
|
||||
Joi.allow(null)
|
||||
).optional()
|
||||
}).when('equipmentId', {
|
||||
is: Joi.number().positive(),
|
||||
then: Joi.object(), // When equipmentId is a positive number, spreaderBrand is optional
|
||||
otherwise: Joi.object({
|
||||
spreaderBrand: Joi.string().max(100).required() // When no valid equipmentId, require spreaderBrand
|
||||
})
|
||||
})
|
||||
}).custom((value, helpers) => {
|
||||
// Custom validation: require either equipmentId OR spreaderBrand
|
||||
if (value.equipmentId || value.spreaderBrand) {
|
||||
return value; // Valid if either exists
|
||||
}
|
||||
return helpers.error('custom.equipmentOrBrand');
|
||||
}, 'Equipment or Brand validation')
|
||||
).optional()
|
||||
.messages({
|
||||
'custom.equipmentOrBrand': 'Either equipmentId or spreaderBrand must be provided'
|
||||
})
|
||||
});
|
||||
|
||||
// Application validation schemas
|
||||
|
||||
Reference in New Issue
Block a user