Skip to main content
#P1603

POST /v2/manual-document/view

Route Info

Method Endpoint Controller
POST /v2/manual-document/view AccountingController@viewManualDocument

شرح عملکرد (Functionality)

این مسیر جهتبرای نمایش جزئیات کامل یک سند دستی (Manual Document) استفاده می‌شود. عملکردپس متد:از دریافت شناسه سند:

  • دریافت شناسه سند از ورودی.
  • فراخوانی تابع کمکی AccountingController::getManualDocumentDetails()id).
  • بازگردانی:استخراج اطلاعات سند شامل:
    • اطلاعات کامل ردیف‌های سند (moeen,Moeen، preference,طرف description,حساب، debit,شرح، credit)بدهکار، بستانکار)
    • گزارش تراز مالیکامل سند تحتشامل: کلید
        balance
      • debit_during_period
      • credit_during_period
      • debit_balance
      • credit_balance
  • درصورتداده‌های وقوعبرگشتی Exception،شامل خروجیکلیدهای خطاdata باو کدbalance 5005 باز می‌گردد.هستند.

پارامترهای ورودی (Request Inputs)

Body (JSON یا Form)Form-Data):

{
  "id": 1524
}
  • id: شناسه رکورد در جدول manual_documents (الزامی)اجباری)

خروجی موفق (Success Response)

پاسخساختار شاملخروجی دوشامل:

بخش
  • data: آرایه کامل آیتم‌های سند (بسته به نوع سند متفاوت است: datadaily_sales, وdaily_credit_debit, manual, opening, closing)
  • balance

    : تراز نهایی سند
{
  "status": true,
  "time": 1718450000,
  "data": [
    {
      "moeen": {
        "id": 1102,
        "title": "بانک ملت"
      },
      "preference": {
        "id": "colleague-5421",
        "title": "علی رضایی"
      },
      "preference_2": false,
      "preference_3": false,
      "preference_4": false,
      "description": "سند دستی 3125 | پرداخت نقدی",
      "credit": 0,
      "debit": 2500000
    }
  ],
  "balance": {
    "debit_financial_past": 0,
    "credit_financial_past": 0,
    "debit_start_period": 0,
    "credit_start_period": 0,
    "debit_during_period": 2500000,
    "credit_during_period": 0,
    "debit_finish_period": 2500000,
    "credit_finish_period": 0,
    "debit_balance": 2500000,
    "credit_balance": 0
  }
}

خروجی خطا (Error Response)

در صورت وقوع Exception:هرگونه Exception، ساختار خطا به شکل زیر بازگردانده می‌شود:

{
  "status": false,
  "time": 1718450000,
  "code": 5005,
  "message": "SQLError errormessage message....",
  "trace": [ ... ]
}

نکاتخلاصه منطق داخلی (Internal Logic Notes)getManualDocumentDetails

  • getManualDocumentDetails() 

    بسته به نوع سند:

    • daily_sales: محاسبه از جداول فاکتور و پرداخت‌ها
    • daily_credit_debit: ترکیب اقلام پرداخت و بدهکار/بستانکار
    • manual: لیست ردیف‌های pays با group = id
    • opening / closing: استخراج اقلام افتتاحیه/اختتامیه
    ساختار
    خروجی

    در متفاوتیپایان:

    تولید
    می‌کند.
    • ذخیره گزارش تراز سند در Redis ذخیرهبا می‌شود:کلید:
      documents:balance_report:{id}
    • برگشت:
      { data: [...], balance: {...} }