]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/log
erp24_rep/yii-erp24/.git
12 days agoERP-396: убрать индексы из миграций store_type/city_store_params, добавить идемпотент...
fomichev [Wed, 3 Jun 2026 06:50:03 +0000 (09:50 +0300)]
ERP-396: убрать индексы из миграций store_type/city_store_params, добавить идемпотентность

Таблицы небольшие — индексы не дают выигрыша.
Проверка существования колонки в safeUp/safeDown предотвращает
падение при повторных накатах и откатах миграций.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
12 days agoERP-396: убрать автоматическую миграцию данных store_type.code
fomichev [Wed, 3 Jun 2026 06:46:47 +0000 (09:46 +0300)]
ERP-396: убрать автоматическую миграцию данных store_type.code

Значения code заводятся вручную через интерфейс CRUD,
жёсткой привязки к конкретным slug в коде нет.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
13 days agoERP-389: блок Каналы (ассортиментные лейблы) в управлении магазином
fomichev [Tue, 2 Jun 2026 14:53:16 +0000 (17:53 +0300)]
ERP-389: блок Каналы (ассортиментные лейблы) в управлении магазином

- StoreDynamic: константа CATEGORY_ASSORTMENT_LABELS = 5
- CityStoreManagementController: загрузка/сохранение лейблов через
  StoreDynamic category 5 (value_string = "1,3,7"); recordStoreDynamicStr();
  save(true, $validateFields) вместо полной валидации — фикс ошибки
  required для null SEO-полей при сохранении с Операционного таба
- JS: панель Каналы в renderOps(), теги в renderHero(), модал выбора,
  openCombo() показывает полный список без фильтра по текущему тексту
- CSS: стили lbl-tag, tag-add, btn-panel-link, lbl-modal-*, hero-labels
- index.php: модальное окно + URL assortmentLabels

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
13 days agoERP-389: is_active в city_store_params + новый интерфейс управления магазином
fomichev [Tue, 2 Jun 2026 13:22:44 +0000 (16:22 +0300)]
ERP-389: is_active в city_store_params + новый интерфейс управления магазином

- Разделены поля visible (CityStore) и is_active (CityStoreParams):
  visible больше не меняется при смене is_active
- Неактивные магазины остаются в списке /city-store-params с оранжевым фоном
- Добавлены константы категорий в StoreDynamic (CATEGORY_IS_ACTIVE=4 и др.)
- История активности: изменение is_active записывается в store_dynamic (category=4)
- Новый интерфейс /city-store-management на основе мокапа v8:
  4 вкладки (Карточка, Операционное, SEO, Сервисная), комбобокс выбора магазина,
  AJAX-сохранение, dirty-tracking, RBAC на вкладку Сервисная (Директор + IT)
- Миграции: store_type.code (slug) и city_store_params.is_active
- StoreService зарегистрирован как singleton в DI-контейнере

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2 weeks agoMerge branch 'feature_filippov_ERP-395_writeoffs_mobile_scroll' into 'develop'
Aleksey Filippov [Wed, 27 May 2026 21:11:32 +0000 (21:11 +0000)]
Merge branch 'feature_filippov_ERP-395_writeoffs_mobile_scroll' into 'develop'

fix: горизонтальный скролл таблицы списаний на мобильных

See merge request gitlab-instance/yii-erp24!1168

2 weeks agofix: горизонтальный скролл таблицы списаний на мобильных feature_filippov_20260527_writeoffs_mobile_scroll origin/feature_filippov_20260527_writeoffs_mobile_scroll origin/feature_filippov_ERP-395_writeoffs_mobile_scroll
Aleksey Filippov [Wed, 27 May 2026 21:00:14 +0000 (00:00 +0300)]
fix: горизонтальный скролл таблицы списаний на мобильных

Обёрнут GridView в div.table-responsive для корректного
отображения таблицы на узких экранах.

