diff --git a/backend/src/utils/validation.js b/backend/src/utils/validation.js index 78cd973..09ec75d 100644 --- a/backend/src/utils/validation.js +++ b/backend/src/utils/validation.js @@ -93,10 +93,10 @@ const userProductSchema = Joi.object({ Joi.object({ id: Joi.number().optional(), // For frontend temporary IDs spreaderBrand: Joi.string().max(100).required(), - spreaderModel: Joi.string().max(100).allow(null, '').optional(), + spreaderModel: Joi.string().max(100).allow(null, '', undefined).optional(), settingValue: Joi.string().max(20).required(), - rateDescription: Joi.string().max(200).allow(null, '').optional(), - notes: Joi.string().allow(null, '').optional() + rateDescription: Joi.string().max(200).allow(null, '', undefined).optional(), + notes: Joi.string().allow(null, '', undefined).optional() }) ).optional() }); diff --git a/frontend/src/pages/Products/Products.js b/frontend/src/pages/Products/Products.js index 22f86c2..9eb1c64 100644 --- a/frontend/src/pages/Products/Products.js +++ b/frontend/src/pages/Products/Products.js @@ -821,10 +821,10 @@ const EditProductModal = ({ product, onSubmit, onCancel, sharedProducts, categor ...(formData.productType === 'granular' && editSpreaderSettings.length > 0 && { spreaderSettings: editSpreaderSettings.map(setting => ({ spreaderBrand: setting.spreaderBrand, - spreaderModel: setting.spreaderModel && setting.spreaderModel.trim() ? setting.spreaderModel.trim() : null, + spreaderModel: setting.spreaderModel && setting.spreaderModel.trim() ? setting.spreaderModel.trim() : '', settingValue: setting.settingValue, - rateDescription: setting.rateDescription && setting.rateDescription.trim() ? setting.rateDescription.trim() : null, - notes: setting.notes && setting.notes.trim() ? setting.notes.trim() : null + rateDescription: setting.rateDescription && setting.rateDescription.trim() ? setting.rateDescription.trim() : '', + notes: setting.notes && setting.notes.trim() ? setting.notes.trim() : '' })) }) };