تغییر دادن وضعیت سفارش
وضعیتهای مختلف و معانی آنها
| وضعیت | معنی |
|---|---|
| reserved | رزرو شده. (حالت اولیه) |
| pendingoccupied | پیک تحویل داده، اپراتور باید دریافت کند. |
| occupied | در درست اپراتور. |
| unoccupied | در دست مشتری. |
| expired | مهلت دریافت بسته برای مشتری تمام شده، بسته باید در مراجعه بعدی پیک، به پیک مرجوع شود. |
| pendingreturned | اپراتور به پیک مرجوع کرده، پیک باید قبو ل کند. |
| returned | مرجوع شده به پیک. |
عملیاتهای مختلف در هر وضعیت
| وضعیت اولیه | عملیات | وضعیت نهایی | هدف | کدام کاربر انجام میدهد؟ |
|---|---|---|---|---|
| reserved | drop_by_courier | pendingoccupied | تحویل پیک به اپراتور | پیک |
| pendingoccupied | receive_by_station | occupied | تایید تحویل گرفتن اپراتور از پیک | اپراتور |
| pendingoccupied | back_to_reserved | reserved | عدم تایید تحویل گرفتن اپراتور از پیک | اپراتور |
| occupied | pick_up | unoccupied | تحویل دادن بسته به مشتری | اپراتور |
| occupied | expire | expired | منقضی شدن زمان تحویل بسته | سیستم |
| expired | pick_up | unoccupied | تحویل دادن بسته به مشتری با وجود منقضی شدن زمان تحویل بسته | اپراتور |
| expired | pending_return | pendingreturned | مرجوع کردن بسته به پیک توسط اپراتور | اپراتور |
| pendingreturned | return | returned | تایید مرجوع کردن بسته به پیک توسط اپراتور | پیک |
وبسرویسهای تغییر دادن وضعیت سفارش به صورت تکی
در این وبسرویسها، باید از شناسهی یکتای سفارش جهت انجام تغییر وضعیت استفاده کنید. همچنین با استفاده از فیلد commit میتوانید مشخص کنید که میخواهید تغییر وضعیت انجام شود یا نه.
تحویل دادن بسته به مشتری
POST/v1.1/manual-lastmile/occupancy/transit/{uuid}/pick-up/
Request Body
{
"commit": true,
"password": "12345"
}
Response Body
{
"uuid": "c2a45e63-1386-4ed1-a638-f71c2e10bfaf",
"status": "unoccupied",
"message": "تغییر وضعیت با موفقیت انجام شد",
"code": 0
}
Response Codes
| Status Code | code | detail | Description |
|---|---|---|---|
200 | 0 | - | تغییر وضعیت با موفقیت انجام شد |
200 | 1 | - | تغییر وضعیت ممکن نیست |
400 | - | password is required | فیلد password الزامی است. |
مرجوع کردن بسته به پیک
POST/v1.1/manual-lastmile/occupancy/transit/{uuid}/pending-return/
Request Body
{
"commit": true
}
Response Body
{
"uuid": "c2a45e63-1386-4ed1-a638-f71c2e10bfaf",
"status": "pendingreturned",
"message": "تغییر وضعیت با موفقیت انجام شد",
"code": 0
}
Response Codes
| Status Code | code | Description |
|---|---|---|
200 | 0 | تغییر وضعیت با موفقیت انجام شد |
200 | 1 | تغییر وضعیت ممکن نیست |
وبسرویسهای تغییر دادن وضعیت سفارش به صورت دستهجمعی
در این وبسرویسها تغییر وضعیت به صورت دستهجمعی برای چندین سفارش انجام میشود. اگر میخواهید تغییر وضعیت برای تمام سفارشهای یک گنجدار اتفاق بیفتد، باید شناسهی یکتای گنجدار را در درخواست قراردهید و اگر میخواهید یک یا چند سفارش مشخص را تغییر وضعیت دهید، باید شناسهی یکتای سفارشها را در درخواست قراردهید.
در پاسخ، نتیجهی تغییر وضعیت هر سفارش برمیگردد. حالتهای مختلفی که ممکن است اتفاق بیفتد، به صورت زیر است:
done: تغییر وضعیت با موفقیت انجام شد.not_found: سفارش مورد نظر یافت نشد.not_allowed: مجاز به تغییر وضعیت این سفارش نیست.not_possible: تغییر وضعیت این سفارش ممکن نیست.
تایید تحویل گرفتن اپراتور از پیک
POST/v1.1/manual-lastmile/occupancy/receive-by-station/bulk/organization/
Request Body 1
{
"station": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
}
Request Body 2
{
"occupancies": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"f70f2891-6bec-43d3-872e-46a6bf6056a5",
"811290f4-801f-4480-9613-d5e96100180a",
"3152825d-16f4-44d1-9422-07b0c192612a",
]
}
Response Body
{
"3fa85f64-5717-4562-b3fc-2c963f66afa6": "done",
"f70f2891-6bec-43d3-872e-46a6bf6056a5": "not_found",
"811290f4-801f-4480-9613-d5e96100180a": "not_allowed",
"3152825d-16f4-44d1-9422-07b0c192612a": "not_possible"
}
Response Codes
| Status Code | detail | Description |
|---|---|---|
200 | OK | نتیجهی انجام عملیات برای هر سفارش برمیگردد |
400 | Provide either station or occupancies | درخواست حتما باید شامل یکی از فیلدهای station یا occupancies باشد. |
400 | Station not found | گنجداری با شناسه داده شده یافت نشد. |
عدم تایید تحویل گرفتن اپراتور از پیک
POST/v1.1/manual-lastmile/occupancy/back-to-reserved/bulk/organization/
Request Body 1
{
"station": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
}
Request Body 2
{
"occupancies": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"f70f2891-6bec-43d3-872e-46a6bf6056a5",
"811290f4-801f-4480-9613-d5e96100180a",
"3152825d-16f4-44d1-9422-07b0c192612a",
]
}
Response Body
{
"3fa85f64-5717-4562-b3fc-2c963f66afa6": "done",
"f70f2891-6bec-43d3-872e-46a6bf6056a5": "not_found",
"811290f4-801f-4480-9613-d5e96100180a": "not_allowed",
"3152825d-16f4-44d1-9422-07b0c192612a": "not_possible"
}
Response Codes
| Status Code | detail | Description |
|---|---|---|
200 | OK | نتیجهی انجام عملیات برای هر سفارش برمیگردد |
400 | Provide either station or occupancies | درخواست حتما باید شامل یکی از فیلدهای station یا occupancies باشد. |
400 | Station not found | گنجداری با شناسه داده شده یافت نشد. |