Content import: sync sections and articles (archive is the source of truth)
- importZip now updates titles/positions of existing chapters and sections and removes sections/articles of archived chapters that are missing in the archive (so restructured material no longer leaves stale sections behind); removed count is reported in ContentImportResult and in the admin flash message - docs: note about import semantics in the class diagram and sequences
This commit is contained in:
@@ -229,6 +229,8 @@ classDiagram
|
||||
class ContentSectionRepository
|
||||
class ContentArticleRepository
|
||||
|
||||
note for ContentService "Импорт ZIP — источник истины для глав из архива: устаревшие разделы и статьи удаляются (removed)"
|
||||
|
||||
LabController --> LabService
|
||||
ContentPublicController --> ContentService
|
||||
ContentAdminController --> ContentService
|
||||
|
||||
@@ -292,6 +292,11 @@ sequenceDiagram
|
||||
Note over A,AC: админ открывает скрытую статью через /api/v1/content/all/{c}/{s}/{a}
|
||||
```
|
||||
|
||||
> **Импорт ZIP — источник истины для глав, которые есть в архиве.** Разделы и статьи,
|
||||
> которых нет в архиве, удаляются из этих глав (счётчик `removed` в результате импорта);
|
||||
> главы, отсутствующие в архиве целиком, не затрагиваются. Поэтому после крупной
|
||||
> перестройки структуры старую главу, которой больше нет в архиве, нужно удалить в интерфейсе.
|
||||
|
||||
## 10. Страница группы у администратора (агрегация данных)
|
||||
|
||||
```mermaid
|
||||
|
||||
Reference in New Issue
Block a user