2 weeks agoMerge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'
Aleksey Filippov [Tue, 26 May 2026 06:43:18 +0000 (06:43 +0000)]
Merge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'

правки по миграции - права IT

See merge request gitlab-instance/yii-erp24!1167

3 weeks agoправки по миграции - права IT
fomichev [Mon, 25 May 2026 10:31:53 +0000 (13:31 +0300)]
правки по миграции - права IT

3 weeks agoMerge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'
Aleksey Filippov [Mon, 25 May 2026 08:10:24 +0000 (08:10 +0000)]
Merge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'

Feature fomichev erp 325j category manager catalog

See merge request gitlab-instance/yii-erp24!1166

3 weeks agoправки по дубликации при назначении прав
fomichev [Mon, 25 May 2026 08:03:01 +0000 (11:03 +0300)]
правки по дубликации при назначении прав

3 weeks agoMerge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'
Aleksey Filippov [Mon, 25 May 2026 07:18:51 +0000 (07:18 +0000)]
Merge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'

правки по миграциям

See merge request gitlab-instance/yii-erp24!1165

3 weeks agoMerge branch 'refs/heads/feature_fomichev_ERP-325J_category_manager_catalog' into...
fomichev [Fri, 22 May 2026 08:19:01 +0000 (11:19 +0300)]
Merge branch 'refs/heads/feature_fomichev_ERP-325J_category_manager_catalog' into develop

3 weeks agoправки по миграциям feature_fomichev_ERP-325J_category_manager_catalog
fomichev [Fri, 22 May 2026 08:13:38 +0000 (11:13 +0300)]
правки по миграциям

4 weeks agoMerge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'
Aleksey Filippov [Fri, 15 May 2026 14:19:03 +0000 (14:19 +0000)]
Merge branch 'feature_fomichev_ERP-325J_category_manager_catalog' into 'develop'

Feature fomichev erp 325j category manager catalog

See merge request gitlab-instance/yii-erp24!1164

4 weeks agoправки по миграциям
fomichev [Fri, 15 May 2026 09:49:20 +0000 (12:49 +0300)]
правки по миграциям

4 weeks agoправки по миграциям
fomichev [Thu, 14 May 2026 10:51:17 +0000 (13:51 +0300)]
правки по миграциям

4 weeks agoправки по ревью
fomichev [Thu, 14 May 2026 10:28:01 +0000 (13:28 +0300)]
правки по ревью

4 weeks agoстили
fomichev [Thu, 14 May 2026 07:34:54 +0000 (10:34 +0300)]
стили

4 weeks agoПравки
fomichev [Thu, 14 May 2026 06:55:05 +0000 (09:55 +0300)]
Правки

5 weeks agoMerge branch 'refs/heads/develop' into feature_fomichev_ERP-325J_category_manager_catalog
fomichev [Fri, 8 May 2026 09:31:20 +0000 (12:31 +0300)]
Merge branch 'refs/heads/develop' into feature_fomichev_ERP-325J_category_manager_catalog

# Conflicts:
# erp24/records/Products1cNomenclature.php

5 weeks agoMerge branch 'refs/heads/develop' into feature_fomichev_ERP-325J_category_manager_catalog
fomichev [Thu, 7 May 2026 14:51:59 +0000 (17:51 +0300)]
Merge branch 'refs/heads/develop' into feature_fomichev_ERP-325J_category_manager_catalog

5 weeks agoMerge branch 'feature_filippov_20260507_deploy_queue_restart' into 'develop'
Aleksey Filippov [Thu, 7 May 2026 14:47:23 +0000 (14:47 +0000)]
Merge branch 'feature_filippov_20260507_deploy_queue_restart' into 'develop'

deploy: рестарт yii-queue воркеров после reload php-fpm

See merge request gitlab-instance/yii-erp24!1163

5 weeks agodeploy: рестарт yii-queue воркеров после reload php-fpm origin/feature_filippov_20260507_deploy_queue_restart
Aleksey Filippov [Thu, 7 May 2026 14:46:15 +0000 (17:46 +0300)]
deploy: рестарт yii-queue воркеров после reload php-fpm

