diff --git a/src/pages/DealsPage/components/DealsTable/columns.tsx b/src/pages/DealsPage/components/DealsTable/columns.tsx index 1c40b27..cfed912 100644 --- a/src/pages/DealsPage/components/DealsTable/columns.tsx +++ b/src/pages/DealsPage/components/DealsTable/columns.tsx @@ -6,6 +6,11 @@ import { ActionIcon, Image } from "@mantine/core"; const useDealsTableColumns = () => { return useMemo[]>( () => [ + { + accessorKey: "id", + header: "Номер", + size: 20, + }, { header: "Маркетплейс", size: 10, diff --git a/src/pages/DealsPage/hooks/useDealsPageState.tsx b/src/pages/DealsPage/hooks/useDealsPageState.tsx index 4961eea..0b80cc0 100644 --- a/src/pages/DealsPage/hooks/useDealsPageState.tsx +++ b/src/pages/DealsPage/hooks/useDealsPageState.tsx @@ -5,6 +5,7 @@ import { BaseMarketplaceSchema, ClientSchema } from "../../../client"; import { DealStatusType } from "../../../shared/enums/DealStatus.ts"; type State = { + id: number | null; marketplace: BaseMarketplaceSchema | null; dealStatus: DealStatusType | null; client: ClientSchema | null; @@ -13,6 +14,7 @@ const useDealsPageState = () => { const { objects } = useDealSummariesFull(); const form = useForm({ initialValues: { + id: null, marketplace: null, dealStatus: null, client: null, @@ -21,6 +23,11 @@ const useDealsPageState = () => { const [data, setData] = useState(objects); const applyFilters = () => { let result = objects; + if (form.values.id) { + result = result.filter( + obj => obj.id === form.values.id + ) + } if (form.values.marketplace) { result = result.filter( obj => obj.baseMarketplace?.key === form.values.marketplace?.key diff --git a/src/pages/LeadsPage/ui/LeadsPage.tsx b/src/pages/LeadsPage/ui/LeadsPage.tsx index 22c9dee..b9e1c83 100644 --- a/src/pages/LeadsPage/ui/LeadsPage.tsx +++ b/src/pages/LeadsPage/ui/LeadsPage.tsx @@ -12,7 +12,7 @@ import DealEditDrawer from "../drawers/DealEditDrawer/DealEditDrawer.tsx"; import { DealPageContextProvider } from "../contexts/DealPageContext.tsx"; import { modals } from "@mantine/modals"; import { DealService, DealSummaryReorderRequest } from "../../../client"; -import { ActionIcon, Flex, rem, Text } from "@mantine/core"; +import { ActionIcon, Flex, NumberInput, rem, Text } from "@mantine/core"; import classNames from "classnames"; import { notifications } from "../../../shared/lib/notifications.ts"; import { IconMenu2, IconMenuDeep } from "@tabler/icons-react"; @@ -345,6 +345,12 @@ export const LeadsPage: FC = () => { ? "flex" : "none", }}> + form.setFieldValue("dealStatus", null)