ts-glitter 21.9.2 → 21.9.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/lowcode/Entry.js +1 -1
  2. package/lowcode/Entry.ts +1 -1
  3. package/lowcode/backend-manager/bg-product.js +1 -1
  4. package/lowcode/backend-manager/bg-product.ts +2 -1
  5. package/lowcode/cms-plugin/app-market-install.js +97 -0
  6. package/lowcode/cms-plugin/app-market-install.ts +123 -0
  7. package/lowcode/cms-plugin/app-market-published.js +42 -0
  8. package/lowcode/cms-plugin/app-market-published.ts +70 -0
  9. package/lowcode/cms-plugin/app-market.js +286 -0
  10. package/lowcode/cms-plugin/app-market.ts +343 -0
  11. package/lowcode/cms-plugin/filter-options.js +7 -0
  12. package/lowcode/cms-plugin/filter-options.ts +10 -0
  13. package/lowcode/cms-plugin/shopping-information.js +19 -463
  14. package/lowcode/cms-plugin/shopping-information.ts +50 -582
  15. package/lowcode/css/editor.css +13 -0
  16. package/lowcode/glitter-base/global/language.js +6 -0
  17. package/lowcode/glitter-base/global/language.ts +6 -0
  18. package/lowcode/glitter-base/route/market.js +43 -0
  19. package/lowcode/glitter-base/route/market.ts +47 -0
  20. package/lowcode/glitter-base/route/shopping.js +15 -0
  21. package/lowcode/glitter-base/route/shopping.ts +24 -5
  22. package/lowcode/glitterBundle/dialog/dialog.js +2 -2
  23. package/lowcode/glitterBundle/dialog/dialog.ts +5 -5
  24. package/lowcode/jspage/function-page/main_editor.js +2 -2
  25. package/lowcode/jspage/function-page/main_editor.ts +2 -2
  26. package/lowcode/jspage/function-page/setting_editor.js +27 -0
  27. package/lowcode/jspage/function-page/setting_editor.ts +27 -0
  28. package/lowcode/public-components/user-manager/um-order.js +158 -60
  29. package/lowcode/public-components/user-manager/um-order.ts +229 -73
  30. package/package.json +1 -1
  31. package/src/api-public/controllers/app-market.d.ts +3 -0
  32. package/src/api-public/controllers/app-market.js +51 -0
  33. package/src/api-public/controllers/app-market.js.map +1 -0
  34. package/src/api-public/controllers/app-market.ts +59 -0
  35. package/src/api-public/controllers/index.js +3 -0
  36. package/src/api-public/controllers/index.js.map +1 -1
  37. package/src/api-public/controllers/index.ts +3 -0
  38. package/src/api-public/controllers/shop.js +38 -6
  39. package/src/api-public/controllers/shop.js.map +1 -1
  40. package/src/api-public/controllers/shop.ts +94 -61
  41. package/src/api-public/services/ai-robot.d.ts +1 -0
  42. package/src/api-public/services/app-market.d.ts +26 -0
  43. package/src/api-public/services/app-market.js +385 -0
  44. package/src/api-public/services/app-market.js.map +1 -0
  45. package/src/api-public/services/app-market.ts +412 -0
  46. package/src/api-public/services/auto-send-email.js +4 -3
  47. package/src/api-public/services/auto-send-email.js.map +1 -1
  48. package/src/api-public/services/auto-send-email.ts +3 -2
  49. package/src/api-public/services/checkout-event.js +7 -26
  50. package/src/api-public/services/checkout-event.js.map +1 -1
  51. package/src/api-public/services/checkout-event.ts +18 -43
  52. package/src/api-public/services/fb-api.d.ts +1 -0
  53. package/src/api-public/services/fb-message.d.ts +1 -0
  54. package/src/api-public/services/fb-service.js +4 -4
  55. package/src/api-public/services/fb-service.js.map +1 -1
  56. package/src/api-public/services/financial-service.d.ts +1 -0
  57. package/src/api-public/services/financial-serviceV2.d.ts +1 -0
  58. package/src/api-public/services/line-message.d.ts +1 -0
  59. package/src/api-public/services/model/handlePaymentTransaction.js +0 -1
  60. package/src/api-public/services/model/handlePaymentTransaction.js.map +1 -1
  61. package/src/api-public/services/model/handlePaymentTransaction.ts +3 -81
  62. package/src/api-public/services/monitor.d.ts +1 -0
  63. package/src/api-public/services/share-permission.d.ts +1 -1
  64. package/src/api-public/services/shopee.d.ts +4 -3
  65. package/src/api-public/services/shopping.d.ts +1 -0
  66. package/src/api-public/services/shopping.js +7 -7
  67. package/src/api-public/services/shopping.js.map +1 -1
  68. package/src/api-public/services/shopping.ts +15 -59
  69. package/src/api-public/services/user.d.ts +1 -0
  70. package/src/api-public/utils/ut-permission.d.ts +1 -0
  71. package/src/config.d.ts +2 -1
  72. package/src/config.js +1 -0
  73. package/src/config.js.map +1 -1
  74. package/src/config.ts +1 -0
  75. package/src/index.js +3 -3
  76. package/src/modules/AWSLib.js +3 -2
  77. package/src/modules/AWSLib.js.map +1 -1
  78. package/src/modules/database.d.ts +1 -1
  79. package/src/modules/redis.d.ts +1 -1
  80. package/src/modules/tool.d.ts +4 -4
  81. package/src/modules/tool.js +2 -1
  82. package/src/modules/tool.js.map +1 -1
  83. package/src/public-config-initial/auto-fcm.d.ts +1 -0
  84. package/src/public-config-initial/auto-fcm.js +6 -4
  85. package/src/public-config-initial/auto-fcm.js.map +1 -1
  86. package/src/public-config-initial/auto-fcm.ts +14 -9
  87. package/src/run.js +2 -1
  88. package/src/run.js.map +1 -1
  89. package/src/seo-config.d.ts +1 -0
  90. package/src/seo-config.js +3 -3
  91. package/src/seo-config.js.map +1 -1
  92. package/src/services/app.d.ts +1 -0
  93. package/src/services/app.js +7 -17
  94. package/src/services/app.js.map +1 -1
  95. package/src/services/backend-service.js +7 -17
  96. package/src/services/backend-service.js.map +1 -1
  97. package/src/services/create-instance.js +4 -3
  98. package/src/services/create-instance.js.map +1 -1
  99. package/src/services/saas-table-check.js +2 -2
  100. package/src/services/seo.d.ts +1 -0
  101. package/src/services/template.d.ts +1 -0
  102. package/src/services/tool.js +3 -2
  103. package/src/services/tool.js.map +1 -1