Воркеры yii queue/listen читают .env один раз при старте и кэшируют
vendor/autoload в памяти. Без принудительного рестарта они продолжают
работать с прежними токенами/кодом задач — и любое изменение в .env
или коде джоб до них не доедет.

Инцидент 2026-05-07: после ротации TELEGRAM_BOT_TOKEN_PROD в @BotFather
воркеры с uptime 68 дней (last restart Feb27) продолжали слать с
отозванным токеном, выдавая 401 Unauthorized — ERP молча терял все
уведомления клиентам с 21.04 по 07.05.

Дополнительно убиваются orphan-процессы yii queue/listen с PPID=1:
такие появляются, если supervisor когда-то рестартовали без graceful
stop детей — supervisorctl restart их НЕ трогает, а они продолжают
слушать очередь со старым окружением. На erpp 2026-05-07 жили ровно
10 таких orphan'ов от Feb27 параллельно с новыми воркерами.

Изменения:
- erp24/scripts/server/activate-release.sh  +31
- erp24/scripts/server/rollback.sh          +20
- erp24/scripts/local/deploy-to-prod.sh     +25

5 weeks agoMerge branch 'feature_fomichev_erp_2025_sales_api_endpoint_api2' into 'develop'
Aleksey Filippov [Wed, 6 May 2026 13:02:13 +0000 (13:02 +0000)]
Merge branch 'feature_fomichev_erp_2025_sales_api_endpoint_api2' into 'develop'

api эндпоинты для транскрибации

See merge request gitlab-instance/yii-erp24!1140

5 weeks agoMerge branch 'feature_fomichev_ERP-292_automarkup' into 'develop'
Aleksey Filippov [Wed, 6 May 2026 13:01:25 +0000 (13:01 +0000)]
Merge branch 'feature_fomichev_ERP-292_automarkup' into 'develop'

feat(ERP-292): RuleBasedParser — словарный парсинг имени товара

See merge request gitlab-instance/yii-erp24!1160

5 weeks agoПравки по ревью origin/feature_fomichev_erp_2025_sales_api_endpoint_api2
fomichev [Wed, 6 May 2026 12:33:18 +0000 (15:33 +0300)]
Правки по ревью

5 weeks agoreview fixes 2 feature_fomichev_ERP-292_automarkup origin/feature_fomichev_ERP-292_automarkup
fomichev [Wed, 6 May 2026 08:16:35 +0000 (11:16 +0300)]
review fixes 2

5 weeks agoreview fixes
fomichev [Wed, 6 May 2026 07:39:06 +0000 (10:39 +0300)]
review fixes

5 weeks agollm verification migration fix
fomichev [Tue, 5 May 2026 10:24:53 +0000 (13:24 +0300)]
llm verification migration fix

5 weeks agollm verification fixes
fomichev [Tue, 5 May 2026 09:19:41 +0000 (12:19 +0300)]
llm verification fixes

6 weeks agollm verification
fomichev [Mon, 4 May 2026 15:22:25 +0000 (18:22 +0300)]
llm verification

6 weeks agollm verification
fomichev [Mon, 4 May 2026 08:31:10 +0000 (11:31 +0300)]
llm verification

6 weeks agofeat(ERP-292): консольная команда verify-llm, триггер в run-new
fomichev [Thu, 30 Apr 2026 15:24:16 +0000 (18:24 +0300)]
feat(ERP-292): консольная команда verify-llm, триггер в run-new

6 weeks agofeat(ERP-292): AutoMarkService — llmBatchVerify, getPendingUnverifiedCount
fomichev [Thu, 30 Apr 2026 15:23:56 +0000 (18:23 +0300)]
feat(ERP-292): AutoMarkService — llmBatchVerify, getPendingUnverifiedCount

