Michael Chus 0e61382633 feat: add LOT creation, auto-save mappings, disable auto warehouse pricelist
- Add LOT creation functionality in pricing admin
  - New API endpoint POST /api/admin/pricing/lots
  - Modal form for creating new LOT with auto-category detection
  - Creates entries in both lot and qt_lot_metadata tables

- Implement auto-save for stock mappings
  - Auto-save on change for partnumber → LOT mappings
  - Visual feedback (orange during save, green on success, red on error)
  - Works in both main mappings table and import suggestions

- Improve stock import suggestions UI
  - Remove "Причина" column from suggestions table
  - Increase LOT and Partnumber column widths to 33% each
  - Better visual balance in the table layout

- Disable automatic warehouse pricelist creation on stock_log import
  - Import now completes at 100% after stock_log update
  - Manual pricelist creation available via UI when needed
  - Faster import process without auto-generation overhead

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 11:34:43 +03:00
2026-02-08 08:57:52 +03:00
2026-02-08 08:57:52 +03:00
2026-02-07 21:42:26 +03:00
2026-02-07 21:42:26 +03:00
2026-02-08 08:57:52 +03:00
2026-02-08 08:57:52 +03:00
2026-02-08 08:57:52 +03:00
2026-02-08 08:57:52 +03:00

PriceForge

PriceForge — администратор цен и прайслистов для работы с данными MariaDB.

Текущее состояние проекта:

  • Runtime: MariaDB-only
  • Режим запуска: fail-fast (если БД недоступна на старте, сервер завершается)
  • Основной интерфейс: /admin/pricing
  • Порт по умолчанию: 8084

Возможности

  • Администрирование цен компонентов
  • Управление прайслистами (Estimate / Склад / Конкуренты)
  • Импорт складских данных
  • Алерты по ценам и свежести данных
  • Диагностика подключения к БД в UI (online/offline индикатор)

Требования

  • Go 1.22+
  • MariaDB / MySQL с доступом к рабочей базе (например RFQ_LOG)

Быстрый старт

  1. Подготовить конфиг:
cp config.example.yaml config.yaml
  1. Проверить параметры в config.yaml:
  • server.port (по умолчанию 8084)
  • database.host
  • database.port
  • database.name
  • database.user
  • database.password
  1. Запустить сервер:
make run

или

go run ./cmd/pfs
  1. Открыть:

Миграции

Запуск миграций:

go run ./cmd/pfs -migrate

При обычном запуске SQL-миграции из migrations/ также проверяются автоматически.

Сборка

make build
make build-release
make build-all

Проверка версии:

./bin/pfs -version

Release-артефакты

Скрипт сборки релиза:

./scripts/release.sh

Он создает архивы в releases/<version>/ и файл SHA256SUMS.txt.

Запуск на macOS

После скачивания бинарника может сработать Gatekeeper. Выполните:

xattr -d com.apple.quarantine /path/to/pfs-darwin-arm64

После этого бинарник запустится без предупреждения Gatekeeper.

Основные команды Makefile

make run           # запуск dev-сервера
make build         # локальная сборка
make build-release # релизная сборка
make build-all     # кросс-компиляция для Linux/macOS/Windows
make test          # тесты
make clean         # очистка артефактов

Важно

Проект сейчас не использует SQLite в runtime-потоке сервера pfs. Все ключевые операции выполняются напрямую через MariaDB.

Description
No description provided
Readme 261 MiB
Languages
Go 47.2%
CSS 25.1%
JavaScript 16%
HTML 11.3%
Makefile 0.2%
Other 0.2%