{title}
{value}
diff --git a/src/components/supplies/wb-product-cards.tsx b/src/components/supplies/wb-product-cards.tsx
index 8596658..8cb40f8 100644
--- a/src/components/supplies/wb-product-cards.tsx
+++ b/src/components/supplies/wb-product-cards.tsx
@@ -1,24 +1,39 @@
-"use client"
+"use client";
-import React, { useState, useEffect } from 'react'
-import { Card } from '@/components/ui/card'
-import { Button } from '@/components/ui/button'
-import { Input } from '@/components/ui/input'
-import { Badge } from '@/components/ui/badge'
-import { Label } from '@/components/ui/label'
-import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'
-import { Dialog, DialogContent, DialogHeader, DialogTitle } from '@/components/ui/dialog'
+import React, { useState, useEffect } from "react";
+import { Card } from "@/components/ui/card";
+import { Button } from "@/components/ui/button";
+import { Input } from "@/components/ui/input";
+import { Badge } from "@/components/ui/badge";
+import { Label } from "@/components/ui/label";
+import {
+ Select,
+ SelectContent,
+ SelectItem,
+ SelectTrigger,
+ SelectValue,
+} from "@/components/ui/select";
+import {
+ Dialog,
+ DialogContent,
+ DialogHeader,
+ DialogTitle,
+} from "@/components/ui/dialog";
-import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover'
-import DatePicker from "react-datepicker"
-import "react-datepicker/dist/react-datepicker.css"
-import { Sidebar } from '@/components/dashboard/sidebar'
-import { useSidebar } from '@/hooks/useSidebar'
-import {
- Search,
- Plus,
- Minus,
- ShoppingCart,
+import {
+ Popover,
+ PopoverContent,
+ PopoverTrigger,
+} from "@/components/ui/popover";
+import DatePicker from "react-datepicker";
+import "react-datepicker/dist/react-datepicker.css";
+import { Sidebar } from "@/components/dashboard/sidebar";
+import { useSidebar } from "@/hooks/useSidebar";
+import {
+ Search,
+ Plus,
+ Minus,
+ ShoppingCart,
Calendar as CalendarIcon,
Phone,
User,
@@ -29,690 +44,804 @@ import {
Check,
Eye,
ChevronLeft,
- ChevronRight
-} from 'lucide-react'
-import { WildberriesService } from '@/services/wildberries-service'
-import { useAuth } from '@/hooks/useAuth'
-import { useQuery, useMutation } from '@apollo/client'
-import { apolloClient } from '@/lib/apollo-client'
-import { GET_MY_COUNTERPARTIES, GET_COUNTERPARTY_SERVICES, GET_COUNTERPARTY_SUPPLIES } from '@/graphql/queries'
-import { CREATE_WILDBERRIES_SUPPLY } from '@/graphql/mutations'
-import { toast } from 'sonner'
-import { format } from 'date-fns'
-import { ru } from 'date-fns/locale'
-import { SelectedCard, FulfillmentService, ConsumableService, WildberriesCard } from '@/types/supplies'
-
-
-
-
+ ChevronRight,
+} from "lucide-react";
+import { WildberriesService } from "@/services/wildberries-service";
+import { useAuth } from "@/hooks/useAuth";
+import { useQuery, useMutation } from "@apollo/client";
+import { apolloClient } from "@/lib/apollo-client";
+import {
+ GET_MY_COUNTERPARTIES,
+ GET_COUNTERPARTY_SERVICES,
+ GET_COUNTERPARTY_SUPPLIES,
+} from "@/graphql/queries";
+import { CREATE_WILDBERRIES_SUPPLY } from "@/graphql/mutations";
+import { toast } from "sonner";
+import { format } from "date-fns";
+import { ru } from "date-fns/locale";
+import {
+ SelectedCard,
+ FulfillmentService,
+ ConsumableService,
+ WildberriesCard,
+} from "@/types/supplies";
interface Organization {
- id: string
- name?: string
- fullName?: string
- type: string
+ id: string;
+ name?: string;
+ fullName?: string;
+ type: string;
}
interface WBProductCardsProps {
- onBack: () => void
- onComplete: (selectedCards: SelectedCard[]) => void
- showSummary?: boolean
- setShowSummary?: (show: boolean) => void
- selectedCards?: SelectedCard[]
- setSelectedCards?: (cards: SelectedCard[]) => void
+ onBack: () => void;
+ onComplete: (selectedCards: SelectedCard[]) => void;
+ showSummary?: boolean;
+ setShowSummary?: (show: boolean) => void;
+ selectedCards?: SelectedCard[];
+ setSelectedCards?: (cards: SelectedCard[]) => void;
}
-export function WBProductCards({ onBack, onComplete, showSummary: externalShowSummary, setShowSummary: externalSetShowSummary, selectedCards: externalSelectedCards, setSelectedCards: externalSetSelectedCards }: WBProductCardsProps) {
- const { user } = useAuth()
- const { getSidebarMargin } = useSidebar()
- const [searchTerm, setSearchTerm] = useState('')
- const [loading, setLoading] = useState(false)
- const [wbCards, setWbCards] = useState {actualSelectedCards.length} карточек товаров
+ {actualSelectedCards.length} карточек товаров
+ WB: {sc.card.nmID}
- ~{formatCurrency(sc.customPrice / sc.selectedQuantity)} за шт.
-
+ WB: {sc.card.nmID}
+
+ ~
+ {formatCurrency(
+ sc.customPrice / sc.selectedQuantity
+ )}{" "}
+ за шт.
+
- Введите запрос в поле поиска, чтобы найти товары в вашем каталоге Wildberries, или загрузите все доступные карточки
+ Введите запрос в поле поиска, чтобы найти товары в вашем
+ каталоге Wildberries, или загрузите все доступные карточки
- Для работы с реальными карточками необходимо настроить API ключ Wildberries
+ Для работы с реальными карточками необходимо настроить API
+ ключ Wildberries
Показаны демонстрационные товары для тестирования
Корзина
-
+ Корзина
+
+ Быстрое назначение
-
+ Быстрое назначение
+
+
-
{sc.card.title}
- Итого
-
+
+ {sc.card.title}
+
+
+ Итого
+
+ handleCardClick(card)}
/>
-
+
{/* Индикатор товара WB */}
handleCardClick(card)}>
+
handleCardClick(card)}
+ >
{card.title}
Нет товаров
- {user?.organization?.apiKeys?.find(key => key.marketplace === 'WILDBERRIES')?.isActive ? (
+
+ Нет товаров
+
+ {user?.organization?.apiKeys?.find(
+ (key) => key.marketplace === "WILDBERRIES"
+ )?.isActive ? (
<>