zov-tech/miniapp/assets
wasrusgen 3e7ae7764a feat(assembly): configurable assembly rates + admin panel
Backend:
- Sheet "Assembly_Rates": rules by assembler_tg_id + scope
- _resolve_rates(): priority matching (specific > wildcard)
- Default: client 10%, assembler 9% (1% margin)
- _calc_assembly_prices(): role-aware field set in detail API
- Endpoints: assembly_rates_list, assembly_rate_save, assembly_rate_delete
- Cache TTL 120s, auto-seeded default rule on first run

Frontend:
- assembly_detail.js: shows client rate %, assembler payout % (role-aware)
- admin_rates.js: list/add/edit/deactivate rules with live margin preview
- app.js: route #/admin/rates + "Ставки сборки" button in manager dashboard

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 09:20:03 +03:00
..
admin_rates.js feat(assembly): configurable assembly rates + admin panel 2026-05-19 09:20:03 +03:00
app.js feat(assembly): configurable assembly rates + admin panel 2026-05-19 09:20:03 +03:00
assembly_detail.js feat(assembly): configurable assembly rates + admin panel 2026-05-19 09:20:03 +03:00
assembly.js fix: Content-Type: application/json во всех fetch-хелперах 2026-05-18 13:35:20 +03:00
cabinet.js feat: детальная карточка сборки + цена замера везде 2026-05-18 15:35:21 +03:00
clients.js fix: таймаут 15с на все fetch в clients.js — кнопки больше не висят 2026-05-18 08:35:42 +03:00
icons.js feat(miniapp): «Подбор техники» screen — 7-step picker (categories/niches/budget/infra/scenario/brands/summary) wired to /api/podbor 2026-05-09 13:34:46 +03:00
inbox.js fix: Content-Type: application/json во всех fetch-хелперах 2026-05-18 13:35:20 +03:00
master_tools.js feat: add MasterTools assembler cheat-sheets (#/master/tools) 2026-05-18 23:43:23 +03:00
me.js refactor: аудит роутера app.js — устранены 3 edge case 2026-05-18 13:39:23 +03:00
measurements.js fix: Content-Type: application/json во всех fetch-хелперах 2026-05-18 13:35:20 +03:00
orders.js feat: детальная карточка сборки + цена замера везде 2026-05-18 15:35:21 +03:00
platform.js feat: platform.js — адаптер Telegram WebApp для миграции на VK Max 2026-05-18 18:06:03 +03:00
podbor.config.js simplify: remove 'features' step from all 8 categories 2026-05-11 23:37:41 +03:00
podbor.css fix(podbor): HTML AI output + home button on all steps 2026-05-19 08:02:09 +03:00
podbor.js feat(podbor): copy report as plain text for messengers 2026-05-19 08:32:52 +03:00
podbor.picts.js measurements: kitchen layout wizard + 5 layout pictograms + profile integration 2026-05-12 17:41:01 +03:00
proposals.js fix: Content-Type: application/json во всех fetch-хелперах 2026-05-18 13:35:20 +03:00
request.js feat: заявка на замер — поиск по клиентам + передача менеджеру 2026-05-18 23:32:16 +03:00
selfmeasure.js feat: детальная карточка сборки + цена замера везде 2026-05-18 15:35:21 +03:00
signrequest.js feat: SignRequest — цифровая подпись акта сборки (ФЗ-63 ПЭП) 2026-05-18 23:12:34 +03:00
styles.css feat: SignRequest — цифровая подпись акта сборки (ФЗ-63 ПЭП) 2026-05-18 23:12:34 +03:00
wasrusgen-logo.svg splash: точный viewBox + цвет blue-grey #2C3E50 2026-05-13 22:15:01 +03:00
zamer-checklist.md feat: SVG-пиктограммы схем замера в чек-листе 2026-05-15 23:21:33 +03:00
zamer-picts.js fix: remove stray closing brace in zamer-picts.js that crashed MiniApp 2026-05-16 10:41:10 +03:00
zov-logo.svg bot: role buttons → MiniApp directly + branded splash loader 2026-05-12 18:54:09 +03:00