@pisell/pisellos 2.2.140 → 2.2.142
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/model/strategy/adapter/promotion/index.js +0 -9
- package/dist/modules/Payment/walletpass.js +1 -1
- package/dist/server/index.js +2 -1
- package/dist/server/modules/index.d.ts +1 -1
- package/dist/server/modules/order/types.d.ts +21 -1
- package/dist/server/modules/order/types.js +4 -0
- package/dist/server/modules/order/utils/filterOrders.js +209 -4
- package/dist/solution/BookingTicket/index.d.ts +1 -1
- package/lib/model/strategy/adapter/promotion/index.js +0 -49
- package/lib/modules/Payment/walletpass.js +1 -1
- package/lib/server/index.js +2 -1
- package/lib/server/modules/index.d.ts +1 -1
- package/lib/server/modules/order/types.d.ts +21 -1
- package/lib/server/modules/order/utils/filterOrders.js +207 -4
- package/lib/solution/BookingTicket/index.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
// 导出评估器
|
|
2
|
-
export { PromotionEvaluator } from "./evaluator";
|
|
3
|
-
|
|
4
|
-
// 导出适配器
|
|
5
|
-
export { PromotionAdapter } from "./adapter";
|
|
6
|
-
export { default } from "./adapter";
|
|
7
|
-
|
|
8
|
-
// 导出策略配置示例常量
|
|
9
|
-
export { X_ITEMS_FOR_Y_PRICE_STRATEGY, BUY_X_GET_Y_FREE_STRATEGY } from "./examples";
|
|
@@ -550,7 +550,7 @@ export var WalletPassPaymentImpl = /*#__PURE__*/function () {
|
|
|
550
550
|
order_expect_amount: params.order_expect_amount || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.order_expect_amount),
|
|
551
551
|
order_product_amount: params.order_product_amount || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.order_product_amount),
|
|
552
552
|
order_wait_pay_amount: params.order_wait_pay_amount || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.order_wait_pay_amount),
|
|
553
|
-
order_behavior_count_customer_id: params.order_behavior_count_customer_id || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.order_behavior_count_customer_id),
|
|
553
|
+
order_behavior_count_customer_id: params.order_behavior_count_customer_id || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.order_behavior_count_customer_id) || params.customer_id || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.customer_id),
|
|
554
554
|
products: params.products || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.products),
|
|
555
555
|
prepare_payments: params.prepare_payments || (baseWalletParams === null || baseWalletParams === void 0 ? void 0 : baseWalletParams.prepare_payments),
|
|
556
556
|
multiple: 1,
|
package/dist/server/index.js
CHANGED
|
@@ -2665,7 +2665,8 @@ var Server = /*#__PURE__*/function () {
|
|
|
2665
2665
|
rawCount: rawList.length,
|
|
2666
2666
|
filteredCount: result.count,
|
|
2667
2667
|
size: result.size,
|
|
2668
|
-
skip: result.skip
|
|
2668
|
+
skip: result.skip,
|
|
2669
|
+
rejected: result.rejected
|
|
2669
2670
|
});
|
|
2670
2671
|
return _context23.abrupt("return", {
|
|
2671
2672
|
code: 200,
|
|
@@ -14,7 +14,7 @@ export { QuotationHooks } from './quotation/types';
|
|
|
14
14
|
export { ScheduleModuleEx } from './schedule';
|
|
15
15
|
export type { ScheduleState, ScheduleItem } from './schedule/types';
|
|
16
16
|
export { OrderModule } from './order';
|
|
17
|
-
export type { OrderState, OrderData, OrderId, OrderSummary, OrderBookingItem, OrderProductLineItem, OrderPaymentItem, OrderSurchargeItem, OrderProductDiscountItem, OrderWithoutBookings, BookingData, OrderFilters, BookingFilters, OrderFilterResult, BookingFilterResult, OrderModulePagedResult, } from './order/types';
|
|
17
|
+
export type { OrderState, OrderData, OrderId, OrderSummary, OrderBookingItem, OrderProductLineItem, OrderPaymentItem, OrderSurchargeItem, OrderProductDiscountItem, OrderWithoutBookings, BookingData, OrderFilters, BookingFilters, OrderFilterResult, OrderFilterRejectDetail, OrderFilterRejectedEntry, BookingFilterResult, OrderModulePagedResult, } from './order/types';
|
|
18
18
|
export { OrderHooks } from './order/types';
|
|
19
19
|
export { FloorPlanModule } from './floor-plan';
|
|
20
20
|
export type { FloorPlanItem, FloorPlanState, FloorPlanSyncMessage } from './floor-plan/types';
|
|
@@ -479,7 +479,27 @@ export interface OrderModulePagedResult<T> {
|
|
|
479
479
|
size: number;
|
|
480
480
|
skip: number;
|
|
481
481
|
}
|
|
482
|
-
|
|
482
|
+
/** 单条筛选未命中说明(用于排查过滤原因) */
|
|
483
|
+
export interface OrderFilterRejectDetail {
|
|
484
|
+
/** 对应 OrderFilters 维度的标识 */
|
|
485
|
+
field: string;
|
|
486
|
+
/** 订单上该维度的当前值 */
|
|
487
|
+
actual: unknown;
|
|
488
|
+
/** 本次筛选的期望值/区间(便于对照) */
|
|
489
|
+
expected?: unknown;
|
|
490
|
+
}
|
|
491
|
+
/** 未通过筛选的订单及首个未满足条件(与过滤短路顺序一致) */
|
|
492
|
+
export interface OrderFilterRejectedEntry {
|
|
493
|
+
order_id?: OrderId | null;
|
|
494
|
+
/** 系统订单号等,便于与业务「订单号」对照 */
|
|
495
|
+
order_number?: string;
|
|
496
|
+
/** 按筛选顺序命中的第一条未满足条件 */
|
|
497
|
+
reason: OrderFilterRejectDetail;
|
|
498
|
+
}
|
|
499
|
+
export type OrderFilterResult = OrderModulePagedResult<OrderData> & {
|
|
500
|
+
/** 被过滤掉的订单及首个命中原因(与筛选短路顺序一致;不含仅分页未展示的已通过订单) */
|
|
501
|
+
rejected: OrderFilterRejectedEntry[];
|
|
502
|
+
};
|
|
483
503
|
export type BookingFilterResult = OrderModulePagedResult<BookingData>;
|
|
484
504
|
/**
|
|
485
505
|
* SSE 同步配置
|
|
@@ -18,18 +18,29 @@ export function filterOrders(orders, filters) {
|
|
|
18
18
|
list: [],
|
|
19
19
|
count: 0,
|
|
20
20
|
size: 0,
|
|
21
|
-
skip: 0
|
|
21
|
+
skip: 0,
|
|
22
|
+
rejected: []
|
|
22
23
|
};
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
// 默认分页参数
|
|
26
27
|
var size = safeFilters.num || 20;
|
|
27
28
|
var page = safeFilters.skip || 1;
|
|
29
|
+
var rejected = [];
|
|
28
30
|
|
|
29
31
|
// 1. 过滤
|
|
30
32
|
var filteredList = orders.filter(function (order) {
|
|
31
33
|
if (safeFilters.keyword) {
|
|
32
34
|
if (!JSON.stringify(order).toLowerCase().includes(safeFilters.keyword.toLowerCase())) {
|
|
35
|
+
rejected.push({
|
|
36
|
+
order_id: order.order_id,
|
|
37
|
+
order_number: order.order_number,
|
|
38
|
+
reason: {
|
|
39
|
+
field: 'keyword',
|
|
40
|
+
actual: '',
|
|
41
|
+
expected: safeFilters.keyword
|
|
42
|
+
}
|
|
43
|
+
});
|
|
33
44
|
return false;
|
|
34
45
|
}
|
|
35
46
|
}
|
|
@@ -37,6 +48,15 @@ export function filterOrders(orders, filters) {
|
|
|
37
48
|
// status - 订单状态
|
|
38
49
|
if (safeFilters.status && safeFilters.status.length > 0) {
|
|
39
50
|
if (!order.status || !safeFilters.status.includes(order.status)) {
|
|
51
|
+
rejected.push({
|
|
52
|
+
order_id: order.order_id,
|
|
53
|
+
order_number: order.order_number,
|
|
54
|
+
reason: {
|
|
55
|
+
field: 'status',
|
|
56
|
+
actual: order.status,
|
|
57
|
+
expected: safeFilters.status
|
|
58
|
+
}
|
|
59
|
+
});
|
|
40
60
|
return false;
|
|
41
61
|
}
|
|
42
62
|
}
|
|
@@ -44,6 +64,15 @@ export function filterOrders(orders, filters) {
|
|
|
44
64
|
// payment_status - 支付状态
|
|
45
65
|
if (safeFilters.payment_status && safeFilters.payment_status.length > 0) {
|
|
46
66
|
if (!order.payment_status || !safeFilters.payment_status.includes(order.payment_status)) {
|
|
67
|
+
rejected.push({
|
|
68
|
+
order_id: order.order_id,
|
|
69
|
+
order_number: order.order_number,
|
|
70
|
+
reason: {
|
|
71
|
+
field: 'payment_status',
|
|
72
|
+
actual: order.payment_status,
|
|
73
|
+
expected: safeFilters.payment_status
|
|
74
|
+
}
|
|
75
|
+
});
|
|
47
76
|
return false;
|
|
48
77
|
}
|
|
49
78
|
}
|
|
@@ -51,6 +80,15 @@ export function filterOrders(orders, filters) {
|
|
|
51
80
|
// shipping_status - 处理状态
|
|
52
81
|
if (safeFilters.shipping_status && safeFilters.shipping_status.length > 0) {
|
|
53
82
|
if (!order.shipping_status || !safeFilters.shipping_status.includes(order.shipping_status)) {
|
|
83
|
+
rejected.push({
|
|
84
|
+
order_id: order.order_id,
|
|
85
|
+
order_number: order.order_number,
|
|
86
|
+
reason: {
|
|
87
|
+
field: 'shipping_status',
|
|
88
|
+
actual: order.shipping_status,
|
|
89
|
+
expected: safeFilters.shipping_status
|
|
90
|
+
}
|
|
91
|
+
});
|
|
54
92
|
return false;
|
|
55
93
|
}
|
|
56
94
|
}
|
|
@@ -58,6 +96,15 @@ export function filterOrders(orders, filters) {
|
|
|
58
96
|
// customer_id - 客户ID(精确匹配)
|
|
59
97
|
if (safeFilters.customer_id !== undefined && safeFilters.customer_id !== null) {
|
|
60
98
|
if (String(order.customer_id) !== String(safeFilters.customer_id)) {
|
|
99
|
+
rejected.push({
|
|
100
|
+
order_id: order.order_id,
|
|
101
|
+
order_number: order.order_number,
|
|
102
|
+
reason: {
|
|
103
|
+
field: 'customer_id',
|
|
104
|
+
actual: order.customer_id,
|
|
105
|
+
expected: safeFilters.customer_id
|
|
106
|
+
}
|
|
107
|
+
});
|
|
61
108
|
return false;
|
|
62
109
|
}
|
|
63
110
|
}
|
|
@@ -65,6 +112,15 @@ export function filterOrders(orders, filters) {
|
|
|
65
112
|
// order_sales_channel - 销售渠道
|
|
66
113
|
if (safeFilters.order_sales_channel && safeFilters.order_sales_channel.length > 0) {
|
|
67
114
|
if (!order.order_sales_channel || !safeFilters.order_sales_channel.includes(order.order_sales_channel)) {
|
|
115
|
+
rejected.push({
|
|
116
|
+
order_id: order.order_id,
|
|
117
|
+
order_number: order.order_number,
|
|
118
|
+
reason: {
|
|
119
|
+
field: 'order_sales_channel',
|
|
120
|
+
actual: order.order_sales_channel,
|
|
121
|
+
expected: safeFilters.order_sales_channel
|
|
122
|
+
}
|
|
123
|
+
});
|
|
68
124
|
return false;
|
|
69
125
|
}
|
|
70
126
|
}
|
|
@@ -72,12 +128,30 @@ export function filterOrders(orders, filters) {
|
|
|
72
128
|
// payment_methods - 支付方式
|
|
73
129
|
if (safeFilters.payment_methods && safeFilters.payment_methods.length > 0) {
|
|
74
130
|
if (!order.payment_methods || !Array.isArray(order.payment_methods) || order.payment_methods.length === 0) {
|
|
131
|
+
rejected.push({
|
|
132
|
+
order_id: order.order_id,
|
|
133
|
+
order_number: order.order_number,
|
|
134
|
+
reason: {
|
|
135
|
+
field: 'payment_methods',
|
|
136
|
+
actual: order.payment_methods,
|
|
137
|
+
expected: safeFilters.payment_methods
|
|
138
|
+
}
|
|
139
|
+
});
|
|
75
140
|
return false;
|
|
76
141
|
}
|
|
77
142
|
var hasMatch = order.payment_methods.some(function (pm) {
|
|
78
143
|
return safeFilters.payment_methods.includes(pm);
|
|
79
144
|
});
|
|
80
145
|
if (!hasMatch) {
|
|
146
|
+
rejected.push({
|
|
147
|
+
order_id: order.order_id,
|
|
148
|
+
order_number: order.order_number,
|
|
149
|
+
reason: {
|
|
150
|
+
field: 'payment_methods',
|
|
151
|
+
actual: order.payment_methods,
|
|
152
|
+
expected: safeFilters.payment_methods
|
|
153
|
+
}
|
|
154
|
+
});
|
|
81
155
|
return false;
|
|
82
156
|
}
|
|
83
157
|
}
|
|
@@ -86,9 +160,27 @@ export function filterOrders(orders, filters) {
|
|
|
86
160
|
if (safeFilters.min_total_amount !== undefined || safeFilters.max_total_amount !== undefined) {
|
|
87
161
|
var orderAmount = parseFloat(String(order.total_amount || 0));
|
|
88
162
|
if (safeFilters.min_total_amount !== undefined && orderAmount < safeFilters.min_total_amount) {
|
|
163
|
+
rejected.push({
|
|
164
|
+
order_id: order.order_id,
|
|
165
|
+
order_number: order.order_number,
|
|
166
|
+
reason: {
|
|
167
|
+
field: 'min_total_amount',
|
|
168
|
+
actual: order.total_amount,
|
|
169
|
+
expected: safeFilters.min_total_amount
|
|
170
|
+
}
|
|
171
|
+
});
|
|
89
172
|
return false;
|
|
90
173
|
}
|
|
91
174
|
if (safeFilters.max_total_amount !== undefined && orderAmount > safeFilters.max_total_amount) {
|
|
175
|
+
rejected.push({
|
|
176
|
+
order_id: order.order_id,
|
|
177
|
+
order_number: order.order_number,
|
|
178
|
+
reason: {
|
|
179
|
+
field: 'max_total_amount',
|
|
180
|
+
actual: order.total_amount,
|
|
181
|
+
expected: safeFilters.max_total_amount
|
|
182
|
+
}
|
|
183
|
+
});
|
|
92
184
|
return false;
|
|
93
185
|
}
|
|
94
186
|
}
|
|
@@ -96,6 +188,15 @@ export function filterOrders(orders, filters) {
|
|
|
96
188
|
// tag_ids - 标签(统一 String 比较,兼容 number/string)
|
|
97
189
|
if (safeFilters.tag_ids && safeFilters.tag_ids.length > 0) {
|
|
98
190
|
if (!order.tag_ids || !Array.isArray(order.tag_ids) || order.tag_ids.length === 0) {
|
|
191
|
+
rejected.push({
|
|
192
|
+
order_id: order.order_id,
|
|
193
|
+
order_number: order.order_number,
|
|
194
|
+
reason: {
|
|
195
|
+
field: 'tag_ids',
|
|
196
|
+
actual: order.tag_ids,
|
|
197
|
+
expected: safeFilters.tag_ids
|
|
198
|
+
}
|
|
199
|
+
});
|
|
99
200
|
return false;
|
|
100
201
|
}
|
|
101
202
|
var filterTagSet = new Set(safeFilters.tag_ids.map(String));
|
|
@@ -103,6 +204,15 @@ export function filterOrders(orders, filters) {
|
|
|
103
204
|
return filterTagSet.has(String(tag));
|
|
104
205
|
});
|
|
105
206
|
if (!_hasMatch) {
|
|
207
|
+
rejected.push({
|
|
208
|
+
order_id: order.order_id,
|
|
209
|
+
order_number: order.order_number,
|
|
210
|
+
reason: {
|
|
211
|
+
field: 'tag_ids',
|
|
212
|
+
actual: order.tag_ids,
|
|
213
|
+
expected: safeFilters.tag_ids
|
|
214
|
+
}
|
|
215
|
+
});
|
|
106
216
|
return false;
|
|
107
217
|
}
|
|
108
218
|
}
|
|
@@ -110,6 +220,15 @@ export function filterOrders(orders, filters) {
|
|
|
110
220
|
// shipping_type - 配送方式
|
|
111
221
|
if (safeFilters.shipping_type && safeFilters.shipping_type.length > 0) {
|
|
112
222
|
if (!order.shipping_type || !safeFilters.shipping_type.includes(order.shipping_type)) {
|
|
223
|
+
rejected.push({
|
|
224
|
+
order_id: order.order_id,
|
|
225
|
+
order_number: order.order_number,
|
|
226
|
+
reason: {
|
|
227
|
+
field: 'shipping_type',
|
|
228
|
+
actual: order.shipping_type,
|
|
229
|
+
expected: safeFilters.shipping_type
|
|
230
|
+
}
|
|
231
|
+
});
|
|
113
232
|
return false;
|
|
114
233
|
}
|
|
115
234
|
}
|
|
@@ -117,6 +236,15 @@ export function filterOrders(orders, filters) {
|
|
|
117
236
|
// delivery_zone_name - 配送区域(模糊匹配)
|
|
118
237
|
if (safeFilters.delivery_zone_name !== undefined && safeFilters.delivery_zone_name !== null && safeFilters.delivery_zone_name !== '') {
|
|
119
238
|
if (!order.delivery_zone_name || !order.delivery_zone_name.toLowerCase().includes(safeFilters.delivery_zone_name.toLowerCase())) {
|
|
239
|
+
rejected.push({
|
|
240
|
+
order_id: order.order_id,
|
|
241
|
+
order_number: order.order_number,
|
|
242
|
+
reason: {
|
|
243
|
+
field: 'delivery_zone_name',
|
|
244
|
+
actual: order.delivery_zone_name,
|
|
245
|
+
expected: safeFilters.delivery_zone_name
|
|
246
|
+
}
|
|
247
|
+
});
|
|
120
248
|
return false;
|
|
121
249
|
}
|
|
122
250
|
}
|
|
@@ -124,6 +252,15 @@ export function filterOrders(orders, filters) {
|
|
|
124
252
|
// location_id - 取货地点(精确匹配)
|
|
125
253
|
if (safeFilters.location_id !== undefined && safeFilters.location_id !== null) {
|
|
126
254
|
if (String(order.location_id) !== String(safeFilters.location_id)) {
|
|
255
|
+
rejected.push({
|
|
256
|
+
order_id: order.order_id,
|
|
257
|
+
order_number: order.order_number,
|
|
258
|
+
reason: {
|
|
259
|
+
field: 'location_id',
|
|
260
|
+
actual: order.location_id,
|
|
261
|
+
expected: safeFilters.location_id
|
|
262
|
+
}
|
|
263
|
+
});
|
|
127
264
|
return false;
|
|
128
265
|
}
|
|
129
266
|
}
|
|
@@ -131,6 +268,15 @@ export function filterOrders(orders, filters) {
|
|
|
131
268
|
// shipping_order_number - 物流单号(模糊匹配)
|
|
132
269
|
if (safeFilters.shipping_order_number !== undefined && safeFilters.shipping_order_number !== null && safeFilters.shipping_order_number !== '') {
|
|
133
270
|
if (!order.shipping_order_number || !order.shipping_order_number.toLowerCase().includes(safeFilters.shipping_order_number.toLowerCase())) {
|
|
271
|
+
rejected.push({
|
|
272
|
+
order_id: order.order_id,
|
|
273
|
+
order_number: order.order_number,
|
|
274
|
+
reason: {
|
|
275
|
+
field: 'shipping_order_number',
|
|
276
|
+
actual: order.shipping_order_number,
|
|
277
|
+
expected: safeFilters.shipping_order_number
|
|
278
|
+
}
|
|
279
|
+
});
|
|
134
280
|
return false;
|
|
135
281
|
}
|
|
136
282
|
}
|
|
@@ -138,6 +284,15 @@ export function filterOrders(orders, filters) {
|
|
|
138
284
|
// logistics_company_id - 物流公司
|
|
139
285
|
if (safeFilters.logistics_company_id && safeFilters.logistics_company_id.length > 0) {
|
|
140
286
|
if (!order.logistics_company_id) {
|
|
287
|
+
rejected.push({
|
|
288
|
+
order_id: order.order_id,
|
|
289
|
+
order_number: order.order_number,
|
|
290
|
+
reason: {
|
|
291
|
+
field: 'logistics_company_id',
|
|
292
|
+
actual: order.logistics_company_id,
|
|
293
|
+
expected: safeFilters.logistics_company_id
|
|
294
|
+
}
|
|
295
|
+
});
|
|
141
296
|
return false;
|
|
142
297
|
}
|
|
143
298
|
var orderLogisticsId = String(order.logistics_company_id);
|
|
@@ -145,6 +300,15 @@ export function filterOrders(orders, filters) {
|
|
|
145
300
|
return String(id) === orderLogisticsId;
|
|
146
301
|
});
|
|
147
302
|
if (!_hasMatch2) {
|
|
303
|
+
rejected.push({
|
|
304
|
+
order_id: order.order_id,
|
|
305
|
+
order_number: order.order_number,
|
|
306
|
+
reason: {
|
|
307
|
+
field: 'logistics_company_id',
|
|
308
|
+
actual: order.logistics_company_id,
|
|
309
|
+
expected: safeFilters.logistics_company_id
|
|
310
|
+
}
|
|
311
|
+
});
|
|
148
312
|
return false;
|
|
149
313
|
}
|
|
150
314
|
}
|
|
@@ -152,6 +316,15 @@ export function filterOrders(orders, filters) {
|
|
|
152
316
|
// zip - 邮编(模糊匹配)
|
|
153
317
|
if (safeFilters.zip !== undefined && safeFilters.zip !== null && safeFilters.zip !== '') {
|
|
154
318
|
if (!order.zip || !order.zip.toLowerCase().includes(safeFilters.zip.toLowerCase())) {
|
|
319
|
+
rejected.push({
|
|
320
|
+
order_id: order.order_id,
|
|
321
|
+
order_number: order.order_number,
|
|
322
|
+
reason: {
|
|
323
|
+
field: 'zip',
|
|
324
|
+
actual: order.zip,
|
|
325
|
+
expected: safeFilters.zip
|
|
326
|
+
}
|
|
327
|
+
});
|
|
155
328
|
return false;
|
|
156
329
|
}
|
|
157
330
|
}
|
|
@@ -159,6 +332,15 @@ export function filterOrders(orders, filters) {
|
|
|
159
332
|
// business_code - 业务类型(精确匹配)
|
|
160
333
|
if (safeFilters.business_code) {
|
|
161
334
|
if (!order.business_code || order.business_code !== safeFilters.business_code) {
|
|
335
|
+
rejected.push({
|
|
336
|
+
order_id: order.order_id,
|
|
337
|
+
order_number: order.order_number,
|
|
338
|
+
reason: {
|
|
339
|
+
field: 'business_code',
|
|
340
|
+
actual: order.business_code,
|
|
341
|
+
expected: safeFilters.business_code
|
|
342
|
+
}
|
|
343
|
+
});
|
|
162
344
|
return false;
|
|
163
345
|
}
|
|
164
346
|
}
|
|
@@ -168,12 +350,34 @@ export function filterOrders(orders, filters) {
|
|
|
168
350
|
var orderTime = order.created_at ? typeof order.created_at === 'number' ? order.created_at : new Date(String(order.created_at)).getTime() : 0;
|
|
169
351
|
if (safeFilters.start_time) {
|
|
170
352
|
var startTs = new Date(safeFilters.start_time).getTime();
|
|
171
|
-
if (orderTime < startTs)
|
|
353
|
+
if (orderTime < startTs) {
|
|
354
|
+
rejected.push({
|
|
355
|
+
order_id: order.order_id,
|
|
356
|
+
order_number: order.order_number,
|
|
357
|
+
reason: {
|
|
358
|
+
field: 'start_time',
|
|
359
|
+
actual: order.created_at,
|
|
360
|
+
expected: safeFilters.start_time
|
|
361
|
+
}
|
|
362
|
+
});
|
|
363
|
+
return false;
|
|
364
|
+
}
|
|
172
365
|
}
|
|
173
366
|
if (safeFilters.end_time) {
|
|
174
367
|
// end_time 为当天结束(23:59:59.999)
|
|
175
368
|
var endTs = new Date(safeFilters.end_time).getTime() + 86400000 - 1;
|
|
176
|
-
if (orderTime > endTs)
|
|
369
|
+
if (orderTime > endTs) {
|
|
370
|
+
rejected.push({
|
|
371
|
+
order_id: order.order_id,
|
|
372
|
+
order_number: order.order_number,
|
|
373
|
+
reason: {
|
|
374
|
+
field: 'end_time',
|
|
375
|
+
actual: order.created_at,
|
|
376
|
+
expected: safeFilters.end_time
|
|
377
|
+
}
|
|
378
|
+
});
|
|
379
|
+
return false;
|
|
380
|
+
}
|
|
177
381
|
}
|
|
178
382
|
}
|
|
179
383
|
return true;
|
|
@@ -227,6 +431,7 @@ export function filterOrders(orders, filters) {
|
|
|
227
431
|
list: paginatedList,
|
|
228
432
|
count: totalCount,
|
|
229
433
|
size: size,
|
|
230
|
-
skip: page
|
|
434
|
+
skip: page,
|
|
435
|
+
rejected: rejected
|
|
231
436
|
};
|
|
232
437
|
}
|
|
@@ -136,7 +136,7 @@ export declare class BookingTicketImpl extends BaseModule implements Module {
|
|
|
136
136
|
* 获取当前的客户搜索条件
|
|
137
137
|
* @returns 当前搜索条件
|
|
138
138
|
*/
|
|
139
|
-
getCurrentCustomerSearchParams(): Omit<import("../../modules").ShopGetCustomerListParams, "
|
|
139
|
+
getCurrentCustomerSearchParams(): Omit<import("../../modules").ShopGetCustomerListParams, "num" | "skip">;
|
|
140
140
|
/**
|
|
141
141
|
* 获取客户列表状态(包含滚动加载相关状态)
|
|
142
142
|
* @returns 客户状态
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
-
};
|
|
11
|
-
var __copyProps = (to, from, except, desc) => {
|
|
12
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
-
for (let key of __getOwnPropNames(from))
|
|
14
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
-
}
|
|
17
|
-
return to;
|
|
18
|
-
};
|
|
19
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
-
mod
|
|
26
|
-
));
|
|
27
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
-
|
|
29
|
-
// src/model/strategy/adapter/promotion/index.ts
|
|
30
|
-
var promotion_exports = {};
|
|
31
|
-
__export(promotion_exports, {
|
|
32
|
-
BUY_X_GET_Y_FREE_STRATEGY: () => import_examples.BUY_X_GET_Y_FREE_STRATEGY,
|
|
33
|
-
PromotionAdapter: () => import_adapter.PromotionAdapter,
|
|
34
|
-
PromotionEvaluator: () => import_evaluator.PromotionEvaluator,
|
|
35
|
-
X_ITEMS_FOR_Y_PRICE_STRATEGY: () => import_examples.X_ITEMS_FOR_Y_PRICE_STRATEGY,
|
|
36
|
-
default: () => import_adapter2.default
|
|
37
|
-
});
|
|
38
|
-
module.exports = __toCommonJS(promotion_exports);
|
|
39
|
-
var import_evaluator = require("./evaluator");
|
|
40
|
-
var import_adapter = require("./adapter");
|
|
41
|
-
var import_adapter2 = __toESM(require("./adapter"));
|
|
42
|
-
var import_examples = require("./examples");
|
|
43
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
44
|
-
0 && (module.exports = {
|
|
45
|
-
BUY_X_GET_Y_FREE_STRATEGY,
|
|
46
|
-
PromotionAdapter,
|
|
47
|
-
PromotionEvaluator,
|
|
48
|
-
X_ITEMS_FOR_Y_PRICE_STRATEGY
|
|
49
|
-
});
|
|
@@ -389,7 +389,7 @@ var WalletPassPaymentImpl = class {
|
|
|
389
389
|
order_expect_amount: params.order_expect_amount || (baseWalletParams == null ? void 0 : baseWalletParams.order_expect_amount),
|
|
390
390
|
order_product_amount: params.order_product_amount || (baseWalletParams == null ? void 0 : baseWalletParams.order_product_amount),
|
|
391
391
|
order_wait_pay_amount: params.order_wait_pay_amount || (baseWalletParams == null ? void 0 : baseWalletParams.order_wait_pay_amount),
|
|
392
|
-
order_behavior_count_customer_id: params.order_behavior_count_customer_id || (baseWalletParams == null ? void 0 : baseWalletParams.order_behavior_count_customer_id),
|
|
392
|
+
order_behavior_count_customer_id: params.order_behavior_count_customer_id || (baseWalletParams == null ? void 0 : baseWalletParams.order_behavior_count_customer_id) || params.customer_id || (baseWalletParams == null ? void 0 : baseWalletParams.customer_id),
|
|
393
393
|
products: params.products || (baseWalletParams == null ? void 0 : baseWalletParams.products),
|
|
394
394
|
prepare_payments: params.prepare_payments || (baseWalletParams == null ? void 0 : baseWalletParams.prepare_payments),
|
|
395
395
|
multiple: 1,
|
package/lib/server/index.js
CHANGED
|
@@ -14,7 +14,7 @@ export { QuotationHooks } from './quotation/types';
|
|
|
14
14
|
export { ScheduleModuleEx } from './schedule';
|
|
15
15
|
export type { ScheduleState, ScheduleItem } from './schedule/types';
|
|
16
16
|
export { OrderModule } from './order';
|
|
17
|
-
export type { OrderState, OrderData, OrderId, OrderSummary, OrderBookingItem, OrderProductLineItem, OrderPaymentItem, OrderSurchargeItem, OrderProductDiscountItem, OrderWithoutBookings, BookingData, OrderFilters, BookingFilters, OrderFilterResult, BookingFilterResult, OrderModulePagedResult, } from './order/types';
|
|
17
|
+
export type { OrderState, OrderData, OrderId, OrderSummary, OrderBookingItem, OrderProductLineItem, OrderPaymentItem, OrderSurchargeItem, OrderProductDiscountItem, OrderWithoutBookings, BookingData, OrderFilters, BookingFilters, OrderFilterResult, OrderFilterRejectDetail, OrderFilterRejectedEntry, BookingFilterResult, OrderModulePagedResult, } from './order/types';
|
|
18
18
|
export { OrderHooks } from './order/types';
|
|
19
19
|
export { FloorPlanModule } from './floor-plan';
|
|
20
20
|
export type { FloorPlanItem, FloorPlanState, FloorPlanSyncMessage } from './floor-plan/types';
|
|
@@ -479,7 +479,27 @@ export interface OrderModulePagedResult<T> {
|
|
|
479
479
|
size: number;
|
|
480
480
|
skip: number;
|
|
481
481
|
}
|
|
482
|
-
|
|
482
|
+
/** 单条筛选未命中说明(用于排查过滤原因) */
|
|
483
|
+
export interface OrderFilterRejectDetail {
|
|
484
|
+
/** 对应 OrderFilters 维度的标识 */
|
|
485
|
+
field: string;
|
|
486
|
+
/** 订单上该维度的当前值 */
|
|
487
|
+
actual: unknown;
|
|
488
|
+
/** 本次筛选的期望值/区间(便于对照) */
|
|
489
|
+
expected?: unknown;
|
|
490
|
+
}
|
|
491
|
+
/** 未通过筛选的订单及首个未满足条件(与过滤短路顺序一致) */
|
|
492
|
+
export interface OrderFilterRejectedEntry {
|
|
493
|
+
order_id?: OrderId | null;
|
|
494
|
+
/** 系统订单号等,便于与业务「订单号」对照 */
|
|
495
|
+
order_number?: string;
|
|
496
|
+
/** 按筛选顺序命中的第一条未满足条件 */
|
|
497
|
+
reason: OrderFilterRejectDetail;
|
|
498
|
+
}
|
|
499
|
+
export type OrderFilterResult = OrderModulePagedResult<OrderData> & {
|
|
500
|
+
/** 被过滤掉的订单及首个命中原因(与筛选短路顺序一致;不含仅分页未展示的已通过订单) */
|
|
501
|
+
rejected: OrderFilterRejectedEntry[];
|
|
502
|
+
};
|
|
483
503
|
export type BookingFilterResult = OrderModulePagedResult<BookingData>;
|
|
484
504
|
/**
|
|
485
505
|
* SSE 同步配置
|
|
@@ -29,107 +29,289 @@ function filterOrders(orders, filters) {
|
|
|
29
29
|
list: [],
|
|
30
30
|
count: 0,
|
|
31
31
|
size: 0,
|
|
32
|
-
skip: 0
|
|
32
|
+
skip: 0,
|
|
33
|
+
rejected: []
|
|
33
34
|
};
|
|
34
35
|
}
|
|
35
36
|
const size = safeFilters.num || 20;
|
|
36
37
|
const page = safeFilters.skip || 1;
|
|
38
|
+
const rejected = [];
|
|
37
39
|
let filteredList = orders.filter((order) => {
|
|
38
40
|
if (safeFilters.keyword) {
|
|
39
41
|
if (!JSON.stringify(order).toLowerCase().includes(safeFilters.keyword.toLowerCase())) {
|
|
42
|
+
rejected.push({
|
|
43
|
+
order_id: order.order_id,
|
|
44
|
+
order_number: order.order_number,
|
|
45
|
+
reason: {
|
|
46
|
+
field: "keyword",
|
|
47
|
+
actual: "",
|
|
48
|
+
expected: safeFilters.keyword
|
|
49
|
+
}
|
|
50
|
+
});
|
|
40
51
|
return false;
|
|
41
52
|
}
|
|
42
53
|
}
|
|
43
54
|
if (safeFilters.status && safeFilters.status.length > 0) {
|
|
44
55
|
if (!order.status || !safeFilters.status.includes(order.status)) {
|
|
56
|
+
rejected.push({
|
|
57
|
+
order_id: order.order_id,
|
|
58
|
+
order_number: order.order_number,
|
|
59
|
+
reason: {
|
|
60
|
+
field: "status",
|
|
61
|
+
actual: order.status,
|
|
62
|
+
expected: safeFilters.status
|
|
63
|
+
}
|
|
64
|
+
});
|
|
45
65
|
return false;
|
|
46
66
|
}
|
|
47
67
|
}
|
|
48
68
|
if (safeFilters.payment_status && safeFilters.payment_status.length > 0) {
|
|
49
69
|
if (!order.payment_status || !safeFilters.payment_status.includes(order.payment_status)) {
|
|
70
|
+
rejected.push({
|
|
71
|
+
order_id: order.order_id,
|
|
72
|
+
order_number: order.order_number,
|
|
73
|
+
reason: {
|
|
74
|
+
field: "payment_status",
|
|
75
|
+
actual: order.payment_status,
|
|
76
|
+
expected: safeFilters.payment_status
|
|
77
|
+
}
|
|
78
|
+
});
|
|
50
79
|
return false;
|
|
51
80
|
}
|
|
52
81
|
}
|
|
53
82
|
if (safeFilters.shipping_status && safeFilters.shipping_status.length > 0) {
|
|
54
83
|
if (!order.shipping_status || !safeFilters.shipping_status.includes(order.shipping_status)) {
|
|
84
|
+
rejected.push({
|
|
85
|
+
order_id: order.order_id,
|
|
86
|
+
order_number: order.order_number,
|
|
87
|
+
reason: {
|
|
88
|
+
field: "shipping_status",
|
|
89
|
+
actual: order.shipping_status,
|
|
90
|
+
expected: safeFilters.shipping_status
|
|
91
|
+
}
|
|
92
|
+
});
|
|
55
93
|
return false;
|
|
56
94
|
}
|
|
57
95
|
}
|
|
58
96
|
if (safeFilters.customer_id !== void 0 && safeFilters.customer_id !== null) {
|
|
59
97
|
if (String(order.customer_id) !== String(safeFilters.customer_id)) {
|
|
98
|
+
rejected.push({
|
|
99
|
+
order_id: order.order_id,
|
|
100
|
+
order_number: order.order_number,
|
|
101
|
+
reason: {
|
|
102
|
+
field: "customer_id",
|
|
103
|
+
actual: order.customer_id,
|
|
104
|
+
expected: safeFilters.customer_id
|
|
105
|
+
}
|
|
106
|
+
});
|
|
60
107
|
return false;
|
|
61
108
|
}
|
|
62
109
|
}
|
|
63
110
|
if (safeFilters.order_sales_channel && safeFilters.order_sales_channel.length > 0) {
|
|
64
111
|
if (!order.order_sales_channel || !safeFilters.order_sales_channel.includes(order.order_sales_channel)) {
|
|
112
|
+
rejected.push({
|
|
113
|
+
order_id: order.order_id,
|
|
114
|
+
order_number: order.order_number,
|
|
115
|
+
reason: {
|
|
116
|
+
field: "order_sales_channel",
|
|
117
|
+
actual: order.order_sales_channel,
|
|
118
|
+
expected: safeFilters.order_sales_channel
|
|
119
|
+
}
|
|
120
|
+
});
|
|
65
121
|
return false;
|
|
66
122
|
}
|
|
67
123
|
}
|
|
68
124
|
if (safeFilters.payment_methods && safeFilters.payment_methods.length > 0) {
|
|
69
125
|
if (!order.payment_methods || !Array.isArray(order.payment_methods) || order.payment_methods.length === 0) {
|
|
126
|
+
rejected.push({
|
|
127
|
+
order_id: order.order_id,
|
|
128
|
+
order_number: order.order_number,
|
|
129
|
+
reason: {
|
|
130
|
+
field: "payment_methods",
|
|
131
|
+
actual: order.payment_methods,
|
|
132
|
+
expected: safeFilters.payment_methods
|
|
133
|
+
}
|
|
134
|
+
});
|
|
70
135
|
return false;
|
|
71
136
|
}
|
|
72
137
|
const hasMatch = order.payment_methods.some((pm) => safeFilters.payment_methods.includes(pm));
|
|
73
138
|
if (!hasMatch) {
|
|
139
|
+
rejected.push({
|
|
140
|
+
order_id: order.order_id,
|
|
141
|
+
order_number: order.order_number,
|
|
142
|
+
reason: {
|
|
143
|
+
field: "payment_methods",
|
|
144
|
+
actual: order.payment_methods,
|
|
145
|
+
expected: safeFilters.payment_methods
|
|
146
|
+
}
|
|
147
|
+
});
|
|
74
148
|
return false;
|
|
75
149
|
}
|
|
76
150
|
}
|
|
77
151
|
if (safeFilters.min_total_amount !== void 0 || safeFilters.max_total_amount !== void 0) {
|
|
78
152
|
const orderAmount = parseFloat(String(order.total_amount || 0));
|
|
79
153
|
if (safeFilters.min_total_amount !== void 0 && orderAmount < safeFilters.min_total_amount) {
|
|
154
|
+
rejected.push({
|
|
155
|
+
order_id: order.order_id,
|
|
156
|
+
order_number: order.order_number,
|
|
157
|
+
reason: {
|
|
158
|
+
field: "min_total_amount",
|
|
159
|
+
actual: order.total_amount,
|
|
160
|
+
expected: safeFilters.min_total_amount
|
|
161
|
+
}
|
|
162
|
+
});
|
|
80
163
|
return false;
|
|
81
164
|
}
|
|
82
165
|
if (safeFilters.max_total_amount !== void 0 && orderAmount > safeFilters.max_total_amount) {
|
|
166
|
+
rejected.push({
|
|
167
|
+
order_id: order.order_id,
|
|
168
|
+
order_number: order.order_number,
|
|
169
|
+
reason: {
|
|
170
|
+
field: "max_total_amount",
|
|
171
|
+
actual: order.total_amount,
|
|
172
|
+
expected: safeFilters.max_total_amount
|
|
173
|
+
}
|
|
174
|
+
});
|
|
83
175
|
return false;
|
|
84
176
|
}
|
|
85
177
|
}
|
|
86
178
|
if (safeFilters.tag_ids && safeFilters.tag_ids.length > 0) {
|
|
87
179
|
if (!order.tag_ids || !Array.isArray(order.tag_ids) || order.tag_ids.length === 0) {
|
|
180
|
+
rejected.push({
|
|
181
|
+
order_id: order.order_id,
|
|
182
|
+
order_number: order.order_number,
|
|
183
|
+
reason: {
|
|
184
|
+
field: "tag_ids",
|
|
185
|
+
actual: order.tag_ids,
|
|
186
|
+
expected: safeFilters.tag_ids
|
|
187
|
+
}
|
|
188
|
+
});
|
|
88
189
|
return false;
|
|
89
190
|
}
|
|
90
191
|
const filterTagSet = new Set(safeFilters.tag_ids.map(String));
|
|
91
192
|
const hasMatch = order.tag_ids.some((tag) => filterTagSet.has(String(tag)));
|
|
92
193
|
if (!hasMatch) {
|
|
194
|
+
rejected.push({
|
|
195
|
+
order_id: order.order_id,
|
|
196
|
+
order_number: order.order_number,
|
|
197
|
+
reason: {
|
|
198
|
+
field: "tag_ids",
|
|
199
|
+
actual: order.tag_ids,
|
|
200
|
+
expected: safeFilters.tag_ids
|
|
201
|
+
}
|
|
202
|
+
});
|
|
93
203
|
return false;
|
|
94
204
|
}
|
|
95
205
|
}
|
|
96
206
|
if (safeFilters.shipping_type && safeFilters.shipping_type.length > 0) {
|
|
97
207
|
if (!order.shipping_type || !safeFilters.shipping_type.includes(order.shipping_type)) {
|
|
208
|
+
rejected.push({
|
|
209
|
+
order_id: order.order_id,
|
|
210
|
+
order_number: order.order_number,
|
|
211
|
+
reason: {
|
|
212
|
+
field: "shipping_type",
|
|
213
|
+
actual: order.shipping_type,
|
|
214
|
+
expected: safeFilters.shipping_type
|
|
215
|
+
}
|
|
216
|
+
});
|
|
98
217
|
return false;
|
|
99
218
|
}
|
|
100
219
|
}
|
|
101
220
|
if (safeFilters.delivery_zone_name !== void 0 && safeFilters.delivery_zone_name !== null && safeFilters.delivery_zone_name !== "") {
|
|
102
221
|
if (!order.delivery_zone_name || !order.delivery_zone_name.toLowerCase().includes(safeFilters.delivery_zone_name.toLowerCase())) {
|
|
222
|
+
rejected.push({
|
|
223
|
+
order_id: order.order_id,
|
|
224
|
+
order_number: order.order_number,
|
|
225
|
+
reason: {
|
|
226
|
+
field: "delivery_zone_name",
|
|
227
|
+
actual: order.delivery_zone_name,
|
|
228
|
+
expected: safeFilters.delivery_zone_name
|
|
229
|
+
}
|
|
230
|
+
});
|
|
103
231
|
return false;
|
|
104
232
|
}
|
|
105
233
|
}
|
|
106
234
|
if (safeFilters.location_id !== void 0 && safeFilters.location_id !== null) {
|
|
107
235
|
if (String(order.location_id) !== String(safeFilters.location_id)) {
|
|
236
|
+
rejected.push({
|
|
237
|
+
order_id: order.order_id,
|
|
238
|
+
order_number: order.order_number,
|
|
239
|
+
reason: {
|
|
240
|
+
field: "location_id",
|
|
241
|
+
actual: order.location_id,
|
|
242
|
+
expected: safeFilters.location_id
|
|
243
|
+
}
|
|
244
|
+
});
|
|
108
245
|
return false;
|
|
109
246
|
}
|
|
110
247
|
}
|
|
111
248
|
if (safeFilters.shipping_order_number !== void 0 && safeFilters.shipping_order_number !== null && safeFilters.shipping_order_number !== "") {
|
|
112
249
|
if (!order.shipping_order_number || !order.shipping_order_number.toLowerCase().includes(safeFilters.shipping_order_number.toLowerCase())) {
|
|
250
|
+
rejected.push({
|
|
251
|
+
order_id: order.order_id,
|
|
252
|
+
order_number: order.order_number,
|
|
253
|
+
reason: {
|
|
254
|
+
field: "shipping_order_number",
|
|
255
|
+
actual: order.shipping_order_number,
|
|
256
|
+
expected: safeFilters.shipping_order_number
|
|
257
|
+
}
|
|
258
|
+
});
|
|
113
259
|
return false;
|
|
114
260
|
}
|
|
115
261
|
}
|
|
116
262
|
if (safeFilters.logistics_company_id && safeFilters.logistics_company_id.length > 0) {
|
|
117
263
|
if (!order.logistics_company_id) {
|
|
264
|
+
rejected.push({
|
|
265
|
+
order_id: order.order_id,
|
|
266
|
+
order_number: order.order_number,
|
|
267
|
+
reason: {
|
|
268
|
+
field: "logistics_company_id",
|
|
269
|
+
actual: order.logistics_company_id,
|
|
270
|
+
expected: safeFilters.logistics_company_id
|
|
271
|
+
}
|
|
272
|
+
});
|
|
118
273
|
return false;
|
|
119
274
|
}
|
|
120
275
|
const orderLogisticsId = String(order.logistics_company_id);
|
|
121
276
|
const hasMatch = safeFilters.logistics_company_id.some((id) => String(id) === orderLogisticsId);
|
|
122
277
|
if (!hasMatch) {
|
|
278
|
+
rejected.push({
|
|
279
|
+
order_id: order.order_id,
|
|
280
|
+
order_number: order.order_number,
|
|
281
|
+
reason: {
|
|
282
|
+
field: "logistics_company_id",
|
|
283
|
+
actual: order.logistics_company_id,
|
|
284
|
+
expected: safeFilters.logistics_company_id
|
|
285
|
+
}
|
|
286
|
+
});
|
|
123
287
|
return false;
|
|
124
288
|
}
|
|
125
289
|
}
|
|
126
290
|
if (safeFilters.zip !== void 0 && safeFilters.zip !== null && safeFilters.zip !== "") {
|
|
127
291
|
if (!order.zip || !order.zip.toLowerCase().includes(safeFilters.zip.toLowerCase())) {
|
|
292
|
+
rejected.push({
|
|
293
|
+
order_id: order.order_id,
|
|
294
|
+
order_number: order.order_number,
|
|
295
|
+
reason: {
|
|
296
|
+
field: "zip",
|
|
297
|
+
actual: order.zip,
|
|
298
|
+
expected: safeFilters.zip
|
|
299
|
+
}
|
|
300
|
+
});
|
|
128
301
|
return false;
|
|
129
302
|
}
|
|
130
303
|
}
|
|
131
304
|
if (safeFilters.business_code) {
|
|
132
305
|
if (!order.business_code || order.business_code !== safeFilters.business_code) {
|
|
306
|
+
rejected.push({
|
|
307
|
+
order_id: order.order_id,
|
|
308
|
+
order_number: order.order_number,
|
|
309
|
+
reason: {
|
|
310
|
+
field: "business_code",
|
|
311
|
+
actual: order.business_code,
|
|
312
|
+
expected: safeFilters.business_code
|
|
313
|
+
}
|
|
314
|
+
});
|
|
133
315
|
return false;
|
|
134
316
|
}
|
|
135
317
|
}
|
|
@@ -137,13 +319,33 @@ function filterOrders(orders, filters) {
|
|
|
137
319
|
const orderTime = order.created_at ? typeof order.created_at === "number" ? order.created_at : new Date(String(order.created_at)).getTime() : 0;
|
|
138
320
|
if (safeFilters.start_time) {
|
|
139
321
|
const startTs = new Date(safeFilters.start_time).getTime();
|
|
140
|
-
if (orderTime < startTs)
|
|
322
|
+
if (orderTime < startTs) {
|
|
323
|
+
rejected.push({
|
|
324
|
+
order_id: order.order_id,
|
|
325
|
+
order_number: order.order_number,
|
|
326
|
+
reason: {
|
|
327
|
+
field: "start_time",
|
|
328
|
+
actual: order.created_at,
|
|
329
|
+
expected: safeFilters.start_time
|
|
330
|
+
}
|
|
331
|
+
});
|
|
141
332
|
return false;
|
|
333
|
+
}
|
|
142
334
|
}
|
|
143
335
|
if (safeFilters.end_time) {
|
|
144
336
|
const endTs = new Date(safeFilters.end_time).getTime() + 864e5 - 1;
|
|
145
|
-
if (orderTime > endTs)
|
|
337
|
+
if (orderTime > endTs) {
|
|
338
|
+
rejected.push({
|
|
339
|
+
order_id: order.order_id,
|
|
340
|
+
order_number: order.order_number,
|
|
341
|
+
reason: {
|
|
342
|
+
field: "end_time",
|
|
343
|
+
actual: order.created_at,
|
|
344
|
+
expected: safeFilters.end_time
|
|
345
|
+
}
|
|
346
|
+
});
|
|
146
347
|
return false;
|
|
348
|
+
}
|
|
147
349
|
}
|
|
148
350
|
}
|
|
149
351
|
return true;
|
|
@@ -193,7 +395,8 @@ function filterOrders(orders, filters) {
|
|
|
193
395
|
list: paginatedList,
|
|
194
396
|
count: totalCount,
|
|
195
397
|
size,
|
|
196
|
-
skip: page
|
|
398
|
+
skip: page,
|
|
399
|
+
rejected
|
|
197
400
|
};
|
|
198
401
|
}
|
|
199
402
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -136,7 +136,7 @@ export declare class BookingTicketImpl extends BaseModule implements Module {
|
|
|
136
136
|
* 获取当前的客户搜索条件
|
|
137
137
|
* @returns 当前搜索条件
|
|
138
138
|
*/
|
|
139
|
-
getCurrentCustomerSearchParams(): Omit<import("../../modules").ShopGetCustomerListParams, "
|
|
139
|
+
getCurrentCustomerSearchParams(): Omit<import("../../modules").ShopGetCustomerListParams, "num" | "skip">;
|
|
140
140
|
/**
|
|
141
141
|
* 获取客户列表状态(包含滚动加载相关状态)
|
|
142
142
|
* @returns 客户状态
|