@things-factory/operato-mms 4.1.2 → 4.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,7 +5,12 @@ import { Bizplace, getCustomerBizplaces } from '@things-factory/biz-base'
5
5
  import { FulfillmentAPI, FulfillmentCenter } from '@things-factory/integration-fulfillment'
6
6
  import { Etrax, LastMileDelivery } from '@things-factory/integration-lmd'
7
7
  import { MarketplaceStore, MarketplaceTransporter, StoreAPI } from '@things-factory/integration-marketplace'
8
- import { MarketplaceOrder, MarketplaceOrderItem, MarketplaceOrderShipping } from '@things-factory/marketplace-base'
8
+ import {
9
+ MarketplaceOrder,
10
+ MarketplaceOrderItem,
11
+ MarketplaceOrderShipping,
12
+ MarketplaceOrderShippingItem
13
+ } from '@things-factory/marketplace-base'
9
14
  import { Domain } from '@things-factory/shell'
10
15
 
11
16
  const debug = require('debug')('things-factory:jest.config')
@@ -70,15 +75,17 @@ etraxRouter.post(`/lmd/etrax/status_update`, async (context, next) => {
70
75
  'domain',
71
76
  'marketplaceStore',
72
77
  'marketplaceOrderItems',
73
- 'marketplaceOrderItems.marketplaceOrderShipping',
74
- 'marketplaceOrderItems.marketplaceOrderShipping.fulfillmentCenter'
78
+ 'marketplaceOrderItems.marketplaceOrderShippingItems',
79
+ 'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping',
80
+ 'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping.fulfillmentCenter'
75
81
  ]
76
82
  })
77
83
  let orderItems: MarketplaceOrderItem[] = order.marketplaceOrderItems
78
84
 
79
85
  for (const orderItem of orderItems) {
80
- if (orderItem.marketplaceOrderShipping !== null) {
81
- const orderShipping: MarketplaceOrderShipping = orderItem.marketplaceOrderShipping
86
+ if (orderItem.marketplaceOrderShippingItems[0].marketplaceOrderShipping !== null) {
87
+ const orderShippingItems: MarketplaceOrderShippingItem[] = orderItem.marketplaceOrderShippingItems
88
+ const orderShipping: MarketplaceOrderShipping = orderShippingItems[0].marketplaceOrderShipping
82
89
  const fulfillmentCenter: FulfillmentCenter = orderShipping?.fulfillmentCenter
83
90
  const marketplaceStore: MarketplaceStore = order.marketplaceStore
84
91
 
@@ -119,9 +126,28 @@ etraxRouter.post(`/lmd/etrax/status_update`, async (context, next) => {
119
126
  const marketplaceStore: MarketplaceStore = await StoreAPI.getMarketplaceStore(storeId)
120
127
 
121
128
  // to-do update tracking no to every marketplaces
122
- if (marketplaceStore.platform === 'woocommerce') {
129
+ if (marketplaceStore.platform === 'woocommerce' || marketplaceStore.platform === 'shopify') {
123
130
  const note = 'http://ets.sntglobal.com/?mod=tracking&action=index&orders=' + trackingNo
124
- await StoreAPI.createOrderNote(marketplaceStore, { orderId: order.name, note })
131
+ let orderInfo: MarketplaceOrder = await getRepository(MarketplaceOrder).findOne({
132
+ where: {
133
+ name: order.name
134
+ },
135
+ relations: ['marketplaceOrderItems', 'marketplaceOrderItems.marketplaceProductVariation']
136
+ })
137
+ const result = await StoreAPI.setStoreOrderStatusReadyToShip(marketplaceStore, {
138
+ orderId: order.name,
139
+ trackingUrl: note,
140
+ trackingNo,
141
+ order: orderInfo,
142
+ note
143
+ })
144
+
145
+ if (marketplaceStore.platform === 'woocommerce') {
146
+ await StoreAPI.updateOrderStatus(marketplaceStore, {
147
+ orderId: order.name,
148
+ status: 'READY_TO_SHIP'
149
+ })
150
+ }
125
151
  }
126
152
 
127
153
  const resp = {
@@ -144,6 +144,7 @@
144
144
  "field.total_weight": "total weight",
145
145
  "field.town": "town",
146
146
  "field.tracking_no": "tracking no",
147
+ "field.tracking_url": "tracking URL",
147
148
  "field.type": "type",
148
149
  "field.unit": "unit",
149
150
  "field.uom_value": "UOM value",
@@ -143,6 +143,7 @@
143
143
  "field.total_weight": "[ko] total weight",
144
144
  "field.town": "[ko] town",
145
145
  "field.tracking_no": "[ko] tracking no",
146
+ "field.tracking_url": "[ko] tracking URL",
146
147
  "field.type": "[ko] type",
147
148
  "field.unit": "[ko] unit",
148
149
  "field.uom_value": "[ko] UOM value",
@@ -143,6 +143,7 @@
143
143
  "field.total_weight": "[ms] total weight",
144
144
  "field.town": "[ms] town",
145
145
  "field.tracking_no": "[ms] tracking no",
146
+ "field.tracking_url": "[ms] tracking URL",
146
147
  "field.type": "[ms] type",
147
148
  "field.unit": "[ms] unit",
148
149
  "field.uom_value": "[ms] UOM value",
@@ -143,6 +143,7 @@
143
143
  "field.total_weight": "[zh] total weight",
144
144
  "field.town": "[zh] town",
145
145
  "field.tracking_no": "[zh] tracking no",
146
+ "field.tracking_url": "[zh] tracking URL",
146
147
  "field.type": "[zh] type",
147
148
  "field.unit": "[zh] unit",
148
149
  "field.uom_value": "[zh] UOM value",