- CRM: configurable pipeline (default: New → Contact → Meeting → Negotiation → Connected / Lost), drag-and-drop board, lead card with call/meeting/note history, photos and files, tasks with Telegram reminders at the due time, map of venues (OpenStreetMap via Leaflet), lost reason. Sales reps see only their own leads. - "Connected" in one click: a venue becomes a club card partner with a one-time owner link to the work bot; an agency gets a code and a client link. The sales rep is recorded on the partner for the bonus. - Sales bonus formula in settings (per venue, per agency, % of revenue from the rep's agency clients for N months); defaults are 0 until the owner sets them. - Agencies (superadmin): clients, gift subscriptions, reward by month, payouts, client link, edit. Venues: offers by membership level (5 languages), staff, card checks, 8-week activity, owner link, map point. - Schema: SalesStage/SalesLead/SalesActivity/SalesTask; salesId on Agency and Partner; lat/lng/phone/note on Partner; agencyId on Payout. - Tests for stage rules, conversion, task reminders and bonus; dev:crm-demo. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
32 lines
775 B
JSON
32 lines
775 B
JSON
{
|
|
"name": "@barev/backoffice",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite --port 5176 --strictPort",
|
|
"build": "vite build",
|
|
"preview": "vite preview --port 5176",
|
|
"typecheck": "tsc --noEmit"
|
|
},
|
|
"dependencies": {
|
|
"@barev/i18n": "workspace:*",
|
|
"@barev/ui": "workspace:*",
|
|
"@barev/web": "workspace:*",
|
|
"@tanstack/react-query": "^5.104.0",
|
|
"leaflet": "1.9.4",
|
|
"qrcode": "^1.5.4",
|
|
"react": "^19.2.0",
|
|
"react-dom": "^19.2.0"
|
|
},
|
|
"devDependencies": {
|
|
"@barev/api": "workspace:*",
|
|
"@types/leaflet": "^1.9.22",
|
|
"@types/qrcode": "^1.5.6",
|
|
"@types/react": "^19.2.0",
|
|
"@types/react-dom": "^19.2.0",
|
|
"@vitejs/plugin-react": "^6.0.0",
|
|
"vite": "^8.0.0"
|
|
}
|
|
}
|