#P1770
RESOURCE /v2/cartable/operator_role
Operator Role & Signature Logic
این کنترلر برای انتساب یک "عنوان" (`title`) به یک "اپراتور" (`operator`) و مهمتر از آن، ذخیره **تصویر امضای دیجیتال** (`signature_file`) استفاده میشود.
فایلهای آپلود شده در فضای ذخیرهسازی ابری (دیسک `liara`) با ساختار پوشهبندی بر اساس شناسه شعبه (`branch`) و تاریخ ذخیره میشوند.
(Image validation: max 2MB, jpeg/png...)
Record Saved in DB
List Operator Roles
دریافت لیست نقشها و امضاهای تعریف شده.
/v2/cartable/operator_roleQuery Parameters
| Parameter | Type | Description |
|---|---|---|
| operator | Integer | (اختیاری) فیلتر بر اساس شناسه اپراتور. |
| status | Integer | (اختیاری) فیلتر بر اساس وضعیت. |
Response Structure
{
"items": [
{
"id": 5,
"operator": 105,
"title": "مدیر فنی",
"signature_file": "uploads/100/cartable/signatures/2024/12/example.png",
"created_at": "...",
"updated_at": "..."
}
],
"meta": { "timestamp": 1733764000 }
}
Create Role & Upload Signature
تعریف نقش جدید و آپلود تصویر امضا.
نکته مهم: این درخواست باید به صورت multipart/form-data ارسال شود.
/v2/cartable/operator_roleBody Parameters (Multipart)
| Parameter | Type | Description |
|---|---|---|
| operator | Integer | (الزامی) شناسه اپراتور صاحب امضا. |
| title | String | (الزامی) عنوان شغلی (مثلاً "رئیس هیئت مدیره"). |
| branch | Integer | (الزامی) شناسه شعبه (جهت ساخت مسیر ذخیرهسازی فایل). |
| signature_file | File | (اختیاری) فایل تصویر امضا. فرمتهای مجاز: jpeg, png, jpg, gif, svg. حداکثر حجم: 2MB. |
Success Response
{
"payload": {
"id": 8,
"operator": 105,
"title": "رئیس هیئت مدیره",
"signature_file": "uploads/101/cartable/signatures/2025/12/sig-123.png",
"created_at": "...",
"updated_at": "..."
},
"meta": { "timestamp": 1733764000 }
}
Show Role Details
مشاهده جزئیات یک نقش خاص.
/v2/cartable/operator_role/{id}Response Structure
{
"payload": {
"id": 8,
"operator": 105,
"title": "رئیس هیئت مدیره",
"signature_file": "uploads/101/cartable/signatures/2025/12/sig-123.png",
"created_at": "...",
"updated_at": "..."
},
"meta": { "timestamp": 1733764000 }
}
Update Role & Signature
ویرایش عنوان یا جایگزینی فایل امضا.
اگر فایل جدیدی ارسال شود، آپلود شده و مسیر آن در دیتابیس جایگزین میشود.
توجه: در لاراول برای ارسال فایل در متد PUT معمولاً باید از `_method: PUT` در یک درخواست POST استفاده کنید.
/v2/cartable/operator_role/{id}Body Parameters
| Parameter | Type | Description |
|---|---|---|
| operator | Integer | شناسه اپراتور. |
| title | String | عنوان شغلی جدید. |
| branch | Integer | شناسه شعبه (الزامی اگر فایل ارسال شود). |
| signature_file | File | (اختیاری) تصویر امضای جدید برای جایگزینی. |
Success Response
{
"payload": {
"id": 8,
"operator": 105,
"title": "عنوان ویرایش شده",
"signature_file": "uploads/101/cartable/signatures/2025/12/new-sig.png",
"updated_at": "..."
},
"meta": { "timestamp": 1733764000 }
}
Delete Role
حذف نقش و امضا.
پاکسازی فایل: این متد علاوه بر حذف رکورد از دیتابیس، فایل امضای مربوطه را نیز از فضای ابری (Liara) پاک میکند.
/v2/cartable/operator_role/{id}Success Response
{
"payload": 1, // 1 for success
"meta": { "timestamp": 1733764000 }
}