getOrderById
الحصول على طلب واحد تم إنشاؤه بواسطة المستخدم، من خلال معرفه الخاص.
الوصف
تسترجع هذه الطريقة طلبًا واحدًا للمستخدم المعتمد بناءً على معرف الطلب فقط، دون علامة التخزين. تعيد Promise التي تحل إلى كائن IOrderByMarkerEntity - نفس الكائن الذي تعيده getOrderByMarkerAndId.
طلبات.getOrderById(id, langCode);
المعلمات
id: number
معرف كائن الطلب.
مثال: 12345
langCode: string (اختياري)
رمز اللغة. الافتراضي: "en_US".
مثال: "en_US"
💡 متى تستخدمها بدلاً من getOrderByMarkerAndId
تحتاج getOrderByMarkerAndId إلى كل من علامة التخزين والمعرف. العلامة هي بالضبط ما ينقص عندما يأتي المعرف من خارج تطبيقك: عنوان URL للعودة من مزود الدفع، رابط في إشعار، رقم طلب يقرأه العميل عبر الهاتف. في هذه الحالات، استخدم هذه الطريقة.
🔐 التفويض
تتطلب هذه الطريقة تفويض المستخدم. راجع وحدة AuthProvider.
أمثلة
مثال بسيط
const response = await Orders.getOrderById(205);
مع رمز لغة
const response = await Orders.getOrderById(205, 'en_US');
مثال على الاستجابة
{
"id": 205,
"storageId": 1,
"createdDate": "2025-07-18T05:51:09.924Z",
"statusIdentifier": "inProgress",
"statusLocalizeInfos": {
"title": "In progress"
},
"fulfillmentStatusIdentifier": null,
"fulfillmentStatusLocalizeInfos": null,
"paymentStatusIdentifier": null,
"paymentStatusLocalizeInfos": null,
"formIdentifier": "orderForm",
"formData": [
{
"marker": "order_name",
"type": "string",
"value": "Ivan"
}
],
"attributeSetIdentifier": "order_form",
"paymentStrategy": "once",
"totalSum": "51",
"totalSumRaw": "51",
"currency": "usd",
"paymentAccountIdentifier": "stripe",
"paymentAccountLocalizeInfos": {
"title": "Stripe"
},
"products": [
{
"id": 2954,
"title": "Box",
"sku": null,
"previewImage": [
{
"size": 742690,
"filename": "files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"contentType": "image/jpeg",
"previewLink": {
"default": [
"data:image/webp;base64,UklGRmwAAABXRUJQVlA4IGAAAADQAQCdASoQABAABUB8JbACdACZZ3P8AAD+wGsUXBs/r069WpdrcuaTNfVxqWIetuaIdIvOMkSp9iJRxE+KhA2YHbrVehhMRj/j5+DUdjWn1v5YtZ7vw0IgPi9R5vkAAAA=",
"https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.preview.default.jpeg"
]
},
"downloadLink": "https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"defaultPreview": "default"
}
],
"price": 51,
"quantity": 1,
"isGift": false
}
],
"paymentUrl": "https://checkout.stripe.com/c/pay/cs_test_a19RuP9hh4gGmaSOQwb57OBpnypIifa0FDnGhYe7od5XkRXRUpYXUKDRtm#fidnandhYHdWcXxpYCc%2FJ2FgY2RwaXEnKSd2cXdsdWBEZmZqcGtxJz8nZGZmcVo0VHJuTndEZlZqS2YybGBzJyknZHVsTmB8Jz8ndW5acWB2cVowNEtDcERXRG9vaE89NUZTa2tDan1AdkJNaHN2YnE2Tmw8YE5zVUJCb1ZTYXBkQEBgSXNkZ3JTVj1UbmZDUTVVTXA0cH1CMkZXXDVfUUM0YUJRQTVLTGZPbjU1d0tkcmFoNV8nKSdjd2poVmB3c2B3Jz9xd3BgKSdnZGZuYndqcGthRmppancnPycmY2NjY2NjJyknaWR8anBxUXx1YCc%2FJ3Zsa2JpYFpscWBoJyknYGtkZ2lgVWlkZmBtamlhYHd2Jz9xd3BgeCUl",
"discountConfig": {
"orderDiscounts": [],
"productDiscounts": [],
"coupon": null,
"settings": {
"allowStacking": false,
"maxDiscountValue": null,
"allowGiftStacking": false
},
"additionalDiscountsMarkers": [],
"totalRaw": 51,
"totalSumWithDiscount": 51,
"excludedGiftProductIds": [],
"bonus": null,
"bonusApplied": 0,
"totalDue": 51
},
"isPartial": false,
"isCompleted": false,
"split": {
"completed": false,
"partial": false,
"stages": [
{
"marker": "default",
"sessionId": null,
"productId": 2954,
"title": "Default",
"value": 51,
"status": "planned"
}
]
}
}
مخطط الاستجابة
المخطط: IOrderByMarkerEntity
id: number
معرف الكائن.
مثال: 125
storageId: number
معرف كائن تخزين الطلب.
مثال: 1
createdDate: string
تاريخ إنشاء الطلب.
مثال: "2023-10-01T12:00:00Z"
statusIdentifier: string
معرف نصي لحالة الطلب.
مثال: "order-status-1"
formIdentifier: string
معرف نصي للنموذج.
مثال: "bar-orders-form"
formData: IOrdersFormData[]
البيانات المقدمة من النموذج المرتبط بمخزن الطلب.
مثال:
[
{
"marker": "order_name",
"value": "Ivan",
"type": "string"
}
]
formData.marker: string
علامة حقل النموذج.
مثال: "name_1"
formData.type: string
نوع القيمة.
مثال: "string"
formData.value: string
القيمة.
مثال: "Name"
attributeSetIdentifier: string | null
معرف نصي لمجموعة السمات.
مثال: "attribute-set-1"
totalSum: string
إجمالي مبلغ الطلب.
مثال: "100.00"
totalSumRaw: string
إجمالي مبلغ الطلب الخام بدقة كاملة.
مثال: "100.00"
currency: string
العملة المستخدمة لدفع الطلب.
مثال: "USD"
paymentAccountIdentifier: string | null
معرف نصي لدفع الطلب.
مثال: "payment-1"
paymentAccountLocalizeInfos: ILocalizeInfo
اسم حساب الدفع مع مراعاة التوطين.
مثال:
{
"title": "Cash"
}
products: IOrderProducts[]
مصفوفة من المنتجات المضافة إلى الطلب.
مثال:
[
{
"id": 1,
"name": "Product 1",
"quantity": 2
}
]
products.id: number
معرف المنتج.
مثال: 2957
products.quantity: number
كمية المنتج.
مثال: 1
products.title: string
عنوان المنتج.
مثال: "Cosmo"
products.sku: string | null
SKU المنتج.
مثال: "SKU"
products.previewImage: IPicture | null
صورة المعاينة للمنتج.
مثال:
{
"filename": "image.jpg",
"downloadLink": "https://example.com/image.jpg",
"size": 102400,
"previewLink": "https://example.com/image-preview.jpg"
}
products.price: number
سعر المنتج.
مثال: 150
products.isGift: boolean
ما إذا كان المنتج هدية.
مثال: false
paymentUrl: string | null
رابط الدفع.
مثال: "https://example.com/pay/123"
isCompleted: boolean | null
تشير إلى أن الطلب قد اكتمل.
مثال: true
isPartial: boolean | null
تشير إلى أن الطلب مدفوع جزئيًا؛ null في الطلبات القديمة حيث لم يتم تتبعه.
مثال: false
paymentStrategy: string
استراتيجية الدفع للطلب.
مثال: "once"
statusLocalizeInfos: ILocalizeInfo
اسم الحالة المحلي.
fulfillmentStatusIdentifier: string | null
معرف نصي لحالة التنفيذ (التسليم)؛ null أثناء عدم تعيين حالة التنفيذ.
مثال: "shipped"
fulfillmentStatusLocalizeInfos: ILocalizeInfo | null
اسم حالة التنفيذ المحلي؛ null أثناء عدم تعيين حالة التنفيذ.
paymentStatusIdentifier: string | null
معرف نصي لحالة الدفع؛ null أثناء عدم تعيين حالة الدفع.
مثال: "inProgress-payment"
paymentStatusLocalizeInfos: ILocalizeInfo | null
اسم حالة الدفع المحلي؛ null أثناء عدم تعيين حالة الدفع.
discountConfig: IOrderDiscountConfig | null
تكوين الخصم المحسوب المطبق على الطلب (خصومات الطلب، خصومات المنتج، قسيمة، إعدادات، مكافآت، إجماليات)؛ null في الطلبات القديمة التي لا تحتوي على تكوين خصم محسوب.
discountConfig.bonus: IOrderDiscountBonus | null
نتيجة حساب المكافأة، null عند عدم استخدام المكافآت، أو تم حذفها تمامًا عندما لا يحتوي الطلب على سياق مكافأة.
discountConfig.coupon: unknown | null
قسيمة محسوبة، أو null عند عدم تطبيق أي قسيمة.
discountConfig.orderDiscounts: unknown[]
خصومات على مستوى الطلب التي تم مطابقتها وتطبيقها.
discountConfig.productDiscounts: unknown[]
خصومات على مستوى المنتج التي تم مطابقتها وتطبيقها.
discountConfig.settings: IOrderDiscountSettings
إعدادات التكديس والسقف المستخدمة أثناء الحساب.
discountConfig.additionalDiscountsMarkers: string[]
علامات الخصومات الإضافية المطلوبة من العميل (تم حذفها في استجابات المعاينة).
discountConfig.bonusApplied: number
مبلغ المكافأة المطبق على الطلب (تم حذفه في استجابات المعاينة).
مثال: 0
discountConfig.excludedGiftProductIds: string[]
معرفات المنتجات المستبعدة من اختيار الهدايا (تم حذفها في استجابات المعاينة).
discountConfig.totalDue: number
إجمالي المبلغ المستحق بعد الخصومات والمكافآت (تم حذفه في استجابات المعاينة).
مثال: 300
discountConfig.totalRaw: number
إجمالي المبلغ قبل الخصومات (تم حذفه في استجابات المعاينة).
مثال: 300
discountConfig.totalSumWithDiscount: number
إجمالي المبلغ بعد الخصومات ولكن قبل المكافآت (تم حذفه في استجابات المعاينة).
مثال: 300
split: IOrderSplit
تكوين الدفع المقسم (المراحل)؛ موجود في نقطة نهاية الطلب حسب المعرف.
split.completed: boolean
ما إذا كانت جميع مراحل التقسيم مكتملة.
مثال: false
split.partial: boolean
ما إذا كان التقسيم مدفوعًا جزئيًا.
مثال: false
split.stages: IOrderSplitStage[]
قائمة مرتبة بمراحل الدفع المقسمة.
distance: number
المسافة الكوسينية إلى الاستعلام. يتم إرجاعها فقط بواسطة نقطة نهاية البحث الدلالي (الناقل) عندما يتم تمرير debug: true في جسم البحث.
مثال: 0.12