From 726065da512a890afd52e5545bdcacd5d629de2c Mon Sep 17 00:00:00 2001 From: ValdiANS Date: Wed, 8 Apr 2026 15:32:01 +0700 Subject: [PATCH] fix: make vehicle_number and transport_per_item required if expedition_vendor exist --- .../form/order/PurchaseOrderForm.schema.ts | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/components/pages/purchase/form/order/PurchaseOrderForm.schema.ts b/src/components/pages/purchase/form/order/PurchaseOrderForm.schema.ts index 6a299703..9e6f43b0 100644 --- a/src/components/pages/purchase/form/order/PurchaseOrderForm.schema.ts +++ b/src/components/pages/purchase/form/order/PurchaseOrderForm.schema.ts @@ -185,7 +185,12 @@ const PurchaseAcceptApprovalItemObjectSchema: Yup.ObjectSchema + Boolean(expeditionVendor?.value), + then: (schema) => schema.required('Nomor kendaraan wajib diisi!'), + otherwise: (schema) => schema.optional(), + }) .typeError('Nomor kendaraan harus berupa plat nomor!'), expedition_vendor: Yup.object({ value: Yup.number().min(1).required(), @@ -213,7 +218,13 @@ const PurchaseAcceptApprovalItemObjectSchema: Yup.ObjectSchema() .nullable() - .optional() + .when('expedition_vendor', { + is: (expeditionVendor?: { value?: number; label?: string } | null) => + Boolean(expeditionVendor?.value), + then: (schema) => + schema.required('Biaya transport per item wajib diisi!'), + otherwise: (schema) => schema.optional(), + }) .test( 'is-valid-transport-per-item', 'Biaya transport per item harus berupa angka lebih dari atau sama dengan 0!',