From 8e80d668fa178ceda849879ab67d334b5f4a186b Mon Sep 17 00:00:00 2001 From: rstubryan Date: Tue, 9 Dec 2025 10:13:48 +0700 Subject: [PATCH] refactor(FE-311): Remove credit_term from purchase request data and UI --- .../request/PurchaseRequestForm.schema.ts | 6 -- .../form/request/PurchaseRequestForm.tsx | 79 +------------------ .../purchase/order/PurchaseOrderInvoice.tsx | 3 - src/types/api/purchase/purchase.d.ts | 2 - 4 files changed, 2 insertions(+), 88 deletions(-) diff --git a/src/components/pages/purchase/form/request/PurchaseRequestForm.schema.ts b/src/components/pages/purchase/form/request/PurchaseRequestForm.schema.ts index 414371c3..05167715 100644 --- a/src/components/pages/purchase/form/request/PurchaseRequestForm.schema.ts +++ b/src/components/pages/purchase/form/request/PurchaseRequestForm.schema.ts @@ -7,7 +7,6 @@ type PurchaseRequestFormSchemaType = { label: string; } | null; supplier_id: number; - credit_term: number; area?: { value: number; label: string; @@ -78,10 +77,6 @@ export const PurchaseRequestFormSchema: Yup.ObjectSchema ({ warehouse_id: Number(item.warehouse_id) || 0, @@ -342,27 +338,6 @@ const PurchaseRequestForm = ({ }; // ===== UTILITY FUNCTIONS ===== - const updateCreditTermBasedOnSupplier = useCallback( - (supplierId: number) => { - if (supplierId > 0 && isResponseSuccess(supplierRawData)) { - const supplierData = supplierRawData.data.find( - (s: Supplier) => s.id === supplierId - ); - if (supplierData?.due_date) { - formik.setFieldTouched('credit_term', false); - formik.setFieldValue('credit_term', supplierData.due_date.toString()); - } else { - formik.setFieldTouched('credit_term', false); - formik.setFieldValue('credit_term', ''); - } - } else { - formik.setFieldTouched('credit_term', false); - formik.setFieldValue('credit_term', ''); - } - }, - [supplierRawData] - ); - const resetPurchaseItems = useCallback(() => { if (formik.values.items) { formik.values.items.forEach((_, idx) => { @@ -377,16 +352,6 @@ const PurchaseRequestForm = ({ }, []); // ===== SIDE EFFECTS ===== - useEffect(() => { - if (formik.values.supplier_id && Number(formik.values.supplier_id) > 0) { - updateCreditTermBasedOnSupplier(Number(formik.values.supplier_id)); - resetPurchaseItems(); - } else { - formik.setFieldTouched('credit_term', false); - formik.setFieldValue('credit_term', ''); - resetPurchaseItems(); - } - }, [formik.values.supplier_id]); // ===== FORM HANDLERS ===== const handleSupplierChange = useCallback( @@ -402,23 +367,6 @@ const PurchaseRequestForm = ({ [] ); - const handleCreditTermChange = useCallback( - (e: React.ChangeEvent) => { - const value = e.target.value; - - formik.setFieldTouched('credit_term', true); - formik.setFieldValue('credit_term', value); - }, - [] - ); - - const handleCreditTermBlur = useCallback( - (e: React.FocusEvent) => { - formik.handleBlur(e); - }, - [formik] - ); - const handleAreaChange = useCallback( (val: OptionType | OptionType[] | null) => { const area = val as OptionType | null; @@ -499,7 +447,7 @@ const PurchaseRequestForm = ({ body: 'flex flex-col gap-6', }} > -
+
- - -
+
{ {purchaseData?.supplier?.alias || ''}) {purchaseData?.supplier?.category || '-'} - - Credit Term: {purchaseData?.credit_term || 0} hari - Due Date:{' '} {purchaseData?.due_date diff --git a/src/types/api/purchase/purchase.d.ts b/src/types/api/purchase/purchase.d.ts index 50221bfa..e596187a 100644 --- a/src/types/api/purchase/purchase.d.ts +++ b/src/types/api/purchase/purchase.d.ts @@ -51,7 +51,6 @@ export type BasePurchase = { po_document_path?: string | null; po_date: string; supplier: Supplier; - credit_term?: number; due_date: string; notes?: string | null; deleted_at?: string | null; @@ -67,7 +66,6 @@ export type Purchase = BaseMetadata & BasePurchase; export type CreatePurchaseRequestPayload = { supplier_id: number; - credit_term: number; notes?: string | null; items: { warehouse_id: number;