@things-factory/integration-marketplace 4.2.3 → 4.2.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.
Files changed (79) hide show
  1. package/dist-server/controllers/index.js +1 -0
  2. package/dist-server/controllers/index.js.map +1 -1
  3. package/dist-server/controllers/magento/apis/get-store-orders.js +2 -1
  4. package/dist-server/controllers/magento/apis/get-store-orders.js.map +1 -1
  5. package/dist-server/controllers/magento/apis/get-store-products.js +8 -9
  6. package/dist-server/controllers/magento/apis/get-store-products.js.map +1 -1
  7. package/dist-server/controllers/magento/apis/update-order-status.js +39 -14
  8. package/dist-server/controllers/magento/apis/update-order-status.js.map +1 -1
  9. package/dist-server/controllers/store-api/index.js +14 -0
  10. package/dist-server/controllers/store-api/index.js.map +1 -1
  11. package/dist-server/controllers/tiktok/apis/echo.js +19 -0
  12. package/dist-server/controllers/tiktok/apis/echo.js.map +1 -0
  13. package/dist-server/controllers/tiktok/apis/get-store-order-document.js +27 -0
  14. package/dist-server/controllers/tiktok/apis/get-store-order-document.js.map +1 -0
  15. package/dist-server/controllers/tiktok/apis/get-store-order-package.js +47 -0
  16. package/dist-server/controllers/tiktok/apis/get-store-order-package.js.map +1 -0
  17. package/dist-server/controllers/tiktok/apis/get-store-order-packages.js +39 -0
  18. package/dist-server/controllers/tiktok/apis/get-store-order-packages.js.map +1 -0
  19. package/dist-server/controllers/tiktok/apis/get-store-order.js +137 -0
  20. package/dist-server/controllers/tiktok/apis/get-store-order.js.map +1 -0
  21. package/dist-server/controllers/tiktok/apis/get-store-orders.js +47 -0
  22. package/dist-server/controllers/tiktok/apis/get-store-orders.js.map +1 -0
  23. package/dist-server/controllers/tiktok/apis/get-store-product-attributes.js +30 -0
  24. package/dist-server/controllers/tiktok/apis/get-store-product-attributes.js.map +1 -0
  25. package/dist-server/controllers/tiktok/apis/get-store-product-categories.js +28 -0
  26. package/dist-server/controllers/tiktok/apis/get-store-product-categories.js.map +1 -0
  27. package/dist-server/controllers/tiktok/apis/get-store-product.js +91 -0
  28. package/dist-server/controllers/tiktok/apis/get-store-product.js.map +1 -0
  29. package/dist-server/controllers/tiktok/apis/get-store-products.js +36 -0
  30. package/dist-server/controllers/tiktok/apis/get-store-products.js.map +1 -0
  31. package/dist-server/controllers/tiktok/apis/index.js +26 -0
  32. package/dist-server/controllers/tiktok/apis/index.js.map +1 -0
  33. package/dist-server/controllers/tiktok/apis/update-order-status.js +27 -0
  34. package/dist-server/controllers/tiktok/apis/update-order-status.js.map +1 -0
  35. package/dist-server/controllers/tiktok/apis/update-store-product-variation-price.js +28 -0
  36. package/dist-server/controllers/tiktok/apis/update-store-product-variation-price.js.map +1 -0
  37. package/dist-server/controllers/tiktok/apis/update-store-product-variation-stock.js +32 -0
  38. package/dist-server/controllers/tiktok/apis/update-store-product-variation-stock.js.map +1 -0
  39. package/dist-server/controllers/tiktok/client/index.js +15 -0
  40. package/dist-server/controllers/tiktok/client/index.js.map +1 -0
  41. package/dist-server/controllers/tiktok/client/signature.js +63 -0
  42. package/dist-server/controllers/tiktok/client/signature.js.map +1 -0
  43. package/dist-server/controllers/tiktok/client/tiktok.js +93 -0
  44. package/dist-server/controllers/tiktok/client/tiktok.js.map +1 -0
  45. package/dist-server/controllers/tiktok/client/types.js +3 -0
  46. package/dist-server/controllers/tiktok/client/types.js.map +1 -0
  47. package/dist-server/controllers/tiktok/index.js +30 -0
  48. package/dist-server/controllers/tiktok/index.js.map +1 -0
  49. package/dist-server/controllers/tiktok/platform-action.js +44 -0
  50. package/dist-server/controllers/tiktok/platform-action.js.map +1 -0
  51. package/dist-server/controllers/woocommerce/apis/get-store-products.js +17 -6
  52. package/dist-server/controllers/woocommerce/apis/get-store-products.js.map +1 -1
  53. package/package.json +2 -2
  54. package/server/controllers/index.ts +1 -0
  55. package/server/controllers/magento/apis/get-store-orders.ts +3 -1
  56. package/server/controllers/magento/apis/get-store-products.ts +1 -2
  57. package/server/controllers/magento/apis/update-order-status.ts +43 -15
  58. package/server/controllers/store-api/index.ts +6 -0
  59. package/server/controllers/tiktok/apis/echo.ts +14 -0
  60. package/server/controllers/tiktok/apis/get-store-order-document.ts +26 -0
  61. package/server/controllers/tiktok/apis/get-store-order-package.ts +46 -0
  62. package/server/controllers/tiktok/apis/get-store-order-packages.ts +43 -0
  63. package/server/controllers/tiktok/apis/get-store-order.ts +169 -0
  64. package/server/controllers/tiktok/apis/get-store-orders.ts +52 -0
  65. package/server/controllers/tiktok/apis/get-store-product-attributes.ts +29 -0
  66. package/server/controllers/tiktok/apis/get-store-product-categories.ts +27 -0
  67. package/server/controllers/tiktok/apis/get-store-product.ts +95 -0
  68. package/server/controllers/tiktok/apis/get-store-products.ts +38 -0
  69. package/server/controllers/tiktok/apis/index.ts +13 -0
  70. package/server/controllers/tiktok/apis/update-order-status.ts +22 -0
  71. package/server/controllers/tiktok/apis/update-store-product-variation-price.ts +24 -0
  72. package/server/controllers/tiktok/apis/update-store-product-variation-stock.ts +28 -0
  73. package/server/controllers/tiktok/client/index.ts +2 -0
  74. package/server/controllers/tiktok/client/signature.ts +78 -0
  75. package/server/controllers/tiktok/client/tiktok.ts +139 -0
  76. package/server/controllers/tiktok/client/types.ts +20 -0
  77. package/server/controllers/tiktok/index.ts +8 -0
  78. package/server/controllers/tiktok/platform-action.ts +48 -0
  79. package/server/controllers/woocommerce/apis/get-store-products.ts +33 -22
