FlashLabel

0
4 месяца назад
5 месяцев назад
README.md

Flash Label v2

Описание

Flash Label - это десктопное приложение для Windows, предназначенное для управления и печати уникальных этикеток с кодами Data Matrix. Приложение обеспечивает надежную и атомарную обработку кодов, гарантируя, что каждый уникальный код используется только один раз, даже при одновременных операциях.

Это достигается за счет транзакционной системы работы с базой данных SQLite, которая помечает каждый запрошенный код как "PRINTED" в рамках одной атомарной операции.

Ключевые возможности

  • Надежная печать: Атомарные операции с базой данных для предотвращения дублирования кодов.
  • Пакетная обработка: Возможность загрузки и печати большого количества кодов.
  • Конфигурация: Гибкая настройка через центральный файл
    config.yaml
    (принтер, база данных, логирование).
  • Пользовательский интерфейс: Простой и понятный интерфейс, построенный на PySide6.

Стек технологий

  • Язык: Python 3
  • UI: PySide6 (Qt for Python)
  • База данных: SQLite
  • Работа с изображениями: Pillow
  • Data Matrix: pylibdmtx
  • Конфигурация: PyYAML

Структура проекта

FlashLabelV2/ ├───app/ # Основная логика приложения │ ├───db/ # Модули для работы с базой данных (SQLite) │ ├───processing/ # Бизнес-логика (генерация этикеток, печать) │ ├───views/ # UI компоненты (окна, диалоги) │ ├───__init__.py │ ├───config.py # Загрузка конфигурации │ ├───exceptions.py # Пользовательские исключения │ └───main.py # Оркестрация запуска приложения ├───resources/ # Ресурсы (иконки, UI файлы) ├───tools/ # Вспомогательные утилиты и скрипты ├───logs/ # Файлы логов ├───config.yaml # Файл конфигурации ├───requirements.txt # Зависимости Python └───run.py # Точка входа для запуска приложения

Установка

  1. Клонируйте репозиторий:

  2. Создайте и активируйте виртуальное окружение:

  3. Установите зависимости:

Конфигурация

Перед запуском необходимо настроить файл

config.yaml
.

  • printer: Укажите IP-адрес и порт вашего принтера этикеток.
  • database: Имя файла базы данных SQLite.
  • logging: Уровень и файл для логирования.
  • paths: Путь к исполняемому файлу
    ghostpcl
    , если он используется.

Использование

Для запуска приложения выполните скрипт

run.py
:

Приложение запустит основной графический интерфейс, где вы сможете выполнять операции по загрузке и печати этикеток.