chore: clean code, add delete
This commit is contained in:
		| @@ -53,7 +53,7 @@ export default class ProductsApi { | |||||||
|     return res.json(); |     return res.json(); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|     async changeStatusVariant(payload) { |   async changeStatusVariant(payload) { | ||||||
|     // If your API is change status, reuse updateVariant. |     // If your API is change status, reuse updateVariant. | ||||||
|     const res = await fetch(`${this.baseUrl}/ChangeStatus`, { |     const res = await fetch(`${this.baseUrl}/ChangeStatus`, { | ||||||
|       method: 'PATCH', |       method: 'PATCH', | ||||||
|   | |||||||
| @@ -52,14 +52,14 @@ export default function AddOrEditCategoryForm({ onAdd, initialData, onCancel, ma | |||||||
|   const [types, setTypes] = useState([]); |   const [types, setTypes] = useState([]); | ||||||
|   const [allTags, setAllTags] = useState([]); |   const [allTags, setAllTags] = useState([]); | ||||||
|  |  | ||||||
| const tagLabelById = useMemo(() => { |   const tagLabelById = useMemo(() => { | ||||||
|   const map = {}; |     const map = {}; | ||||||
|   for (const t of allTags) { |     for (const t of allTags) { | ||||||
|     const key = t._id; |       const key = t._id; | ||||||
|     map[key] = t.tagName || t.name || key; |       map[key] = t.tagName || t.name || key; | ||||||
|   } |     } | ||||||
|   return map; |     return map; | ||||||
| }, [allTags]); |   }, [allTags]); | ||||||
|  |  | ||||||
|   const [form, setForm] = useState({ |   const [form, setForm] = useState({ | ||||||
|     _id: '', |     _id: '', | ||||||
|   | |||||||
| @@ -149,7 +149,7 @@ export default function Categories() { | |||||||
|     { |     { | ||||||
|       field: 'actions', |       field: 'actions', | ||||||
|       headerName: '', |       headerName: '', | ||||||
|       width: 130, |       width: 150, | ||||||
|       sortable: false, |       sortable: false, | ||||||
|       filterable: false, |       filterable: false, | ||||||
|       disableExport: true, |       disableExport: true, | ||||||
|   | |||||||
| @@ -43,7 +43,7 @@ export default function ProductCollections() { | |||||||
|   const tagTypeApi = useMemo(() => new TagTypeApi(token), [token]); |   const tagTypeApi = useMemo(() => new TagTypeApi(token), [token]); | ||||||
|   const categoriesApi = useMemo(() => new CategoriesApi(token), [token]); |   const categoriesApi = useMemo(() => new CategoriesApi(token), [token]); | ||||||
|  |  | ||||||
|   const toast = useApiToast(); |   const { handleError } = useApiToast(); | ||||||
|  |  | ||||||
|   const [rows, setRows] = useState([]); |   const [rows, setRows] = useState([]); | ||||||
|   const [rawRows, setRawRows] = useState([]); |   const [rawRows, setRawRows] = useState([]); | ||||||
| @@ -153,7 +153,7 @@ export default function ProductCollections() { | |||||||
|       setRawRows(normalized); |       setRawRows(normalized); | ||||||
|     } catch (err) { |     } catch (err) { | ||||||
|       console.error(err); |       console.error(err); | ||||||
|       toast.error(err?.message || 'Error loading variants'); |       handleError(err, 'Error loading product collections'); | ||||||
|     } finally { |     } finally { | ||||||
|       setLoading(false); |       setLoading(false); | ||||||
|     } |     } | ||||||
| @@ -177,12 +177,10 @@ export default function ProductCollections() { | |||||||
|   const confirmDelete = async () => { |   const confirmDelete = async () => { | ||||||
|     try { |     try { | ||||||
|       if (!editRow?.id) return; |       if (!editRow?.id) return; | ||||||
|       await api.changeStatusVariant({ mongoId: editRow.id, status: 'Inactive' }); |       await api.changeStatusVariant({ mongoId: editRow._Id, status: 'Inactive' }); | ||||||
|       await load(); |       await load(); | ||||||
|       toast.success('Deleted successfully'); |  | ||||||
|     } catch (err) { |     } catch (err) { | ||||||
|       console.error(err); |       console.error(err); | ||||||
|       toast.error(err?.message || 'Delete failed'); |  | ||||||
|     } finally { |     } finally { | ||||||
|       setConfirmOpen(false); |       setConfirmOpen(false); | ||||||
|       setEditRow(null); |       setEditRow(null); | ||||||
| @@ -361,13 +359,13 @@ export default function ProductCollections() { | |||||||
|       </Box> |       </Box> | ||||||
|  |  | ||||||
|       <Dialog open={open} onClose={() => setOpen(false)} maxWidth="md" fullWidth> |       <Dialog open={open} onClose={() => setOpen(false)} maxWidth="md" fullWidth> | ||||||
|       <DialogTitle> |         <DialogTitle> | ||||||
|         {viewOnly |           {viewOnly | ||||||
|           ? 'View Product Collection' |             ? 'View Product Collection' | ||||||
|           : editRow |             : editRow | ||||||
|           ? 'Edit Product Collection' |               ? 'Edit Product Collection' | ||||||
|           : 'Add Product Collection'} |               : 'Add Product Collection'} | ||||||
|       </DialogTitle> |         </DialogTitle> | ||||||
|         <DialogContent> |         <DialogContent> | ||||||
|           <AddOrEditProductCollectionForm |           <AddOrEditProductCollectionForm | ||||||
|             initialData={editRow} |             initialData={editRow} | ||||||
|   | |||||||
| @@ -102,7 +102,7 @@ export default function UserManagement() { | |||||||
|             status: r.status ?? 'Active', |             status: r.status ?? 'Active', | ||||||
|             companies: Array.isArray(r.companies) ? r.companies : [], |             companies: Array.isArray(r.companies) ? r.companies : [], | ||||||
|             projects: Array.isArray(r.projects) ? r.projects : [], |             projects: Array.isArray(r.projects) ? r.projects : [], | ||||||
|           }; |         }; | ||||||
|         setEditingData(normalized); |         setEditingData(normalized); | ||||||
|         setOpen(true); |         setOpen(true); | ||||||
|     }; |     }; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Rodolfo Ruiz
					Rodolfo Ruiz