@things-factory/marketplace-base 3.6.3 → 3.6.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.
- package/dist-server/entities/marketplace-order-shipping.js +14 -2
- package/dist-server/entities/marketplace-order-shipping.js.map +1 -1
- package/dist-server/entities/marketplace-order.js +14 -2
- package/dist-server/entities/marketplace-order.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/cancel-marketplace-order.js +26 -7
- package/dist-server/graphql/resolvers/marketplace-order/cancel-marketplace-order.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/generate-marketplace-order.js +5 -0
- package/dist-server/graphql/resolvers/marketplace-order/generate-marketplace-order.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/index.js +3 -1
- package/dist-server/graphql/resolvers/marketplace-order/index.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/initialise-logistics-by-batch.js +3 -1
- package/dist-server/graphql/resolvers/marketplace-order/initialise-logistics-by-batch.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/initialise-shopee-logistics-by-batch.js +2 -2
- package/dist-server/graphql/resolvers/marketplace-order/initialise-shopee-logistics-by-batch.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/set-own-shipping-provider-by-orders.js +31 -0
- package/dist-server/graphql/resolvers/marketplace-order/set-own-shipping-provider-by-orders.js.map +1 -0
- package/dist-server/graphql/resolvers/marketplace-order/split-orders-by-batch.js +314 -181
- package/dist-server/graphql/resolvers/marketplace-order/split-orders-by-batch.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/sync-all-marketplace-order.js +72 -38
- package/dist-server/graphql/resolvers/marketplace-order/sync-all-marketplace-order.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/sync-marketplace-order.js +103 -45
- package/dist-server/graphql/resolvers/marketplace-order/sync-marketplace-order.js.map +1 -1
- package/dist-server/graphql/resolvers/marketplace-order/update-marketplace-order.js +21 -0
- package/dist-server/graphql/resolvers/marketplace-order/update-marketplace-order.js.map +1 -0
- package/dist-server/graphql/resolvers/marketplace-order-shipping/update-marketplace-order-shipping.js +2 -1
- package/dist-server/graphql/resolvers/marketplace-order-shipping/update-marketplace-order-shipping.js.map +1 -1
- package/dist-server/graphql/types/marketplace-order/index.js +2 -0
- package/dist-server/graphql/types/marketplace-order/index.js.map +1 -1
- package/dist-server/graphql/types/marketplace-order/logistics-info.js +2 -0
- package/dist-server/graphql/types/marketplace-order/logistics-info.js.map +1 -1
- package/dist-server/graphql/types/marketplace-order/marketplace-order.js +3 -0
- package/dist-server/graphql/types/marketplace-order/marketplace-order.js.map +1 -1
- package/dist-server/graphql/types/marketplace-order-shipping/marketplace-order-shipping-patch.js +3 -0
- package/dist-server/graphql/types/marketplace-order-shipping/marketplace-order-shipping-patch.js.map +1 -1
- package/dist-server/graphql/types/marketplace-order-shipping/marketplace-order-shipping.js +3 -0
- package/dist-server/graphql/types/marketplace-order-shipping/marketplace-order-shipping.js.map +1 -1
- package/dist-server/graphql/types/marketplace-order-shipping/new-marketplace-order-shipping.js +3 -0
- package/dist-server/graphql/types/marketplace-order-shipping/new-marketplace-order-shipping.js.map +1 -1
- package/package.json +5 -5
- package/server/entities/marketplace-order-shipping.ts +14 -2
- package/server/entities/marketplace-order.ts +15 -4
- package/server/graphql/resolvers/marketplace-order/cancel-marketplace-order.ts +27 -8
- package/server/graphql/resolvers/marketplace-order/generate-marketplace-order.ts +10 -3
- package/server/graphql/resolvers/marketplace-order/index.ts +5 -1
- package/server/graphql/resolvers/marketplace-order/initialise-logistics-by-batch.ts +3 -1
- package/server/graphql/resolvers/marketplace-order/initialise-shopee-logistics-by-batch.ts +4 -2
- package/server/graphql/resolvers/marketplace-order/set-own-shipping-provider-by-orders.ts +43 -0
- package/server/graphql/resolvers/marketplace-order/split-orders-by-batch.ts +368 -210
- package/server/graphql/resolvers/marketplace-order/sync-all-marketplace-order.ts +106 -53
- package/server/graphql/resolvers/marketplace-order/sync-marketplace-order.ts +138 -61
- package/server/graphql/resolvers/marketplace-order/update-marketplace-order.ts +35 -0
- package/server/graphql/resolvers/marketplace-order-shipping/update-marketplace-order-shipping.ts +3 -1
- package/server/graphql/types/marketplace-order/index.ts +2 -0
- package/server/graphql/types/marketplace-order/logistics-info.ts +2 -0
- package/server/graphql/types/marketplace-order/marketplace-order.ts +3 -0
- package/server/graphql/types/marketplace-order-shipping/marketplace-order-shipping-patch.ts +3 -0
- package/server/graphql/types/marketplace-order-shipping/marketplace-order-shipping.ts +3 -0
- package/server/graphql/types/marketplace-order-shipping/new-marketplace-order-shipping.ts +3 -0
|
@@ -113,6 +113,7 @@ export const syncAllMarketplaceOrder = {
|
|
|
113
113
|
marketplaceOrder = await tx.getRepository(MarketplaceOrder).save(marketplaceOrder)
|
|
114
114
|
|
|
115
115
|
let savedMarketplaceOrderShipping: MarketplaceOrderShipping = new MarketplaceOrderShipping()
|
|
116
|
+
let savedMarketplaceOrderShippings: MarketplaceOrderShipping[] = []
|
|
116
117
|
|
|
117
118
|
if (order?.orderShipping) {
|
|
118
119
|
const orderShipping: any = order.orderShipping
|
|
@@ -132,30 +133,66 @@ export const syncAllMarketplaceOrder = {
|
|
|
132
133
|
marketplaceOrderShipping.phone2 = orderShipping.phone2
|
|
133
134
|
marketplaceOrderShipping.trackingNo = order.trackingNo
|
|
134
135
|
marketplaceOrderShipping.orderNoRef = marketplaceOrder.orderNo
|
|
136
|
+
marketplaceOrderShipping.subOrderNoRef = marketplaceOrder.orderNo
|
|
135
137
|
marketplaceOrderShipping.marketplaceStore = marketplaceStore
|
|
136
138
|
marketplaceOrderShipping.creator = user
|
|
137
139
|
marketplaceOrderShipping.domain = marketplaceStore.domain
|
|
138
140
|
|
|
139
141
|
if (existingMarketplaceOrder) {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
+
if (existingMarketplaceOrder.isSplitted) {
|
|
143
|
+
let existingOrderShippings: MarketplaceOrderShipping[] = await tx
|
|
144
|
+
.getRepository(MarketplaceOrderShipping)
|
|
145
|
+
.find({
|
|
146
|
+
where: { domain, marketplaceStore, orderNoRef: marketplaceOrder.orderNo }
|
|
147
|
+
})
|
|
148
|
+
|
|
149
|
+
existingOrderShippings = existingOrderShippings.map(item => {
|
|
150
|
+
return {
|
|
151
|
+
...item,
|
|
152
|
+
address1: orderShipping.address1,
|
|
153
|
+
address2: orderShipping.address2,
|
|
154
|
+
address3: orderShipping.address3,
|
|
155
|
+
address4: orderShipping.address4,
|
|
156
|
+
address5: orderShipping.address5,
|
|
157
|
+
attentionTo: orderShipping.attentionTo,
|
|
158
|
+
city: orderShipping.city,
|
|
159
|
+
country: orderShipping.country,
|
|
160
|
+
postCode: orderShipping.postCode,
|
|
161
|
+
phone1: orderShipping.phone1,
|
|
162
|
+
phone2: orderShipping.phone2,
|
|
163
|
+
trackingNo: order.trackingNo
|
|
164
|
+
}
|
|
165
|
+
})
|
|
166
|
+
|
|
167
|
+
savedMarketplaceOrderShippings = await tx
|
|
168
|
+
.getRepository(MarketplaceOrderShipping)
|
|
169
|
+
.save(existingOrderShippings)
|
|
170
|
+
} else {
|
|
171
|
+
let existingOrderShipping: MarketplaceOrderShipping
|
|
172
|
+
existingOrderShipping = existingMarketplaceOrder.marketplaceOrderItems[0].marketplaceOrderShipping
|
|
173
|
+
|
|
174
|
+
marketplaceOrderShipping = {
|
|
175
|
+
...existingOrderShipping,
|
|
176
|
+
...marketplaceOrderShipping,
|
|
177
|
+
updater: user
|
|
178
|
+
}
|
|
142
179
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
updater: user
|
|
180
|
+
savedMarketplaceOrderShipping = await tx
|
|
181
|
+
.getRepository(MarketplaceOrderShipping)
|
|
182
|
+
.save(marketplaceOrderShipping)
|
|
147
183
|
}
|
|
184
|
+
} else {
|
|
185
|
+
savedMarketplaceOrderShipping = await tx
|
|
186
|
+
.getRepository(MarketplaceOrderShipping)
|
|
187
|
+
.save(marketplaceOrderShipping)
|
|
148
188
|
}
|
|
149
|
-
|
|
150
|
-
savedMarketplaceOrderShipping = await tx
|
|
151
|
-
.getRepository(MarketplaceOrderShipping)
|
|
152
|
-
.save(marketplaceOrderShipping)
|
|
153
189
|
}
|
|
154
190
|
|
|
155
191
|
let orderTotalWeight: number = 0
|
|
192
|
+
let foundVariation
|
|
156
193
|
for (var j = 0; j < order.orderItems.length; j++) {
|
|
157
194
|
var item = order.orderItems[j]
|
|
158
|
-
|
|
195
|
+
foundVariation = await tx
|
|
159
196
|
.getRepository(MarketplaceProductVariation)
|
|
160
197
|
.findOne({ where: { variationId: item.variationId } })
|
|
161
198
|
|
|
@@ -180,6 +217,7 @@ export const syncAllMarketplaceOrder = {
|
|
|
180
217
|
marketplaceOrderItem.status = marketplaceOrder.status
|
|
181
218
|
marketplaceOrderItem.marketplaceProductVariation = foundVariation
|
|
182
219
|
marketplaceOrderItem.marketplaceOrder = marketplaceOrder
|
|
220
|
+
marketplaceOrderItem.trackingCode = order.trackingNo
|
|
183
221
|
marketplaceOrderItem.marketplaceOrderShipping = savedMarketplaceOrderShipping
|
|
184
222
|
marketplaceOrderItem.creator = user
|
|
185
223
|
|
|
@@ -190,58 +228,73 @@ export const syncAllMarketplaceOrder = {
|
|
|
190
228
|
}
|
|
191
229
|
|
|
192
230
|
if (existingMarketplaceOrder) {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
if (nonMatchedOrderItems.length > 0)
|
|
205
|
-
await tx.getRepository(MarketplaceOrderItem).delete(nonMatchedOrderItems)
|
|
206
|
-
|
|
207
|
-
existingOrderItems = marketplaceOrderItems.map(item => {
|
|
208
|
-
const matchedOrderItem = existingOrderItems.find(itm => itm.name == item.name)
|
|
209
|
-
if (matchedOrderItem) {
|
|
210
|
-
return {
|
|
211
|
-
...matchedOrderItem,
|
|
212
|
-
...item,
|
|
213
|
-
updater: user
|
|
214
|
-
}
|
|
231
|
+
if (existingMarketplaceOrder.isSplitted) {
|
|
232
|
+
let existingOrderItems: MarketplaceOrderItem[] = []
|
|
233
|
+
existingOrderItems = existingMarketplaceOrder.marketplaceOrderItems
|
|
234
|
+
|
|
235
|
+
marketplaceOrderItems = existingOrderItems.filter(itm => itm.name == item.name)
|
|
236
|
+
marketplaceOrderItems = marketplaceOrderItems.map(marketplaceOrderitem => {
|
|
237
|
+
return {
|
|
238
|
+
...marketplaceOrderitem,
|
|
239
|
+
status: order.status,
|
|
240
|
+
marketplaceProductVariation: foundVariation,
|
|
241
|
+
trackingCode: order.trackingNo
|
|
215
242
|
}
|
|
216
243
|
})
|
|
217
244
|
} else {
|
|
218
|
-
existingOrderItems =
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
245
|
+
let existingOrderItems: MarketplaceOrderItem[] = []
|
|
246
|
+
existingOrderItems = existingMarketplaceOrder.marketplaceOrderItems
|
|
247
|
+
|
|
248
|
+
if (existingOrderItems.length > marketplaceOrderItems.length) {
|
|
249
|
+
let nonMatchedOrderItems = []
|
|
250
|
+
existingOrderItems.map(item => {
|
|
251
|
+
const matchedOrderItem = marketplaceOrderItems.find(itm => itm.name === item.name)
|
|
252
|
+
if (!matchedOrderItem) {
|
|
253
|
+
nonMatchedOrderItems.push({ ...item })
|
|
225
254
|
}
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
255
|
+
})
|
|
256
|
+
if (nonMatchedOrderItems.length > 0)
|
|
257
|
+
await tx.getRepository(MarketplaceOrderItem).delete(nonMatchedOrderItems)
|
|
258
|
+
|
|
259
|
+
existingOrderItems = marketplaceOrderItems.map(item => {
|
|
260
|
+
const matchedOrderItem = existingOrderItems.find(itm => itm.name == item.name)
|
|
261
|
+
if (matchedOrderItem) {
|
|
262
|
+
return {
|
|
263
|
+
...matchedOrderItem,
|
|
264
|
+
...item,
|
|
265
|
+
updater: user
|
|
266
|
+
}
|
|
230
267
|
}
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
|
|
268
|
+
})
|
|
269
|
+
} else {
|
|
270
|
+
existingOrderItems = marketplaceOrderItems.map(item => {
|
|
271
|
+
const matchedOrderItem = existingOrderItems.find(itm => itm.name == item.name)
|
|
272
|
+
if (matchedOrderItem) {
|
|
273
|
+
return {
|
|
274
|
+
...matchedOrderItem,
|
|
275
|
+
...item,
|
|
276
|
+
updater: user
|
|
277
|
+
}
|
|
278
|
+
} else {
|
|
279
|
+
return {
|
|
280
|
+
...item,
|
|
281
|
+
updater: user
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
})
|
|
285
|
+
}
|
|
234
286
|
|
|
235
|
-
|
|
287
|
+
marketplaceOrderItems = existingOrderItems
|
|
288
|
+
|
|
289
|
+
savedMarketplaceOrderShipping.totalWeight = orderTotalWeight
|
|
290
|
+
savedMarketplaceOrderShipping = await tx
|
|
291
|
+
.getRepository(MarketplaceOrderShipping)
|
|
292
|
+
.save(savedMarketplaceOrderShipping)
|
|
293
|
+
}
|
|
236
294
|
}
|
|
237
295
|
|
|
238
296
|
await tx.getRepository(MarketplaceOrderItem).save(marketplaceOrderItems)
|
|
239
297
|
|
|
240
|
-
savedMarketplaceOrderShipping.totalWeight = orderTotalWeight
|
|
241
|
-
savedMarketplaceOrderShipping = await tx
|
|
242
|
-
.getRepository(MarketplaceOrderShipping)
|
|
243
|
-
.save(savedMarketplaceOrderShipping)
|
|
244
|
-
|
|
245
298
|
if (j == marketplaceOrders.length - 1) {
|
|
246
299
|
lastOrderId = order.name
|
|
247
300
|
}
|
|
@@ -87,20 +87,41 @@ export const syncMarketplaceOrder = {
|
|
|
87
87
|
|
|
88
88
|
const cancelStatuses: string[] = ['cancelled', 'canceled']
|
|
89
89
|
if (cancelStatuses.includes(marketplaceOrder.status) && marketplaceOrder?.releaseOrderId) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
90
|
+
if (existingMarketplaceOrder.isSplitted) {
|
|
91
|
+
const fulfillmentCenter: FulfillmentCenter = marketplaceOrder.fulfillmentCenter
|
|
92
|
+
const centerId: string = fulfillmentCenter.centerId
|
|
93
|
+
const warehouseDomain: Domain = await tx.getRepository(Domain).findOne({ where: { subdomain: centerId } })
|
|
94
|
+
const customerBizplaces: Bizplace[] = await getCustomerBizplaces(warehouseDomain)
|
|
95
|
+
const customerBizplaceId: string = customerBizplaces[0].id
|
|
96
|
+
|
|
97
|
+
const { items: releaseOrders }: any = await FulfillmentAPI.getOutboundOrders(fulfillmentCenter, {
|
|
98
|
+
customerBizplaceId,
|
|
99
|
+
refNo: marketplaceOrder.orderNo
|
|
100
|
+
})
|
|
101
|
+
|
|
102
|
+
if (releaseOrders?.length) {
|
|
103
|
+
for (var a = 0; a < releaseOrders.length; a++) {
|
|
104
|
+
const releaseOrderId: string = releaseOrders[a].id
|
|
105
|
+
await FulfillmentAPI.cancelReleaseOrder(fulfillmentCenter, { customerBizplaceId, releaseOrderId })
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
} else {
|
|
109
|
+
const releaseOrderId: string = marketplaceOrder.releaseOrderId
|
|
110
|
+
const fulfillmentCenter: FulfillmentCenter = marketplaceOrder.fulfillmentCenter
|
|
111
|
+
const centerId: string = fulfillmentCenter.centerId
|
|
112
|
+
|
|
113
|
+
const warehouseDomain: Domain = await tx.getRepository(Domain).findOne({ where: { subdomain: centerId } })
|
|
114
|
+
const customerBizplaces: Bizplace[] = await getCustomerBizplaces(warehouseDomain)
|
|
115
|
+
const customerBizplaceId: string = customerBizplaces[0].id
|
|
116
|
+
await FulfillmentAPI.cancelReleaseOrder(fulfillmentCenter, { customerBizplaceId, releaseOrderId })
|
|
117
|
+
}
|
|
98
118
|
}
|
|
99
119
|
}
|
|
100
120
|
|
|
101
121
|
marketplaceOrder = await tx.getRepository(MarketplaceOrder).save(marketplaceOrder)
|
|
102
122
|
|
|
103
123
|
let savedMarketplaceOrderShipping: MarketplaceOrderShipping = new MarketplaceOrderShipping()
|
|
124
|
+
let savedMarketplaceOrderShippings: MarketplaceOrderShipping[] = []
|
|
104
125
|
|
|
105
126
|
if (order?.orderShipping) {
|
|
106
127
|
const orderShipping: any = order.orderShipping
|
|
@@ -120,30 +141,66 @@ export const syncMarketplaceOrder = {
|
|
|
120
141
|
marketplaceOrderShipping.phone2 = orderShipping.phone2
|
|
121
142
|
marketplaceOrderShipping.trackingNo = order.trackingNo
|
|
122
143
|
marketplaceOrderShipping.orderNoRef = marketplaceOrder.orderNo
|
|
144
|
+
marketplaceOrderShipping.subOrderNoRef = marketplaceOrder.orderNo
|
|
123
145
|
marketplaceOrderShipping.marketplaceStore = marketplaceStore
|
|
124
146
|
marketplaceOrderShipping.creator = user
|
|
125
147
|
marketplaceOrderShipping.domain = marketplaceStore.domain
|
|
126
148
|
|
|
127
149
|
if (existingMarketplaceOrder) {
|
|
128
|
-
|
|
129
|
-
|
|
150
|
+
if (existingMarketplaceOrder.isSplitted) {
|
|
151
|
+
let existingOrderShippings: MarketplaceOrderShipping[] = await tx
|
|
152
|
+
.getRepository(MarketplaceOrderShipping)
|
|
153
|
+
.find({
|
|
154
|
+
where: { domain, marketplaceStore, orderNoRef: marketplaceOrder.orderNo }
|
|
155
|
+
})
|
|
156
|
+
|
|
157
|
+
existingOrderShippings = existingOrderShippings.map(item => {
|
|
158
|
+
return {
|
|
159
|
+
...item,
|
|
160
|
+
address1: orderShipping.address1,
|
|
161
|
+
address2: orderShipping.address2,
|
|
162
|
+
address3: orderShipping.address3,
|
|
163
|
+
address4: orderShipping.address4,
|
|
164
|
+
address5: orderShipping.address5,
|
|
165
|
+
attentionTo: orderShipping.attentionTo,
|
|
166
|
+
city: orderShipping.city,
|
|
167
|
+
country: orderShipping.country,
|
|
168
|
+
postCode: orderShipping.postCode,
|
|
169
|
+
phone1: orderShipping.phone1,
|
|
170
|
+
phone2: orderShipping.phone2,
|
|
171
|
+
trackingNo: order.trackingNo
|
|
172
|
+
}
|
|
173
|
+
})
|
|
174
|
+
|
|
175
|
+
savedMarketplaceOrderShippings = await tx
|
|
176
|
+
.getRepository(MarketplaceOrderShipping)
|
|
177
|
+
.save(existingOrderShippings)
|
|
178
|
+
} else {
|
|
179
|
+
let existingOrderShipping: MarketplaceOrderShipping
|
|
180
|
+
existingOrderShipping = existingMarketplaceOrder.marketplaceOrderItems[0].marketplaceOrderShipping
|
|
181
|
+
|
|
182
|
+
marketplaceOrderShipping = {
|
|
183
|
+
...existingOrderShipping,
|
|
184
|
+
...marketplaceOrderShipping,
|
|
185
|
+
updater: user
|
|
186
|
+
}
|
|
130
187
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
updater: user
|
|
188
|
+
savedMarketplaceOrderShipping = await tx
|
|
189
|
+
.getRepository(MarketplaceOrderShipping)
|
|
190
|
+
.save(marketplaceOrderShipping)
|
|
135
191
|
}
|
|
192
|
+
} else {
|
|
193
|
+
savedMarketplaceOrderShipping = await tx
|
|
194
|
+
.getRepository(MarketplaceOrderShipping)
|
|
195
|
+
.save(marketplaceOrderShipping)
|
|
136
196
|
}
|
|
137
|
-
|
|
138
|
-
savedMarketplaceOrderShipping = await tx
|
|
139
|
-
.getRepository(MarketplaceOrderShipping)
|
|
140
|
-
.save(marketplaceOrderShipping)
|
|
141
197
|
}
|
|
142
198
|
|
|
143
199
|
let orderTotalWeight: number = 0
|
|
200
|
+
let foundVariation
|
|
144
201
|
for (var j = 0; j < order.orderItems.length; j++) {
|
|
145
202
|
var item = order.orderItems[j]
|
|
146
|
-
|
|
203
|
+
foundVariation = await tx
|
|
147
204
|
.getRepository(MarketplaceProductVariation)
|
|
148
205
|
.findOne({ where: { domain: marketplaceStore.domain, variationId: item.variationId } })
|
|
149
206
|
|
|
@@ -180,58 +237,78 @@ export const syncMarketplaceOrder = {
|
|
|
180
237
|
}
|
|
181
238
|
|
|
182
239
|
if (existingMarketplaceOrder) {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
if (nonMatchedOrderItems.length > 0)
|
|
195
|
-
await tx.getRepository(MarketplaceOrderItem).delete(nonMatchedOrderItems)
|
|
196
|
-
|
|
197
|
-
existingOrderItems = marketplaceOrderItems.map(item => {
|
|
198
|
-
const matchedOrderItem = existingOrderItems.find(itm => itm.name == item.name)
|
|
199
|
-
if (matchedOrderItem) {
|
|
200
|
-
return {
|
|
201
|
-
...matchedOrderItem,
|
|
202
|
-
...item,
|
|
203
|
-
updater: user
|
|
204
|
-
}
|
|
240
|
+
if (existingMarketplaceOrder.isSplitted) {
|
|
241
|
+
let existingOrderItems: MarketplaceOrderItem[] = []
|
|
242
|
+
existingOrderItems = existingMarketplaceOrder.marketplaceOrderItems
|
|
243
|
+
|
|
244
|
+
marketplaceOrderItems = existingOrderItems.filter(itm => itm.name == item.name)
|
|
245
|
+
marketplaceOrderItems = marketplaceOrderItems.map(marketplaceOrderitem => {
|
|
246
|
+
return {
|
|
247
|
+
...marketplaceOrderitem,
|
|
248
|
+
status: order.status,
|
|
249
|
+
marketplaceProductVariation: foundVariation,
|
|
250
|
+
trackingCode: order.trackingNo
|
|
205
251
|
}
|
|
206
252
|
})
|
|
207
253
|
} else {
|
|
208
|
-
existingOrderItems =
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
254
|
+
let existingOrderItems: MarketplaceOrderItem[] = []
|
|
255
|
+
existingOrderItems = existingMarketplaceOrder.marketplaceOrderItems
|
|
256
|
+
|
|
257
|
+
if (existingOrderItems.length > marketplaceOrderItems.length) {
|
|
258
|
+
let nonMatchedOrderItems = []
|
|
259
|
+
existingOrderItems.map(item => {
|
|
260
|
+
const matchedOrderItem = marketplaceOrderItems.find(itm => itm.name === item.name)
|
|
261
|
+
if (!matchedOrderItem) {
|
|
262
|
+
nonMatchedOrderItems.push({ ...item })
|
|
215
263
|
}
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
264
|
+
})
|
|
265
|
+
if (nonMatchedOrderItems.length > 0)
|
|
266
|
+
await tx.getRepository(MarketplaceOrderItem).delete(nonMatchedOrderItems)
|
|
267
|
+
|
|
268
|
+
existingOrderItems = marketplaceOrderItems.map(item => {
|
|
269
|
+
const matchedOrderItem = existingOrderItems.find(itm => itm.name == item.name)
|
|
270
|
+
if (matchedOrderItem) {
|
|
271
|
+
return {
|
|
272
|
+
...matchedOrderItem,
|
|
273
|
+
...item,
|
|
274
|
+
updater: user
|
|
275
|
+
}
|
|
220
276
|
}
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
|
|
277
|
+
})
|
|
278
|
+
} else {
|
|
279
|
+
existingOrderItems = marketplaceOrderItems.map(item => {
|
|
280
|
+
const matchedOrderItem = existingOrderItems.find(itm => itm.name == item.name)
|
|
281
|
+
if (matchedOrderItem) {
|
|
282
|
+
return {
|
|
283
|
+
...matchedOrderItem,
|
|
284
|
+
...item,
|
|
285
|
+
updater: user
|
|
286
|
+
}
|
|
287
|
+
} else {
|
|
288
|
+
return {
|
|
289
|
+
...item,
|
|
290
|
+
updater: user
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
})
|
|
294
|
+
}
|
|
224
295
|
|
|
225
|
-
|
|
296
|
+
marketplaceOrderItems = existingOrderItems
|
|
297
|
+
|
|
298
|
+
savedMarketplaceOrderShipping.totalWeight = orderTotalWeight
|
|
299
|
+
savedMarketplaceOrderShipping = await tx
|
|
300
|
+
.getRepository(MarketplaceOrderShipping)
|
|
301
|
+
.save(savedMarketplaceOrderShipping)
|
|
302
|
+
}
|
|
303
|
+
} else {
|
|
304
|
+
savedMarketplaceOrderShipping.totalWeight = orderTotalWeight
|
|
305
|
+
savedMarketplaceOrderShipping = await tx
|
|
306
|
+
.getRepository(MarketplaceOrderShipping)
|
|
307
|
+
.save(savedMarketplaceOrderShipping)
|
|
226
308
|
}
|
|
227
309
|
|
|
228
310
|
await tx.getRepository(MarketplaceOrderItem).save(marketplaceOrderItems)
|
|
229
311
|
|
|
230
|
-
savedMarketplaceOrderShipping.totalWeight = orderTotalWeight
|
|
231
|
-
savedMarketplaceOrderShipping = await tx
|
|
232
|
-
.getRepository(MarketplaceOrderShipping)
|
|
233
|
-
.save(savedMarketplaceOrderShipping)
|
|
234
|
-
|
|
235
312
|
if (i == marketplaceOrders.length - 1) {
|
|
236
313
|
lastOrderId = order.name
|
|
237
314
|
}
|