Архівовані принтери¶
Принтер, який ти вивів з експлуатації — продав, списав, замінив на новішу модель — не обов'язково видаляти. Архівування м'яко відправляє його у відставку: принтер зникає з усього застосунку і відключає MQTT, але його повна історія друку лишається недоторканою, тож ти ніколи не втратиш архів того, що він надрукував.
Що це¶
Архівування — це дія «прибрати цю машину» в один клік. Архівований принтер:
- зникає зі сторінки Printers, з кожного пікера принтерів і з view черги друку;
- виключений з диспатчу — планувальник, Auto-Queue Routing, model-based assignment і віртуальний принтер ніколи на нього не маршрутизують;
- прибирається з метрик і запису sensor-history;
- виключається з призначення PA-профілів — picker K-профілів у формі котушки (і лічильник на вкладці PA Profile) пропонує лише не-архівованих принтерів, тож старі калібрування виведеної машини не засмічують нові котушки;
- відключається від MQTT і лишається відключеним, поки ти його не відновиш;
- зберігає всі свої архіви друку — історія лишається, а не видаляється.
Це елегантна альтернатива до Delete Printer, яка викидає машину (і, за замовчуванням, її архіви) назавжди.
Дозвіл
Архівування, відновлення і остаточне видалення принтера потребують printers:delete — дозволу адмін-рівня, який має група Administrators. Оператори і Viewer'и не можуть архівувати принтер.
Архів vs. Режим обслуговування¶
Архівування і Режим обслуговування — це дві незалежні осі: принтер може бути в одному, в обох чи в жодному. Вони вирішують різні задачі:
| Режим обслуговування | Архів | |
|---|---|---|
| Намір | Тимчасово запаркувати робочий принтер (заміна сопла, робота з ременем, нестабільна машина) | Вивести у відставку принтер, з яким ти закінчив (продано, списано) |
| Картка на сторінці Printers | Лишається видимою з бурштиновим піллом Maintenance | Схована повністю |
| Поле в основі | Прапорець is_active |
окремі колонки archived / archived_at |
| Дозвіл | printers:update |
printers:delete |
| Як вийти | Кнопка Exit на картці | Відновити в Settings → Printing |
Оскільки це окремі прапорці, принтер, заархівований поки був також у Режимі обслуговування, лишається запаркованим (is_active=False) при відновленні — він не реконнектиться мовчки лише тому, що ти його розархівував.
Що відбувається при архівуванні¶
Тригер архівування (POST /api/v1/printers/{id}/archive) виконує в одній транзакції:
- Блокується під час друку. Якщо принтер виконує джоб, запит відхиляється з
409 — Stop the active print before archiving this printer. Спершу зупини друк, потім архівуй. - Pending-елементи черги скасовуються. Кожен
pending-елемент у черзі(-ах) цього принтера переходить уcancelled, а відповідь повідомляє, скільки їх скасовано (cancelled_items). Ніщо не лишається осиротілим у черзі, яка ось-ось зникне. archivedвстановлюється (зarchived_at, проштампованим поточним часом).- MQTT відключається. Принтер зникає з дроту і не реконнектиться, поки його не відновлять.
З цього моменту принтер невидимий для кожного availability-запиту в застосунку.
Не можна повторно додати той самий серійник
Архівований принтер зберігає свій серійний номер. Якщо спробуєш додати новий принтер із серійником, що належить архівованому, BamDude відмовить із 409 — This serial belongs to an archived printer — unarchive it instead of re-adding. Замість цього — віднови його.
Відновити або видалити¶
Архівовані принтери спливають рівно в одному місці: Settings → Printing → Archived printers. Кожен рядок показує ім'я принтера, модель і коли його заархівовано, з двома діями:
| Дія | Іконка | Що робить |
|---|---|---|
| Restore | Розархівувати принтер (POST /api/v1/printers/{id}/unarchive). Він з'являється всюди й реконнектиться до MQTT — окрім випадку, коли він також у Режимі обслуговування (is_active=False); тоді лишається запаркованим. |
|
| Delete forever | Остаточно видалити принтер (DELETE /api/v1/printers/{id}). Це незворотно і за замовчуванням також видаляє архіви принтера. Потрібне підтвердження. |
Панель з'являється лише для користувачів із printers:delete.
Історія зберігається¶
Архівування ніколи не чіпає print_archives. Усе, що принтер колись надрукував, лишається в Архіві друку, а сторінка Archives тримає архівованих принтерів у своєму фільтрі принтерів — тож ти все ще можеш фільтрувати історію по виведеній машині ще довго після того, як вона зникла з дашборду. У цьому й весь сенс архівування замість видалення: запис переживає залізо.
Скрізь, де ці минулі друки спливають — розбивки по принтерах і стовпчикова діаграма в Статистиці, список / сітка / календар Archives і той самий фільтр принтерів — виведений принтер підписується як Принтер N (Архів) замість старого імені, тож читається однозначно й ніколи не плутається з активною машиною. У тих самих списках архівовані принтери також сортуються вниз, під активними.
Пов'язане¶
- Керування принтером → Режим обслуговування — тимчасово-паркувальний двійник
- Черги друку — черга архівованого принтера зникає з view черги
- Auto-Queue Routing — архівованих принтерів ніколи не обирають ціллю диспатчу
- Архівування друку — історія, що переживає архівування