6 weeks agofeat(ERP-292): LlmVerifier — батчинг, обогащение примерами, парсинг вердиктов
fomichev [Thu, 30 Apr 2026 15:22:30 +0000 (18:22 +0300)]
feat(ERP-292): LlmVerifier — батчинг, обогащение примерами, парсинг вердиктов

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
6 weeks agofeat(ERP-292): LlmClient — HTTP-клиент и парсинг ответа
fomichev [Thu, 30 Apr 2026 15:18:58 +0000 (18:18 +0300)]
feat(ERP-292): LlmClient — HTTP-клиент и парсинг ответа

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
6 weeks agofeat(ERP-292): модель — METHOD_LLM, llm_verdict поля и валидация
fomichev [Thu, 30 Apr 2026 15:08:09 +0000 (18:08 +0300)]
feat(ERP-292): модель — METHOD_LLM, llm_verdict поля и валидация

6 weeks agofeat(ERP-292): LlmVerifyResult DTO
fomichev [Thu, 30 Apr 2026 15:07:48 +0000 (18:07 +0300)]
feat(ERP-292): LlmVerifyResult DTO

6 weeks agofeat(ERP-292): миграция — llm_verdict, llm_verified_at, llm_comment
fomichev [Thu, 30 Apr 2026 15:06:30 +0000 (18:06 +0300)]
feat(ERP-292): миграция — llm_verdict, llm_verified_at, llm_comment

6 weeks agoMerge branch 'fix_filippov_ERP-372_avg_check_dashboard' into 'develop'
Aleksey Filippov [Thu, 30 Apr 2026 09:21:22 +0000 (09:21 +0000)]
Merge branch 'fix_filippov_ERP-372_avg_check_dashboard' into 'develop'

test(ERP-372): добавить тесты для getSalesCountSum

See merge request gitlab-instance/yii-erp24!1162

6 weeks agofix(ERP-372): синхронизировать фильтры getSalesCountSum с getSalesSum
Aleksey Filippov [Thu, 30 Apr 2026 08:04:00 +0000 (11:04 +0300)]
fix(ERP-372): синхронизировать фильтры getSalesCountSum с getSalesSum

На дашборде /dashboard/sales для магазинов с большой долей доставки
(например, 07 Аэродромная 28) средний чек расходился с суммой продаж:
avg = sum_count_query / cnt_count_query, при этом колонка «сумма продаж»
показывала результат другого запроса (getSalesSum) с более узким
фильтром.

Привожу getSalesCountSum к тем же условиям:
- LEFT JOIN sales sc ON sc.id = s.sales_check
- sc.order_id IS NULL OR IN ('','0')   — отбрасываем строки, привязанные
  через sales_check к доставочной продаже;
- s.marketplace_order_id IS NULL OR =''  — отбрасываем продажи маркетплейсов.

После фикса avg = sum / cnt совпадает с тем, что выводится в колонке
«сумма продаж».

Тесты (9/9 GREEN): unit на структуру SQL и биндинг параметров +
интеграционные на реальной БД (insert/rollback в транзакции),
проверяющие исключение маркетплейс- и доставочно-связанных продаж.

6 weeks agotest(ERP-372): добавить тесты для getSalesCountSum
Aleksey Filippov [Thu, 30 Apr 2026 07:42:41 +0000 (10:42 +0300)]
test(ERP-372): добавить тесты для getSalesCountSum

Unit-тесты на SQL-структуру, биндинг параметров, payType-ветку
и пустой результат. Интеграционный тест на реальной БД проверяет,
что метод исключает маркетплейс-продажи и записи, связанные через
sales_check с доставкой. На текущем (нефиксенном) коде воспроизводят
баг — RED-состояние перед применением правки.

6 weeks agoMerge branch 'feature_filippov_task22_widen_sync_window_to_4months' into 'develop'
Aleksey Filippov [Wed, 29 Apr 2026 20:40:10 +0000 (20:40 +0000)]
Merge branch 'feature_filippov_task22_widen_sync_window_to_4months' into 'develop'

