Загрузка приложения

IOrderShipment

Физическое объявление TypeScript из стартового проекта Nuxt со связанными типами и комментариями к полям.

IOrderShipment

Одно отправление с адресом доставки и приобретёнными позициями.

interfaces/orionplace/orders/IOrderHistory.ts
TypeScript
export interface IOrderShipment {
  // ID отправления.
  id: number;
  // ID заказа-владельца.
  order_id: number;
  // Стоимость доставки ещё предварительная.
  delivery_price_is_estimate: boolean;
  // Выбранный способ доставки и данные перевозчика либо `null`.
  delivery_method: IOrderDeliveryMethod | null;
  // Поля пункта выдачи перевозчика либо сохранённый адрес заказа; пустой объект
  // при ошибке данных доставки. Страна и регион в ветви адреса — массивы.
  delivery_data:
    | IOrderShipmentAddress
    | {
      // Значение поля delivery_to_code.
      delivery_to_code: string;
      // Значение поля delivery_to_city_code.
      delivery_to_city_code: string;
      // Значение поля delivery_to_code_full_address.
      delivery_to_code_full_address: string;
    }
    | Record<string, never>;
  // Ожидаемый интервал доставки.
  estimate: {
    // Значение поля delivery_date_from.
    delivery_date_from: IApiDateTime | null;
    // Значение поля delivery_date_to.
    delivery_date_to: IApiDateTime | null;
  };
  // Счётчики возврата позиций и средств этого отправления.
  refund_stats: IOrderRefundStats;
  // Фактические даты отправки и доставки.
  dates: {
    // Значение поля sent.
    sent: IApiDateTime | null;
    // Значение поля delivery_date_real.
    delivery_date_real: IApiDateTime | null;
    // Дата, когда перевозчик вернул посылку недоставленной; её единицы
    // возвращены, деньги возмещаются. Иначе null.
    returned_by_carrier?: IApiDateTime | null;
  };
  // Вес и объём упаковки в словарях единиц backend.
  measures: {
    // Значение поля package_weight.
    package_weight: IUnitValues;
    // Значение поля package_volume.
    package_volume: IUnitValues;
  };
  // Магазин отправления, включая признак цифрового магазина; null при
  // отсутствии.
  store:
    (Omit<IPhysicalStore, 'virtual_goods'> & {
      // Значение поля virtual_goods.
      virtual_goods: boolean;
    }) | null;
  // Суммы товаров, опций, доставки и возврата отправления по валютам.
  prices: IOrderShipmentPrices;
  // Идентификаторы отслеживания, текст состояния перевозчика и время
  // обновления; null без отслеживания.
  track: {
    // ID отправления.
    id: number;
    // Идентификаторы отслеживания, текст состояния перевозчика и время
    // обновления; null без отслеживания.
    track: string;
    // Значение поля internal_track.
    internal_track: string;
    // Значение поля status.
    status: string;
    // Значение поля date_status_updated.
    date_status_updated: IApiDateTime | null;
  } | null;
  // Приобретённые позиции отправления либо null.
  shipment_items: IOrderShipmentItem[] | null;
}