From 8a3a574a805439fd39e98c86b11ba97c08b01451 Mon Sep 17 00:00:00 2001 From: bagusajisaputroo Date: Fri, 9 May 2025 11:42:00 +0700 Subject: [PATCH] fix some sub module in master data --- .../master/products/blocks/AddDialog.tsx | 643 +++++++++--------- .../products/hooks/ManageProductsContext.tsx | 2 - .../master/provider/blocks/AddDialog.tsx | 2 +- 3 files changed, 331 insertions(+), 316 deletions(-) diff --git a/src/pages/master/products/blocks/AddDialog.tsx b/src/pages/master/products/blocks/AddDialog.tsx index b2e2851..12c53c2 100644 --- a/src/pages/master/products/blocks/AddDialog.tsx +++ b/src/pages/master/products/blocks/AddDialog.tsx @@ -83,18 +83,18 @@ const AddDialog = () => { }; const validateForm = () => { const requiredFields = [ - {key:'name', label: 'Name'}, - {key:'type', label: 'Type'}, - {key:'code', label: 'Code'}, - {key:'description', label: 'Description'}, - {key:'price_point', label: 'Price Point'}, - {key:'price_cash', label: 'Price Cash'}, - {key:'cashback_point', label: 'Cashback Point'}, - {key:'cashback_cash', label: 'Cashback Cash'}, - {key:'status', label: 'Status'}, - {key:'provider', label: 'Provider'}, - {key:'process_on_third_party', label: 'Process On Third Party'} - ] + { key: 'name', label: 'Name' }, + { key: 'type', label: 'Type' }, + { key: 'code', label: 'Code' }, + { key: 'description', label: 'Description' }, + { key: 'price_point', label: 'Price Point' }, + { key: 'price_cash', label: 'Price Cash' }, + { key: 'cashback_point', label: 'Cashback Point' }, + { key: 'cashback_cash', label: 'Cashback Cash' }, + { key: 'status', label: 'Status' }, + { key: 'provider', label: 'Provider' }, + { key: 'process_on_third_party', label: 'Process On Third Party' } + ]; const newErrors: Record = {}; let isValid = true; requiredFields.forEach(({ key, label }) => { @@ -110,7 +110,7 @@ const AddDialog = () => { }); setErrors(newErrors); return isValid; - } + }; const doCreateProduct = useCallback( async (e: React.FormEvent) => { @@ -214,317 +214,334 @@ const AddDialog = () => { )} -
-
-
-
- -
- { - setFormField({ ...formField, name: e.target.value }); - if (e.target.value) { - setErrors((prev) => ({ ...prev, name: '' })); - } - }} - /> - {errors.name && {errors.name}} -
-
-
+ +
+
+
+ +
+ { + setFormField({ ...formField, name: e.target.value }); + if (e.target.value) { + setErrors((prev) => ({ ...prev, name: '' })); + } + }} + /> + {errors.name && ( + {errors.name} + )} +
+
+
-
-
- -
- { - setFormField({ ...formField, type: e.target.value }); - if (e.target.value) { - setErrors((prev) => ({ ...prev, type: '' })); - } - }} - /> - {errors.type && {errors.type}} -
-
-
+
+
+ +
+ { + setFormField({ ...formField, type: e.target.value }); + if (e.target.value) { + setErrors((prev) => ({ ...prev, type: '' })); + } + }} + /> + {errors.type && ( + {errors.type} + )} +
+
+
-
-
- -
- { - setFormField({ ...formField, code: e.target.value }); - if (e.target.value) { - setErrors((prev) => ({ ...prev, code: '' })); - } - }} - /> - {errors.code && {errors.code}} -
-
-
+
+
+ +
+ { + setFormField({ ...formField, code: e.target.value }); + if (e.target.value) { + setErrors((prev) => ({ ...prev, code: '' })); + } + }} + /> + {errors.code && ( + {errors.code} + )} +
+
+
-
-
- -
- { - setFormField({ ...formField, description: e.target.value }); - if (e.target.value) { - setErrors((prev) => ({ ...prev, description: '' })); - } - }} - /> - {errors.description && ( - {errors.description} - )} -
-
-
+
+
+ +
+ { + setFormField({ ...formField, description: e.target.value }); + if (e.target.value) { + setErrors((prev) => ({ ...prev, description: '' })); + } + }} + /> + {errors.description && ( + {errors.description} + )} +
+
+
-
-
- -
- { - setFormField((prev) => ({ - ...prev, - price_point: values.floatValue !== undefined ? values.floatValue : '' - })); - if (values.floatValue !== undefined) { - setErrors((prev) => ({ ...prev, price_point: '' })); - } - }} - placeholder="Enter Price Point" - /> - {errors.price_point && ( - {errors.price_point} - )} -
-
-
+
+
+ +
+ { + setFormField((prev) => ({ + ...prev, + price_point: values.floatValue !== undefined ? values.floatValue : '' + })); + if (values.floatValue !== undefined) { + setErrors((prev) => ({ ...prev, price_point: '' })); + } + }} + placeholder="Enter Price Point" + /> + {errors.price_point && ( + {errors.price_point} + )} +
+
+
-
-
- -
- { - setFormField((prev) => ({ - ...prev, - price_cash: values.floatValue !== undefined ? values.floatValue : '' - })); - if (values.floatValue !== undefined) { - setErrors((prev) => ({ ...prev, price_cash: '' })); - } - }} - placeholder="Enter Price Cash" - /> - {errors.price_cash && ( - {errors.price_cash} - )} -
-
-
+
+
+ +
+ { + setFormField((prev) => ({ + ...prev, + price_cash: values.floatValue !== undefined ? values.floatValue : '' + })); + if (values.floatValue !== undefined) { + setErrors((prev) => ({ ...prev, price_cash: '' })); + } + }} + placeholder="Enter Price Cash" + /> + {errors.price_cash && ( + {errors.price_cash} + )} +
+
+
-
-
- -
- { - setFormField((prev) => ({ - ...prev, - cashback_point: values.floatValue !== undefined ? values.floatValue : '' - })); - if (values.floatValue !== undefined) { - setErrors((prev) => ({ ...prev, cashback_point: '' })); - } - }} - placeholder="Enter Cashback Point" - /> - {errors.cashback_point && ( - {errors.cashback_point} - )} -
-
-
+
+
+ +
+ { + setFormField((prev) => ({ + ...prev, + cashback_point: values.floatValue !== undefined ? values.floatValue : '' + })); + if (values.floatValue !== undefined) { + setErrors((prev) => ({ ...prev, cashback_point: '' })); + } + }} + placeholder="Enter Cashback Point" + /> + {errors.cashback_point && ( + {errors.cashback_point} + )} +
+
+
-
-
- -
- { - setFormField((prev) => ({ - ...prev, - cashback_cash: values.floatValue !== undefined ? values.floatValue : '' - })); - if (values.floatValue !== undefined) { - setErrors((prev) => ({ ...prev, cashback_cash: '' })); - } - }} - placeholder="Enter Cashback Cash" - /> - {errors.cashback_cash && ( - {errors.cashback_cash} - )} -
-
-
+
+
+ +
+ { + setFormField((prev) => ({ + ...prev, + cashback_cash: values.floatValue !== undefined ? values.floatValue : '' + })); + if (values.floatValue !== undefined) { + setErrors((prev) => ({ ...prev, cashback_cash: '' })); + } + }} + placeholder="Enter Cashback Cash" + /> + {errors.cashback_cash && ( + {errors.cashback_cash} + )} +
+
+
-
-
- -
- - {errors.status && {errors.status}} -
-
-
+
+
+ +
+ + {errors.status && ( + {errors.status} + )} +
+
+
-
-
- -
- - {errors.provider && {errors.provider}} -
-
-
+
+
+ +
+ + {errors.provider && ( + {errors.provider} + )} +
+
+
-
-
- -
- - {errors.process_on_third_party && ( - {errors.process_on_third_party} - )} -
-
-
- -
- - -
-
- +
+
+ +
+ + {errors.process_on_third_party && ( + + {errors.process_on_third_party} + + )} +
+
+
+
+ + +
+
+ diff --git a/src/pages/master/products/hooks/ManageProductsContext.tsx b/src/pages/master/products/hooks/ManageProductsContext.tsx index f785421..2ee7f37 100644 --- a/src/pages/master/products/hooks/ManageProductsContext.tsx +++ b/src/pages/master/products/hooks/ManageProductsContext.tsx @@ -273,8 +273,6 @@ const ManageProductsContextProvider = ({ children }: { children: React.ReactNode getProductsLists }} > - - { const resetForm = () => { setFormField(initialState); - setAlert({ show: false, message: '' }); + setErrors({}); }; const doCreateProvider = useCallback(