fix(task_22): расширить окно выборки админов с 1 до 4 месяцев

See merge request gitlab-instance/yii-erp24!1161

6 weeks agofix(task_22): расширить окно выборки админов с 1 до 4 месяцев origin/feature_filippov_task22_widen_sync_window_to_4months
Aleksey Filippov [Wed, 29 Apr 2026 20:29:06 +0000 (23:29 +0300)]
fix(task_22): расширить окно выборки админов с 1 до 4 месяцев

Сотрудники с пустым guid выпадали из синхронизации с 1С после месяца —
расширяем окно date_add до 4 месяцев. Добавлена документация по каналу
ERP→1С create_employee (pull через API2 DataController::actionRequest).

7 weeks agoИсправление рбак
fomichev [Thu, 23 Apr 2026 14:43:10 +0000 (17:43 +0300)]
Исправление рбак

7 weeks agoКаталог категорийного менеджера - интерфейс
fomichev [Wed, 22 Apr 2026 13:07:20 +0000 (16:07 +0300)]
Каталог категорийного менеджера - интерфейс

7 weeks agoКаталог категорийного менеджера
fomichev [Wed, 22 Apr 2026 12:24:57 +0000 (15:24 +0300)]
Каталог категорийного менеджера

7 weeks agoMerge branch 'feature_fomichev_ERP-300J_suppliers_dict' into 'develop'
Aleksey Filippov [Wed, 22 Apr 2026 09:35:40 +0000 (09:35 +0000)]
Merge branch 'feature_fomichev_ERP-300J_suppliers_dict' into 'develop'

feat(ERP-300): справочник закупщика

See merge request gitlab-instance/yii-erp24!1159

7 weeks agofeat: добавить группу 82 (менеджер контроля качества) в RBAC ERP-300 feature_fomichev_ERP-300J_suppliers_dict origin/feature_fomichev_ERP-300J_suppliers_dict
fomichev [Wed, 22 Apr 2026 09:04:29 +0000 (12:04 +0300)]
feat: добавить группу 82 (менеджер контроля качества) в RBAC ERP-300

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: подсказка кнопки экспорта — .xlsx → .csv
fomichev [Wed, 22 Apr 2026 08:40:24 +0000 (11:40 +0300)]
fix: подсказка кнопки экспорта — .xlsx → .csv

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: экспорт — убрать sendFile(), отдавать CSV через response->content
fomichev [Wed, 22 Apr 2026 08:34:02 +0000 (11:34 +0300)]
fix: экспорт — убрать sendFile(), отдавать CSV через response->content

sendFile() конфликтовал с nginx на сервере. Теперь CSV генерируется
в php://temp и отдаётся напрямую через FORMAT_RAW без файла на диске.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: экспорт — один JOIN-запрос со скалярами вместо AR + eager loading
fomichev [Wed, 22 Apr 2026 08:24:49 +0000 (11:24 +0300)]
fix: экспорт — один JOIN-запрос со скалярами вместо AR + eager loading

Убирает OOM: GUID-ы фильтруются отдельно, данные — одним SQL с
STRING_AGG для маркировок. Никаких ActiveRecord-объектов в памяти.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: экспорт маппинга переведён с XLSX на CSV
fomichev [Wed, 22 Apr 2026 08:04:26 +0000 (11:04 +0300)]
fix: экспорт маппинга переведён с XLSX на CSV

PhpSpreadsheet роняет процесс по памяти на больших выборках.
CSV: нет зависимостей, минимум памяти, UTF-8 BOM для Excel.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: заменить yii.getCsrfToken() на meta[csrf-token] во всех модулях buyer-reference
fomichev [Wed, 22 Apr 2026 08:00:49 +0000 (11:00 +0300)]
fix: заменить yii.getCsrfToken() на meta[csrf-token] во всех модулях buyer-reference

