@things-factory/marketplace-base 4.3.32 → 4.3.35
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/graphql/resolvers/marketplace-order-shipping/marketplace-order-shippings-for-batch-init.js +54 -22
- package/dist-server/graphql/resolvers/marketplace-order-shipping/marketplace-order-shippings-for-batch-init.js.map +1 -1
- package/package.json +6 -6
- package/server/graphql/resolvers/marketplace-order-shipping/marketplace-order-shippings-for-batch-init.ts +76 -37
|
@@ -7,29 +7,61 @@ const entities_1 = require("../../../entities");
|
|
|
7
7
|
const get_logistics_param_1 = require("../marketplace-order/get-logistics-param");
|
|
8
8
|
exports.marketplaceOrderShippingsForBatchInitResolver = {
|
|
9
9
|
async marketplaceOrderShippingsForBatchInit(_, params, context) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
10
|
+
try {
|
|
11
|
+
const statusFilter = params.filters.filter(filter => filter.name === 'status');
|
|
12
|
+
let paramsFilters = params.filters.filter(filter => filter.name !== 'status' && filter.name != 'logisticsType');
|
|
13
|
+
let paramListParams = {
|
|
14
|
+
filters: [...paramsFilters],
|
|
15
|
+
pagination: params.pagination
|
|
16
|
+
};
|
|
17
|
+
let sortings = params.sortings;
|
|
18
|
+
let qb = (0, typeorm_1.getRepository)(entities_1.MarketplaceOrderShipping).createQueryBuilder('mos');
|
|
19
|
+
(0, shell_1.buildQuery)(qb, paramListParams, context);
|
|
20
|
+
qb.leftJoinAndSelect('mos.marketplaceStore', 'marketplaceStore');
|
|
21
|
+
qb.leftJoinAndMapOne('mos.marketplaceOrder', entities_1.MarketplaceOrder, 'mo', 'mo.order_no = mos.order_no_ref');
|
|
22
|
+
qb.andWhere('mo.status NOT IN (:...statuses)', { statuses: statusFilter[0].value });
|
|
23
|
+
if ((sortings === null || sortings === void 0 ? void 0 : sortings.length) !== 0) {
|
|
24
|
+
const sorter = (sortings || []).reduce((acc, sort) => {
|
|
25
|
+
const order = sort.desc ? 'DESC' : 'ASC';
|
|
26
|
+
switch (sort.name) {
|
|
27
|
+
case 'orderNoRef':
|
|
28
|
+
acc = Object.assign(Object.assign({}, acc), { ['mos.orderNoRef']: order });
|
|
29
|
+
break;
|
|
30
|
+
case 'shippingProvider':
|
|
31
|
+
acc = Object.assign(Object.assign({}, acc), { ['mos.transporter']: order });
|
|
32
|
+
break;
|
|
33
|
+
case 'ownShippingProvider':
|
|
34
|
+
acc = Object.assign(Object.assign({}, acc), { ['mos.ownTransporter']: order });
|
|
35
|
+
break;
|
|
36
|
+
case 'status':
|
|
37
|
+
acc = Object.assign(Object.assign({}, acc), { ['mo.status']: order });
|
|
38
|
+
break;
|
|
39
|
+
case 'orderCreatedAt':
|
|
40
|
+
acc = Object.assign(Object.assign({}, acc), { ['mo.orderCreatedAt']: order });
|
|
41
|
+
break;
|
|
42
|
+
case 'orderUpdatedAt':
|
|
43
|
+
acc = Object.assign(Object.assign({}, acc), { ['mo.orderUpdatedAt']: order });
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
return acc;
|
|
47
|
+
}, {});
|
|
48
|
+
qb.orderBy(sorter);
|
|
27
49
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
50
|
+
let [items, total] = await qb.getManyAndCount();
|
|
51
|
+
items = await Promise.all(items.map(async (itm) => {
|
|
52
|
+
if (itm.marketplaceStore.platform == 'shopee' && itm.status === 'ready_to_ship') {
|
|
53
|
+
let fullLogisticsDetail = await get_logistics_param_1.getLogisticsParam.getLogisticsParam(_, { storeId: itm.marketplaceStore.id, orderNo: itm.orderNo }, context);
|
|
54
|
+
return Object.assign(Object.assign({}, itm), { fullLogisticsDetail });
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
return itm;
|
|
58
|
+
}
|
|
59
|
+
}));
|
|
60
|
+
return { items: items.filter(itm => itm), total };
|
|
61
|
+
}
|
|
62
|
+
catch (e) {
|
|
63
|
+
throw e;
|
|
64
|
+
}
|
|
33
65
|
}
|
|
34
66
|
};
|
|
35
67
|
//# sourceMappingURL=marketplace-order-shippings-for-batch-init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marketplace-order-shippings-for-batch-init.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/marketplace-order-shipping/marketplace-order-shippings-for-batch-init.ts"],"names":[],"mappings":";;;AAAA,qCAA2D;AAE3D,iDAA6D;AAE7D,gDAA8E;AAC9E,kFAA4E;AAE/D,QAAA,6CAA6C,GAAG;IAC3D,KAAK,CAAC,qCAAqC,CAAC,CAAM,EAAE,MAAiB,EAAE,OAAY;QACjF,MAAM,YAAY,GAAQ,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"marketplace-order-shippings-for-batch-init.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/marketplace-order-shipping/marketplace-order-shippings-for-batch-init.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@things-factory/marketplace-base",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.35",
|
|
4
4
|
"main": "dist-server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -24,10 +24,10 @@
|
|
|
24
24
|
"migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@things-factory/integration-fulfillment": "^4.3.
|
|
28
|
-
"@things-factory/integration-marketplace": "^4.3.
|
|
29
|
-
"@things-factory/product-base": "^4.3.
|
|
30
|
-
"@things-factory/shell": "^4.3.
|
|
27
|
+
"@things-factory/integration-fulfillment": "^4.3.35",
|
|
28
|
+
"@things-factory/integration-marketplace": "^4.3.35",
|
|
29
|
+
"@things-factory/product-base": "^4.3.35",
|
|
30
|
+
"@things-factory/shell": "^4.3.35"
|
|
31
31
|
},
|
|
32
|
-
"gitHead": "
|
|
32
|
+
"gitHead": "3500a8c074e7ec6d112454b0b0631fcc9e41b886"
|
|
33
33
|
}
|
|
@@ -7,43 +7,82 @@ import { getLogisticsParam } from '../marketplace-order/get-logistics-param'
|
|
|
7
7
|
|
|
8
8
|
export const marketplaceOrderShippingsForBatchInitResolver = {
|
|
9
9
|
async marketplaceOrderShippingsForBatchInit(_: any, params: ListParam, context: any) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
try {
|
|
11
|
+
const statusFilter: any = params.filters.filter(filter => filter.name === 'status')
|
|
12
|
+
let paramsFilters: any[] = params.filters.filter(
|
|
13
|
+
filter => filter.name !== 'status' && filter.name != 'logisticsType'
|
|
14
|
+
)
|
|
15
|
+
let paramListParams: any = {
|
|
16
|
+
filters: [...paramsFilters],
|
|
17
|
+
pagination: params.pagination
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
let sortings = params.sortings
|
|
21
|
+
|
|
22
|
+
let qb: SelectQueryBuilder<MarketplaceOrderShipping> =
|
|
23
|
+
getRepository(MarketplaceOrderShipping).createQueryBuilder('mos')
|
|
24
|
+
buildQuery(qb, paramListParams, context)
|
|
25
|
+
|
|
26
|
+
qb.leftJoinAndSelect('mos.marketplaceStore', 'marketplaceStore')
|
|
27
|
+
qb.leftJoinAndMapOne('mos.marketplaceOrder', MarketplaceOrder, 'mo', 'mo.order_no = mos.order_no_ref')
|
|
28
|
+
qb.andWhere('mo.status NOT IN (:...statuses)', { statuses: statusFilter[0].value })
|
|
29
|
+
|
|
30
|
+
if (sortings?.length !== 0) {
|
|
31
|
+
const sorter = (sortings || []).reduce((acc, sort) => {
|
|
32
|
+
const order: string = sort.desc ? 'DESC' : 'ASC'
|
|
33
|
+
|
|
34
|
+
switch (sort.name) {
|
|
35
|
+
case 'orderNoRef':
|
|
36
|
+
acc = { ...acc, ['mos.orderNoRef']: order }
|
|
37
|
+
break
|
|
38
|
+
|
|
39
|
+
case 'shippingProvider':
|
|
40
|
+
acc = { ...acc, ['mos.transporter']: order }
|
|
41
|
+
break
|
|
42
|
+
|
|
43
|
+
case 'ownShippingProvider':
|
|
44
|
+
acc = { ...acc, ['mos.ownTransporter']: order }
|
|
45
|
+
break
|
|
19
46
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
47
|
+
case 'status':
|
|
48
|
+
acc = { ...acc, ['mo.status']: order }
|
|
49
|
+
break
|
|
50
|
+
|
|
51
|
+
case 'orderCreatedAt':
|
|
52
|
+
acc = { ...acc, ['mo.orderCreatedAt']: order }
|
|
53
|
+
break
|
|
54
|
+
|
|
55
|
+
case 'orderUpdatedAt':
|
|
56
|
+
acc = { ...acc, ['mo.orderUpdatedAt']: order }
|
|
57
|
+
break
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return acc
|
|
61
|
+
}, {})
|
|
62
|
+
qb.orderBy(sorter)
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
let [items, total] = await qb.getManyAndCount()
|
|
66
|
+
|
|
67
|
+
items = await Promise.all(
|
|
68
|
+
items.map(async (itm: any) => {
|
|
69
|
+
if (itm.marketplaceStore.platform == 'shopee' && itm.status === 'ready_to_ship') {
|
|
70
|
+
let fullLogisticsDetail = await getLogisticsParam.getLogisticsParam(
|
|
71
|
+
_,
|
|
72
|
+
{ storeId: itm.marketplaceStore.id, orderNo: itm.orderNo },
|
|
73
|
+
context
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
return { ...itm, fullLogisticsDetail }
|
|
77
|
+
} else {
|
|
78
|
+
return itm
|
|
79
|
+
}
|
|
80
|
+
})
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
return { items: items.filter(itm => itm), total }
|
|
84
|
+
} catch (e) {
|
|
85
|
+
throw e
|
|
86
|
+
}
|
|
48
87
|
}
|
|
49
88
|
}
|