v4.1.21: Реструктуризация проекта для Synology ARM

- Реструктуризация: src/ разбит на middleware/, utils/, repositories/ (удалены), routes/ (удалены)
- Добавлен src/original-html.ts — полный HTML с reportModal
- Добавлен src/index.tsx.backup — React-компонент с reportModal
- Миграции переименованы (0001_initial_schema.sql)
- Добавлена миграция 0018 (удалена позже)
- Docker: multi-stage build, wrangler.toml
- Frontend: public/static/app.js + style.css
- seed.sql добавлен
- Документация: CHANGELOG, CHANGES_v4.1.0-4.1.9, PROJECT_STRUCTURE
This commit is contained in:
Deploy Bot
2026-01-14 18:37:00 +02:00
parent 4898f5ec7f
commit 64403d6fd6
113 changed files with 19231 additions and 3084 deletions

149
CHANGES_v4.1.6.md Normal file
View File

@@ -0,0 +1,149 @@
# 🟡 CHANGES v4.1.6 - Märkused Visual Indicators
**Дата**: 2025-11-28
**Версия**: v4.1.6
**Тип**: Visual Improvement
---
## 📝 Что изменено
### Поле "Märkused" (Notes/Заметки) - визуальная индикация
**Добавлено**:
- **Желтый фон** с белым текстом
- **Иконка "i"** (`fa-info-circle`)
- **Tooltip** при наведении курсора с полным текстом заметки
---
## 🎨 Визуальные состояния
### Состояние 1: Есть текст заметки
```
┌─────────────┐
│ 🟡 │ ← Желтый фон с иконкой "i"
└─────────────┘
↑ Наведение показывает полный текст заметки
```
### Состояние 2: Нет заметки
```
┌─────────────┐
│ - │ ← Серый фон с прочерком
└─────────────┘
↑ Клик для добавления заметки
```
---
## 🔍 Логика отображения
```javascript
// Если есть текст заметки → ЖЕЛТЫЙ с
if (notes && notes.trim()) {
return YELLOW + info-circle icon + tooltip
}
// Иначе → пустой (серый с прочерком)
return LIGHT_GRAY + "-"
```
---
## 📦 Изменённые файлы
### 1. public/static/app.js
- Функция `renderNotesCell()` обновлена
- Добавлен желтый фон: `bg-yellow-400`
- Изменена иконка: `fa-exclamation``fa-info-circle`
- Добавлен tooltip с полным текстом заметки
- Удалена зависимость от `notesDate` (показывает желтый только если есть текст)
### 2. public/original.html
- Обновлена версия: `app.js?v=4.1.5``app.js?v=4.1.6`
### 3. src/original-html.ts, dist/_worker.js
- Регенерированы и пересобраны
---
## ✅ Тестирование
### Сценарий 1: Запись с заметкой
**Запись ID 2** (notes="Срочный заказ до 20.01"):
- ✅ Показывает ЖЕЛТЫЙ фон
- ✅ Показывает иконку
- ✅ При наведении показывает "Срочный заказ до 20.01"
- ✅ Клик открывает модальное окно с текстом
### Сценарий 2: Запись без заметки
**Записи ID 1, 3, 5**:
- ✅ Показывает серый фон с прочерком `-`
- ✅ Клик открывает модальное окно для добавления
---
## 🚀 Deployment
```bash
# Быстрый вариант
scp dist/_worker.js user@server:/path/to/webapp/dist/
docker-compose restart
# Полный вариант
scp public/static/app.js user@server:/path/to/webapp/public/static/
scp public/original.html user@server:/path/to/webapp/public/
scp src/original-html.ts user@server:/path/to/webapp/src/
# На сервере: npm run build && docker-compose restart
```
### Проверка
```bash
curl -I http://localhost:8180
# Браузер: Ctrl+Shift+R
# Проверить поле Märkused:
# - Запись ID 2 → желтый фон с
# - Навести курсор → показывает tooltip с текстом
```
---
## 🔗 URLs
- **Production**: https://3000-iabcqs9fpouqnd3allaai-82b888ba.sandbox.novita.ai
- **Git Commit**: dbc5c25
---
## 📊 Статус
**Версия**: v4.1.6
**Статус**: ✅ Production Ready
**HTTP Status**: 200 OK
**JavaScript Errors**: 0
**Database**: Не изменена
---
## 🎨 Сравнение с Probleemid
| Поле | Цвет | Иконка | Условие |
|------|------|--------|---------|
| **Probleemid** | 🔴 Красный | ⚠️ exclamation-triangle | Есть галочки ошибок |
| **Probleemid** | ⚪ Серый | info-circle | Только текст, без галочек |
| **Märkused** | 🟡 Желтый | info-circle | Есть текст заметки |
| **Пустое** | ⚪ Серый | - | Нет данных |
---
## 💡 Ключевые моменты
1. **Желтый = заметка** - Визуальное отличие от красных проблем
2. **Иконка "i"** - Информационный характер заметок
3. **Tooltip** - Полный текст при наведении курсора
4. **Без даты** - Показывает желтый только если есть текст
---
**🎯 Готово!** Поле Märkused теперь с желтым фоном, иконкой и tooltip при наведении!