yii объект недоступен в контексте внешних JS-файлов. Читаем токен напрямую
из <meta name="csrf-token"> — так же работает во всех браузерах.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: перехват ошибки экспорта — возврат JSON вместо 500
fomichev [Wed, 22 Apr 2026 07:57:40 +0000 (10:57 +0300)]
fix: перехват ошибки экспорта — возврат JSON вместо 500

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: правильный регистр исключённых категорий (строчные буквы)
fomichev [Wed, 22 Apr 2026 07:52:57 +0000 (10:52 +0300)]
fix: правильный регистр исключённых категорий (строчные буквы)

В БД категории хранятся строчными: 'букет', 'сборка', 'сервис'.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix: фильтрация категорий Букет/Сборка/Сервис после кэша
fomichev [Wed, 22 Apr 2026 07:46:39 +0000 (10:46 +0300)]
fix: фильтрация категорий Букет/Сборка/Сервис после кэша

Перенесена фильтрация исключённых категорий из SQL-запроса внутри кэша
в PHP-фильтр после getOrSet — работает немедленно независимо от состояния кэша.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 weeks agofix cache
fomichev [Wed, 22 Apr 2026 07:43:55 +0000 (10:43 +0300)]
fix cache

7 weeks agofix mapping
fomichev [Wed, 22 Apr 2026 07:29:26 +0000 (10:29 +0300)]
fix mapping

7 weeks agofix marking
fomichev [Wed, 22 Apr 2026 07:13:27 +0000 (10:13 +0300)]
fix marking

7 weeks agofix producer
fomichev [Wed, 22 Apr 2026 07:03:22 +0000 (10:03 +0300)]
fix producer

7 weeks agofix plantation
fomichev [Wed, 22 Apr 2026 06:48:20 +0000 (09:48 +0300)]
fix plantation

7 weeks agofix plantation
fomichev [Wed, 22 Apr 2026 06:32:56 +0000 (09:32 +0300)]
fix plantation

7 weeks agodelete
fomichev [Tue, 21 Apr 2026 14:01:26 +0000 (17:01 +0300)]
delete

7 weeks agomigration
fomichev [Tue, 21 Apr 2026 12:58:08 +0000 (15:58 +0300)]
migration

7 weeks agofix button
fomichev [Tue, 21 Apr 2026 12:36:47 +0000 (15:36 +0300)]
fix button

7 weeks agofix button
fomichev [Tue, 21 Apr 2026 12:20:54 +0000 (15:20 +0300)]
fix button

7 weeks agofix button
fomichev [Tue, 21 Apr 2026 12:18:37 +0000 (15:18 +0300)]
fix button

7 weeks agoфикс появления после создания
fomichev [Tue, 21 Apr 2026 10:19:41 +0000 (13:19 +0300)]
фикс появления после создания

7 weeks agoфикс удаления
fomichev [Tue, 21 Apr 2026 08:36:43 +0000 (11:36 +0300)]
фикс удаления

7 weeks agoфикс удаления
fomichev [Tue, 21 Apr 2026 06:56:40 +0000 (09:56 +0300)]
фикс удаления

7 weeks agoфикс вкладки
fomichev [Tue, 21 Apr 2026 06:56:09 +0000 (09:56 +0300)]
фикс вкладки

8 weeks agofix(ERP-292): critical fixes — транзакции, типы, FK drop, use imports, XSS
fomichev [Fri, 17 Apr 2026 14:28:33 +0000 (17:28 +0300)]
fix(ERP-292): critical fixes — транзакции, типы, FK drop, use imports, XSS

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
8 weeks agofix(ERP-292): strict_types в AutoMarkPredictionJob
fomichev [Fri, 17 Apr 2026 14:13:19 +0000 (17:13 +0300)]
fix(ERP-292): strict_types в AutoMarkPredictionJob

