Commit Graph
99 Commits
Author SHA1 Message Date
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor b4ffef9b6f rename: کاریز فروش → مسیر فروش, کاریز پروژه → تابلوی پروژه
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 20:51:50 +03:30
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
MahdiandCursor 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
Mahdi 4c8731122b Add channel to conversation 2026-09-30 11:08:33 +03:30
Mahdi f71e78f3a7 Add mentions, pin messages and conversations, and search within chats 2026-09-30 10:40:29 +03:30
Mahdi 66af7e577c Chat settings in Super Admin and changing the chat title and position. 2026-09-29 14:45:19 +03:30
MahdiandCursor a1655432fc Add internal org chat (phase 1) with DM, groups, and org settings.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 10:34:01 +03:30
Mahdi d2c82f2115 Restore Persian UTF-8 labels in shared package.
Undo double-encoding mojibake so automation and other UI strings render correctly.
2026-09-28 16:18:54 +03:30
Mahdi f20206b045 Connect public lead forms to CRM Leads on submit. 2026-09-28 13:39:44 +03:30
Mahdi 7e73ba9936 Fix web build failure from corrupted Tahesab status types.
Restore MandehValueDto status encoding and derive بس/بد labels from amount.
2026-09-27 21:26:56 +03:30
Mahdi 647503810d Add lead company logos and refine Leads stats cards.
Leads can upload/change/remove a logo shown in the list; stats use fixed stage labels with accurate non-archived counts.
2026-09-27 21:17:42 +03:30
Mahdi ac3ffb8ab2 Promote Leads to a top-level nav hub and expire login OTP after 90s.
Leads items sit under their own hub after Customers; login OTP shows a countdown and returns to the mobile step when time runs out.
2026-09-27 18:00:59 +03:30
MahdiandCursor c079295ff4 Add standalone Leads module for prospect outreach before customers.
Import large Excel lists with duplicate checks, assign and kanban follow-up, convert to Person when ready; also fix OTP mobile mask order and SMS brand name to منتکت.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 17:05:11 +03:30
MahdiandCursor 22980e5152 Add Didar-style conversion rate to sales reports.
Show won-over-incoming deals for the selected period with time, user, and source breakdowns alongside the existing win-rate metric.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 15:36:34 +03:30
MahdiandCursor c5c903d4b4 Add automatic VoIP call summaries and sync progress checklist.
When a PBX webhook includes recordingUrl or transcript, queue STT and AI to create a call_result note; mark API, bulk SMS, WooCommerce, and VoIP as done and defer online payments.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 15:06:41 +03:30
Mahdi c06c92b333 Add deal co-assignees and saved filters on people/pipeline lists.
Deals keep a primary owner plus shared assignees with matching visibility; Contacts and Pipeline can save and reuse filter presets.
2026-09-27 14:25:32 +03:30
Mahdi 00f8b91d78 Add personal/team note visibility and edit history.
Notes can be marked personal or team, with revision snapshots and restore from the notes UI.
2026-09-27 13:19:08 +03:30
Mahdi 55a287563d Add simple report builder with metrics, dimensions, and user/team filters. 2026-09-27 11:54:23 +03:30
Mahdi a16c2f0a9b Add saved report views with personal/org filters and in-org share links. 2026-09-27 11:11:33 +03:30