پرش به مطلب اصلی

تغییر دادن وضعیت سفارش

برای تغییر دادن وضعیت سفارش در حالت‌های خاص، وب‌سرویس‌هایی در نظر گرفته شده که در ادامه به معرفی آن‌ها می‌پردازیم.

نکته

در وب‌سرویس‌هایی که در ادامه معرفی می‌شوند، باید uuid سفارش را که از وب‌سرویس رزرو دریافت کرده‌اید، قراردهید. در صورتی که uuid اشتباه باشد، با ارور 404 مواجه خواهید شد.

لغو سفارش

تا زمانی که سفارش هنوز به گنجدار تحویل داده نشده باشد، می‌توانید آن را لغو کنید. در این صورت سفارش در محاسبات مالی نیز در نظر گرفته نخواهد شد.

برای این منظور از وب‌سرویس زیر استفاده کنید:

PATCH/v1.1/manual-firstmile/occupancy/transit-by-supplier/{uuid}/cancel/

Response Body

{
"uuid": "19719a2b-4ede-4b4a-9f1e-63e3ce946226",
"status": "canceled"
}

Response Codes

Status Code detail
400This transition is not possible on this occupancy
404Not found
200-
اطلاع

تنها در صورتی که سفارش در وضعیت reserved باشد، می‌توانید از این وب‌سرویس استفاده کنید. در غیر این صورت با ارور 400 مواجه خواهید شد.

اعلام تحویل گرفتن سفارش

هنگامی که پیک مرسوله را از گنجدار تحویل می‌گیرد، باید از طریق یکی از وب‌سرویس‌های زیر، این موضوع را به گنجه اطلاع دهید.

اعلام تحویل گرفتن سفارش به صورت تکی

برای اعلام تحویل گرفتن سفارش به صورت نکی از وب‌سرویس زیر استفاده کنید:

PATCH/v1.1/manual-firstmile/occupancy/transit-by-supplier/{uuid}/pick-up/

Response Body

{
"uuid": "19719a2b-4ede-4b4a-9f1e-63e3ce946226",
"status": "unoccupied"
}

Response Codes

Status Code detail
400This transition is not possible on this occupancy
404Not found
200-
اطلاع

تنها در صورتی که سفارش در وضعیت occupied باشد، می‌توانید از این وب‌سرویس استفاده کنید. در غیر این صورت با ارور 400 مواجه خواهید شد.

اعلام تحویل گرفتن سفارش به صورت دسته‌جمعی

برای اعلام تحویل گرفتن سفارش به صورت دسته‌جمعی از وب‌سرویس زیر استفاده کنید:

PATCH/v1.1/manual-firstmile/occupancy/pick-up/bulk

Request Body

{
"occupancies": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"c82de21f-19b0-477e-a489-3705a6e04da9",
"4b873f9c-1b21-4c08-be2c-06f4a09d3e9d"
]
}

Response Body

{
"3fa85f64-5717-4562-b3fc-2c963f66afa6": "done",
"c82de21f-19b0-477e-a489-3705a6e04da9": "not_possible",
"4b873f9c-1b21-4c08-be2c-06f4a09d3e9d": "not_found"
}
اطلاع

تنها در صورتی که سفارش در وضعیت occupied باشد، می‌توانید از این وب‌سرویس استفاده کنید. در غیر این صورت برای سفارشی که در وضعیت متفاوتی باشد، با پیام not_possible مواجه خواهید شد.

اطلاع

در صورتی که uuid داده شده، مربوط به سفارشی نباشد، با پیام not_found مواجه خواهید شد.

شبیه‌سازی تحویل‌گرفتن سفارش توسط گنجدار (قابل استفاده در محیط تست)

برای شبیه‌سازی تحویل‌گرفتن سفارش توسط گنجدار در محیط تست (staging) می‌توانید از وب‌سرویس زیر استفاده کنید.

این وب‌سرویس وضعیت سفارش را از reserved به pending_occupied تغییر می‌دهد.

PATCH/v1.1/manual-firstmile/occupancy/{uuid}/handover/

Response Body

{
"uuid": "19719a2b-4ede-4b4a-9f1e-63e3ce946226",
"status": "pendingoccupied"
}

Response Codes

Status Code detail
400This transition is not possible on this occupancy
404Not found
200-
اطلاع

تنها در صورتی که سفارش در وضعیت reserved باشد، می‌توانید از این وب‌سرویس استفاده کنید. در غیر این صورت با ارور 400 مواجه خواهید شد.

شبیه‌سازی تایید نهایی تحویل‌گرفتن سفارش توسط گنجدار (قابل استفاده در محیط تست)

برای شبیه‌سازی تایید نهایی تحویل‌گرفتن سفارش‌ها توسط گنجدار به صورت دسته جمعی در محیط تست (staging) می‌توانید از وب‌سرویس زیر استفاده کنید.

این وب‌سرویس وضعیت سفارش‌های داده شده را از pending_occupied به occupied تغییر می‌دهد.

PATCH/v1.1/manual-firstmile/occupancy/receive-by-station/bulk/by-supplier/

Request Body

{
"occupancies": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"c82de21f-19b0-477e-a489-3705a6e04da9",
"4b873f9c-1b21-4c08-be2c-06f4a09d3e9d"
]
}

Response Body

{
"3fa85f64-5717-4562-b3fc-2c963f66afa6": "done",
"c82de21f-19b0-477e-a489-3705a6e04da9": "not_possible",
"4b873f9c-1b21-4c08-be2c-06f4a09d3e9d": "not_found"
}
اطلاع

تنها در صورتی که سفارش در وضعیت pending_occupied باشد، می‌توانید از این وب‌سرویس استفاده کنید. در غیر این صورت برای سفارشی که در وضعیت متفاوتی باشد، با پیام not_possible مواجه خواهید شد.

اطلاع

در صورتی که uuid داده شده، مربوط به سفارشی نباشد، با پیام not_found مواجه خواهید شد.