@@ -17,6 +17,7 @@ function getStoreProducts() {
17
17
  return { payload };
18
18
  },
19
19
  async normalize(res, { store }) {
20
+ var _a, _b;
20
21
  const { items, totalItems: totalProducts } = res;
21
22
  let results = [];
22
23
  for (var i = 0; i < items.length; i++) {
@@ -32,13 +33,16 @@ function getStoreProducts() {
32
33
  images: product.images.map(image => {
33
34
  return image.src;
34
35
  }),
35
- attributes: product.attributes.map(attribute => {
36
+ attributes: ((_a = product === null || product === void 0 ? void 0 : product.attributes) === null || _a === void 0 ? void 0 : _a.map(attribute => {
36
37
  return {
38
+ attributeId: attribute.id,
39
+ name: attribute.name,
40
+ originalValue: attribute.options,
37
41
  native_attribute_id: attribute.id,
38
42
  attribute_key: attribute.name,
39
43
  values: attribute.options
40
44
  };
41
- }),
45
+ })) || [],
42
46
  isVerified: product.purchasable,
43
47
  variations: productVariations.length === 0
44
48
  ? [
@@ -52,13 +56,16 @@ function getStoreProducts() {
52
56
  primaryUnitValue: product.weight === '' ? null : parseFloat(product.weight),
53
57
  costPrice: product.price === '' ? null : parseFloat(product.price),
54
58
  sellPrice: product.sale_price === '' ? null : parseFloat(product.sale_price),
55
- attributes: product.attributes.map(attribute => {
59
+ attributes: ((_b = product === null || product === void 0 ? void 0 : product.attributes) === null || _b === void 0 ? void 0 : _b.map(attribute => {
56
60
  return {
61
+ attributeId: attribute.id,
62
+ name: attribute.name,
63
+ originalValue: attribute.options,
57
64
  native_attribute_id: attribute.id,
58
65
  attribute_key: attribute.name,
59
66
  values: attribute.options
60
67
  };
61
- }),
68
+ })) || [],
62
69
  isEnabled: product.purchasable,
63
70
  length: product.dimensions.length * 10,
64
71
  width: product.dimensions.width * 10,
@@ -67,6 +74,7 @@ function getStoreProducts() {
67
74
  }
68
75
  ]
69
76
  : productVariations.map(variant => {
77
+ var _a;
70
78
  return {
71
79
  variationId: variant.id,
72
80
  variationSku: variant.sku,
@@ -77,13 +85,16 @@ function getStoreProducts() {
77
85
  primaryUnitValue: variant.weight === '' ? null : parseFloat(variant.weight),
78
86
  costPrice: variant.price === '' ? null : parseFloat(variant.price),
79
87
  sellPrice: variant.sale_price === '' ? null : parseFloat(variant.sale_price),
80
- attributes: variant.attributes.map(attribute => {
88
+ attributes: ((_a = variant === null || variant === void 0 ? void 0 : variant.attributes) === null || _a === void 0 ? void 0 : _a.map(attribute => {
81
89
  return {
90
+ attributeId: attribute.id,
91
+ name: attribute.name,
92
+ originalValue: attribute.options,
82
93
  native_attribute_id: attribute.id,
83
94
  attribute_key: attribute.name,
84
95
  values: [attribute.option]
85
96
  };
86
- }),
97
+ })) || [],
87
98
  isEnabled: variant.purchasable,
88
99
  length: variant.dimensions.length * 10,
89
100
  width: variant.dimensions.width * 10,
@@ -1 +1 @@
1
- {"version":3,"file":"get-store-products.js","sourceRoot":"","sources":["../../../../server/controllers/woocommerce/apis/get-store-products.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-store-products.js","sourceRoot":"","sources":["../../../../server/controllers/woocommerce/apis/get-store-products.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/integration-marketplace",
3
- "version": "4.2.3",
3
+ "version": "4.2.8",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -52,5 +52,5 @@
52
52
  "nock": "^13.0.2",
53
53
  "should": "^13.2.3"
54
54
  },
55
- "gitHead": "38faf657cf86a08d942c4ada9b36b2f62fb94cce"
55
+ "gitHead": "7ea97fd646fe004e409d3d3ff781cd5301e15140"
56
56
  }
@@ -3,6 +3,7 @@ import './shopee'
3
3
  import './shopify'
4
4
  import './zalora'
5
5
  import './woocommerce'
6
+ import './tiktok'
6
7
 
7
8
  export * from './shopify'
8
9
  export * from './store-api'
@@ -149,7 +149,9 @@ export function getStoreOrders() {
149
149
  return result
150
150
  })
151
151
 
152
- return { results }
152
+ let more = res.search_criteria.page_size * res.search_criteria.current_page < res.total_count || false
153
+
154
+ return { results, more }
153
155
  }
154
156
  }
155
157
  }
@@ -53,7 +53,6 @@ export function getStoreProducts() {
53
53
 
54
54
  const result = {
55
55
  itemId: product.id,
56
- parentId: parentLinkList.find(e => e.children.includes(product.id))?.id || 0,
57
56
  isku: product.sku,
58
57
  name: product.name,
59
58
  type: product.type_id,
@@ -115,7 +114,7 @@ export function getStoreProducts() {
115
114
  results.push({ ...result })
116
115
  }
117
116
 
118
- return { results, total: total_count }
117
+ return { results, total: total_count, parentLinkList }
119
118
  }
120
119
  }
121
120
  }
@@ -3,27 +3,24 @@ import { StoreAPI } from '../../store-api'
3
3
  export function updateOrderStatus() {
4
4
  return {
5
5
  method: 'post',
6
- path: '/order/{subpath}',
7
- async denormalize(req, { store }) {
8
- let { orderId, status, trackingNo, carrier } = req
6
+ path: '/{subpath}',
7
+ denormalize(req) {
8
+ let { orderId, status, trackingNo, carrier, orderItems } = req
9
9
  let pr: any
10
- if (status == 'SHIPPED' || status == 'READY_TO_SHIP' || status == 'PROCESSING' || status == 'PACKED') {
11
-
12
- let order = await StoreAPI.getStoreOrder(store, { id: orderId })
13
-
10
+ if (status == 'READY_TO_SHIP') {
14
11
  pr = {
15
12
  resource: {
16
- subpath: `${orderId}/ship`
13
+ subpath: `order/${orderId}/ship`
17
14
  },
18
15
  payload: {
19
- items: order.items.map(e => { return {order_item_id: e.item_id, qty: e.qty_ordered} }),
20
- tracks: [
16
+ items: unmapOrderItems(orderItems),
17
+ tracks: trackingNo ? [
21
18
  {
22
19
  carrier_code: carrier,
23
20
  track_number: trackingNo,
24
21
  title: carrier
25
22
  }
26
- ],
23
+ ] : [],
27
24
  arguments: {
28
25
  extension_attributes: {
29
26
  source_code: 'default'
@@ -31,16 +28,22 @@ export function updateOrderStatus() {
31
28
  }
32
29
  }
33
30
  }
34
- } else if (status == 'DELIVERED' || status == 'CLOSED') {
31
+ } else if (status == 'DELIVERED') {
35
32
  pr = {
36
33
  resource: {
37
- subpath: `${orderId}/invoice`
34
+ subpath: `order/${orderId}/invoice`
38
35
  }
39
36
  }
40
- } else if (status == 'REFUND_COMPLETE' || status == 'RETURN_COMPLETE') {
37
+ } else if (status == 'REFUND_COMPLETE') {
41
38
  pr = {
42
39
  resource: {
43
- subpath: `${orderId}/refund`
40
+ subpath: `order/${orderId}/refund`
41
+ }
42
+ }
43
+ } else if (status == 'CANCELLED') {
44
+ pr = {
45
+ resource: {
46
+ subpath: `orders/${orderId}/cancel`
44
47
  }
45
48
  }
46
49
  }
@@ -51,3 +54,28 @@ export function updateOrderStatus() {
51
54
  }
52
55
  }
53
56
  }
57
+
58
+ function unmapOrderItems(orderItems) {
59
+ let itemsList = []
60
+ let res = orderItems.map(e => {
61
+ return e.split('-')[0]
62
+ })
63
+
64
+ for (let item of res) {
65
+ let count = 0
66
+
67
+ res.forEach(element => {
68
+ if (element === item) {
69
+ count += 1
70
+ }
71
+ })
72
+
73
+ itemsList.push({
74
+ order_item_id: item,
75
+ qty: count
76
+ })
77
+ }
78
+
79
+ itemsList = itemsList.filter((value, index, self) => index === self.findIndex(t => t.order_item_id === value.order_item_id))
80
+ return itemsList
81
+ }
@@ -66,6 +66,12 @@ export class StoreAPI {
66
66
  @api
67
67
  static getStoreOrder(store, req): any {}
68
68
 
69
+ @api
70
+ static getStoreOrderPackages(store, req): any {}
71
+
72
+ @api
73
+ static getStoreOrderPackage(store, req): any {}
74
+
69
75
  @api
70
76
  static getStoreOrderItems(store, req): any {}
71
77
 
@@ -0,0 +1,14 @@
1
+ export function echo() {
2
+ return {
3
+ path: '/echo',
4
+ denormalize(req) {
5
+ return { ...req }
6
+ },
7
+ normalize(res) {
8
+ return { ...res }
9
+ },
10
+ action({ store, method, path, request, platformAction }) {
11
+ return { ...request }
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,26 @@
1
+ /* https://bytedance.feishu.cn/docs/doccnDyz5Bbk26iOdejbBRBlLrb#ytBXoS */
2
+
3
+ export function getStoreOrderDocument() {
4
+ return {
5
+ method: 'get',
6
+ path: '/api/fulfillment/shipping_document',
7
+ denormalize(req) {
8
+ var { packageId, documentType } = req || {}
9
+
10
+ return { payload: { package_id: packageId, document_type: documentType } }
11
+ },
12
+ async normalize(res) {
13
+ const { data } = res
14
+
15
+ let result: any[] = [
16
+ {
17
+ file: data.doc_url,
18
+ fileTypeValue: 'AWB',
19
+ mimeType: 'application/pdf'
20
+ }
21
+ ]
22
+
23
+ return result
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,46 @@
1
+ /* https://bytedance.feishu.cn/docs/doccnDyz5Bbk26iOdejbBRBlLrb#ytBXoS */
2
+
3
+ export function getStoreOrderPackage() {
4
+ return {
5
+ method: 'get',
6
+ path: '/api/fulfillment/detail',
7
+ denormalize(req) {
8
+ var { packageId } = req || {}
9
+
10
+ return { payload: { package_id: packageId } }
11
+ },
12
+ async normalize(res) {
13
+ const { data } = res
14
+
15
+ let result: any = {
16
+ packageId: data.package_id,
17
+ orderInfoList: data.order_info_list.map(itm => {
18
+ return {
19
+ orderId: itm.order_id,
20
+ skuList: itm.sku_list.map(sku => {
21
+ return {
22
+ skuId: sku.sku_id,
23
+ skuName: sku.sku_name,
24
+ skuImage: sku.sku_image,
25
+ quantity: sku.quantity
26
+ }
27
+ })
28
+ }
29
+ }),
30
+ packageStatus: data.package_status,
31
+ deliveryOption: data.delivery_option,
32
+ shippingProvider: data.shipping_provider,
33
+ shippingProviderId: data.shipping_provider_id,
34
+ trackingNumber: data.tracking_number,
35
+ orderListIdList: data.order_line_id_list,
36
+ pickUpType: data.pick_up_type,
37
+ pickUpStartTime: data.pick_up_start_time,
38
+ pickupEndTime: data.pick_up_end_time,
39
+ createTime: data.create_time,
40
+ updateTime: data.update_time
41
+ }
42
+
43
+ return result
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,43 @@
1
+ /* https://bytedance.feishu.cn/wiki/wikcntMLczW460imZUfYqaa1Dng#jIY8hJ */
2
+
3
+ import { StoreAPI } from '../../store-api'
4
+
5
+ export function getStoreOrderPackages() {
6
+ return {
7
+ method: 'post',
8
+ path: '/api/fulfillment/search',
9
+ denormalize(req) {
10
+ var { pagination, fromDate, toDate, nextCursor } = req || {}
11
+ var { page, limit } = pagination || { page: 0, limit: 100 }
12
+
13
+ var create_time_from = Math.floor(new Date(fromDate).getTime() / 1000)
14
+ var create_time_to = Math.floor(new Date(toDate).getTime() / 1000)
15
+
16
+ var payload = {
17
+ page_size: limit,
18
+ cursor: nextCursor,
19
+ create_time_from,
20
+ create_time_to
21
+ }
22
+
23
+ return { payload }
24
+ },
25
+ async normalize(res, { store }) {
26
+ const { data } = res
27
+
28
+ var more: boolean = data?.more || false
29
+ var nextCursor: string = more ? data.next_cursor : null
30
+ const packageList: any[] = data?.package_list || []
31
+
32
+ let results: any[] = []
33
+ for (let i = 0; i < packageList.length; i++) {
34
+ const packageObj: any = packageList[i]
35
+ const packageDetail: any = await StoreAPI.getStoreOrderPackage(store, { packageId: packageObj.package_id })
36
+
37
+ results.push({ ...packageDetail })
38
+ }
39
+
40
+ return { results, more, nextCursor }
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,169 @@
1
+ /* https://bytedance.feishu.cn/docs/doccnDyz5Bbk26iOdejbBRBlLrb#ytBXoS */
2
+
3
+ import { StoreAPI } from '../../store-api'
4
+
5
+ // Delivery Option: STANDARD, EXPRESS, ECONOMY, SEND_BY_SELLER
6
+
7
+ const documentStatuses = [112, 121, 122, 130]
8
+
9
+ export function getStoreOrder() {
10
+ return {
11
+ method: 'post',
12
+ path: '/api/orders/detail/query',
13
+ denormalize(req) {
14
+ var { orderIdList } = req || {}
15
+
16
+ return { payload: { order_id_list: orderIdList } }
17
+ },
18
+ async normalize(res, { store }) {
19
+ const { data } = res
20
+ const orderList = data.order_list
21
+
22
+ let results: any[] = []
23
+ for (let i = 0; i < orderList.length; i++) {
24
+ const order: any = orderList[i]
25
+ const {
26
+ order_id: name,
27
+ order_id: orderNo,
28
+ payment_method: paymentMethod,
29
+ payment_info: paymentInfo,
30
+ order_status: status,
31
+ ext_status: extStatus,
32
+ create_time,
33
+ update_time,
34
+ rts_sla,
35
+ recipient_address: recipientAddress,
36
+ item_list: itemList,
37
+ package_list: packageList,
38
+ delivery_option: deliveryOption
39
+ } = order
40
+
41
+ let orderStatus: string = `ttk_${status}`
42
+ switch (extStatus) {
43
+ case 201:
44
+ case 203:
45
+ orderStatus = `ttk_${extStatus}`
46
+ break
47
+ default:
48
+ orderStatus = `ttk_${status}`
49
+ }
50
+
51
+ var orderUpdatedAt = new Date(update_time * 1000)
52
+ var orderCreatedAt = new Date(Number(create_time))
53
+ var slaExpiresAt = new Date(rts_sla * 1000)
54
+ let docRefNo = orderNo
55
+ let isSOF: boolean = false
56
+ if (deliveryOption == 'SEND_BY_SELLER') isSOF = true
57
+
58
+ let orderItems = itemList.map(item => {
59
+ var { product_id: name, sku_id, quantity: qty, sku_original_price, sku_sale_price } = item
60
+
61
+ return {
62
+ name,
63
+ variationId: sku_id,
64
+ qty,
65
+ paidPrice: sku_sale_price,
66
+ orderNo,
67
+ docRefNo,
68
+ total: sku_sale_price,
69
+ totalTax: 0,
70
+ subtotal: sku_original_price,
71
+ subtotalTax: 0,
72
+ slaExpiresAt
73
+ }
74
+ })
75
+
76
+ const { full_address, phone, zipcode, city, region: country, name: firstName } = recipientAddress
77
+
78
+ let billing = {
79
+ address_1: full_address,
80
+ address_2: null,
81
+ address_3: null,
82
+ address_4: null,
83
+ address_5: null,
84
+ phone,
85
+ phone_2: null,
86
+ postcode: zipcode,
87
+ city,
88
+ country,
89
+ first_name: firstName,
90
+ last_name: null
91
+ }
92
+
93
+ let shipping = {
94
+ address_1: full_address,
95
+ address_2: null,
96
+ address_3: null,
97
+ address_4: null,
98
+ address_5: null,
99
+ phone,
100
+ phone_2: null,
101
+ postcode: zipcode,
102
+ city,
103
+ country,
104
+ first_name: firstName,
105
+ last_name: null
106
+ }
107
+
108
+ let orderShipping = {
109
+ address1: shipping.address_1,
110
+ address2: null,
111
+ address3: null,
112
+ address4: null,
113
+ address5: null,
114
+ phone1: shipping.phone,
115
+ phone2: null,
116
+ postCode: shipping.postcode,
117
+ city: shipping.city,
118
+ country: shipping.country,
119
+ collectionCurrency: paymentInfo.currency,
120
+ attentionTo: shipping.first_name
121
+ }
122
+
123
+ let result: any = {
124
+ name,
125
+ orderNo,
126
+ status: orderStatus,
127
+ orderCreatedAt,
128
+ orderUpdatedAt,
129
+ totalAmount: paymentInfo.total_amount,
130
+ itemCount: itemList.length,
131
+ orderItems,
132
+ orderShipping,
133
+ billing,
134
+ shipping,
135
+ firstName,
136
+ lastName: null,
137
+ isSOF
138
+ }
139
+
140
+ let orderPackage: any = {}
141
+ if (packageList && packageList[0]?.package_id) {
142
+ let orderPackageDetail: any = await StoreAPI.getStoreOrderPackage(store, {
143
+ packageId: packageList[0].package_id
144
+ })
145
+
146
+ orderPackage = {
147
+ ...orderPackageDetail,
148
+ orderId: name
149
+ }
150
+
151
+ if (documentStatuses.indexOf(status)) {
152
+ let orderDocument: any = await StoreAPI.getStoreOrderDocument(store, {
153
+ packageId: packageList[0].package_id,
154
+ documentType: 1
155
+ })
156
+
157
+ orderPackage.orderDocument = orderDocument || []
158
+ }
159
+
160
+ result.orderPackage = orderPackage
161
+ }
162
+
163
+ results.push(result)
164
+ }
165
+
166
+ return results
167
+ }
168
+ }
169
+ }
@@ -0,0 +1,52 @@
1
+ /* https://bytedance.feishu.cn/wiki/wikcntMLczW460imZUfYqaa1Dng#jIY8hJ */
2
+
3
+ import { StoreAPI } from '../../store-api'
4
+
5
+ export function getStoreOrders() {
6
+ return {
7
+ method: 'post',
8
+ path: '/api/orders/search',
9
+ denormalize(req) {
10
+ var { pagination, fromDate, toDate, nextCursor } = req || {}
11
+ var { page, limit } = pagination || { page: 0, limit: 100 }
12
+
13
+ var create_time_from = Math.floor(new Date(fromDate).getTime() / 1000)
14
+ var create_time_to = Math.floor(new Date(toDate).getTime() / 1000)
15
+
16
+ var payload = {
17
+ page_size: limit,
18
+ cursor: nextCursor,
19
+ create_time_from,
20
+ create_time_to
21
+ }
22
+
23
+ return { payload }
24
+ },
25
+ async normalize(res, { store }) {
26
+ const { data } = res
27
+
28
+ var more: boolean = data?.more || false
29
+ var nextCursor: string = more ? data.next_cursor : null
30
+ const orderList: any[] = data?.order_list || []
31
+
32
+ let results: any[] = []
33
+ let orderIds: any = []
34
+ for (let i = 0; i < orderList.length; i++) {
35
+ const order: any = orderList[i]
36
+ orderIds.push({ ...order })
37
+
38
+ if (orderIds.length <= 20) {
39
+ const orderIdList: any = orderIds.map(orderId => orderId.order_id)
40
+ const orderDetails: any[] = await StoreAPI.getStoreOrder(store, { orderIdList })
41
+ orderDetails.map(orderDetail => {
42
+ results.push({ ...orderDetail })
43
+ })
44
+
45
+ orderIds = []
46
+ }
47
+ }
48
+
49
+ return { results, more, nextCursor }
50
+ }
51
+ }
52
+ }
@@ -0,0 +1,29 @@
1
+ /* https://bytedance.feishu.cn/docs/doccnDyz5Bbk26iOdejbBRBlLrb#WBz4V0 */
2
+
3
+ export function getStoreProductAttributes() {
4
+ return {
5
+ method: 'get',
6
+ path: '/api/products/attributes',
7
+ denormalize(req) {
8
+ const { categoryId } = req
9
+ return { payload: { category_id: categoryId } }
10
+ },
11
+ normalize(res) {
12
+ const { data } = res
13
+
14
+ let results: any = []
15
+ data.attributes.map(item => {
16
+ let result: any = {
17
+ id: item.id,
18
+ name: item.local_display_name,
19
+ attributeType: item.attribute_type,
20
+ parent: !item.is_leaf ? 0 : item.parent_id
21
+ }
22
+
23
+ results.push(result)
24
+ })
25
+
26
+ return results
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,27 @@
1
+ /* https://bytedance.feishu.cn/docs/doccnDyz5Bbk26iOdejbBRBlLrb#jIY8hJ */
2
+
3
+ export function getStoreProductCategories() {
4
+ return {
5
+ method: 'get',
6
+ path: '/api/products/categories',
7
+ denormalize(req) {
8
+ return { payload: {} }
9
+ },
10
+ normalize(res) {
11
+ const { data } = res
12
+
13
+ let results: any = []
14
+ data.category_list.map(item => {
15
+ let result: any = {
16
+ id: item.id,
17
+ name: item.local_display_name,
18
+ parent: item.is_leaf ? item.parent_id : 0
19
+ }
20
+
21
+ results.push(result)
22
+ })
23
+
24
+ return { results, total: 1 }
25
+ }
26
+ }
27
+ }