Skip to main content
#P1558

GET /api/v2/tasks/list

Route Info

Method Endpoint Controller @ Method Middleware
GET /api/v2/tasks/list OfficialController@listTasks authWithJwt

معماری و منطق پردازش (Processing Logic)

این متد لیست وظایف را دریافت کرده و برایبا تکمیلاستفاده از دو تابع کمکی، اطلاعات (Data Hydration)، توابع کمکی استاتیکآن را روی نتایج اجراتکمیل می‌کند:

  1. واکشی اطلاعاتشناسایی اپراتورها (Operator Resolution):
    فراخوانی متد StaticController::getOperators فراخوانی می‌شود.. این تابع،تابع شناسه (ID) یا آرایه‌ای از شناسه‌هاورودی را دریافتاستاندارد کرده و خروجیاز جدول operators اطلاعات را بهمی‌خواند. صورت یک لیست برمی‌گرداند کهخروجی شامل:
    • فیلد text: (ترکیب شناسه پرسنلی و نام.نام برای نمایش).
    • آبجکت query: تمام (جزئیات رکوردکامل جدول operatorsدیتابیس).
  2. بررسیمدیریت اتصال به رفرنساتصالات (Connection Hydration):
    اگر تسک دارایبه اتصالجایی متصل باشد، متد OfficialController::getConnection اجرا می‌شود. برای نوع reference، سیستم ابتدا کش Redis را بررسیچک می‌کند. اگر اطلاعاتدیتا موجودنبود، نباشد،تابع متدمالی TradeController::financial اجرا شده و نتیجه کش (Cache) می‌شود.

ساختار پاسخ (Response Structure)

خروجی زیر دقیقاً بر اساس کدهای getOperators و getConnection تولید شده است:

{
  "status": true,
  "time": 1732047000,
  "data": [
    {
      "id": 105,
      "title": "Sampleپیگیری Taskرفرنس Title"۱۲۵۰",
      "category": {
        "id": 12,
        "title": "Development"مالی"
      },
      
      // GeneratedCreated by StaticController::getOperators
      "user": [
        {
          "id": 50,
          "text": "10050 - Ali Mohammadi",
          "query": {
            "id": 50,
            "sex": "male",
            "first_name": "Ali",
            "last_name": "Mohammadi",
            "telegram": "ali_dev",
            "group": "IT",
            "avatar": "path/img.jpg",
            "position": "Developer",
            "personnel_id": "10050"
          }
        }
      ],

      // GeneratedCreated by StaticController::getOperators
      "operators": [
        {
          "id": 51,
          "text": "10051 - Reza Alavi",
          "query": {
            "id": 51,
            "sex": "male",
            "first_name": "Reza",
            "last_name": "Alavi",
            "telegram": "reza_acc",
            "group": "Accounting",
            "avatar": null,
            "position": "Accountant",
            "personnel_id": "10051"
          }
        }
      ],

      // GeneratedCreated by OfficialController::getConnection (Redis + TradeController)
      "connection": [
        {
          "id": 2050,
          "type": "reference",
          "title": "Redisتور Cachedکیش Title"- هتل داریوش",
          "financial": {
             "total_price": 50000000,
             "paid": 20000000,
             "remaining": 30000000,
             "status": "debtor"
          }
        }
      ],

      "priority": 1,
      "order": 0,
      "description": "Task description details...",
      "deadline": "2025-02-20",
      "status": 1,
      "created": "2025-02-18 10:30:00"
    }
  ]
}