#P1586
PUT /v2/accounting/account
Route Info
| Method | Endpoint | Controller |
| PUT | /v2/accounting/account | AccountingController@accountUpdate |
شرح عملکرد (Functionality)
این متد اطلاعات یک حساب موجود را به طور کامل بازنویسی (Full Update) میکند. شناسه حساب از طریق بدنه درخواست (Body) دریافت میشود.
- هدفگیری رکورد: عملیات آپدیت بر اساس فیلد
idارسال شده در JSON انجام میشود. - بازنویسی کامل: تمام فیلدهای قابل ویرایش (اطلاعات بانکی، نوع حساب، وضعیتها و تنظیمات درگاه/پوز) با مقادیر جدید جایگزین میشوند.
- بهروزرسانی زمان: فیلد
updated_atبه زمان لحظهای سرور تغییر میکند. - نکته مهم: فیلدهای سیستمی و ثابت مانند
serial(شماره سریال سیستمی) وcreated_atوbranch(شناسه اصلی شعبه) در این متد تغییر نمیکنند.
پارامترهای ورودی (JSON Body)
هشدار: تمام فیلدهای زیر الزامی هستند. حتی اگر تغییری نکردهاند باید ارسال شوند، در غیر این صورت ممکن است با خطای سیستمی مواجه شوید.
{
"id": 15, // شناسه حساب (الزامی برای پیدا کردن رکورد)
"branch": { // آبجکت شعبه (الزامی)
"code": "101",
"title": "شعبه مرکزی"
},
"bank": 12,
"account_number": "987654321",
"card": "6037...",
"sheba": "IR99...",
"type": "bank", // یا "cash"
"currency": "rials", // یا "currency"
"check": true,
"status": 1,
"pos": {
"status": true,
"code": "NEW_POS_SERIAL"
},
"gateway": {
"status": false,
"data": null
}
}
خروجی (Response)
موفقیت (Success):
{
"status": true,
"time": 1715775000
}
نکته امنیتی/منطقی:
اگر id ارسال شده وجود نداشته باشد، سیستم همچنان status: true برمیگرداند اما عملاً هیچ تغییری در دیتابیس رخ نداده است (Silent Failure).
خطا (Error):
در صورت ارسال ناقص دادهها (مثلاً حذف آبجکت branch):
{
"status": false,
"time": 1715775005,
"code": 0,
"message": "Trying to access array offset on value of type null",
"trace": [...]
}