@unchainedshop/api 4.0.0-rc.11 → 4.0.0-rc.12
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/lib/mcp/tools/order/getMonthlySalesBreakdownHandler.d.ts +2 -2
- package/lib/mcp/tools/order/getSalesSummaryHandler.d.ts +2 -2
- package/lib/mcp/tools/order/getTopCustomersHandler.d.ts.map +1 -1
- package/lib/mcp/tools/order/getTopCustomersHandler.js +7 -4
- package/lib/mcp/tools/order/getTopCustomersHandler.js.map +1 -1
- package/lib/mcp/tools/order/getTopSellingProductsHandler.js +2 -2
- package/lib/mcp/tools/order/getTopSellingProductsHandler.js.map +1 -1
- package/lib/mcp/tools/order/ordersListHandler.d.ts +8 -8
- package/lib/resolvers/queries/delivery/deliveryInterfaces.d.ts +2 -2
- package/lib/resolvers/queries/delivery/deliveryInterfaces.d.ts.map +1 -1
- package/lib/resolvers/queries/delivery/deliveryInterfaces.js +6 -4
- package/lib/resolvers/queries/delivery/deliveryInterfaces.js.map +1 -1
- package/lib/resolvers/queries/orders/orders.d.ts.map +1 -1
- package/lib/resolvers/queries/orders/orders.js +5 -17
- package/lib/resolvers/queries/orders/orders.js.map +1 -1
- package/lib/resolvers/queries/orders/ordersCount.d.ts.map +1 -1
- package/lib/resolvers/queries/orders/ordersCount.js +5 -17
- package/lib/resolvers/queries/orders/ordersCount.js.map +1 -1
- package/lib/resolvers/queries/payment/paymentInterfaces.d.ts.map +1 -1
- package/lib/resolvers/queries/payment/paymentInterfaces.js +5 -3
- package/lib/resolvers/queries/payment/paymentInterfaces.js.map +1 -1
- package/lib/resolvers/queries/warehousing/warehousingInterfaces.d.ts.map +1 -1
- package/lib/resolvers/queries/warehousing/warehousingInterfaces.js +5 -3
- package/lib/resolvers/queries/warehousing/warehousingInterfaces.js.map +1 -1
- package/lib/schema/query.js +7 -7
- package/package.json +1 -1
- package/src/mcp/tools/order/getTopCustomersHandler.ts +7 -6
- package/src/mcp/tools/order/getTopSellingProductsHandler.ts +2 -2
- package/src/resolvers/queries/delivery/deliveryInterfaces.ts +8 -4
- package/src/resolvers/queries/orders/orders.ts +5 -26
- package/src/resolvers/queries/orders/ordersCount.ts +5 -26
- package/src/resolvers/queries/payment/paymentInterfaces.ts +11 -7
- package/src/resolvers/queries/warehousing/warehousingInterfaces.ts +5 -3
- package/src/schema/query.ts +7 -7
|
@@ -15,15 +15,15 @@ export declare const MonthlySalesBreakdownZodSchema: z.ZodObject<{
|
|
|
15
15
|
to: z.ZodOptional<z.ZodString>;
|
|
16
16
|
}, "strip", z.ZodTypeAny, {
|
|
17
17
|
status?: ("PENDING" | "CONFIRMED" | "SHIPPED" | "DELIVERED" | "CANCELLED")[];
|
|
18
|
-
from?: string;
|
|
19
18
|
paymentProviderIds?: string[];
|
|
20
19
|
deliveryProviderIds?: string[];
|
|
20
|
+
from?: string;
|
|
21
21
|
to?: string;
|
|
22
22
|
}, {
|
|
23
23
|
status?: ("PENDING" | "CONFIRMED" | "SHIPPED" | "DELIVERED" | "CANCELLED")[];
|
|
24
|
-
from?: string;
|
|
25
24
|
paymentProviderIds?: string[];
|
|
26
25
|
deliveryProviderIds?: string[];
|
|
26
|
+
from?: string;
|
|
27
27
|
to?: string;
|
|
28
28
|
}>;
|
|
29
29
|
export type MonthlySalesBreakdownParams = z.infer<typeof MonthlySalesBreakdownZodSchema>;
|
|
@@ -17,16 +17,16 @@ export declare const SalesSummaryZodSchema: z.ZodObject<{
|
|
|
17
17
|
to: z.ZodOptional<z.ZodString>;
|
|
18
18
|
}, "strip", z.ZodTypeAny, {
|
|
19
19
|
status?: ("PENDING" | "CONFIRMED" | "SHIPPED" | "DELIVERED" | "CANCELLED")[];
|
|
20
|
-
from?: string;
|
|
21
20
|
paymentProviderIds?: string[];
|
|
22
21
|
deliveryProviderIds?: string[];
|
|
22
|
+
from?: string;
|
|
23
23
|
to?: string;
|
|
24
24
|
days?: number;
|
|
25
25
|
}, {
|
|
26
26
|
status?: ("PENDING" | "CONFIRMED" | "SHIPPED" | "DELIVERED" | "CANCELLED")[];
|
|
27
|
-
from?: string;
|
|
28
27
|
paymentProviderIds?: string[];
|
|
29
28
|
deliveryProviderIds?: string[];
|
|
29
|
+
from?: string;
|
|
30
30
|
to?: string;
|
|
31
31
|
days?: number;
|
|
32
32
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTopCustomersHandler.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/order/getTopCustomersHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAK9C,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;CAUjC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAkC,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE7E,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,qBAAqB;;;;;
|
|
1
|
+
{"version":3,"file":"getTopCustomersHandler.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/order/getTopCustomersHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAK9C,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;CAUjC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAkC,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE7E,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,qBAAqB;;;;;GAsG3F"}
|
|
@@ -19,8 +19,8 @@ export async function getTopCustomersHandler(context, params) {
|
|
|
19
19
|
const { status, dateRange, limit = 10 } = params;
|
|
20
20
|
try {
|
|
21
21
|
log('handler getTopCustomersHandler', { userId, params });
|
|
22
|
-
const match = {
|
|
23
|
-
const { startDate, endDate } = resolveDateRange(dateRange
|
|
22
|
+
const match = {};
|
|
23
|
+
const { startDate, endDate } = resolveDateRange(dateRange?.start, dateRange?.end);
|
|
24
24
|
const orders = await modules.orders.findOrders({
|
|
25
25
|
status: [OrderStatus.CONFIRMED, OrderStatus.FULLFILLED],
|
|
26
26
|
dateRange: { start: startDate.toISOString(), end: endDate.toISOString() },
|
|
@@ -31,9 +31,11 @@ export async function getTopCustomersHandler(context, params) {
|
|
|
31
31
|
});
|
|
32
32
|
const orderIds = orders.map(({ _id }) => _id);
|
|
33
33
|
if (startDate)
|
|
34
|
-
match.created = { ...(match.created || {}), $gte: startDate
|
|
34
|
+
match.created = { ...(match.created || {}), $gte: startDate };
|
|
35
35
|
if (endDate)
|
|
36
|
-
match.created = { ...(match.created || {}), $lte: endDate
|
|
36
|
+
match.created = { ...(match.created || {}), $lte: endDate };
|
|
37
|
+
if (status)
|
|
38
|
+
match.status = status;
|
|
37
39
|
if (orderIds?.length)
|
|
38
40
|
match._id = { $in: orderIds };
|
|
39
41
|
const topCustomers = await modules.orders.aggregateOrders({
|
|
@@ -80,6 +82,7 @@ export async function getTopCustomersHandler(context, params) {
|
|
|
80
82
|
return {
|
|
81
83
|
userId: c._id?.toString?.() ?? null,
|
|
82
84
|
user: {
|
|
85
|
+
...user,
|
|
83
86
|
avatar,
|
|
84
87
|
},
|
|
85
88
|
totalSpent: c.totalSpent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTopCustomersHandler.js","sourceRoot":"","sources":["../../../../src/mcp/tools/order/getTopCustomersHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAChG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IAChG,SAAS,EAAE,CAAC;SACT,MAAM,CAAC;QACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACvC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;KACtC,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,sCAAsC,CAAC;CACpD,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAGxE,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,OAAgB,EAAE,MAA6B;IAC1F,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC7C,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;IAEjD,IAAI,CAAC;QACH,GAAG,CAAC,gCAAgC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAE1D,MAAM,KAAK,GAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"getTopCustomersHandler.js","sourceRoot":"","sources":["../../../../src/mcp/tools/order/getTopCustomersHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,9 +26,9 @@ export async function getTopSellingProductsHandler(context, params) {
|
|
|
26
26
|
});
|
|
27
27
|
const orderIds = orders.map(({ _id }) => _id);
|
|
28
28
|
if (startDate)
|
|
29
|
-
match.created = { ...(match.created || {}), $gte: startDate
|
|
29
|
+
match.created = { ...(match.created || {}), $gte: startDate };
|
|
30
30
|
if (endDate)
|
|
31
|
-
match.created = { ...(match.created || {}), $lte: endDate
|
|
31
|
+
match.created = { ...(match.created || {}), $lte: endDate };
|
|
32
32
|
if (orderIds?.length)
|
|
33
33
|
match.orderId = { $in: orderIds };
|
|
34
34
|
const topProducts = await modules.orders.positions.aggregatePositions({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTopSellingProductsHandler.js","sourceRoot":"","sources":["../../../../src/mcp/tools/order/getTopSellingProductsHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAC1E,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACtE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CAC/D,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAG9E,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,OAAgB,EAAE,MAAgC;IACnG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACpC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEnC,IAAI,CAAC;QACH,GAAG,CAAC,sCAAsC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAEhE,MAAM,KAAK,GAAQ,EAAE,CAAC;QAEtB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAE1D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,UAAU,CAC5C;YACE,MAAM,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC;YACvD,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,WAAW,EAAE,EAAE;SAC1E,EACD;YACE,UAAU,EAAE;gBACV,GAAG,EAAE,CAAC;aACP;SACF,CACF,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QAE9C,IAAI,SAAS;YAAE,KAAK,CAAC,OAAO,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"getTopSellingProductsHandler.js","sourceRoot":"","sources":["../../../../src/mcp/tools/order/getTopSellingProductsHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,15 +70,15 @@ export declare const OrdersListZodSchema: z.ZodObject<{
|
|
|
70
70
|
queryString?: string;
|
|
71
71
|
limit?: number;
|
|
72
72
|
offset?: number;
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
paymentProviderIds?: string[];
|
|
74
|
+
deliveryProviderIds?: string[];
|
|
75
75
|
includeCarts?: boolean;
|
|
76
76
|
dateRange?: {
|
|
77
77
|
from?: string;
|
|
78
78
|
to?: string;
|
|
79
79
|
};
|
|
80
|
-
|
|
81
|
-
|
|
80
|
+
paymentProviderTypes?: ("INVOICE" | "CARD" | "GENERIC")[];
|
|
81
|
+
deliveryProviderTypes?: ("SHIPPING" | "PICKUP" | "LOCAL")[];
|
|
82
82
|
}, {
|
|
83
83
|
sort?: {
|
|
84
84
|
key?: string;
|
|
@@ -88,15 +88,15 @@ export declare const OrdersListZodSchema: z.ZodObject<{
|
|
|
88
88
|
queryString?: string;
|
|
89
89
|
limit?: number;
|
|
90
90
|
offset?: number;
|
|
91
|
-
|
|
92
|
-
|
|
91
|
+
paymentProviderIds?: string[];
|
|
92
|
+
deliveryProviderIds?: string[];
|
|
93
93
|
includeCarts?: boolean;
|
|
94
94
|
dateRange?: {
|
|
95
95
|
from?: string;
|
|
96
96
|
to?: string;
|
|
97
97
|
};
|
|
98
|
-
|
|
99
|
-
|
|
98
|
+
paymentProviderTypes?: ("INVOICE" | "CARD" | "GENERIC")[];
|
|
99
|
+
deliveryProviderTypes?: ("SHIPPING" | "PICKUP" | "LOCAL")[];
|
|
100
100
|
}>;
|
|
101
101
|
export type OrdersListParams = z.infer<typeof OrdersListZodSchema>;
|
|
102
102
|
export declare function ordersListHandler(context: Context, params: OrdersListParams): Promise<{
|
|
@@ -2,9 +2,9 @@ import { Context } from '../../../context.js';
|
|
|
2
2
|
import { DeliveryProviderType } from '@unchainedshop/core-delivery';
|
|
3
3
|
export default function deliveryInterfaces(root: never, { type }: {
|
|
4
4
|
type: DeliveryProviderType;
|
|
5
|
-
}, { userId }: Context): {
|
|
5
|
+
}, { userId }: Context): Promise<{
|
|
6
6
|
_id: string;
|
|
7
7
|
label: string;
|
|
8
8
|
version: string;
|
|
9
|
-
}[]
|
|
9
|
+
}[]>;
|
|
10
10
|
//# sourceMappingURL=deliveryInterfaces.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliveryInterfaces.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/delivery/deliveryInterfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGpE,
|
|
1
|
+
{"version":3,"file":"deliveryInterfaces.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/delivery/deliveryInterfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGpE,wBAA8B,kBAAkB,CAC9C,IAAI,EAAE,KAAK,EACX,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,oBAAoB,CAAA;CAAE,EACxC,EAAE,MAAM,EAAE,EAAE,OAAO;;;;KAepB"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { DeliveryDirector } from '@unchainedshop/core';
|
|
2
2
|
import { log } from '@unchainedshop/logger';
|
|
3
|
-
export default function deliveryInterfaces(root, { type }, { userId }) {
|
|
3
|
+
export default async function deliveryInterfaces(root, { type }, { userId }) {
|
|
4
4
|
log(`query deliveryInterfaces ${type}`, { userId });
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
const allAdapters = await DeliveryDirector.getAdapters();
|
|
6
|
+
const filteredAdapters = type
|
|
7
|
+
? allAdapters.filter((Adapter) => Adapter.typeSupported(type))
|
|
8
|
+
: allAdapters;
|
|
9
|
+
return filteredAdapters.map((Adapter) => ({
|
|
8
10
|
_id: Adapter.key,
|
|
9
11
|
label: Adapter.label,
|
|
10
12
|
version: Adapter.version,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliveryInterfaces.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/delivery/deliveryInterfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,CAAC,OAAO,UAAU,kBAAkB,
|
|
1
|
+
{"version":3,"file":"deliveryInterfaces.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/delivery/deliveryInterfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAC9C,IAAW,EACX,EAAE,IAAI,EAAkC,EACxC,EAAE,MAAM,EAAW;IAEnB,GAAG,CAAC,4BAA4B,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEpD,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,CAAC;IAEzD,MAAM,gBAAgB,GAAG,IAAI;QAC3B,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAA4B,CAAC,CAAC;QACtF,CAAC,CAAC,WAAW,CAAC;IAEhB,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orders.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/orders.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"orders.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/orders.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,wBAA8B,MAAM,CAClC,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,UAAU,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAA;CAAE,EAC7E,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,yDA6B7B"}
|
|
@@ -1,31 +1,19 @@
|
|
|
1
1
|
import { log } from '@unchainedshop/logger';
|
|
2
2
|
export default async function orders(root, params, { modules, userId }) {
|
|
3
|
-
const { limit, offset,
|
|
3
|
+
const { limit, offset, paymentProviderIds, deliveryProviderIds, ...restParams } = params;
|
|
4
4
|
log(`query orders: ${limit} ${offset} ${restParams?.queryString || ''}`, { userId });
|
|
5
5
|
const promises = [];
|
|
6
|
-
let paymentProviderIds;
|
|
7
|
-
let deliveryProviderIds;
|
|
8
|
-
if (paymentProviderTypes?.length) {
|
|
9
|
-
promises.push(modules.payment.paymentProviders
|
|
10
|
-
.findProviders({ type: { $in: paymentProviderTypes } })
|
|
11
|
-
.then((providers) => (paymentProviderIds = providers.map((p) => p._id))));
|
|
12
|
-
}
|
|
13
|
-
if (deliveryProviderTypes?.length) {
|
|
14
|
-
promises.push(modules.delivery
|
|
15
|
-
.findProviders({ type: { $in: deliveryProviderTypes } })
|
|
16
|
-
.then((providers) => (deliveryProviderIds = providers.map((p) => p._id))));
|
|
17
|
-
}
|
|
18
6
|
await Promise.all(promises);
|
|
19
7
|
const [orderPayments, orderDeliveries] = await Promise.all([
|
|
20
|
-
paymentProviderIds
|
|
8
|
+
paymentProviderIds?.length
|
|
21
9
|
? modules.orders.payments.findOrderPaymentsByProviderIds({ paymentProviderIds })
|
|
22
10
|
: [],
|
|
23
|
-
deliveryProviderIds
|
|
11
|
+
deliveryProviderIds?.length
|
|
24
12
|
? modules.orders.deliveries.findDeliveryByProvidersId({ deliveryProviderIds })
|
|
25
13
|
: [],
|
|
26
14
|
]);
|
|
27
|
-
if ((
|
|
28
|
-
(
|
|
15
|
+
if ((paymentProviderIds?.length && !orderPayments.length) ||
|
|
16
|
+
(deliveryProviderIds?.length && !orderDeliveries.length))
|
|
29
17
|
return [];
|
|
30
18
|
const paymentIds = orderPayments.map((p) => p._id);
|
|
31
19
|
const deliveryIds = orderDeliveries.map((d) => d._id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orders.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/orders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"orders.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/orders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAK5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,MAAM,CAClC,IAAW,EACX,MAA6E,EAC7E,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;IACzF,GAAG,CAAC,iBAAiB,KAAK,IAAI,MAAM,KAAK,UAAU,EAAE,WAAW,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEtF,MAAM,QAAQ,GAAmB,EAAE,CAAC;IAEpC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzD,kBAAkB,EAAE,MAAM;YACxB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAC,EAAE,kBAAkB,EAAE,CAAC;YAChF,CAAC,CAAC,EAAE;QACN,mBAAmB,EAAE,MAAM;YACzB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,mBAAmB,EAAE,CAAC;YAC9E,CAAC,CAAC,EAAE;KACP,CAAC,CAAC;IACH,IACE,CAAC,kBAAkB,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QACrD,CAAC,mBAAmB,EAAE,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QAExD,OAAO,EAAE,CAAC;IACZ,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAEtD,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;QAC/B,GAAG,UAAU;QACb,UAAU;QACV,WAAW;KACZ,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ordersCount.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/ordersCount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ordersCount.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/ordersCount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,wBAA8B,WAAW,CACvC,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,UAAU,EAClB,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,mBAyB7B"}
|
|
@@ -1,31 +1,19 @@
|
|
|
1
1
|
import { log } from '@unchainedshop/logger';
|
|
2
2
|
export default async function ordersCount(root, params, { modules, userId }) {
|
|
3
|
-
const {
|
|
3
|
+
const { paymentProviderIds, deliveryProviderIds, ...restParams } = params;
|
|
4
4
|
log(`query ordersCount: ${params.includeCarts ? 'includeCart' : ''}`, { userId });
|
|
5
5
|
const promises = [];
|
|
6
|
-
let paymentProviderIds;
|
|
7
|
-
let deliveryProviderIds;
|
|
8
|
-
if (paymentProviderTypes?.length) {
|
|
9
|
-
promises.push(modules.payment.paymentProviders
|
|
10
|
-
.findProviders({ type: { $in: paymentProviderTypes } })
|
|
11
|
-
.then((providers) => (paymentProviderIds = providers.map((p) => p._id))));
|
|
12
|
-
}
|
|
13
|
-
if (deliveryProviderTypes?.length) {
|
|
14
|
-
promises.push(modules.delivery
|
|
15
|
-
.findProviders({ type: { $in: deliveryProviderTypes } })
|
|
16
|
-
.then((providers) => (deliveryProviderIds = providers.map((p) => p._id))));
|
|
17
|
-
}
|
|
18
6
|
await Promise.all(promises);
|
|
19
7
|
const [orderPayments, orderDeliveries] = await Promise.all([
|
|
20
|
-
paymentProviderIds
|
|
8
|
+
paymentProviderIds?.length
|
|
21
9
|
? modules.orders.payments.findOrderPaymentsByProviderIds({ paymentProviderIds })
|
|
22
10
|
: [],
|
|
23
|
-
deliveryProviderIds
|
|
11
|
+
deliveryProviderIds?.length
|
|
24
12
|
? modules.orders.deliveries.findDeliveryByProvidersId({ deliveryProviderIds })
|
|
25
13
|
: [],
|
|
26
14
|
]);
|
|
27
|
-
if ((
|
|
28
|
-
(
|
|
15
|
+
if ((paymentProviderIds?.length && !orderPayments.length) ||
|
|
16
|
+
(deliveryProviderIds?.length && !orderDeliveries.length))
|
|
29
17
|
return 0;
|
|
30
18
|
const paymentIds = orderPayments.map((p) => p._id);
|
|
31
19
|
const deliveryIds = orderDeliveries.map((d) => d._id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ordersCount.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/ordersCount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ordersCount.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/ordersCount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,WAAW,CACvC,IAAW,EACX,MAAkB,EAClB,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;IAC1E,GAAG,CAAC,sBAAsB,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAElF,MAAM,QAAQ,GAAmB,EAAE,CAAC;IAEpC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzD,kBAAkB,EAAE,MAAM;YACxB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAC,EAAE,kBAAkB,EAAE,CAAC;YAChF,CAAC,CAAC,EAAE;QACN,mBAAmB,EAAE,MAAM;YACzB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,mBAAmB,EAAE,CAAC;YAC9E,CAAC,CAAC,EAAE;KACP,CAAC,CAAC;IACH,IACE,CAAC,kBAAkB,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QACrD,CAAC,mBAAmB,EAAE,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QAExD,OAAO,CAAC,CAAC;IACX,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAEtD,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paymentInterfaces.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/payment/paymentInterfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG9C,wBAA8B,iBAAiB,CAC7C,IAAI,EAAE,KAAK,EACX,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,EACvC,EAAE,MAAM,EAAE,EAAE,OAAO;;;;
|
|
1
|
+
{"version":3,"file":"paymentInterfaces.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/payment/paymentInterfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG9C,wBAA8B,iBAAiB,CAC7C,IAAI,EAAE,KAAK,EACX,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,EACvC,EAAE,MAAM,EAAE,EAAE,OAAO;;;;KAepB"}
|
|
@@ -2,9 +2,11 @@ import { log } from '@unchainedshop/logger';
|
|
|
2
2
|
import { PaymentDirector } from '@unchainedshop/core';
|
|
3
3
|
export default async function paymentInterfaces(root, { type }, { userId }) {
|
|
4
4
|
log(`query paymentInterfaces ${type}`, { userId });
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
.
|
|
5
|
+
const allAdapters = await PaymentDirector.getAdapters();
|
|
6
|
+
const filteredAdapters = type
|
|
7
|
+
? allAdapters.filter((Adapter) => Adapter.typeSupported(type))
|
|
8
|
+
: allAdapters;
|
|
9
|
+
return filteredAdapters.map((Adapter) => ({
|
|
8
10
|
_id: Adapter.key,
|
|
9
11
|
label: Adapter.label,
|
|
10
12
|
version: Adapter.version,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paymentInterfaces.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/payment/paymentInterfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,iBAAiB,CAC7C,IAAW,EACX,EAAE,IAAI,EAAiC,EACvC,EAAE,MAAM,EAAW;IAEnB,GAAG,CAAC,2BAA2B,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnD,
|
|
1
|
+
{"version":3,"file":"paymentInterfaces.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/payment/paymentInterfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,iBAAiB,CAC7C,IAAW,EACX,EAAE,IAAI,EAAiC,EACvC,EAAE,MAAM,EAAW;IAEnB,GAAG,CAAC,2BAA2B,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnD,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,CAAC;IAExD,MAAM,gBAAgB,GAAG,IAAI;QAC3B,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAA2B,CAAC,CAAC;QACrF,CAAC,CAAC,WAAW,CAAC;IAEhB,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warehousingInterfaces.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/warehousing/warehousingInterfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAG1E,wBAA8B,qBAAqB,CACjD,IAAI,EAAE,KAAK,EACX,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,uBAAuB,CAAA;CAAE,EAC3C,EAAE,MAAM,EAAE,EAAE,OAAO;;;;
|
|
1
|
+
{"version":3,"file":"warehousingInterfaces.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/queries/warehousing/warehousingInterfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAG1E,wBAA8B,qBAAqB,CACjD,IAAI,EAAE,KAAK,EACX,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,uBAAuB,CAAA;CAAE,EAC3C,EAAE,MAAM,EAAE,EAAE,OAAO;;;;KAapB"}
|
|
@@ -2,9 +2,11 @@ import { WarehousingDirector } from '@unchainedshop/core';
|
|
|
2
2
|
import { log } from '@unchainedshop/logger';
|
|
3
3
|
export default async function warehousingInterfaces(root, { type }, { userId }) {
|
|
4
4
|
log(`query warehousingInterfaces ${type}`, { userId });
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
const allAdapters = await WarehousingDirector.getAdapters();
|
|
6
|
+
const filteredAdapters = type
|
|
7
|
+
? allAdapters.filter((Adapter) => Adapter.typeSupported(type))
|
|
8
|
+
: allAdapters;
|
|
9
|
+
return filteredAdapters.map((Adapter) => ({
|
|
8
10
|
_id: Adapter.key,
|
|
9
11
|
label: Adapter.label,
|
|
10
12
|
version: Adapter.version,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warehousingInterfaces.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/warehousing/warehousingInterfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB,CACjD,IAAW,EACX,EAAE,IAAI,EAAqC,EAC3C,EAAE,MAAM,EAAW;IAEnB,GAAG,CAAC,+BAA+B,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"warehousingInterfaces.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/warehousing/warehousingInterfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB,CACjD,IAAW,EACX,EAAE,IAAI,EAAqC,EAC3C,EAAE,MAAM,EAAW;IAEnB,GAAG,CAAC,+BAA+B,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,CAAC;IAC5D,MAAM,gBAAgB,GAAG,IAAI;QAC3B,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAA+B,CAAC,CAAC;QACzF,CAAC,CAAC,WAAW,CAAC;IAEhB,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC,CAAC;AACN,CAAC"}
|
package/lib/schema/query.js
CHANGED
|
@@ -181,7 +181,7 @@ export default [
|
|
|
181
181
|
"""
|
|
182
182
|
Get all delivery interfaces filtered by type
|
|
183
183
|
"""
|
|
184
|
-
deliveryInterfaces(type: DeliveryProviderType
|
|
184
|
+
deliveryInterfaces(type: DeliveryProviderType): [DeliveryInterface!]!
|
|
185
185
|
@cacheControl(scope: PRIVATE, maxAge: 0)
|
|
186
186
|
|
|
187
187
|
"""
|
|
@@ -205,7 +205,7 @@ export default [
|
|
|
205
205
|
"""
|
|
206
206
|
Get all warehousing interfaces filtered by type
|
|
207
207
|
"""
|
|
208
|
-
warehousingInterfaces(type: WarehousingProviderType
|
|
208
|
+
warehousingInterfaces(type: WarehousingProviderType): [WarehousingInterface!]!
|
|
209
209
|
@cacheControl(scope: PRIVATE, maxAge: 0)
|
|
210
210
|
|
|
211
211
|
"""
|
|
@@ -242,7 +242,7 @@ export default [
|
|
|
242
242
|
"""
|
|
243
243
|
Get all payment interfaces filtered by type
|
|
244
244
|
"""
|
|
245
|
-
paymentInterfaces(type: PaymentProviderType
|
|
245
|
+
paymentInterfaces(type: PaymentProviderType): [PaymentInterface!]!
|
|
246
246
|
@cacheControl(scope: PRIVATE, maxAge: 0)
|
|
247
247
|
|
|
248
248
|
"""
|
|
@@ -251,8 +251,8 @@ export default [
|
|
|
251
251
|
ordersCount(
|
|
252
252
|
includeCarts: Boolean = false
|
|
253
253
|
queryString: String
|
|
254
|
-
|
|
255
|
-
|
|
254
|
+
paymentProviderIds: [String!]
|
|
255
|
+
deliveryProviderIds: [String!]
|
|
256
256
|
dateRange: DateFilterInput
|
|
257
257
|
status: [OrderStatus!]
|
|
258
258
|
): Int!
|
|
@@ -267,8 +267,8 @@ export default [
|
|
|
267
267
|
queryString: String
|
|
268
268
|
status: [OrderStatus!]
|
|
269
269
|
sort: [SortOptionInput!]
|
|
270
|
-
|
|
271
|
-
|
|
270
|
+
paymentProviderIds: [String!]
|
|
271
|
+
deliveryProviderIds: [String!]
|
|
272
272
|
dateRange: DateFilterInput
|
|
273
273
|
): [Order!]!
|
|
274
274
|
|
package/package.json
CHANGED
|
@@ -26,8 +26,8 @@ export async function getTopCustomersHandler(context: Context, params: GetTopCus
|
|
|
26
26
|
try {
|
|
27
27
|
log('handler getTopCustomersHandler', { userId, params });
|
|
28
28
|
|
|
29
|
-
const match: any = {
|
|
30
|
-
const { startDate, endDate } = resolveDateRange(dateRange
|
|
29
|
+
const match: any = {};
|
|
30
|
+
const { startDate, endDate } = resolveDateRange(dateRange?.start, dateRange?.end);
|
|
31
31
|
|
|
32
32
|
const orders = await modules.orders.findOrders(
|
|
33
33
|
{
|
|
@@ -40,10 +40,11 @@ export async function getTopCustomersHandler(context: Context, params: GetTopCus
|
|
|
40
40
|
},
|
|
41
41
|
},
|
|
42
42
|
);
|
|
43
|
-
const orderIds = orders.map(({ _id }) => _id);
|
|
44
43
|
|
|
45
|
-
|
|
46
|
-
if (
|
|
44
|
+
const orderIds = orders.map(({ _id }) => _id);
|
|
45
|
+
if (startDate) match.created = { ...(match.created || {}), $gte: startDate };
|
|
46
|
+
if (endDate) match.created = { ...(match.created || {}), $lte: endDate };
|
|
47
|
+
if (status) match.status = status;
|
|
47
48
|
if (orderIds?.length) match._id = { $in: orderIds };
|
|
48
49
|
|
|
49
50
|
const topCustomers = await modules.orders.aggregateOrders({
|
|
@@ -82,7 +83,6 @@ export async function getTopCustomersHandler(context: Context, params: GetTopCus
|
|
|
82
83
|
sort: { totalSpent: -1 },
|
|
83
84
|
limit,
|
|
84
85
|
});
|
|
85
|
-
|
|
86
86
|
const normalizedCustomers = await Promise.all(
|
|
87
87
|
topCustomers.map(async (c) => {
|
|
88
88
|
const user = await modules.users.findUserById(c._id);
|
|
@@ -92,6 +92,7 @@ export async function getTopCustomersHandler(context: Context, params: GetTopCus
|
|
|
92
92
|
return {
|
|
93
93
|
userId: c._id?.toString?.() ?? null,
|
|
94
94
|
user: {
|
|
95
|
+
...user,
|
|
95
96
|
avatar,
|
|
96
97
|
},
|
|
97
98
|
totalSpent: c.totalSpent,
|
|
@@ -38,8 +38,8 @@ export async function getTopSellingProductsHandler(context: Context, params: Top
|
|
|
38
38
|
);
|
|
39
39
|
const orderIds = orders.map(({ _id }) => _id);
|
|
40
40
|
|
|
41
|
-
if (startDate) match.created = { ...(match.created || {}), $gte: startDate
|
|
42
|
-
if (endDate) match.created = { ...(match.created || {}), $lte: endDate
|
|
41
|
+
if (startDate) match.created = { ...(match.created || {}), $gte: startDate };
|
|
42
|
+
if (endDate) match.created = { ...(match.created || {}), $lte: endDate };
|
|
43
43
|
if (orderIds?.length) match.orderId = { $in: orderIds };
|
|
44
44
|
|
|
45
45
|
const topProducts = await modules.orders.positions.aggregatePositions({
|
|
@@ -3,16 +3,20 @@ import { Context } from '../../../context.js';
|
|
|
3
3
|
import { DeliveryProviderType } from '@unchainedshop/core-delivery';
|
|
4
4
|
import { log } from '@unchainedshop/logger';
|
|
5
5
|
|
|
6
|
-
export default function deliveryInterfaces(
|
|
6
|
+
export default async function deliveryInterfaces(
|
|
7
7
|
root: never,
|
|
8
8
|
{ type }: { type: DeliveryProviderType },
|
|
9
9
|
{ userId }: Context,
|
|
10
10
|
) {
|
|
11
11
|
log(`query deliveryInterfaces ${type}`, { userId });
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
const allAdapters = await DeliveryDirector.getAdapters();
|
|
14
|
+
|
|
15
|
+
const filteredAdapters = type
|
|
16
|
+
? allAdapters.filter((Adapter) => Adapter.typeSupported(type as DeliveryProviderType))
|
|
17
|
+
: allAdapters;
|
|
18
|
+
|
|
19
|
+
return filteredAdapters.map((Adapter) => ({
|
|
16
20
|
_id: Adapter.key,
|
|
17
21
|
label: Adapter.label,
|
|
18
22
|
version: Adapter.version,
|
|
@@ -2,50 +2,29 @@ import { log } from '@unchainedshop/logger';
|
|
|
2
2
|
import { SortOption } from '@unchainedshop/utils';
|
|
3
3
|
import { OrderQuery } from '@unchainedshop/core-orders';
|
|
4
4
|
import { Context } from '../../../context.js';
|
|
5
|
-
import { PaymentProviderType } from '@unchainedshop/core-payment';
|
|
6
|
-
import { DeliveryProviderType } from '@unchainedshop/core-delivery';
|
|
7
5
|
|
|
8
6
|
export default async function orders(
|
|
9
7
|
root: never,
|
|
10
8
|
params: OrderQuery & { limit?: number; offset?: number; sort?: SortOption[] },
|
|
11
9
|
{ modules, userId }: Context,
|
|
12
10
|
) {
|
|
13
|
-
const { limit, offset,
|
|
11
|
+
const { limit, offset, paymentProviderIds, deliveryProviderIds, ...restParams } = params;
|
|
14
12
|
log(`query orders: ${limit} ${offset} ${restParams?.queryString || ''}`, { userId });
|
|
15
13
|
|
|
16
14
|
const promises: Promise<any>[] = [];
|
|
17
15
|
|
|
18
|
-
let paymentProviderIds: string[] | undefined;
|
|
19
|
-
let deliveryProviderIds: string[] | undefined;
|
|
20
|
-
|
|
21
|
-
if (paymentProviderTypes?.length) {
|
|
22
|
-
promises.push(
|
|
23
|
-
modules.payment.paymentProviders
|
|
24
|
-
.findProviders({ type: { $in: paymentProviderTypes as PaymentProviderType[] } })
|
|
25
|
-
.then((providers) => (paymentProviderIds = providers.map((p) => p._id))),
|
|
26
|
-
);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
if (deliveryProviderTypes?.length) {
|
|
30
|
-
promises.push(
|
|
31
|
-
modules.delivery
|
|
32
|
-
.findProviders({ type: { $in: deliveryProviderTypes as DeliveryProviderType[] } })
|
|
33
|
-
.then((providers) => (deliveryProviderIds = providers.map((p) => p._id))),
|
|
34
|
-
);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
16
|
await Promise.all(promises);
|
|
38
17
|
const [orderPayments, orderDeliveries] = await Promise.all([
|
|
39
|
-
paymentProviderIds
|
|
18
|
+
paymentProviderIds?.length
|
|
40
19
|
? modules.orders.payments.findOrderPaymentsByProviderIds({ paymentProviderIds })
|
|
41
20
|
: [],
|
|
42
|
-
deliveryProviderIds
|
|
21
|
+
deliveryProviderIds?.length
|
|
43
22
|
? modules.orders.deliveries.findDeliveryByProvidersId({ deliveryProviderIds })
|
|
44
23
|
: [],
|
|
45
24
|
]);
|
|
46
25
|
if (
|
|
47
|
-
(
|
|
48
|
-
(
|
|
26
|
+
(paymentProviderIds?.length && !orderPayments.length) ||
|
|
27
|
+
(deliveryProviderIds?.length && !orderDeliveries.length)
|
|
49
28
|
)
|
|
50
29
|
return [];
|
|
51
30
|
const paymentIds = orderPayments.map((p) => p._id);
|
|
@@ -1,50 +1,29 @@
|
|
|
1
1
|
import { log } from '@unchainedshop/logger';
|
|
2
2
|
import { OrderQuery } from '@unchainedshop/core-orders';
|
|
3
3
|
import { Context } from '../../../context.js';
|
|
4
|
-
import { PaymentProviderType } from '@unchainedshop/core-payment';
|
|
5
|
-
import { DeliveryProviderType } from '@unchainedshop/core-delivery';
|
|
6
4
|
|
|
7
5
|
export default async function ordersCount(
|
|
8
6
|
root: never,
|
|
9
7
|
params: OrderQuery,
|
|
10
8
|
{ modules, userId }: Context,
|
|
11
9
|
) {
|
|
12
|
-
const {
|
|
10
|
+
const { paymentProviderIds, deliveryProviderIds, ...restParams } = params;
|
|
13
11
|
log(`query ordersCount: ${params.includeCarts ? 'includeCart' : ''}`, { userId });
|
|
14
12
|
|
|
15
13
|
const promises: Promise<any>[] = [];
|
|
16
14
|
|
|
17
|
-
let paymentProviderIds: string[] | undefined;
|
|
18
|
-
let deliveryProviderIds: string[] | undefined;
|
|
19
|
-
|
|
20
|
-
if (paymentProviderTypes?.length) {
|
|
21
|
-
promises.push(
|
|
22
|
-
modules.payment.paymentProviders
|
|
23
|
-
.findProviders({ type: { $in: paymentProviderTypes as PaymentProviderType[] } })
|
|
24
|
-
.then((providers) => (paymentProviderIds = providers.map((p) => p._id))),
|
|
25
|
-
);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
if (deliveryProviderTypes?.length) {
|
|
29
|
-
promises.push(
|
|
30
|
-
modules.delivery
|
|
31
|
-
.findProviders({ type: { $in: deliveryProviderTypes as DeliveryProviderType[] } })
|
|
32
|
-
.then((providers) => (deliveryProviderIds = providers.map((p) => p._id))),
|
|
33
|
-
);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
15
|
await Promise.all(promises);
|
|
37
16
|
const [orderPayments, orderDeliveries] = await Promise.all([
|
|
38
|
-
paymentProviderIds
|
|
17
|
+
paymentProviderIds?.length
|
|
39
18
|
? modules.orders.payments.findOrderPaymentsByProviderIds({ paymentProviderIds })
|
|
40
19
|
: [],
|
|
41
|
-
deliveryProviderIds
|
|
20
|
+
deliveryProviderIds?.length
|
|
42
21
|
? modules.orders.deliveries.findDeliveryByProvidersId({ deliveryProviderIds })
|
|
43
22
|
: [],
|
|
44
23
|
]);
|
|
45
24
|
if (
|
|
46
|
-
(
|
|
47
|
-
(
|
|
25
|
+
(paymentProviderIds?.length && !orderPayments.length) ||
|
|
26
|
+
(deliveryProviderIds?.length && !orderDeliveries.length)
|
|
48
27
|
)
|
|
49
28
|
return 0;
|
|
50
29
|
const paymentIds = orderPayments.map((p) => p._id);
|
|
@@ -10,11 +10,15 @@ export default async function paymentInterfaces(
|
|
|
10
10
|
) {
|
|
11
11
|
log(`query paymentInterfaces ${type}`, { userId });
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
13
|
+
const allAdapters = await PaymentDirector.getAdapters();
|
|
14
|
+
|
|
15
|
+
const filteredAdapters = type
|
|
16
|
+
? allAdapters.filter((Adapter) => Adapter.typeSupported(type as PaymentProviderType))
|
|
17
|
+
: allAdapters;
|
|
18
|
+
|
|
19
|
+
return filteredAdapters.map((Adapter) => ({
|
|
20
|
+
_id: Adapter.key,
|
|
21
|
+
label: Adapter.label,
|
|
22
|
+
version: Adapter.version,
|
|
23
|
+
}));
|
|
20
24
|
}
|
|
@@ -9,10 +9,12 @@ export default async function warehousingInterfaces(
|
|
|
9
9
|
{ userId }: Context,
|
|
10
10
|
) {
|
|
11
11
|
log(`query warehousingInterfaces ${type}`, { userId });
|
|
12
|
+
const allAdapters = await WarehousingDirector.getAdapters();
|
|
13
|
+
const filteredAdapters = type
|
|
14
|
+
? allAdapters.filter((Adapter) => Adapter.typeSupported(type as WarehousingProviderType))
|
|
15
|
+
: allAdapters;
|
|
12
16
|
|
|
13
|
-
return
|
|
14
|
-
adapterFilter: (Adapter) => Adapter.typeSupported(type),
|
|
15
|
-
}).map((Adapter) => ({
|
|
17
|
+
return filteredAdapters.map((Adapter) => ({
|
|
16
18
|
_id: Adapter.key,
|
|
17
19
|
label: Adapter.label,
|
|
18
20
|
version: Adapter.version,
|
package/src/schema/query.ts
CHANGED
|
@@ -181,7 +181,7 @@ export default [
|
|
|
181
181
|
"""
|
|
182
182
|
Get all delivery interfaces filtered by type
|
|
183
183
|
"""
|
|
184
|
-
deliveryInterfaces(type: DeliveryProviderType
|
|
184
|
+
deliveryInterfaces(type: DeliveryProviderType): [DeliveryInterface!]!
|
|
185
185
|
@cacheControl(scope: PRIVATE, maxAge: 0)
|
|
186
186
|
|
|
187
187
|
"""
|
|
@@ -205,7 +205,7 @@ export default [
|
|
|
205
205
|
"""
|
|
206
206
|
Get all warehousing interfaces filtered by type
|
|
207
207
|
"""
|
|
208
|
-
warehousingInterfaces(type: WarehousingProviderType
|
|
208
|
+
warehousingInterfaces(type: WarehousingProviderType): [WarehousingInterface!]!
|
|
209
209
|
@cacheControl(scope: PRIVATE, maxAge: 0)
|
|
210
210
|
|
|
211
211
|
"""
|
|
@@ -242,7 +242,7 @@ export default [
|
|
|
242
242
|
"""
|
|
243
243
|
Get all payment interfaces filtered by type
|
|
244
244
|
"""
|
|
245
|
-
paymentInterfaces(type: PaymentProviderType
|
|
245
|
+
paymentInterfaces(type: PaymentProviderType): [PaymentInterface!]!
|
|
246
246
|
@cacheControl(scope: PRIVATE, maxAge: 0)
|
|
247
247
|
|
|
248
248
|
"""
|
|
@@ -251,8 +251,8 @@ export default [
|
|
|
251
251
|
ordersCount(
|
|
252
252
|
includeCarts: Boolean = false
|
|
253
253
|
queryString: String
|
|
254
|
-
|
|
255
|
-
|
|
254
|
+
paymentProviderIds: [String!]
|
|
255
|
+
deliveryProviderIds: [String!]
|
|
256
256
|
dateRange: DateFilterInput
|
|
257
257
|
status: [OrderStatus!]
|
|
258
258
|
): Int!
|
|
@@ -267,8 +267,8 @@ export default [
|
|
|
267
267
|
queryString: String
|
|
268
268
|
status: [OrderStatus!]
|
|
269
269
|
sort: [SortOptionInput!]
|
|
270
|
-
|
|
271
|
-
|
|
270
|
+
paymentProviderIds: [String!]
|
|
271
|
+
deliveryProviderIds: [String!]
|
|
272
272
|
dateRange: DateFilterInput
|
|
273
273
|
): [Order!]!
|
|
274
274
|
|