From aa1e4f044072bcac44227921756b7fa4c9ed3e67 Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Wed, 14 Jan 2026 14:38:16 +0500 Subject: [PATCH] update --- src/features/districts/ui/CategoriesList.tsx | 16 +--- .../districts/ui/DeleteCategories.tsx | 58 +++++------- src/features/districts/ui/TableCategories.tsx | 1 - src/features/plans/ui/AddedPlan.tsx | 92 +++++-------------- src/features/plans/ui/DeletePlan.tsx | 47 +--------- 5 files changed, 48 insertions(+), 166 deletions(-) diff --git a/src/features/districts/ui/CategoriesList.tsx b/src/features/districts/ui/CategoriesList.tsx index 7f95f18..7467b59 100644 --- a/src/features/districts/ui/CategoriesList.tsx +++ b/src/features/districts/ui/CategoriesList.tsx @@ -10,13 +10,9 @@ import { useState } from "react"; const CategoriesList = () => { const [currentPage, setCurrentPage] = useState(1); - const [search, setSearch] = useState(""); - const [editingDistrict, setEditingDistrict] = useState( - null, - ); const { data, isLoading, isError } = useQuery({ - queryKey: ["categories", currentPage, search], + queryKey: ["categories", currentPage], queryFn: () => categories_api.list({ page: currentPage, @@ -42,14 +38,7 @@ const CategoriesList = () => {

Kategoriyalar ro‘yxati

- +
{ dialogOpen={dialogOpen} isLoading={isLoading} setDialogOpen={setDialogOpen} - setEditingDistrict={setEditingDistrict} handleDelete={handleDelete} currentPage={currentPage} /> diff --git a/src/features/districts/ui/DeleteCategories.tsx b/src/features/districts/ui/DeleteCategories.tsx index 033c959..7084333 100644 --- a/src/features/districts/ui/DeleteCategories.tsx +++ b/src/features/districts/ui/DeleteCategories.tsx @@ -1,4 +1,3 @@ -import { categories_api } from "@/features/districts/lib/api"; import type { CategoryItem } from "@/features/plans/lib/data"; import { Button } from "@/shared/ui/button"; import { @@ -9,11 +8,8 @@ import { DialogHeader, DialogTitle, } from "@/shared/ui/dialog"; -import { useMutation, useQueryClient } from "@tanstack/react-query"; -import type { AxiosError } from "axios"; -import { Loader2, Trash, X } from "lucide-react"; +import { X } from "lucide-react"; import { type Dispatch, type SetStateAction } from "react"; -import { toast } from "sonner"; interface Props { opneDelete: boolean; @@ -22,32 +18,25 @@ interface Props { discrit: CategoryItem | null; } -const DeleteDiscrit = ({ - opneDelete, - setOpenDelete, - setDiscritDelete, - discrit, -}: Props) => { - const queryClient = useQueryClient(); +const DeleteDiscrit = ({ opneDelete, setOpenDelete, discrit }: Props) => { + // const { mutate: deleteDiscrict, isPending } = useMutation({ + // mutationFn: (id: string) => categories_api.delete(id), - const { mutate: deleteDiscrict, isPending } = useMutation({ - mutationFn: (id: string) => categories_api.delete(id), - - onSuccess: () => { - queryClient.refetchQueries({ queryKey: ["categories"] }); - toast.success(`Kategoriya o'chirildi`); - setOpenDelete(false); - setDiscritDelete(null); - }, - onError: (err: AxiosError) => { - const errMessage = err.response?.data as { message: string }; - const messageText = errMessage.message; - toast.error(messageText || "Xatolik yuz berdi", { - richColors: true, - position: "top-center", - }); - }, - }); + // onSuccess: () => { + // queryClient.refetchQueries({ queryKey: ["categories"] }); + // toast.success(`Kategoriya o'chirildi`); + // setOpenDelete(false); + // setDiscritDelete(null); + // }, + // onError: (err: AxiosError) => { + // const errMessage = err.response?.data as { message: string }; + // const messageText = errMessage.message; + // toast.error(messageText || "Xatolik yuz berdi", { + // richColors: true, + // position: "top-center", + // }); + // }, + // }); return ( @@ -55,7 +44,7 @@ const DeleteDiscrit = ({ Kategoriyani o'chirish - Siz rostan ham {discrit?.name_uz} kategoriyani o'chirmoqchimisiz + Siz rostan ham {discrit?.name} kategoriyani o'chirmoqchimisiz @@ -66,10 +55,7 @@ const DeleteDiscrit = ({ Bekor qilish - + */} diff --git a/src/features/districts/ui/TableCategories.tsx b/src/features/districts/ui/TableCategories.tsx index dfc653c..afa9d88 100644 --- a/src/features/districts/ui/TableCategories.tsx +++ b/src/features/districts/ui/TableCategories.tsx @@ -25,7 +25,6 @@ interface Props { isError: boolean; handleDelete: (user: CategoryItem) => void; setDialogOpen: Dispatch>; - setEditingDistrict: Dispatch>; dialogOpen: boolean; currentPage: number; } diff --git a/src/features/plans/ui/AddedPlan.tsx b/src/features/plans/ui/AddedPlan.tsx index 0ae007e..353625c 100644 --- a/src/features/plans/ui/AddedPlan.tsx +++ b/src/features/plans/ui/AddedPlan.tsx @@ -49,29 +49,26 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => { const form = useForm>({ resolver: zodResolver(createPlanFormData), defaultValues: { - name_uz: initialValues?.name_uz || "", - name_ru: initialValues?.name_ru || "", - description_uz: initialValues?.description_uz || "", - description_ru: initialValues?.description_ru || "", - category_id: initialValues?.category || "", - unity_id: initialValues?.unity || "", - price: initialValues?.price || 0, - quantity_left: initialValues?.quantity_left || 0, - min_quantity: initialValues?.min_quantity || 0, - is_active: initialValues?.is_active || false, + name_uz: "", + name_ru: "", + description_uz: "", + description_ru: "", + category_id: "", + unity_id: "", + price: 0, + quantity_left: 0, + min_quantity: 0, + is_active: false, images: [], - article: initialValues?.article || "", - brand: initialValues?.brand || "", - code: initialValues?.code || "", - manufacturer: initialValues?.manufacturer || "", - volume: initialValues?.volume || "", + article: "", + brand: "", + code: "", + manufacturer: "", + volume: "", }, }); const [openUser, setOpenUser] = useState(false); const [openUnity, setOpenUnity] = useState(false); - const [initialImages, setInitialImages] = useState( - initialValues?.images || [], - ); const { mutate, isPending } = useMutation({ mutationFn: (body: FormData) => plans_api.create(body), @@ -132,7 +129,6 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => { return data.data; }, }); - const [removedImageIds, setRemovedImageIds] = useState([]); const onSubmit = (data: z.infer) => { const formData = new FormData(); @@ -159,8 +155,7 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => { } if (initialValues) { - removedImageIds.map((e) => formData.append("delete_images", e)); - updated({ body: formData, id: initialValues.id }); + updated({ body: formData, id: initialValues.id.toString() }); } else { mutate(formData); } @@ -260,9 +255,8 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => { !field.value && "text-muted-foreground", )} > - {selectedUser && - typeof selectedUser.name_uz === "string" - ? selectedUser.name_uz + {selectedUser && typeof selectedUser.name === "string" + ? selectedUser.name : "Kategoriyani tanlang"} @@ -297,7 +291,7 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => { : "opacity-0", )} /> - {u.name_uz} + {u.name} ))} @@ -589,10 +583,10 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => {
{/* Agar initialValues'dan rasm bo'lsa ko'rsatish */} - {initialValues?.image && !field.value && ( + {initialValues?.images && !field.value && (
Mavjud rasm @@ -619,7 +613,7 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => { >

- {field.value || initialValues?.image + {field.value || initialValues?.images ? "Yangi rasm tanlash" : "Rasm tanlang"}

@@ -652,48 +646,6 @@ const AddedPlan = ({ initialValues, setDialogOpen }: Props) => { Qo'shimcha rasmlar
- {initialImages.length > 0 && ( -
-

- Mavjud rasmlar: -

-
- {initialImages.map((img, idx) => ( -
- {`existing-${idx}`} - -
- Mavjud -
-
- ))} -
-
- )} - {/* FILE INPUT */} { - const queryClient = useQueryClient(); - - const { mutate: deleteUser, isPending } = useMutation({ - mutationFn: (id: string) => plans_api.delete(id), - - onSuccess: () => { - queryClient.refetchQueries({ queryKey: ["product_list"] }); - toast.success(`Mahsulot o'chirildi`); - setOpenDelete(false); - setPlanDelete(null); - }, - onError: (err: AxiosError) => { - const errMessage = err.response?.data as { message: string }; - const messageText = errMessage.message; - toast.error(messageText || "Xatolik yuz berdi", { - richColors: true, - position: "top-center", - }); - }, - }); - +const DeletePlan = ({ opneDelete, setOpenDelete }: Props) => { return ( @@ -66,19 +36,6 @@ const DeletePlan = ({ Bekor qilish -