import React, { useState } from 'react'; import { TrendingUp, TrendingDown, AlertCircle, ChevronDown, ChevronUp, Search, DollarSign } from 'lucide-react'; const RockCrystalComparison = () => { const [expandedItems, setExpandedItems] = useState({}); const [selectedCategory, setSelectedCategory] = useState('Все'); const [searchTerm, setSearchTerm] = useState(''); const [priceFilter, setPriceFilter] = useState('all'); // 'all', 'cheaper', 'expensive' const comparisons = [ { category: 'Салаты', dish: 'Цезарь с курицей', rockCrystal: 3700, competitors: [ { name: 'Гриль-бар', price: 3100, diff: -600, percent: -16 }, { name: 'Ухоимедведь', price: 3495, diff: -205, percent: -6 } ] }, { category: 'Салаты', dish: 'Греческий салат', rockCrystal: 3400, competitors: [ { name: 'Гриль-бар', price: 2800, diff: -600, percent: -18 }, { name: 'Ухоимедведь', price: 3095, diff: -305, percent: -9 } ] }, { category: 'Салаты', dish: 'Цезарь с креветками', rockCrystal: 4400, competitors: [ { name: 'Гриль-бар', price: 4000, diff: -400, percent: -9 }, { name: 'Ухоимедведь', price: 3795, diff: -605, percent: -14 } ] }, { category: 'Салаты', dish: 'Теплый салат (телятина/конина)', rockCrystal: 4500, competitors: [ { name: 'Гриль-бар', price: 4500, diff: 0, percent: 0 }, { name: 'Ухоимедведь', price: 3595, diff: -905, percent: -20 } ] }, { category: 'Супы', dish: 'Том-ям', rockCrystal: 4500, competitors: [ { name: 'Гриль-бар', price: 4100, diff: -400, percent: -9 }, { name: 'Ухоимедведь', price: 4295, diff: -205, percent: -5 } ] }, { category: 'Супы', dish: 'Рамен (телятина/говядина)', rockCrystal: 3900, competitors: [ { name: 'Гриль-бар', price: 3900, diff: 0, percent: 0 }, { name: 'Ухоимедведь', price: 3795, diff: -105, percent: -3 } ] }, { category: 'Пицца', dish: 'Маргарита', rockCrystal: 3300, competitors: [ { name: 'Гриль-бар', price: 5800, diff: 2500, percent: 76 }, { name: 'Ухоимедведь', price: 3395, diff: 95, percent: 3 } ] }, { category: 'Пицца', dish: 'Пепперони', rockCrystal: 4100, competitors: [ { name: 'Гриль-бар', price: 6500, diff: 2400, percent: 59 }, { name: 'Ухоимедведь', price: 3595, diff: -505, percent: -12 } ] }, { category: 'Пицца', dish: '4 сыра', rockCrystal: 4300, competitors: [ { name: 'Гриль-бар', price: 7500, diff: 3200, percent: 74 } ] }, { category: 'Горячее', dish: 'Рибай стейк', rockCrystal: 9400, competitors: [ { name: 'Гриль-бар', price: 8200, diff: -1200, percent: -13 }, { name: 'Ухоимедведь', price: 7995, diff: -1405, percent: -15 } ] }, { category: 'Горячее', dish: 'Стейк из лосося/семги', rockCrystal: 8200, competitors: [ { name: 'Гриль-бар', price: 9800, diff: 1600, percent: 20 }, { name: 'Ухоимедведь', price: 7195, diff: -1005, percent: -12 } ] }, { category: 'Горячее', dish: 'Медальоны из телятины', rockCrystal: 8900, competitors: [ { name: 'Гриль-бар', price: 6500, diff: -2400, percent: -27 } ] }, { category: 'Горячие закуски', dish: 'Мини чебуреки', rockCrystal: 2800, competitors: [ { name: 'Гриль-бар', price: 3200, diff: 400, percent: 14 } ] }, { category: 'Горячие закуски', dish: 'Сырные палочки', rockCrystal: 3700, competitors: [ { name: 'Гриль-бар', price: 3100, diff: -600, percent: -16 } ] }, { category: 'Паста', dish: 'Паста с креветками', rockCrystal: null, competitors: [ { name: 'Гриль-бар', price: 5700 }, { name: 'Ухоимедведь', price: 4495 } ], note: 'Отсутствует в Rock Crystal' }, { category: 'Десерты', dish: 'Чизкейк', rockCrystal: 3200, competitors: [ { name: 'Гриль-бар', price: 3550, diff: 350, percent: 11 }, { name: 'Ухоимедведь', price: 3295, diff: 95, percent: 3 } ] }, { category: 'Десерты', dish: 'Фруктовая нарезка/тарелка', rockCrystal: 8900, competitors: [ { name: 'Гриль-бар', price: 9500, diff: 600, percent: 7 } ] }, { category: 'Банкет', dish: 'Бешбармак', rockCrystal: 51000, competitors: [ { name: 'Гриль-бар', price: 45500, diff: -5500, percent: -11 }, { name: 'Ухоимедведь', price: 49995, diff: -1005, percent: -2 } ] }, { category: 'Гарниры', dish: 'Картофель фри', rockCrystal: 1600, competitors: [ { name: 'Гриль-бар', price: 1500, diff: -100, percent: -6 }, { name: 'Ухоимедведь', price: 1495, diff: -105, percent: -7 } ] }, { category: 'Гарниры', dish: 'Рис', rockCrystal: 950, competitors: [ { name: 'Ухоимедведь', price: 1195, diff: 245, percent: 26 } ] } ]; const categories = ['Все', ...new Set(comparisons.map(c => c.category))]; const filteredData = comparisons.filter(item => { const matchesCategory = selectedCategory === 'Все' || item.category === selectedCategory; const matchesSearch = item.dish.toLowerCase().includes(searchTerm.toLowerCase()); if (!matchesCategory || !matchesSearch) return false; if (priceFilter === 'cheaper') { return item.competitors.some(c => c.diff && c.diff < 0); } if (priceFilter ==='expensive') { return item.competitors.some(c => c.diff && c.diff > 0); } return true; }); const stats = { cheaper: comparisons.filter(c => c.competitors.some(comp => comp.diff && comp.diff < 0)).length, moreExpensive: comparisons.filter(c => c.competitors.some(comp => comp.diff && comp.diff > 0)).length, same: comparisons.filter(c => c.competitors.some(comp => comp.diff === 0)).length, totalCompetitorCheaper: 0, totalRockCrystalCheaper: 0 }; comparisons.forEach(c => { c.competitors.forEach(comp => { if (comp.diff && comp.diff < 0) stats.totalCompetitorCheaper++; if (comp.diff && comp.diff > 0) stats.totalRockCrystalCheaper++; }); }); return (

Анализ конкурентов Rock Crystal

Сравнение цен на идентичные позиции меню

Всего сравнений
{comparisons.length}
Конкуренты дешевле
{stats.totalCompetitorCheaper}
позиций
Rock Crystal дешевле
{stats.totalRockCrystalCheaper}
позиций
Одинаковые цены
{stats.same}
блюд
setSearchTerm(e.target.value)} className="w-full pl-10 pr-4 py-2 border border-gray-300 rounded-lg" />
{categories.map(cat => ( ))}
{filteredData.map((item, idx) => { const isExpanded = expandedItems[idx]; const hasCheaperCompetitor = item.competitors.some(c => c.diff && c.diff < 0); const hasExpensiveCompetitor = item.competitors.some(c => c.diff && c.diff > 0); return (
setExpandedItems(prev => ({ ...prev, [idx]: !prev[idx] }))} >
{item.category} {item.note && ( {item.note} )}

{item.dish}

Rock Crystal
{item.rockCrystal ? `${item.rockCrystal.toLocaleString()} тг` : 'Нет в меню'}
{item.rockCrystal && (
{item.competitors.map((comp, i) => (
{comp.name}
0 ? 'text-green-600' : 'text-gray-600' }`}> {comp.diff !== undefined ? ( comp.diff === 0 ? '=' : comp.diff > 0 ? `+${comp.diff.toLocaleString()}` : comp.diff.toLocaleString() ) : ''} {comp.percent !== undefined && ` (${comp.percent > 0 ? '+' : ''}${comp.percent}%)`}
))}
)}
{isExpanded ? : }
{isExpanded && (
Rock Crystal (базовая цена)
{item.rockCrystal ? `${item.rockCrystal.toLocaleString()} тг` : 'Нет в меню'}
{item.competitors.map((comp, i) => (
0 ? 'border-green-500 bg-green-50' : 'border-gray-300 bg-gray-50' }`} >
{comp.name}
{comp.price.toLocaleString()} тг
{comp.diff !== undefined && (
0 ? 'text-green-700' : 'text-gray-700' }`}> {comp.diff === 0 ? 'Одинаковая цена' : comp.diff < 0 ? `Дешевле на ${Math.abs(comp.diff).toLocaleString()} тг` : `Дороже на ${comp.diff.toLocaleString()} тг`}
{comp.percent > 0 ? '+' : ''}{comp.percent}% от Rock Crystal
)}
))}
)}
); })}

Ключевые выводы для Rock Crystal:

  • Пицца: Гриль-бар на 59-76% дороже. Преимущество Rock Crystal!
  • Стейки: Конкуренты дешевле на 12-15%. Рассмотреть корректировку цен
  • Салаты: Все конкуренты дешевле на 6-20%. Зона улучшения
  • Супы: Конкурентные цены, разница 3-9%
  • Рекомендация: Добавить пасту с креветками - есть у обоих конкурентов
); }; export default RockCrystalComparison;
Made on
Tilda