Commit Graph
186 Commits
Author SHA1 Message Date
mohmdsdgandCursor 0b1e5c687b feat(order): wait for colleague callback before settling wallet
Keep cover orders pending until colleague sts 2/4/6 via callback or 35s poll. Nightly prices:prune also drops old log tables.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:55:03 +03:30
mohmdsdg e9674d6571 fix some bugs 2026-09-02 11:38:57 +03:30
mohmdsdgandCursor 91a2dab440 fix(sms): keep charge deposit defaults and unlock referral bonus
Empty SuperAdmin chargeInfo was wiping sms_charge_* on header refresh.
Seed those keys only when empty, and move referral_bonus_amount to can_edit=1.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 21:38:19 +03:30
mohmdsdgandCursor e27a8ac397 fix(zarin): post rial wallet docs as cash via payment, not pooli buy-fi
Zarin kind=payment creates type 55 cash-only rows; it needs zarin_idbank as the counterpart account.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 16:51:16 +03:30
mohmdsdgandCursor 4c2200a0e0 Widen order price columns so current gold rial quotes persist.
Gold gram prices now exceed the old DECIMAL/INT range and MySQL 1264 aborted buys; store money fields as DECIMAL(20,4) and hide the raw SQL error from the app.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 16:14:02 +03:30
mohmdsdgandCursor 142cfd7661 fix(price): read last quote and daily extremes from the active provider
A stray montzar tick landed in the prices table, which stores no source, so
the database_last fallback served a ~168M quote on a shop whose Zaarbox board
was at ~217M. Last price and today's high/low now come from price_sync_logs
filtered by price_provider, the database fallback no longer counts as today's
price, and daily extremes reset when the provider changes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 09:45:37 +03:30
mohmdsdg 283f17561c added some feature for accounting and enhance performance for dashboard 2026-08-30 20:18:48 +03:30
mohmdsdgandCursor 050bd26318 Add gold credit feature gated by SuperAdmin enable_gold_credit.
Port tables, APIs, and overdue cron from goldali, default the flag off, and keep customer routes behind auth.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-30 00:17:01 +03:30
mohmdsdg 6b5b490e2b added accounting failing handles 2026-08-27 16:16:20 +03:30
mohmdsdgandCursor 885ed33e6e feat(accounting): document colleague trades on configured accounts
Post Montzar-covered buy/sell to Zarin/Tahesab/Pargar using montzar_account_* settings, and harden public storage URL/MIME handling for uploads.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 16:59:27 +03:30
mohmdsdg ad78545ebd update setting 2026-08-26 12:56:57 +03:30
mohmdsdgandCursor 793c8cd9ed fix(settings): expose SuperAdmin feature flags to customer get_settings
Menu gates like enable_product_funds were missing from the public API, so the user app could not hide disabled features.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 14:19:22 +03:30
mohmdsdgandCursor 8984899042 fix(settings): push trading-hours changes to live user prices immediately
Recompute home price display on save, broadcast settings over SSE, and keep last-price status in sync without a user refresh.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:29:00 +03:30
mohmdsdgandCursor 1c8ab4b725 feat(schedule): add schedule:bootstrap and minute-precise automation runs
Install per-module schedule:run cron from artisan, store sms/in_app send minutes, and match scheduled triggers at exact HH:mm Tehran time.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-24 22:13:06 +03:30
mohmdsdg 571cd0ebea fix enamad 2026-08-24 18:17:47 +03:30
mohmdsdgandCursor dd9a287f24 fix(settings): expose about_software and enamad_url to user get_settings
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-24 17:00:18 +03:30
mohmdsdgandCursor 352bb9976d feat(settings): enable_automation gate; reject stale montzar quote jumps
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-24 16:15:52 +03:30
mohmdsdgandCursor b28a98938e feat(settings): add menu/show_to_user and public get_settings for client apps
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-24 15:32:35 +03:30
mohmdsdg 657c10d1cc added automation 2026-08-23 14:16:00 +03:30
mohmdsdg 89014821c5 fix all error 3 2026-08-22 16:50:49 +03:30
mohmdsdg 7d1f8958e5 fix hamkar table 2026-08-20 15:52:42 +03:30
mohmdsdgandCursor 924234bb19 fix(settings): PHP sync for runtime can_edit after deploy
Force can_edit=1 for Montzar/price runtime keys via settings:deploy
and settings:sync-runtime-can-edit, so tenant DB stays correct even
when an older deploy SQL is still on the server.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 21:07:12 +03:30
mohmdsdgandCursor b7eed369c6 fix(settings): force can_edit=1 for runtime keys in API and DB writes
editable_only now includes RUNTIME_KEYS; normalize can_edit in responses.
UpdateConfig and montzar login persist can_edit=1. SQL override moved before COMMIT.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 20:15:28 +03:30
mohmdsdgandCursor 027170a33f fix(settings): fee only from fee_service_charge_percentage; deploy:tenant
Remove service_charge_percentage alias and config/fee.php fallback (empty → 0).
Move code-managed Montzar/price runtime keys to can_edit=1 in deploy SQL.
Add settings:deploy and deploy:tenant artisan commands for server deploy.
Advanced admin settings merge runtime keys from local DB; block manual edits.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 19:55:29 +03:30
mohmdsdgandCursor 832a7683fb fix(migration): parse error in show_in_list COMMENT SQL string
Use double-quoted PHP string for Persian COMMENT; '' is SQL escaping, not valid inside PHP single quotes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 14:16:46 +03:30
mohmdsdgandCursor a321ebdaad feat(product): add show_in_list toggle and TV price formula
- New `show_in_list` column to control product visibility in customer list
- New `tv_price_formula_enabled` + `tv_price_formula` columns for separate TV pricing
- FormulaPriceService: isTvEnabled() and calculateTvForProduct()
- listTvProducts applies TV formula overrides before returning
- filterProductData handles both new field sets

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 11:51:54 +03:30
mohmdsdgandCursor b0296c6e94 feat(server): evaluate price alerts per product and fix gold discharge rounding
Alerts now bind to a product_id and share one evaluator; displayed gold within a rounding step discharges the full wallet.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-18 22:23:20 +03:30
mohmdsdgandCursor 351510d500 chore(server): add helper script to run deploy_settings_const.sql
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-18 17:57:22 +03:30
mohmdsdgandCursor e158831fd3 feat(server): add show_on_tv product flag and public /tv products API
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-18 17:17:01 +03:30
mohmdsdgandCursor 7d405cb83b feat(server): store and apply negative special price profits
Keep signed buy/sell extras so discounts work on quotes and orders, and ignore the nested user clone in this repo.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-17 13:11:00 +03:30
mohmdsdg bd8284e4f8 added setting for user 2026-08-16 22:00:23 +03:30
mohmdsdg acd1c2ea20 added table of co-woeker requests and new features 2026-08-16 20:03:18 +03:30
mohmdsdg d651ff9d6c fix dome bugs 2026-08-15 18:22:58 +03:30
safavimohadeseh78andCursor 4468eabd03 Add referral_show setting and keep existing setting values intact.
Allow hiding the referral field on user registration via settings SQL and ConfigService, and document SQL-only Cursor rules that never overwrite live values.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-11 08:26:13 +02:00
mohmdsdgandCursor 279e4bc881 Enable gated multi-level referral profit and harden chat/SMS notify paths.
Honor enable_customer_level_profit for order referral payouts, and tighten support-chat webhook/SMS plus SuperAdmin SMS panel sync settings.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 16:48:53 +03:30
mohmdsdgandCursor f421fcb83f Add formula-based product pricing (P/W/MG) for Parsian-style unit prices.
Port FormulaPriceService from colleague app so admins can compute a single unit price from reference mid, weight, and wage instead of offset coefficients.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 16:47:29 +03:30
mohmdsdg f42ae09d14 fix support issue 2026-08-05 12:56:52 +03:30
mohmdsdg bfb8b91133 added trigger for chat sms 2026-08-04 18:59:38 +03:30
mohmdsdg d360539208 fix title 2026-08-03 11:51:16 +03:30
mohmdsdg ef32046e85 بهط شیی 2026-08-02 14:00:00 +03:30
mohmdsdg eaff9dead2 added gholak 2026-08-01 17:30:14 +03:30
mohmdsdg 9642e603e7 fix some show 2026-08-01 16:47:26 +03:30
mohmdsdg 2d713ce592 Merge remote-tracking branch 'origin/montify' into Abshode_Khanegi 2026-08-01 15:52:17 +03:30
mohmdsdg 87f0e2beed fix pargar and login 2026-08-01 14:04:01 +03:30
mohmdsdg 6e75b9632b added chat 2 2026-07-30 20:42:56 +03:30
mohmdsdg abb778e090 added chat 2026-07-30 15:46:11 +03:30
mohmdsdg f921e97466 fix description 2026-07-29 21:46:48 +03:30
mohmdsdg e8651135d1 added button for site 2026-07-29 20:21:06 +03:30
mohmdsdg dd77e2ce81 fix some bugs from tahesab 2026-07-29 14:58:33 +03:30
mohmdsdg 77e0ba0bb3 fix some bugs from accounting 9 2026-07-28 21:57:29 +03:30