8 weeks agofeat(ERP-292): web-контроллер и views авторазметки
fomichev [Fri, 17 Apr 2026 14:04:10 +0000 (17:04 +0300)]
feat(ERP-292): web-контроллер и views авторазметки

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
8 weeks agofeat(ERP-292): queue job AutoMarkPredictionJob
fomichev [Fri, 17 Apr 2026 14:04:03 +0000 (17:04 +0300)]
feat(ERP-292): queue job AutoMarkPredictionJob

8 weeks agofeat(ERP-292): консольная команда auto-mark
fomichev [Fri, 17 Apr 2026 14:04:01 +0000 (17:04 +0300)]
feat(ERP-292): консольная команда auto-mark

8 weeks agofix(ERP-292): type cast и null guard в AutoMarkService
fomichev [Fri, 17 Apr 2026 13:55:22 +0000 (16:55 +0300)]
fix(ERP-292): type cast и null guard в AutoMarkService

8 weeks agofeat(ERP-292): AutoMarkService — оркестратор авторазметки
fomichev [Fri, 17 Apr 2026 13:49:41 +0000 (16:49 +0300)]
feat(ERP-292): AutoMarkService — оркестратор авторазметки

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
8 weeks agofeat(ERP-292): SimilarityMatcher — TF-IDF cosine similarity
fomichev [Fri, 17 Apr 2026 13:43:38 +0000 (16:43 +0300)]
feat(ERP-292): SimilarityMatcher — TF-IDF cosine similarity

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
8 weeks agofeat(ERP-292): RuleBasedParser — словарный парсинг имени товара
fomichev [Fri, 17 Apr 2026 13:37:54 +0000 (16:37 +0300)]
feat(ERP-292): RuleBasedParser — словарный парсинг имени товара

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
8 weeks agofeat(ERP-292): модель Products1cAutomarkPrediction и DTO ParseResult
fomichev [Fri, 17 Apr 2026 13:31:16 +0000 (16:31 +0300)]
feat(ERP-292): модель Products1cAutomarkPrediction и DTO ParseResult

8 weeks agofix(ERP-292): CURRENT_TIMESTAMP вместо NOW() в миграции
fomichev [Fri, 17 Apr 2026 13:29:32 +0000 (16:29 +0300)]
fix(ERP-292): CURRENT_TIMESTAMP вместо NOW() в миграции

8 weeks agofeat(ERP-292): миграция таблицы products_1c_automark_predictions
fomichev [Fri, 17 Apr 2026 13:25:56 +0000 (16:25 +0300)]
feat(ERP-292): миграция таблицы products_1c_automark_predictions

8 weeks agochore: add .worktrees/ to .gitignore
fomichev [Fri, 17 Apr 2026 13:08:45 +0000 (16:08 +0300)]
chore: add .worktrees/ to .gitignore

8 weeks agoФикс по фильтры
fomichev [Fri, 17 Apr 2026 10:48:07 +0000 (13:48 +0300)]
Фикс по фильтры

8 weeks agoФикс по фильтры
fomichev [Fri, 17 Apr 2026 09:40:36 +0000 (12:40 +0300)]
Фикс по фильтры

8 weeks agoФикс по js
fomichev [Fri, 17 Apr 2026 09:23:38 +0000 (12:23 +0300)]
Фикс по js

8 weeks agoФикс по маппингу
fomichev [Fri, 17 Apr 2026 07:26:57 +0000 (10:26 +0300)]
Фикс по маппингу

2 months agoКаталог поставщика
Vladimir Fomichev [Tue, 14 Apr 2026 07:32:43 +0000 (10:32 +0300)]
Каталог поставщика

2 months agoКаталог поставщика
Vladimir Fomichev [Tue, 14 Apr 2026 07:32:34 +0000 (10:32 +0300)]
Каталог поставщика

2 months agofeat(ERP-318): справочник поставщиков — Model + Controller + View + JS
Vladimir Fomichev [Thu, 9 Apr 2026 06:39:09 +0000 (09:39 +0300)]
feat(ERP-318): справочник поставщиков — Model + Controller + View + JS

