refactor(FE-212): update qty validation in PurchaseRequestForm schema to enforce numeric input

This commit is contained in:
rstubryan
2025-11-17 14:45:46 +07:00
parent 71a41d3f37
commit 0087ba384c
@@ -71,19 +71,10 @@ const PurchaseItemObjectSchema: Yup.ObjectSchema<PurchaseItemSchema> =
.required('Produk wajib dipilih!') .required('Produk wajib dipilih!')
.min(1, 'Produk wajib dipilih!') .min(1, 'Produk wajib dipilih!')
.typeError('Produk wajib dipilih!'), .typeError('Produk wajib dipilih!'),
qty: Yup.mixed<string | number>() qty: Yup.number()
.required('Kuantitas wajib diisi!') .required('Kuantitas wajib diisi!')
.test( .min(1, 'Kuantitas tidak boleh kurang dari 1!')
'is-valid-qty', .typeError('Kuantitas wajib diisi!'),
'Kuantitas harus berupa angka lebih dari 0!',
function (value) {
if (value === '' || value === null || value === undefined)
return false;
const numValue =
typeof value === 'string' ? parseFloat(value) : value;
return !isNaN(numValue) && numValue > 0;
}
),
}); });
export const PurchaseRequestFormSchema: Yup.ObjectSchema<PurchaseRequestFormSchemaType> = export const PurchaseRequestFormSchema: Yup.ObjectSchema<PurchaseRequestFormSchemaType> =