Mahdi and Cursor
2ff35e55fc
feat(tahesab): net sales by factor, group, and commission
...
Report weight after returns for the selected period, with parent customer groups and separate silver and investment commission.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-26 11:05:34 +03:30
Mahdi
f50246dc46
feat(tahesab): PDF invoice export for asnad cards
...
Add per-document PDF print from account details, plus org invoice settings for logo and texts separate from CRM invoices.
2026-10-24 12:34:02 +03:30
Mahdi
ade43fea0f
feat(tahesab): sales report snapshot with org-module gate
...
Sync linked asnad into CRM, filter by group/kind/metal, and require the tahesab superadmin module plus reports role access.
2026-10-22 18:20:46 +03:30
Mahdi
65cf4e9a66
feat(auth): allow owner to force OTP-only login per user
...
Team menu «ورود با کد» blocks password login with a clear message and switches the login screen to OTP.
2026-10-22 15:43:24 +03:30
Mahdi
09a60b3b5a
feat(acl): deep data access by section for roles and users
...
Role default + user override with OR rules; covers customers, leads, sales, activities, notes, routines, projects, and tickets.
2026-10-22 11:53:26 +03:30
Mahdi
29d99cbded
feat: customer groups for people and companies with tahesab group sync and bulk register
...
Multiple groups per contact, legacy group text migrated, excel import/export, contacts filter and column, richer create-in-tahesab, match-first bulk export
2026-10-21 17:16:31 +03:30
Mahdi
ce27df20ca
feat: compact logout-time cell and optional login block after logout time
...
Owners set the daily logout time in a modal and can block re-login until the next Tehran day.
2026-10-21 14:20:15 +03:30
Mahdi
7ae6a5837a
feat: enforce role section permissions and add a leads permission
...
Unticking a section hides it from the menu, closes its routes and blocks its writes on the server; existing roles keep their current access via migration.
2026-10-21 13:45:16 +03:30
Mahdi
e6aa4c64f0
feat: group activities into boards with their own stages, like sales pipelines
...
Existing stages and activities move into a default board per environment; new activities pick a board in the form.
2026-10-20 17:23:27 +03:30
Mahdi
f5d68d83fc
feat: add per-org SMS wallet with adm panel and header credit
...
Bill all platform SMS (including OTP), allow negative balance with manual/auto cutoffs, and support own-panel bypass without wallet debit.
2026-10-19 15:55:48 +03:30
Mahdi
8590579605
feat: log staff sign-in and sign-out and force logout at a set time
2026-10-19 13:34:55 +03:30
Mahdi and Cursor
002f697dfe
feat: add DISC profiles and a sales copilot as an org module
...
Help reps capture a customer's likely behavior style and get negotiation guidance, with the feature gated from super admin.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-18 21:04:26 +03:30
Mahdi and Cursor
96befd3867
feat: add treasury audit, attachment download, and installment SMS
...
Let cheque clearance pick a cash account and export income, expense, and installment lists to Excel.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-18 19:59:24 +03:30
Mahdi and Cursor
8981a552fc
feat: gate treasury as an org module and group money inputs
...
Link optional invoice and cheque settlements to cash accounts, and let superadmin enable the finance module per organization.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-18 19:33:09 +03:30
Mahdi and Cursor
ab538b8304
feat: add internal finance ledger for accounts, claims, and payroll
...
Keep booked income and expense separate from cash balances, with installments, recurring items, and reports.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-18 18:49:49 +03:30
Mahdi and Cursor
23f8da2c65
feat: log outbound SMS and show history in compose modal
...
Persist manual, campaign, and automation SMS; expose history APIs for people and leads.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-17 21:23:07 +03:30
Mahdi and Cursor
d62e004e90
feat: SMS campaigns for people or leads with filters and batching
...
Add audience tabs, province/city filters, select-all ids, dynamic SMS tokens, and 50-sized create/send chunks.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-17 20:54:32 +03:30
Mahdi and Cursor
f7b07f6b7a
feat: owner read-only view-as from team users table
...
Allow org owners to inspect any member's data scope via dual JWT; server blocks mutations and team page stays reachable for return.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-17 19:57:26 +03:30
Mahdi
a04743c6df
feat: add prior-archive promote fields and shared cutoff DTOs
2026-10-17 16:27:29 +03:30
Mahdi and Cursor
6bc5e1bec7
feat: separate prior records behind an owner switch and count last-period questions
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-15 10:48:30 +03:30
Mahdi and Cursor
831c682eb3
feat: show the full work history and load every lead stage on the board
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-14 19:47:32 +03:30
Mahdi and Cursor
2cc81bb596
feat: keep deletions restorable and confirm a pipeline's deals before it is removed
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-13 22:23:09 +03:30
Mahdi and Cursor
cf326d1ed9
fix: keep birthdays and show Shamsi dates
...
Imported customers keep their birthday, and assistant text plus remaining calendars use the Jalali date.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-13 18:04:53 +03:30
Mahdi and Cursor
fd8966e13f
feat(pipelines): merge stage-map util and shared DTOs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 20:15:11 +03:30
Mahdi
b43ed68e82
feat(automations): multi-option form-field conditions (all / any / none / exact)
2026-10-11 17:26:17 +03:30
Mahdi
17638786a8
feat(automations): parallel branch canvas, simple/advanced level per org, rules list UX
2026-10-11 14:48:12 +03:30
Mahdi
b3b92abae9
feat(automations): form-driven branching rules, round-robin assignment, lead-linked activities
2026-10-11 14:12:36 +03:30
Mahdi and Cursor
60d797f184
feat: باشگاه امتیازات کارکنان (موتور امتیاز، جدول رتبه، فروشگاه پاداش، نشانها، پنل مدیریت و گزارش ROI)
...
- موتور رویدادمحور با شرط، محدودیت، تأیید مدیر و idempotency
- اتصال به لید، مشتری، معامله، فعالیت، روتین، پیشفاکتور، فاکتور و تیکت
- صفحه /club و /club/admin، اعلان زنده امتیاز، آیتم منو
- انتقال فرمساز سرنخ به ابزارها
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-10 21:28:49 +03:30
Mahdi
b87ebb22e0
Montify: robust pagination (beyond 50), endpoint diagnose button
2026-10-10 18:01:55 +03:30
Mahdi
e82bd2b2df
Montify stores integration: multi-store connections, customer/order/transaction sync, webhooks
2026-10-10 15:59:12 +03:30
Mahdi and Cursor
e6755d0c2e
Tahesab: show raw data from Tahesab, invoice-style document view with metal labels
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-08 13:49:54 +03:30
Mahdi and Cursor
13668c4ba4
feat(activities): split customer column, wider search, custom activity types with type-specific fields
...
- Table: separate assignee and customer columns; search by assignee and activity type
- ActivityTypeDef model with per-type field definitions (text, select, checklist, participants, ...)
- Default types incl. meeting subject/participants and task checklist; admins manage types
- Participants see activities in their lists and get notified
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-07 12:29:23 +03:30
Mahdi and Cursor
aa2f39256a
feat(activities): editable stages with tab and kanban views
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-07 11:18:53 +03:30
Mahdi and Cursor
b4ffef9b6f
rename: کاریز فروش → مسیر فروش, کاریز پروژه → تابلوی پروژه
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-06 20:51:50 +03:30
Mahdi and Cursor
b3784818fc
feat: routines module; super admin subscription badge, 7-day trial and lifetime plan
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-06 19:54:38 +03:30
Mahdi
2a2728e5ee
Deals Excel import/export aligned with Didar: browser-side import, new deal fields (code, probability, closedAt, creator, lostNote, referrer), Didar custom fields
2026-10-06 16:36:04 +03:30
Mahdi
e08f1452ef
Unified search algorithm across all lists; per-section record visibility (contacts, deals, activities, leads, finance, tickets, notes, projects)
2026-10-06 15:04:46 +03:30
Mahdi
bc01384551
Fix error sending reminder SMS
2026-10-06 13:49:03 +03:30
Mahdi
f71f09c85d
Align companies with the Didar export: new fields, Didar-format Excel import/export, and people linked to companies by Didar code
2026-10-06 12:25:20 +03:30
Mahdi and Cursor
46dcf296d3
Keep previous import source and code when a person is re-imported from another source
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-05 20:54:23 +03:30
Mahdi and Cursor
75ff2c36c4
Allow editing org team member name, mobile, and password from settings.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-04 12:31:07 +03:30
Mahdi and Cursor
8b37525f2f
Track person import source and previous names; add source report and edit UX.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-04 12:01:21 +03:30
Mahdi and Cursor
ac57b8ac33
Parse large Excel imports asynchronously to avoid gateway 502 timeouts.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-03 18:14:17 +03:30
Mahdi
2e315c9cfd
Fixing the error when importing a large Excel file
2026-10-03 15:01:01 +03:30
Mahdi
3b128bd980
Selection of multiple officials and role sub-categories
2026-10-03 13:16:13 +03:30
Mahdi
1309da2281
Adding registration date and multiple addresses for contacts and leads.
2026-10-03 12:29:11 +03:30
Mahdi
5d5b3a3213
Implementing a link tracking and user click logging system.Implementing a link tracking and user click logging system.
2026-10-01 15:59:18 +03:30
Mahdi
ae21d9bbc7
Addition of an AI chat assistant and a 100MB file upload limit.
2026-09-30 16:30:41 +03:30
Mahdi
75b83b7f1b
Edit text and links, mute and unmute chat
2026-09-30 14:58:44 +03:30
Mahdi
e1d456ad11
Adding the typing... indicator, loading older messages, and managing members/admins after creation.
2026-09-30 11:53:04 +03:30