@@ -312,73 +312,74 @@ router.post('/manager/checkout/preview', async (req: express.Request, resp: expr
312
312
  router.get('/order', async (req: express.Request, resp: express.Response) => {
313
313
  try {
314
314
  if (await UtPermission.isManager(req)) {
315
- //管理員
316
- return response.succ(
317
- resp,
318
- await new Shopping(req.get('g-app') as string, req.body.token).getCheckOut({
319
- page: (req.query.page ?? 0) as number,
320
- limit: (req.query.limit ?? 50) as number,
321
- search: req.query.search as string,
322
- phone: req.query.phone as string,
323
- id: req.query.id as string,
324
- id_list: req.query.id_list as string,
325
- email: req.query.email as string,
326
- status: req.query.status as string,
327
- searchType: req.query.searchType as string,
328
- shipment: req.query.shipment as string,
329
- is_pos: req.query.is_pos as string,
330
- progress: req.query.progress as string,
331
- orderStatus: req.query.orderStatus as string,
332
- created_time: req.query.created_time as string,
333
- orderString: req.query.orderString as string,
334
- archived: req.query.archived as string,
335
- distribution_code: req.query.distribution_code as string,
336
- returnSearch: req.query.returnSearch as string,
337
- valid: req.query.valid === 'true',
338
- shipment_time: req.query.shipment_time as string,
339
- is_shipment: req.query.is_shipment === 'true',
340
- is_reconciliation: req.query.is_reconciliation === 'true',
341
- payment_select: req.query.payment_select as string,
342
- reconciliation_status:
343
- req.query.reconciliation_status && ((req.query.reconciliation_status as string).split(',') as any),
344
- manager_tag: req.query.manager_tag as string,
345
- member_levels: req.query.member_levels as string,
346
- })
347
- );
315
+ // 管理員
316
+ const orders = await new Shopping(req.get('g-app') as string, req.body.token).getCheckOut({
317
+ page: (req.query.page ?? 0) as number,
318
+ limit: (req.query.limit ?? 50) as number,
319
+ search: req.query.search as string,
320
+ phone: req.query.phone as string,
321
+ id: req.query.id as string,
322
+ id_list: req.query.id_list as string,
323
+ email: req.query.email as string,
324
+ status: req.query.status as string,
325
+ searchType: req.query.searchType as string,
326
+ shipment: req.query.shipment as string,
327
+ is_pos: req.query.is_pos as string,
328
+ progress: req.query.progress as string,
329
+ orderStatus: req.query.orderStatus as string,
330
+ created_time: req.query.created_time as string,
331
+ orderString: req.query.orderString as string,
332
+ archived: req.query.archived as string,
333
+ distribution_code: req.query.distribution_code as string,
334
+ returnSearch: req.query.returnSearch as string,
335
+ valid: req.query.valid === 'true',
336
+ shipment_time: req.query.shipment_time as string,
337
+ is_shipment: req.query.is_shipment === 'true',
338
+ is_reconciliation: req.query.is_reconciliation === 'true',
339
+ payment_select: req.query.payment_select as string,
340
+ reconciliation_status:
341
+ req.query.reconciliation_status && ((req.query.reconciliation_status as string).split(',') as any),
342
+ manager_tag: req.query.manager_tag as string,
343
+ member_levels: req.query.member_levels as string,
344
+ });
345
+
346
+ return response.succ(resp, orders);
348
347
  } else if (await UtPermission.isAppUser(req)) {
349
- //已登入用戶
348
+ // 已登入用戶
350
349
  const user_data = await new User(req.get('g-app') as string, req.body.token).getUserData(
351
350
  req.body.token.userID as any,
352
351
  'userID'
353
352
  );
354
- return response.succ(
355
- resp,
356
- await new Shopping(req.get('g-app') as string, req.body.token).getCheckOut({
357
- page: (req.query.page ?? 0) as number,
358
- limit: (req.query.limit ?? 50) as number,
359
- search: req.query.search as string,
360
- id: req.query.id as string,
361
- email: user_data.userData.email,
362
- phone: user_data.userData.phone,
363
- status: req.query.status as string,
364
- progress: req.query.progress as string,
365
- searchType: req.query.searchType as string,
366
- })
367
- );
353
+
354
+ const orders = await new Shopping(req.get('g-app') as string, req.body.token).getCheckOut({
355
+ page: (req.query.page ?? 0) as number,
356
+ limit: (req.query.limit ?? 50) as number,
357
+ search: req.query.search as string,
358
+ id: req.query.id as string,
359
+ email: user_data.userData.email,
360
+ phone: user_data.userData.phone,
361
+ status: req.query.status as string,
362
+ progress: req.query.progress as string,
363
+ searchType: req.query.searchType as string,
364
+ });
365
+
366
+ return response.succ(resp, orders);
368
367
  } else if (req.query.search) {
369
- //未登入訪客
370
- return response.succ(
371
- resp,
372
- await new Shopping(req.get('g-app') as string, req.body.token).getCheckOut({
373
- page: (req.query.page ?? 0) as number,
374
- limit: (req.query.limit ?? 50) as number,
375
- search: req.query.search as string,
376
- id: req.query.id as string,
377
- status: req.query.status as string,
378
- searchType: req.query.searchType as string,
379
- progress: req.query.progress as string,
380
- })
381
- );
368
+ // req.query.verify_code=
369
+ // 未登入訪客
370
+ const orders = await new Shopping(req.get('g-app') as string, req.body.token).getCheckOut({
371
+ page: (req.query.page ?? 0) as number,
372
+ limit: (req.query.limit ?? 50) as number,
373
+ search: req.query.search as string,
374
+ id: req.query.id as string,
375
+ status: req.query.status as string,
376
+ searchType: req.query.searchType as string,
377
+ progress: req.query.progress as string,
378
+ });
379
+ orders.data = orders.data.filter((dd:any) => {
380
+ return (dd.orderData.customer_info.phone===req.query.buyer_phone) && (dd.orderData.customer_info.name===req.query.buyer_name)
381
+ })
382
+ return response.succ(resp, orders);
382
383
  } else {
383
384
  throw exception.BadRequestError('BAD_REQUEST', 'No permission.', null);
384
385
  }
@@ -386,6 +387,38 @@ router.get('/order', async (req: express.Request, resp: express.Response) => {
386
387
  return response.fail(resp, err);
387
388
  }
388
389
  });
390
+ router.post('/order/verifyCode', async (req: express.Request, resp: express.Response) => {
391
+ try {
392
+ if (req.query.order_id) {
393
+ const orders = await new Shopping(req.get('g-app') as string, req.body.token).getCheckOut({
394
+ page: (req.query.page ?? 0) as number,
395
+ limit: (req.query.limit ?? 50) as number,
396
+ search: req.query.order_id as string,
397
+ searchType: 'cart_token',
398
+ });
399
+
400
+ if (Array.isArray(orders.data)) {
401
+ const order = orders.data[0];
402
+
403
+ const userData = await new User(req.get('g-app') as string, req.body.token).getUserData(
404
+ order.email,
405
+ 'email_or_phone'
406
+ );
407
+
408
+ if (userData) {
409
+ throw exception.BadRequestError('BAD_REQUEST', 'No permission.', null);
410
+ }
411
+
412
+ const code = order.orderData.verify_code;
413
+ return response.succ(resp, { result: `${code}` === `${req.body.verify_code}` });
414
+ }
415
+ }
416
+
417
+ return response.succ(resp, { result: false });
418
+ } catch (err) {
419
+ return response.fail(resp, err);
420
+ }
421
+ });
389
422
  router.get('/order/payment-method', async (req: express.Request, resp: express.Response) => {
390
423
  try {
391
424
  const keyData = (
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  export declare class AiRobot {
2
3
  static guide(app_name: string, question: string): Promise<{
3
4
  text: string;
@@ -0,0 +1,26 @@
1
+ import { IToken } from '../models/Auth.js';
2
+ interface AppData {
3
+ id: number;
4
+ app_id: string;
5
+ name: string;
6
+ image: string;
7
+ link: string;
8
+ rate: number;
9
+ rate_count: number;
10
+ description: string;
11
+ tag: string[];
12
+ price: number;
13
+ download_count: number;
14
+ update_time: string;
15
+ create_time: string;
16
+ expiration_time: string;
17
+ }
18
+ export declare class MarketService {
19
+ app: string;
20
+ token: IToken | undefined;
21
+ constructor(app: string, token?: IToken);
22
+ getAppList(): Promise<AppData[]>;
23
+ getInstallAppList(): Promise<AppData[]>;
24
+ getPublishtdAppList(): Promise<AppData[]>;
25
+ }
26
+ export {};
@@ -0,0 +1,385 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MarketService = void 0;
7
+ const exception_1 = __importDefault(require("../../modules/exception"));
8
+ const mime = require('mime');
9
+ class MarketService {
10
+ constructor(app, token) {
11
+ this.app = app;
12
+ this.token = token;
13
+ }
14
+ async getAppList() {
15
+ try {
16
+ const app_list = [
17
+ {
18
+ id: 1,
19
+ name: 'ShopNex',
20
+ image: 'https://example.com/images/shopnex.jpg',
21
+ link: 'https://www.shopnex.com',
22
+ rate: 3.5,
23
+ rate_count: 557,
24
+ description: 'An all-in-one e-commerce platform with AI-powered tools.',
25
+ tag: ['e-commerce', 'AI', 'business'],
26
+ price: 638,
27
+ download_count: 3457,
28
+ update_time: '2023-05-13T10:30:00',
29
+ create_time: '2023-04-15T08:45:00',
30
+ app_id: 'app_1',
31
+ expiration_time: '2023-06-13T10:30:00'
32
+ },
33
+ {
34
+ id: 2,
35
+ name: 'QuickShop',
36
+ image: 'https://example.com/images/quickshop.jpg',
37
+ link: 'https://www.quickshop.com',
38
+ rate: 3.2,
39
+ rate_count: 7338,
40
+ description: 'A fast and easy platform to set up online stores.',
41
+ tag: ['shopping', 'fast', 'platform'],
42
+ price: 951,
43
+ download_count: 7284,
44
+ update_time: '2023-05-12T14:22:00',
45
+ create_time: '2023-03-10T09:12:00',
46
+ app_id: 'app_2',
47
+ expiration_time: '2023-06-12T14:22:00'
48
+ },
49
+ {
50
+ id: 3,
51
+ name: 'ShopMaster',
52
+ image: 'https://example.com/images/shopmaster.jpg',
53
+ link: 'https://www.shopmaster.com',
54
+ rate: 4.4,
55
+ rate_count: 1675,
56
+ description: 'ShopMaster helps you manage all your online sales in one place.',
57
+ tag: ['management', 'e-commerce', 'business'],
58
+ price: 48,
59
+ download_count: 4523,
60
+ update_time: '2023-05-11T16:50:00',
61
+ create_time: '2023-02-28T11:33:00',
62
+ app_id: 'app_3',
63
+ expiration_time: '2023-06-10T16:50:00'
64
+ },
65
+ {
66
+ id: 4,
67
+ name: 'EasyCart',
68
+ image: 'https://example.com/images/easycart.jpg',
69
+ link: 'https://www.easycart.com',
70
+ rate: 4.7,
71
+ rate_count: 2558,
72
+ description: 'EasyCart is an intuitive shopping cart solution for businesses.',
73
+ tag: ['shopping', 'cart', 'business'],
74
+ price: 284,
75
+ download_count: 5121,
76
+ update_time: '2023-05-10T09:45:00',
77
+ create_time: '2023-01-10T13:20:00',
78
+ app_id: 'app_4',
79
+ expiration_time: '2023-06-09T09:45:00'
80
+ },
81
+ {
82
+ id: 5,
83
+ name: 'MarketPro',
84
+ image: 'https://example.com/images/marketpro.jpg',
85
+ link: 'https://www.marketpro.com',
86
+ rate: 3.7,
87
+ rate_count: 5630,
88
+ description: 'MarketPro is a comprehensive marketing automation tool for online stores.',
89
+ tag: ['marketing', 'automation', 'e-commerce'],
90
+ price: 1672,
91
+ download_count: 6142,
92
+ update_time: '2023-05-09T18:30:00',
93
+ create_time: '2022-12-05T15:10:00',
94
+ app_id: 'app_5',
95
+ expiration_time: '2023-06-08T18:30:00'
96
+ },
97
+ {
98
+ id: 6,
99
+ name: 'EasyShop',
100
+ image: 'https://example.com/images/easyshop.jpg',
101
+ link: 'https://www.easyshop.com',
102
+ rate: 4.0,
103
+ rate_count: 5041,
104
+ description: 'A simple and intuitive shopping app for all your needs.',
105
+ tag: ['shopping', 'simple', 'easy'],
106
+ price: 79,
107
+ download_count: 3591,
108
+ update_time: '2023-05-08T14:10:00',
109
+ create_time: '2022-10-30T12:05:00',
110
+ app_id: 'app_6',
111
+ expiration_time: '2023-06-07T14:10:00'
112
+ },
113
+ {
114
+ id: 7,
115
+ name: 'ShopifyPlus',
116
+ image: 'https://example.com/images/shopifyplus.jpg',
117
+ link: 'https://www.shopifyplus.com',
118
+ rate: 4.5,
119
+ rate_count: 6995,
120
+ description: 'Advanced e-commerce platform for growing businesses.',
121
+ tag: ['e-commerce', 'enterprise', 'business'],
122
+ price: 2948,
123
+ download_count: 4823,
124
+ update_time: '2023-05-07T16:00:00',
125
+ create_time: '2022-09-25T10:30:00',
126
+ app_id: 'app_7',
127
+ expiration_time: '2023-06-06T16:00:00'
128
+ },
129
+ {
130
+ id: 8,
131
+ name: 'CartQuick',
132
+ image: 'https://example.com/images/cartquick.jpg',
133
+ link: 'https://www.cartquick.com',
134
+ rate: 4.5,
135
+ rate_count: 3409,
136
+ description: 'Boost your sales with quick and easy cart management.',
137
+ tag: ['sales', 'cart', 'boost'],
138
+ price: 51,
139
+ download_count: 1742,
140
+ update_time: '2023-05-06T12:10:00',
141
+ create_time: '2022-08-17T09:00:00',
142
+ app_id: 'app_8',
143
+ expiration_time: '2023-06-05T12:10:00'
144
+ },
145
+ {
146
+ id: 9,
147
+ name: 'SwiftBuy',
148
+ image: 'https://example.com/images/swiftbuy.jpg',
149
+ link: 'https://www.swiftbuy.com',
150
+ rate: 3.9,
151
+ rate_count: 2347,
152
+ description: 'A fast, user-friendly online shopping experience.',
153
+ tag: ['shopping', 'fast', 'user-friendly'],
154
+ price: 190,
155
+ download_count: 2510,
156
+ update_time: '2023-05-05T11:30:00',
157
+ create_time: '2022-07-22T10:25:00',
158
+ app_id: 'app_9',
159
+ expiration_time: '2023-06-04T11:30:00'
160
+ },
161
+ {
162
+ id: 10,
163
+ name: 'PayMaster',
164
+ image: 'https://example.com/images/paymaster.jpg',
165
+ link: 'https://www.paymaster.com',
166
+ rate: 3.6,
167
+ rate_count: 5730,
168
+ description: 'Manage your payments and sales efficiently.',
169
+ tag: ['payment', 'management', 'business'],
170
+ price: 241,
171
+ download_count: 3982,
172
+ update_time: '2023-05-04T17:50:00',
173
+ create_time: '2022-06-10T13:15:00',
174
+ app_id: 'app_10',
175
+ expiration_time: '2023-06-03T17:50:00'
176
+ },
177
+ {
178
+ id: 11,
179
+ name: 'FastTrack',
180
+ image: 'https://example.com/images/fasttrack.jpg',
181
+ link: 'https://www.fasttrack.com',
182
+ rate: 3.6,
183
+ rate_count: 3841,
184
+ description: 'A rapid e-commerce platform for fast-growing businesses.',
185
+ tag: ['e-commerce', 'growth', 'business'],
186
+ price: 481,
187
+ download_count: 3027,
188
+ update_time: '2023-05-03T15:40:00',
189
+ create_time: '2022-05-25T11:00:00',
190
+ app_id: 'app_11',
191
+ expiration_time: '2023-06-02T15:40:00'
192
+ },
193
+ {
194
+ id: 12,
195
+ name: 'GlobalMarket',
196
+ image: 'https://example.com/images/globalmarket.jpg',
197
+ link: 'https://www.globalmarket.com',
198
+ rate: 4.9,
199
+ rate_count: 840,
200
+ description: 'Global marketplace for a wide range of products.',
201
+ tag: ['marketplace', 'global', 'e-commerce'],
202
+ price: 913,
203
+ download_count: 1729,
204
+ update_time: '2023-05-02T14:00:00',
205
+ create_time: '2022-04-19T12:45:00',
206
+ app_id: 'app_12',
207
+ expiration_time: '2023-06-01T14:00:00'
208
+ }
209
+ ];
210
+ return app_list;
211
+ }
212
+ catch (e) {
213
+ console.error(e);
214
+ throw exception_1.default.BadRequestError('BAD_REQUEST', 'get Market App List Error:' + e, null);
215
+ }
216
+ }
217
+ async getInstallAppList() {
218
+ try {
219
+ const app_list = [
220
+ {
221
+ id: 1,
222
+ name: 'ShopNex',
223
+ image: 'https://example.com/images/shopnex.jpg',
224
+ link: 'https://www.shopnex.com',
225
+ rate: 3.5,
226
+ rate_count: 557,
227
+ description: 'An all-in-one e-commerce platform with AI-powered tools.',
228
+ tag: ['e-commerce', 'AI', 'business'],
229
+ price: 638,
230
+ download_count: 3457,
231
+ update_time: '2023-05-13T10:30:00',
232
+ create_time: '2023-04-15T08:45:00',
233
+ app_id: 'app_1',
234
+ expiration_time: '2023-06-13T10:30:00'
235
+ },
236
+ {
237
+ id: 3,
238
+ name: 'ShopMaster',
239
+ image: 'https://example.com/images/shopmaster.jpg',
240
+ link: 'https://www.shopmaster.com',
241
+ rate: 4.4,
242
+ rate_count: 1675,
243
+ description: 'ShopMaster helps you manage all your online sales in one place.',
244
+ tag: ['management', 'e-commerce', 'business'],
245
+ price: 48,
246
+ download_count: 4523,
247
+ update_time: '2023-05-11T16:50:00',
248
+ create_time: '2023-02-28T11:33:00',
249
+ app_id: 'app_3',
250
+ expiration_time: '2023-06-10T16:50:00'
251
+ },
252
+ {
253
+ id: 6,
254
+ name: 'EasyShop',
255
+ image: 'https://example.com/images/easyshop.jpg',
256
+ link: 'https://www.easyshop.com',
257
+ rate: 4.0,
258
+ rate_count: 5041,
259
+ description: 'A simple and intuitive shopping app for all your needs.',
260
+ tag: ['shopping', 'simple', 'easy'],
261
+ price: 79,
262
+ download_count: 3591,
263
+ update_time: '2023-05-08T14:10:00',
264
+ create_time: '2022-10-30T12:05:00',
265
+ app_id: 'app_6',
266
+ expiration_time: '2023-06-07T14:10:00'
267
+ },
268
+ {
269
+ id: 10,
270
+ name: 'PayMaster',
271
+ image: 'https://example.com/images/paymaster.jpg',
272
+ link: 'https://www.paymaster.com',
273
+ rate: 3.6,
274
+ rate_count: 5730,
275
+ description: 'Manage your payments and sales efficiently.',
276
+ tag: ['payment', 'management', 'business'],
277
+ price: 241,
278
+ download_count: 3982,
279
+ update_time: '2023-05-04T17:50:00',
280
+ create_time: '2022-06-10T13:15:00',
281
+ app_id: 'app_10',
282
+ expiration_time: '2023-06-03T17:50:00'
283
+ },
284
+ {
285
+ id: 12,
286
+ name: 'GlobalMarket',
287
+ image: 'https://example.com/images/globalmarket.jpg',
288
+ link: 'https://www.globalmarket.com',
289
+ rate: 4.9,
290
+ rate_count: 840,
291
+ description: 'Global marketplace for a wide range of products.',
292
+ tag: ['marketplace', 'global', 'e-commerce'],
293
+ price: 913,
294
+ download_count: 1729,
295
+ update_time: '2023-05-02T14:00:00',
296
+ create_time: '2022-04-19T12:45:00',
297
+ app_id: 'app_12',
298
+ expiration_time: '2023-06-01T14:00:00'
299
+ }
300
+ ];
301
+ return app_list;
302
+ }
303
+ catch (e) {
304
+ console.error(e);
305
+ throw exception_1.default.BadRequestError('BAD_REQUEST', 'get Market App List Error:' + e, null);
306
+ }
307
+ }
308
+ async getPublishtdAppList() {
309
+ try {
310
+ const app_list = [
311
+ {
312
+ id: 2,
313
+ name: 'QuickShop',
314
+ image: 'https://example.com/images/quickshop.jpg',
315
+ link: 'https://www.quickshop.com',
316
+ rate: 3.2,
317
+ rate_count: 7338,
318
+ description: 'A fast and easy platform to set up online stores.',
319
+ tag: ['shopping', 'fast', 'platform'],
320
+ price: 951,
321
+ download_count: 7284,
322
+ update_time: '2023-05-12T14:22:00',
323
+ create_time: '2023-03-10T09:12:00',
324
+ app_id: 'app_2',
325
+ expiration_time: '2023-06-12T14:22:00'
326
+ },
327
+ {
328
+ id: 4,
329
+ name: 'EasyCart',
330
+ image: 'https://example.com/images/easycart.jpg',
331
+ link: 'https://www.easycart.com',
332
+ rate: 4.7,
333
+ rate_count: 2558,
334
+ description: 'EasyCart is an intuitive shopping cart solution for businesses.',
335
+ tag: ['shopping', 'cart', 'business'],
336
+ price: 284,
337
+ download_count: 5121,
338
+ update_time: '2023-05-10T09:45:00',
339
+ create_time: '2023-01-10T13:20:00',
340
+ app_id: 'app_4',
341
+ expiration_time: '2023-06-09T09:45:00'
342
+ },
343
+ {
344
+ id: 5,
345
+ name: 'MarketPro',
346
+ image: 'https://example.com/images/marketpro.jpg',
347
+ link: 'https://www.marketpro.com',
348
+ rate: 3.7,
349
+ rate_count: 5630,
350
+ description: 'MarketPro is a comprehensive marketing automation tool for online stores.',
351
+ tag: ['marketing', 'automation', 'e-commerce'],
352
+ price: 1672,
353
+ download_count: 6142,
354
+ update_time: '2023-05-09T18:30:00',
355
+ create_time: '2022-12-05T15:10:00',
356
+ app_id: 'app_5',
357
+ expiration_time: '2023-06-08T18:30:00'
358
+ },
359
+ {
360
+ id: 7,
361
+ name: 'ShopifyPlus',
362
+ image: 'https://example.com/images/shopifyplus.jpg',
363
+ link: 'https://www.shopifyplus.com',
364
+ rate: 4.5,
365
+ rate_count: 6995,
366
+ description: 'Advanced e-commerce platform for growing businesses.',
367
+ tag: ['e-commerce', 'enterprise', 'business'],
368
+ price: 2948,
369
+ download_count: 4823,
370
+ update_time: '2023-05-07T16:00:00',
371
+ create_time: '2022-09-25T10:30:00',
372
+ app_id: 'app_7',
373
+ expiration_time: '2023-06-06T16:00:00'
374
+ },
375
+ ];
376
+ return app_list;
377
+ }
378
+ catch (e) {
379
+ console.error(e);
380
+ throw exception_1.default.BadRequestError('BAD_REQUEST', 'get Market App List Error:' + e, null);
381
+ }
382
+ }
383
+ }
384
+ exports.MarketService = MarketService;
385
+ //# sourceMappingURL=app-market.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-market.js","sourceRoot":"","sources":["app-market.ts"],"names":[],"mappings":"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"}