Реализован CRUD справочника поставщиков с модальными окнами (AJAX),
GridView + PJAX и каскадной деактивацией связанных записей.

Компоненты:
- Supplier (AR модель с TimestampBehavior + BlameableBehavior)
- SupplierSearch (search модель без пагинации)
- SupplierController (AJAX CRUD, наследует BaseController)
- views/supplier/index.php (GridView + модалка + JS)
- views/supplier/_form.php (форма для модалки)
- BuyerReferenceController + view (контейнер с табами)

Бейджи типа и статуса — по UI-guideline из spec-supplier-reference.html.
Валидация: name unique varchar(200), lead_time >= 0, type/currency enum.
Soft delete через is_active=false с каскадом на markings и product_mappings.
Write-операции обёрнуты в DB-транзакции.

Артефакты workflow: docs/jira/ERP-318/

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2 months agoMerge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'
Aleksey Filippov [Thu, 2 Apr 2026 16:11:58 +0000 (16:11 +0000)]
Merge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'

fix(BC-248): защита миграции purchase_date от повторного применения

See merge request gitlab-instance/yii-erp24!1158

2 months agofix(BC-248): защита миграции purchase_date от повторного применения origin/fix_filippov_BC-248_max_chatbot_source
Aleksey Filippov [Thu, 2 Apr 2026 16:11:06 +0000 (19:11 +0300)]
fix(BC-248): защита миграции purchase_date от повторного применения

Проверка наличия колонки через getTableSchema перед ALTER TABLE.

2 months agoMerge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'
Aleksey Filippov [Wed, 1 Apr 2026 16:12:06 +0000 (16:12 +0000)]
Merge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'

feat(BC-248): добавить поле purchase_date в обращения KikFeedback

See merge request gitlab-instance/yii-erp24!1156

2 months agofeat(BC-248): добавить поле purchase_date в обращения KikFeedback
Aleksey Filippov [Wed, 1 Apr 2026 16:08:35 +0000 (19:08 +0300)]
feat(BC-248): добавить поле purchase_date в обращения KikFeedback

- Миграция: колонка purchase_date (date, nullable) в kik_feedback_request
- Модель KikFeedbackRequest: PHPDoc, rules, attributeLabels
- API2 KikController: приём purchase_date из bodyParams
- API3 KikService + FeedbackInput: приём purchase_date, маппинг max_chatbot
- View: отображение "Дата покупки" в карточке обращения

2 months agoMerge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'
Aleksey Filippov [Wed, 1 Apr 2026 14:42:40 +0000 (14:42 +0000)]
Merge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'

fix(BC-248): actionGetStores — вернуть UUID из Products1c вместо числового ID из CityStore

See merge request gitlab-instance/yii-erp24!1155

2 months agofix(BC-248): actionGetStores — вернуть UUID из Products1c вместо числового ID из...
Aleksey Filippov [Wed, 1 Apr 2026 14:41:26 +0000 (17:41 +0300)]
fix(BC-248): actionGetStores — вернуть UUID из Products1c вместо числового ID из CityStore

Max-бот ожидает UUID магазинов (Products1c.id), а не числовой ID из CityStore.
Удалён закомментированный дубликат метода.

2 months agoMerge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'
Aleksey Filippov [Wed, 1 Apr 2026 13:40:14 +0000 (13:40 +0000)]
Merge branch 'fix_filippov_BC-248_max_chatbot_source' into 'develop'

fix(BC-248): добавить источник max_chatbot в маппинг KikFeedback

See merge request gitlab-instance/yii-erp24!1154

2 months agofix(BC-248): добавить источник max_chatbot в маппинг KikFeedback
Aleksey Filippov [Wed, 1 Apr 2026 13:33:38 +0000 (16:33 +0300)]
fix(BC-248): добавить источник max_chatbot в маппинг KikFeedback

Обратная связь из Max-бота записывалась с source=0 (неизвестный)
вместо source=11 (Макс), т.к. маппинг не содержал max_chatbot.