Files
boursecu_server/.cursor/skills/abshode-domain-lookup/learned-notes.md
T
safavimohadeseh78andCursor e0216d35a6 fix(shayegan): return the document list in the shared table shape
The admin table expects rows and query from TableEngine instead of a custom page payload.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-11-02 13:24:01 +03:30

7.3 KiB

یادداشت‌های یادگیری — abshode-domain-lookup

فرمت هر خط:

  • YYYY-MM-DD | موضوع | مسیر فایل(ها) | نکتهٔ ۱ خطی

  • 2026-11-02 | جدول اسناد شایگان | shayeganTable.vue + ShayeganController::table | BaseTable؛ پاسخ بدون query را خود فرانت به {rows,query} برمی‌گرداند. ستون عملیات ops است تا در RTL هشدار fixed ندهد

  • 2026-11-02 | ویرایش کد حسابداری شایگان | CustomerAccountingCodeModal.vue | provider شایگان هم moshtari_code ذخیره می‌کند؛ قبلاً فقط پرگار/ته‌حساب/زرین قبول می‌شد و پیام «حسابداری فعال نیست» می‌آمد

  • 2026-11-02 | مشتری تفصیلی شناور | ShayeganSyncService::registerCustomer → Job/Put | معین 12101 حساب جدا نمی‌سازد؛ JobNumber = معین+کد (12101530). گروه: setting shayegan_job_group

  • 2026-11-02 | دیباگ تبادل شایگان | ShayeganClient::request + registerCustomer / health / retry | پاسخ ادمین client_request و server_response دارد؛ رمز DB و Auth برابر ***

  • 2026-11-02 | سه سطح شایگان | ShayeganSyncService::registerCustomer + migration 2026_11_02_000001 | کل 121، معین 12101، تفصیلی = معین+کد کاربری (12101530). 1210101 غلط است

  • 2026-11-01 | پیامک تبدیل | CopperConvertRequestService::notifyCustomer | بعد از تأیید یا رد، پیامک جدا به موبایل مشتری؛ خطا پیامک سفارش را برنمی‌گرداند

  • 2026-11-01 | درخواست تبدیل مس | CopperConvertRequestService + copper_convert_requests + POST customer/copper-convert-request + admin/copper-convert-request/{id}/approve | تأیید = فروش دارایی و خرید حلقه با quote_unit_price؛ مهاجرت 2026_11_01_000001

  • 2026-10-28 | شایگان کالا/مشتری | products.shayegan_item_number + ShayeganSyncService::registerCustomer Account/Put + ensureCustomerAccountNumber | بانک 10001 و معین 12101 در settings؛ ItemNumber per-product

  • 2026-10-17 | لاگ ترافیک شایگان | ShayeganClient::request | Log::info با کلید shayegan.http_request / shayegan.http_response; رمز ***; خاموش: setting shayegan_log_traffic=0

  • 2026-10-17 | گروه شایگان در تنظیمات پیشرفته | settingGroups.resolveSettingMenu + migration 2026_10_17_000001 | اگر menu=misc ولی کلید shayegan_* → گروه accounting_shayegan؛ نه «سایر»

  • 2026-10-19 | Auth وب‌سرویس شایگان | shayegan_auth_user / shayegan_auth_password | کاربر وب جدا از sa؛ Domain خالی باید JSON {} باشد نه []

  • 2026-09-06 | گیفت‌کارت | database/migrations/2026_09_06_000001_create_giftcards_tables.php | create جداول giftcards و giftcard_codes اگر نباشند؛ drop در down ندارد

  • 2026-09-08 | خطای «محدودیت فیلد قیمت» در گیفت‌کارت | app/Exceptions/Handler.php + GiftCardController::redeem | پیام عمومی MySQL ۱۲۶۴ (Out of range) است؛ معمولاً amount/total=count*amount از ظرفیت ستون بیشتر است، نه باگ فرم ادمین

  • 2026-09-08 | widen مبلغ گیفت‌کارت | migrations/2026_09_08_000001_widen_giftcard_amount_columns.php + deploy_safe_schema.sql | amount/total → DECIMAL(20,4) تا مبالغ ≥۱۰۰ میلیون ریال جا شود

  • 2026-09-08 | لیست گیفت کاربر | GiftCardController::mine + GET customer/giftcard/mine + GiftCardCodes::giftcard | available=اختصاصی+عمومی تک‌کد use_once=0؛ history از assigned_to

  • 2026-09-09 | «کد قابل استفاده» خالی در اپ | routes/customer.php + GiftCardController::mine | مسیر GET customer/giftcard/mine هنوز کامیت/دیپلوی نشده؛ سرور واقعی ۴۰۴ می‌دهد (use و me → ۴۰۱) پس لیست همیشه خالی است

  • 2026-09-09 | کارت هدیه فلزی | GiftCardController::useGiftCard | unit=2 دیگر «در دست ساخت» نیست؛ شارژ gold کیف اصلی + سینک ته‌حساب/زرین/پرگار؛ used_count فقط بعد از موفقیت

  • 2026-09-12 | واریز کیف‌پول + هدیه ریالی | Withdraw::scopeDeposits | note«کارت هدیه» با cash>0 در لیست واریز می‌آید؛ هدیه مسی (فقط gold) نه

  • 2026-09-12 | پیامک کارت هدیه | GiftCardController::useGiftCard | پسوند SMS: ریالی→«قلک ریال»، فلزی→«قلک مس» (نه name_fa / قلک طلا)

  • 2026-09-16 | تعداد کد هدیه | GiftCardController::redeem | count=N → یک رکورد giftcards با count=N + N ردیف giftcard_codes؛ مثل storeRedeem

  • 2026-09-12 | انقضای کارت هدیه | GiftCardController::validateGiftExpiryDate + GiftCardEditorFormBody | تاریخ قبل از امروز → ۴۰۰ / خطای فرم؛ امروز مجاز

  • 2026-09-09 | رمز ادمین ≠ لاگین اپ | Customer::setPasswordAttribute + AuthController + updateAdmin | قبل از هش/لاگین ارقام فارسی→انگلیسی؛ jwt hash=false؛ آنلاین فقط password غیرخالی بفرست

  • 2026-10-20 | خرید اقساطی دیجی‌پی | DigipayInstallmentService + جداول digipay_credits/digipay_orders + migration 2026_10_20_000002 | فلگ پیش‌فرض خاموش؛ اعتبار را ادمین ست می‌کند نه وب‌هوک دیجی‌پی

  • 2026-10-20 | دسترسی صفحات مدیر | users.page_access + AdminPageAccess + ادمین adminPageAccess.ts / ویرایش مدیران | null=کامل؛ درخت مشاهده/ویرایش/حذف؛ ورود=اولین صفحه مجاز؛ منوی ممنوع=«شما به این صفحه دسترسی ندارید»

  • 2026-10-20 | ویرایش/حذف کارت هدیه | GiftCardController::update/destroy + giftCards/components/table.vue | PUT/DELETE /admin/giftcard/{id}؛ کارت استفاده‌شده حذف نمی‌شود و مقدار/تعدادش عوض نمی‌شود

  • 2026-10-20 | دکمه ویرایش/حذف گیفت | allowsPageFlag + giftCards/components/table.vue | بدون edit/delete روی giftCardMain دکمه و دیالوگ باز نمی‌شود

  • 2026-10-20 | دسترسی عملیات جدول | PAGE_TABLE_ACTIONS + usePageActionAccess + AdminPageAccess::ACTIONS | هر صفحه فقط عملیات ستون خودش؛ مشاهده جدا؛ رکورد قدیمی بدون actions ویرایش/حذف را از همان فیلد و بقیه را از مشاهده می‌گیرد

  • 2026-10-20 | چیدمان درخت دسترسی | users/components/ManagerPageAccessTree.vue | هر صفحه یک کالپس؛ وضعیت روی هدر؛ عملیات جدول داخل همان صفحه

  • 2026-10-20 | مشخصات کارت هدیه | giftCards/index.vue تابع info | کدهای یکتا در مودال مشخصات نیست؛ همان جدول کدها

  • 2026-10-20 | کپی کد هدیه | giftCards/components/GiftCardCodesSheet.vue | کنار کد هر ردیف آیکون کپی؛ پیام «کد کپی شد»