#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.
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_reportsMethod: 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_reportsMethod: 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 }
}