Релиз MedSchedule 1.0.3 🎉
Релиз MedSchedule 1.0.3 🎉
Техническое обновление с исправлением критичных багов и исправлением опечаток в имени пакета. Все данные, расписания, врачи, медиа и настройки сохраняются автоматически при обновлении.
Что изменилось:
🔧 ИСПРАВЛЕНИЕ ИМЕНИ ПАКЕТА
В версии 1.0.0 опечатка в имени пакета (medshedule на medschedule).
Из-за неё все команды управления были неудобны. Теперь всё правильно:
Старая версия при обновлении удаляется автоматически, а все данные (БД, расписания, загруженные файлы, настройки, плагины) переносятся в новую структуру. Ничего не потеряется.
👻 ОСНОВНЫЕ ИСПРАВЛЕНИЯ:
Удаление сотрудника и филиала
При удалении врача со вкладки «Сотрудники» система не видела, что у него есть график, замены или отпуска. Теперь показывает точное количество привязок и предлагает удалить вместе с ними.
Удаление филиала
Аналогично: перед удалением показывает, сколько кабинетов, телевизоров и медиа-блоков будет затронуто.
Случайное удаление себя
Кнопка удаления скрыта для собственной учётной записи. Раньше админ мог случайно снести себя и потерять доступ.
Медиа-блоки и стрелочки
Теперь можно перетаскивать блоки мышью за иконку. Оба способа работают идеально, даже если у блоков был одинаковый порядок.
Текстовый блок без фото
Раньше текстовый блок не сохранялся, если не прикреплено ни одного фото. Теперь блок с одним текстом создаётся корректно.
Защита от блокировки файлов
Если видео или картинка открыты в другом процессе (антивирус, проводник), удаление блока больше не вылетает с ошибкой 500. Блок удаляется из базы, а «застрявший» файл подчищается фоновой задачей.
Безопасное обновление
Раньше при обновлении пакета старая Python-среда удалялась до установки новой. Если что-то шло не так (нет интернета, PyPI недоступен) - сервис падал. Теперь старая среда сохраняется до успешной установки новой.
Генерация временных паролей
Временный пароль теперь через криптографический генератор. Пароль действительно непредсказуемый.
Сохранение настроек
Раньше при ошибке в одном поле настройки сохранялись частично. Теперь всё сохраняется одной транзакцией: либо все, либо ничего.
Переключение типов изменений
Раньше если врач был в отгуле, а потом менялся тип на «изменение времени», флаг отгула мог остаться.
Иконка в меню
Пакет теперь добавляет ярлык «MedSchedule» в системное меню Linux со своей иконкой. Открывается в один клик в браузере.
✨ ЧТО УЛУЧШЕНО
1. Улучшена диагностика при установке: при ошибке сразу видно, что именно пошло не так
2. Более чистые и информативные логи
3. Предупреждения о занятом порту, свободном месте на диске
4. При обновлении автоматически сохраняется рабочая версия Python-среды
5. Безопасное удаление врачей, филиалов, кабинетов, ТВ, профилей, пользователей (динамическая очистка внешних ключей, включая созданные плагинами)
🚀 ТРЕБОВАНИЯ
Ubuntu от 24.04 или Debian от 12;
2 ГБ RAM;
30 ГБ диска;
доступ по сети до телевизоров (ADB, порт 5555).
Интернет на сервере нужен только на время установки.
🎳 УСТАНОВКА \ ОБНОВЛЕНИЕ
apt сам поставит PostgreSQL, Nginx, Python и остальные системные пакеты.
⚠️ Если раньше ставили через dpkg -i (без apt), сначала выполните:
затем:
После установки открыть http://<ip-сервера>/ - принять лицензионное соглашение, задать пароль администратора, войти.
🕹 УПРАВЛЕНИЕ
⛓💥 УДАЛЕНИЕ
(данные и БД сохраняются)
(полное удаление)
Если при установке что-то пойдёт не так - присылайте вывод journalctl, разберёмся.
🧲 СКАЧАТЬ:
DEB (Debian\Ubuntu):
https://disk.yandex.ru/d/0dPD4Q4DVnDuDQ
RPM (Red Hat\Red OS):
В планах
Техническое обновление с исправлением критичных багов и исправлением опечаток в имени пакета. Все данные, расписания, врачи, медиа и настройки сохраняются автоматически при обновлении.
Что изменилось:
🔧 ИСПРАВЛЕНИЕ ИМЕНИ ПАКЕТА
В версии 1.0.0 опечатка в имени пакета (medshedule на medschedule).
Из-за неё все команды управления были неудобны. Теперь всё правильно:
medschedule
Старая версия при обновлении удаляется автоматически, а все данные (БД, расписания, загруженные файлы, настройки, плагины) переносятся в новую структуру. Ничего не потеряется.
👻 ОСНОВНЫЕ ИСПРАВЛЕНИЯ:
Удаление сотрудника и филиала
При удалении врача со вкладки «Сотрудники» система не видела, что у него есть график, замены или отпуска. Теперь показывает точное количество привязок и предлагает удалить вместе с ними.
Удаление филиала
Аналогично: перед удалением показывает, сколько кабинетов, телевизоров и медиа-блоков будет затронуто.
Случайное удаление себя
Кнопка удаления скрыта для собственной учётной записи. Раньше админ мог случайно снести себя и потерять доступ.
Медиа-блоки и стрелочки
Теперь можно перетаскивать блоки мышью за иконку. Оба способа работают идеально, даже если у блоков был одинаковый порядок.
Текстовый блок без фото
Раньше текстовый блок не сохранялся, если не прикреплено ни одного фото. Теперь блок с одним текстом создаётся корректно.
Защита от блокировки файлов
Если видео или картинка открыты в другом процессе (антивирус, проводник), удаление блока больше не вылетает с ошибкой 500. Блок удаляется из базы, а «застрявший» файл подчищается фоновой задачей.
Безопасное обновление
Раньше при обновлении пакета старая Python-среда удалялась до установки новой. Если что-то шло не так (нет интернета, PyPI недоступен) - сервис падал. Теперь старая среда сохраняется до успешной установки новой.
Генерация временных паролей
Временный пароль теперь через криптографический генератор. Пароль действительно непредсказуемый.
Сохранение настроек
Раньше при ошибке в одном поле настройки сохранялись частично. Теперь всё сохраняется одной транзакцией: либо все, либо ничего.
Переключение типов изменений
Раньше если врач был в отгуле, а потом менялся тип на «изменение времени», флаг отгула мог остаться.
Иконка в меню
Пакет теперь добавляет ярлык «MedSchedule» в системное меню Linux со своей иконкой. Открывается в один клик в браузере.
✨ ЧТО УЛУЧШЕНО
1. Улучшена диагностика при установке: при ошибке сразу видно, что именно пошло не так
2. Более чистые и информативные логи
3. Предупреждения о занятом порту, свободном месте на диске
4. При обновлении автоматически сохраняется рабочая версия Python-среды
5. Безопасное удаление врачей, филиалов, кабинетов, ТВ, профилей, пользователей (динамическая очистка внешних ключей, включая созданные плагинами)
🚀 ТРЕБОВАНИЯ
Ubuntu от 24.04 или Debian от 12;
2 ГБ RAM;
30 ГБ диска;
доступ по сети до телевизоров (ADB, порт 5555).
Интернет на сервере нужен только на время установки.
🎳 УСТАНОВКА \ ОБНОВЛЕНИЕ
sudo apt install ./medschedule_1.0.3.deb
apt сам поставит PostgreSQL, Nginx, Python и остальные системные пакеты.
⚠️ Если раньше ставили через dpkg -i (без apt), сначала выполните:
sudo apt remove medshedule
затем:
sudo apt install ./medschedule_1.0.3.deb
После установки открыть http://<ip-сервера>/ - принять лицензионное соглашение, задать пароль администратора, войти.
🕹 УПРАВЛЕНИЕ
sudo systemctl status medschedule
sudo journalctl -u medschedule -f
sudo systemctl restart medschedule
⛓💥 УДАЛЕНИЕ
sudo apt remove medschedule
(данные и БД сохраняются)
sudo apt purge medschedule
(полное удаление)
Если при установке что-то пойдёт не так - присылайте вывод journalctl, разберёмся.
🧲 СКАЧАТЬ:
DEB (Debian\Ubuntu):
https://disk.yandex.ru/d/0dPD4Q4DVnDuDQ
RPM (Red Hat\Red OS):
В планах
Просмотры: 33