@be-link/pos-cli-nodejs 1.0.231 → 1.0.233

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@be-link/pos-cli-nodejs",
3
- "version": "1.0.231",
3
+ "version": "1.0.233",
4
4
  "description": "正向订单服务Nodejs客户端",
5
5
  "main": "index.js",
6
6
  "repository": {
@@ -14,6 +14,7 @@ declare class OrderCoreService extends BaseService implements Service.OrderCoreC
14
14
  supplierRejected(request: Service.Request.supplierRejected): Promise<void | Service.BatchDealResult>;
15
15
  supplierConfirmed(request: Service.Request.supplierConfirmed): Promise<void | Service.BatchDealResult>;
16
16
  supplierReconfirm(request: Service.Request.supplierReconfirm): Promise<void>;
17
+ acknowledgeAutoConfirmedOrder(request: Service.Request.acknowledgeAutoConfirmedOrder): Promise<void>;
17
18
  submittedToSupplier(request: Service.Request.submittedToSupplier): Promise<void>;
18
19
  sendOrderPaidNotification(request: Service.Request.sendOrderPaidNotification): Promise<void>;
19
20
  orderSettled(request: Service.Request.orderSettled): Promise<void>;
@@ -43,6 +43,9 @@ class OrderCoreService extends service_1.default {
43
43
  supplierReconfirm(request) {
44
44
  return (0, http_1.callApi)(this.getApiUrl(this.supplierReconfirm), request);
45
45
  }
46
+ acknowledgeAutoConfirmedOrder(request) {
47
+ return (0, http_1.callApi)(this.getApiUrl(this.acknowledgeAutoConfirmedOrder), request);
48
+ }
46
49
  submittedToSupplier(request) {
47
50
  return (0, http_1.callApi)(this.getApiUrl(this.submittedToSupplier), request);
48
51
  }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const mockCallApi = jest.fn();
16
+ jest.mock('../../http', () => ({
17
+ callApi: (...args) => mockCallApi(...args),
18
+ }));
19
+ const service_1 = __importDefault(require("./service"));
20
+ describe('OrderCoreService.acknowledgeAutoConfirmedOrder', () => {
21
+ beforeEach(() => {
22
+ mockCallApi.mockReset().mockResolvedValue(undefined);
23
+ });
24
+ it('只发送已知晓公开字段', () => __awaiter(void 0, void 0, void 0, function* () {
25
+ const request = {
26
+ tradeOrderId: 'order-1',
27
+ operator: 'supplier-user',
28
+ };
29
+ yield service_1.default.acknowledgeAutoConfirmedOrder(request);
30
+ expect(mockCallApi).toHaveBeenCalledWith(expect.stringMatching(/\/core\/acknowledge-auto-confirmed-order$/), request);
31
+ expect(mockCallApi.mock.calls[0][1]).not.toHaveProperty('operatorRole');
32
+ }));
33
+ });
@@ -287,6 +287,12 @@ export declare namespace Service {
287
287
  /** 操作人角色 */
288
288
  operatorRole: PosConstants.TradeOperatorRoleEnum;
289
289
  }
290
+ interface acknowledgeAutoConfirmedOrder {
291
+ /** 订单id */
292
+ tradeOrderId: string;
293
+ /** 操作人 */
294
+ operator: string;
295
+ }
290
296
  interface sendOrderPaidNotification {
291
297
  /** 订单Id */
292
298
  tradeOrderId: string;
@@ -595,6 +601,11 @@ export declare namespace Service {
595
601
  * @path /core/supplier-reconfirm
596
602
  */
597
603
  supplierReconfirm(request: Request.supplierReconfirm): Promise<void>;
604
+ /**
605
+ * 确认已知晓自动接单订单
606
+ * @path /core/acknowledge-auto-confirmed-order
607
+ */
608
+ acknowledgeAutoConfirmedOrder(request: Request.acknowledgeAutoConfirmedOrder): Promise<void>;
598
609
  /**
599
610
  * 提交给供应商
600
611
  * @path /core/submitted-to-supplier
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const mockCallApi = jest.fn();
16
+ jest.mock('../../http', () => ({
17
+ callApi: (...args) => mockCallApi(...args),
18
+ }));
19
+ const store_1 = __importDefault(require("./store"));
20
+ const web_1 = __importDefault(require("./web"));
21
+ const needBlocks = ['basicInfo'];
22
+ function storeListRequest(isAutoConfirmedOrder, isSupplierAcknowledged) {
23
+ return {
24
+ conditions: Object.assign(Object.assign({ storeIdList: ['store-1'], supplierIds: ['supplier-1'], pageIndex: 0, pageSize: 10 }, (isAutoConfirmedOrder !== undefined ? { isAutoConfirmedOrder } : {})), (isSupplierAcknowledged !== undefined ? { isSupplierAcknowledged } : {})),
25
+ sort: {},
26
+ needBlocks,
27
+ };
28
+ }
29
+ function storeCountRequest(isAutoConfirmedOrder, isSupplierAcknowledged) {
30
+ return Object.assign(Object.assign({ storeIdList: ['store-1'], supplierIds: ['supplier-1'] }, (isAutoConfirmedOrder !== undefined ? { isAutoConfirmedOrder } : {})), (isSupplierAcknowledged !== undefined ? { isSupplierAcknowledged } : {}));
31
+ }
32
+ function statisticsRequest(isAutoConfirmedOrder, isSupplierAcknowledged) {
33
+ return {
34
+ conditions: Object.assign(Object.assign({}, (isAutoConfirmedOrder !== undefined ? { isAutoConfirmedOrder } : {})), (isSupplierAcknowledged !== undefined ? { isSupplierAcknowledged } : {})),
35
+ needBlocks,
36
+ };
37
+ }
38
+ describe('自动接单订单查询契约', () => {
39
+ beforeEach(() => {
40
+ mockCallApi.mockReset().mockResolvedValue([]);
41
+ });
42
+ it.each([0, 1])('list/count/statistics 透传属性值 %s', (value) => __awaiter(void 0, void 0, void 0, function* () {
43
+ yield store_1.default.queryOrderList(storeListRequest(value, value));
44
+ yield store_1.default.getOrderCount(storeCountRequest(value, value));
45
+ yield web_1.default.queryOrderForStatistics(statisticsRequest(value, value));
46
+ expect(mockCallApi.mock.calls.map((call) => call[1])).toEqual([
47
+ expect.objectContaining({
48
+ conditions: expect.objectContaining({
49
+ isAutoConfirmedOrder: value,
50
+ isSupplierAcknowledged: value,
51
+ }),
52
+ }),
53
+ expect.objectContaining({
54
+ isAutoConfirmedOrder: value,
55
+ isSupplierAcknowledged: value,
56
+ }),
57
+ expect.objectContaining({
58
+ conditions: expect.objectContaining({
59
+ isAutoConfirmedOrder: value,
60
+ isSupplierAcknowledged: value,
61
+ }),
62
+ }),
63
+ ]);
64
+ }));
65
+ it('未传新增字段时保持旧请求结构', () => __awaiter(void 0, void 0, void 0, function* () {
66
+ const listRequest = storeListRequest();
67
+ const countRequest = storeCountRequest();
68
+ const exportRequest = statisticsRequest();
69
+ yield store_1.default.queryOrderList(listRequest);
70
+ yield store_1.default.getOrderCount(countRequest);
71
+ yield web_1.default.queryOrderForStatistics(exportRequest);
72
+ for (const request of mockCallApi.mock.calls.map((call) => call[1])) {
73
+ expect(JSON.stringify(request)).not.toContain('isAutoConfirmedOrder');
74
+ expect(JSON.stringify(request)).not.toContain('isSupplierAcknowledged');
75
+ }
76
+ }));
77
+ });
@@ -494,6 +494,10 @@ export declare namespace Service {
494
494
  isNotFinishedNote?: boolean;
495
495
  /** 是否排除已合并的订单 */
496
496
  isExcludeMerged?: boolean;
497
+ /** 是否为自动接单订单 */
498
+ isAutoConfirmedOrder?: 0 | 1;
499
+ /** 供应商是否已知晓 */
500
+ isSupplierAcknowledged?: 0 | 1;
497
501
  /** 下单人 ECS 门店 ID 列表(快照 ecsStoreId) */
498
502
  ecsStoreIdList?: string[];
499
503
  /** 是否无来源销售(fromUnionId 为空) */
@@ -565,6 +569,10 @@ export declare namespace Service {
565
569
  isExcludeMerged?: boolean;
566
570
  /** 是否仅查询主单(排除子单) */
567
571
  isRootOrder?: boolean;
572
+ /** 是否为自动接单订单 */
573
+ isAutoConfirmedOrder?: 0 | 1;
574
+ /** 供应商是否已知晓 */
575
+ isSupplierAcknowledged?: 0 | 1;
568
576
  /** 套餐 */
569
577
  combo?: string;
570
578
  };
@@ -703,6 +711,10 @@ export declare namespace Service {
703
711
  isExcludeMerged?: boolean;
704
712
  /** 是否仅查询主单(排除子单) */
705
713
  isRootOrder?: boolean;
714
+ /** 是否为自动接单订单 */
715
+ isAutoConfirmedOrder?: 0 | 1;
716
+ /** 供应商是否已知晓 */
717
+ isSupplierAcknowledged?: 0 | 1;
706
718
  /** 套餐 */
707
719
  combo?: string;
708
720
  /** 拼团类型 */
package/types.d.ts CHANGED
@@ -132,6 +132,10 @@ export interface IPositiveAttributes {
132
132
  isMigratedItemOrder: boolean;
133
133
  /** 是否为同程视频号订单 */
134
134
  isTongchengVideoAccountOrder: boolean;
135
+ /** 是否为自动接单订单 */
136
+ isAutoConfirmedOrder?: boolean;
137
+ /** 供应商是否已知晓 */
138
+ isSupplierAcknowledged?: boolean;
135
139
  /** 跟团游不成团状态 GroupFormationStatusEnum:null 非不成团 / PENDING / RESCHEDULING / RESOLVED */
136
140
  isGroupFormationFailed: string | null;
137
141
  /** 不成团操作时间(毫秒时间戳,仅存于 attributes JSON) */
@@ -0,0 +1 @@
1
+ export {};
package/types.test.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const positiveAttributes = {
4
+ isAutoConfirmedOrder: true,
5
+ isSupplierAcknowledged: false,
6
+ };
7
+ const isAutoConfirmedOrder = 1;
8
+ const isSupplierAcknowledged = 0;
9
+ // @ts-expect-error 原始订单结构中的布尔属性统一映射为数值
10
+ const invalidIsAutoConfirmedOrder = true;
11
+ describe('订单属性类型', () => {
12
+ it('IPositiveAttributes 声明布尔字段,IRawOrderStructure 映射为数值字段', () => {
13
+ expect(positiveAttributes.isAutoConfirmedOrder).toBe(true);
14
+ expect(positiveAttributes.isSupplierAcknowledged).toBe(false);
15
+ expect(isAutoConfirmedOrder).toBe(1);
16
+ expect(isSupplierAcknowledged).toBe(0);
17
+ expect(invalidIsAutoConfirmedOrder).toBe(true);
18
+ });
19
+ });