diff --git a/PROMPTS.md b/PROMPTS.md new file mode 100644 index 0000000..f1fa734 --- /dev/null +++ b/PROMPTS.md @@ -0,0 +1,167 @@ +# Промты для создания приложения VOLS Registry + +## Исходный запрос +``` +Создай приложение для учёта объектов корпоративного сегмента ВОЛС Kazakhtelecom Business +``` + +## Детализация требований + +### 1. Структура данных +``` +18 колонок: +1. Сегмент +2. Подразделение (ДПБО / ДПККК) +3. Область (17 областей Казахстана) +4. Район +5. Населенный пункт +6. Адрес +7. Клиент +8. Вид деятельности +9. Наличие ТВ (да/нет) +10. Статус строительства ВОЛС (Проект, СМР, СМР завершено, Исключено) +11. Начало строительства (дата) +12. Срок строительства (дата) +13. Примечание +14. № устройства +15. Статус подключения (Подключено, Заявка, Отказ, Перспектива) +16. Дата подключения (дата) +17. Тариф +18. ARPU (тенге) +``` + +### 2. Ролевая модель +``` +- admin: полный доступ ко всем объектам и пользователям +- editor: редактирование объектов только своего подразделения (ДПБО или ДПККК) +- view: только просмотр всех объектов +``` + +### 3. Дизайн-система +``` +Брендинг Kazakhtelecom Business: +- Основной цвет: #4B1D6B (глубокий фиолетовый) +- Акцентный цвет: #8DC63F (лайм) +- Фоновый цвет: #F5F3F8 (светло-серый с фиолетовым оттенком) +- Шрифты: Manrope (заголовки), Inter (текст) +- Скругления: 1rem для карточек, 0.75rem для кнопок +- Тени: мягкие, рассеянные +``` + +### 4. Функциональные требования +``` +Экраны: +1. Start Screen — выбор устройства (ПК/мобильное) и режима (просмотр/редактирование) +2. Auth Screen — выбор демо-пользователя или регистрация нового +3. Main App — таблица/карточки объектов, дашборд, админка пользователей, журнал аудита + +Таблица объектов: +- Сортировка по клику на заголовок колонки +- Фильтры: сегмент, область, статус подключения, поиск по всем полям +- Подсветка просроченных объектов (красный фон) +- Кнопки редактирования и удаления (в зависимости от роли) +- Экспорт в Excel + +Дашборд: +- KPI: всего объектов, подключено, в работе, суммарный ARPU +- График по областям (bar chart) +- График статусов подключения (doughnut chart) +- Сводка по подразделениям (ДПБО/ДПККК) + +Мобильная версия: +- Карточки вместо таблицы +- Детальный просмотр объекта по клику +- Редактирование из детального просмотра + +Админ-панель: +- Список всех пользователей +- Редактирование пользователя (ФИО, телефон, роль, регион) +- Удаление пользователя +- Журнал аудита (последние 300 записей) +``` + +### 5. Технические требования +``` +- Single Page Application на чистом JavaScript (без фреймворков) +- Хранение данных: localStorage (volsRecords, volsUsers, volsAudit) +- Seed-данные при первом запуске: 30 объектов + 4 пользователя +- Экспорт в Excel через библиотеку XLSX (CDN) +- Графики через Chart.js (CDN) +- Адаптивная вёрстка (mobile-first подход) +- Модальные окна для редактирования/удаления +- Audit log всех действий пользователя +``` + +### 6. Seed-данные +``` +Генерация 30 тестовых объектов: +- Равномерное распределение по подразделениям (ДПБО/ДПККК) +- Все области Казахстана +- Различные сегменты (Корпоративный, Банки, Телеком, Нефтегаз и т.д.) +- Случайные статусы строительства и подключения +- Даты строительства в прошлом (2025-2026) +- ARPU от 30 до 180 тенге для подключенных объектов + +4 демо-пользователя: +1. admin: Торегожиев Саяжан Сабырович, +77771112233, регион: all +2. editor: Иванов Петр, +77774445566, регион: ДПБО +3. editor: Смирнов Алексей, +77777778899, регион: ДПККК +4. view: Гость Тестовый, +77770001122, регион: none +``` + +### 7. Бизнес-правила +``` +- Просроченные объекты: дата окончания строительства < TODAY и статус не "СМР завершено"/"Исключено" +- TODAY = "2026-08-22" (фиксированная дата для демонстрации) +- Редактор может редактировать только объекты своего подразделения +- Админ может редактировать все объекты и пользователей +- Журнал аудита хранит последние 300 записей +- Все данные сохраняются в localStorage автоматически +``` + +### 8. Финальный промт для генерации +``` +Создай Single Page Application (один HTML файл + один JS файл) для реестра объектов ВОЛС. + +Требования: +- Весь код в index.html (стили) и app.js (логика) +- Использование CDN для Chart.js и XLSX +- Ролевая модель: admin, editor, view +- 18 полей объекта, 4 экрана (start, auth, main table/cards, dashboard) +- Seed-данные: 30 объектов + 4 пользователя +- localStorage для персистентности +- Audit log всех действий +- Экспорт в Excel +- Мобильная адаптация (карточки вместо таблицы) +- Дизайн в цветах Kazakhtelecom (#4B1D6B, #8DC63F) +- Шрифты Manrope и Inter + +Структура app.js: +1. State object (screen, device, mode, user, users, records, audit, filter, sort) +2. Storage helpers (get/set localStorage) +3. Seed data function (30 records + 4 users) +4. Audit logging function +5. Render functions (start, auth, main) +6. Init functions (event handlers) +7. Helper functions (filter, sort, stats, export) + +Начни с index.html, затем app.js. +``` + +## Итоговые файлы проекта + +1. `index.html` — 500+ строк (стили + разметка) +2. `app.js` — 1000+ строк (вся логика приложения) +3. `server.js` — статический сервер для раздачи файлов +4. `package.json` — зависимости (xlsx) +5. `README.md` — документация проекта +6. `PROMPTS.md` — этот файл с историей промтов + +## Ключевые решения в процессе разработки + +1. **Отказ от React** — изначальный план использовать React был изменён на чистый JS для надёжности и простоты развёртывания +2. **localStorage вместо бэкенда** — все данные хранятся в браузере пользователя +3. **Один файл app.js** — вся логика в одном файле для простоты поддержки +4. **Модальные окна** — вместо отдельных страниц для редактирования/удаления +5. **Адаптивный дизайн** — карточки на мобильных, таблица на ПК +6. **Audit log** — журналирование всех действий для администратора diff --git a/README.md b/README.md index b1f276d..9944e16 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,96 @@ -# https-docs-google-com-spread +# Реестр объектов ВОЛС | Kazakhtelecom Business +Приложение для учёта и мониторинга объектов корпоративного сегмента ВОЛС. + +## Возможности + +- ✅ Учёт объектов: 18 полей (клиент, адрес, сегмент, статусы строительства и подключения, ARPU и др.) +- ✅ Фильтрация и поиск: по сегментам, областям, статусам, тексту +- ✅ Сортировка таблицы по любой колонке +- ✅ Дашборд с KPI и графиками (объекты по областям, статусы подключения) +- ✅ Аналитика по подразделениям (ДПБО / ДПККК) +- ✅ Ролевой доступ: админ (полный), редактор (ограниченные поля), просмотр +- ✅ Мобильная версия: карточки вместо таблицы +- ✅ Экспорт в Excel (.xlsx) +- ✅ Журнал аудита всех действий +- ✅ Сохранение данных в localStorage + +## Демо-пользователи + +| Роль | ФИО | Телефон | Доступ | +|------|-----|---------|--------| +| Админ | Торегожиев Саяжан Сабырович | +77771112233 | Полный доступ ко всем объектам и пользователям | +| Редактор | Иванов Петр | +77774445566 | Редактирование объектов ДПБО | +| Редактор | Смирнов Алексей | +77777778899 | Редактирование объектов ДПККК | +| Просмотр | Гость Тестовый | +77770001122 | Только просмотр | + +## Поля объекта + +1. Подразделение (ДПБО / ДПККК) +2. Область +3. Район +4. Город +5. Адрес +6. Клиент +7. Вид деятельности +8. Наличие ТВ +9. Сегмент (Корпоративный, Гос.органы, Банки, Телеком, Нефтегаз, Энергетика, Транспорт, Другой) +10. Статус строительства (Проект, СМР, СМР завершено, Исключено) +11. Начало строительства +12. Срок строительства +13. Примечание +14. № устройства +15. Статус подключения (Подключено, Заявка, Отказ, Перспектива) +16. Дата подключения +17. Тариф +18. ARPU (₸) + +## Запуск + +```bash +npm install +npm start +``` + +Или через команду `run` в среде Vibe42. + +## Технологии + +- HTML5, CSS3, Vanilla JavaScript (ES6+) +- Chart.js — графики и диаграммы +- XLSX — экспорт в Excel +- localStorage — персистентное хранилище данных +- Kazakhtelecom branding: цвета #4B1D6B (фиолетовый), #8DC63F (лайм), шрифты Manrope/Inter + +## Структура файлов + +- `index.html` — разметка и стили +- `app.js` — логика приложения (состояние, рендеринг, управление данными) +- `server.js` — статический сервер для раздачи файлов +- `package.json` — зависимости и скрипты + +## Данные + +Данные хранятся в localStorage браузера: +- `volsRecords` — массив объектов реестра +- `volsUsers` — массив пользователей +- `volsAudit` — журнал аудита (последние 300 записей) + +При первом запуске генерируются seed-данные: 30 объектов и 4 пользователя. + +## Администрирование + +Администратор может: +- Просматривать список всех пользователей +- Редактировать пользователей (ФИО, телефон, роль, регион) +- Удалять пользователей (кроме себя) +- Просматривать журнал аудита +- Видеть popup с контактами администратора (кнопка вверху справа) + +## Экспорт + +Кнопка «Excel» в верхней панели экспортирует все отфильтрованные записи в файл `reestr_vols_ГГГГ-ММ-ДД.xlsx` с полями: +- Подразделение, Область, Район, Город, Адрес +- Клиент, Вид деятельности, Наличие ТВ, Сегмент +- Статус строительства, Начало строительства, Срок строительства, Примечание +- № устройства, Статус подключения, Дата подключения, Тариф, ARPU