Skip to main content
#P1765

RESOURCE /v2/scrumboard/sprint_reports


Sprint Report Hydration Logic

گزارش‌های اسپرینت، زیرمجموعه‌ای از اسپرینت‌ها هستند و منطق Hydration ساده‌ای دارند. در تمام متدها، پس از دریافت داده‌های گزارش، سیستم فقط اطلاعات اپراتور (نویسنده) را از جدول `operators` بارگذاری می‌کند.

Fetch Sprint Report(s)
Hydrate Operator
If `operator` field exists, fetch the full operator object from the `operators` table.
Return Report with Operator Details


Get Sprint Reports List

دریافت لیست گزارش‌های ثبت شده برای یک اسپرینت مشخص.

URL: /v2/scrumboard/sprint_reports
Method: GET
Controller: SprintReportController@index

Parameters

Parameter Type Location Description
sprint_id Integer Query (الزامی) شناسه اسپرینت والد.
status Integer Query (اختیاری) فیلتر بر اساس وضعیت گزارش.

Response Structure

در صورت عدم وجود گزارش، مقدار items: false برگردانده می‌شود.

{
    "items": [
        {
            "id": 1,
            "sprint_id": 10,
            "title": "Daily Stand-up - Day 3",
            "description": "Discussed blocker on API endpoint...",
            "issued_at": "2025-12-08 09:00:00",
            "status": 1,
            "operator": {
                "id": 5,
                "first_name": "Reza",
                "last_name": "Ahmadi",
                "avatar": "..."
            },
            "created_at": "..."
        }
    ],
    "meta": { "timestamp": 1733754000 }
}

Create Sprint Report

ایجاد یک گزارش جدید برای یک اسپرینت. شناسه اپراتور (نویسنده) به صورت خودکار از توکن کاربر احراز هویت شده (`authWithJwt`) استخراج و ثبت می‌شود.

URL: /v2/scrumboard/sprint_reports
Method: POST
Controller: SprintReportController@store

Body Parameters

Parameter Type Description
sprint_id Integer (الزامی) شناسه اسپرینت والد.
title String (الزامی) عنوان گزارش.
description String (الزامی) متن گزارش.
issued_at DateTime (الزامی) تاریخ و زمان صدور گزارش (مثلاً زمان جلسه).

Success Response

{
    "payload": {
        "id": 2,
        "sprint_id": 10,
        "title": "Sprint Review Notes",
        ...
        "operator": {
            "id": 1, 
            "first_name": "Admin",
            ...
        }
    },
    "meta": { "timestamp": 1733754000 }
}

Show Sprint Report Details

مشاهده جزئیات یک گزارش خاص با شناسه آن.

URL: /v2/scrumboard/sprint_reports/{id}
Method: GET
Controller: SprintReportController@show

Response

در صورت پیدا نشدن گزارش، payload: false برمی‌گردد.

{
    "payload": {
        "id": 1,
        "title": "Daily Stand-up - Day 3",
        "operator": { ... },
        ...
    },
    "meta": { "timestamp": 1733754000 }
}

Update Sprint Report

به‌روزرسانی اطلاعات یک گزارش. توجه داشته باشید که نویسنده (operator) قابل تغییر نیست.

URL: /v2/scrumboard/sprint_reports/{id}
Method: PUT / PATCH
Controller: SprintReportController@update

Body Parameters

Parameter Type Description
sprint_id Integer انتقال گزارش به اسپرینت دیگر.
title String تغییر عنوان.
description String تغییر متن گزارش.
issued_at DateTime تغییر زمان صدور.
status Integer تغییر وضعیت (پیش‌فرض 1).

Success Response

{
    "payload": {
        "id": 1,
        "title": "Updated report title",
        ...
    },
    "meta": { "timestamp": 1733754000 }
}

Delete Sprint Report

حذف یک گزارش از سیستم.

URL: /v2/scrumboard/sprint_reports/{id}
Method: DELETE
Controller: SprintReportController@destroy

Response

{
    "payload": 1, // 1 برای موفقیت، 0 برای عدم موفقیت
    "meta": { "timestamp": 1733754000 }
}