ts-glitter 21.3.0 → 21.3.3

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 (41) hide show
  1. package/lowcode/Entry.js +1 -1
  2. package/lowcode/Entry.ts +1 -1
  3. package/lowcode/backend-manager/bg-customer-message.js +662 -566
  4. package/lowcode/backend-manager/bg-customer-message.ts +1740 -1580
  5. package/lowcode/cms-plugin/customer-message-user.ts +2 -0
  6. package/lowcode/cms-plugin/module/product-excel.js +169 -129
  7. package/lowcode/cms-plugin/module/product-excel.ts +174 -130
  8. package/lowcode/cms-plugin/shopping-discount-setting.js +640 -600
  9. package/lowcode/cms-plugin/shopping-discount-setting.ts +782 -716
  10. package/lowcode/cms-plugin/shopping-finance-setting.js +372 -407
  11. package/lowcode/cms-plugin/shopping-finance-setting.ts +918 -968
  12. package/lowcode/cms-plugin/shopping-setting-advance.js +1 -1
  13. package/lowcode/cms-plugin/shopping-setting-advance.ts +1 -1
  14. package/lowcode/glitter-base/global/language.js +12 -0
  15. package/lowcode/glitter-base/global/language.ts +12 -0
  16. package/lowcode/glitter-base/route/api-track.js +2 -2
  17. package/lowcode/glitter-base/route/api-track.ts +20 -20
  18. package/lowcode/public-components/checkout/index.js +27 -5
  19. package/lowcode/public-components/checkout/index.ts +34 -6
  20. package/lowcode/public-components/headers/header-class.js +13 -18
  21. package/lowcode/public-components/headers/header-class.ts +16 -20
  22. package/lowcode/public-components/modules/cart-module.js +6 -0
  23. package/lowcode/public-components/modules/cart-module.ts +6 -0
  24. package/lowcode/public-components/product/pd-class.js +1 -3
  25. package/lowcode/public-components/product/pd-class.ts +1 -3
  26. package/omr85cp878.json +1 -0
  27. package/package.json +1 -1
  28. package/src/api-public/services/checkout-event.js +26 -12
  29. package/src/api-public/services/checkout-event.js.map +1 -1
  30. package/src/api-public/services/checkout-event.ts +34 -12
  31. package/src/api-public/services/data-analyze.d.ts +1 -1
  32. package/src/api-public/services/post.js +7 -17
  33. package/src/api-public/services/post.js.map +1 -1
  34. package/src/api-public/services/shopee.js +7 -17
  35. package/src/api-public/services/shopee.js.map +1 -1
  36. package/src/api-public/services/shopping.d.ts +44 -27
  37. package/src/api-public/services/shopping.js +56 -11
  38. package/src/api-public/services/shopping.js.map +1 -1
  39. package/src/api-public/services/shopping.ts +125 -58
  40. package/src/index.js +7 -17
  41. package/src/index.js.map +1 -1
@@ -1,4 +1,3 @@
1
- import { IToken } from '../models/Auth.js';
2
1
  import exception from '../../modules/exception.js';
3
2
  import db from '../../modules/database.js';
4
3
  import e from 'express';
@@ -7,7 +6,8 @@ import axios from 'axios';
7
6
  import app from '../../app';
8
7
  import redis from '../../modules/redis.js';
9
8
  import Tool from '../../modules/tool.js';
10
- import FinancialService, { EcPay, JKO, LinePay, PayNow, PayPal } from './financial-service.js';
9
+ import { IToken } from '../models/Auth.js';
10
+ import { EcPay, PayNow } from './financial-service.js';
11
11
  import { Private_config } from '../../services/private_config.js';
12
12
  import { User } from './user.js';
13
13
  import { Invoice } from './invoice.js';
@@ -15,14 +15,12 @@ import { Rebate } from './rebate.js';
15
15
  import { CustomCode } from '../services/custom-code.js';
16
16
  import { ManagerNotify } from './notify.js';
17
17
  import { AutoSendEmail } from './auto-send-email.js';
18
- import { Recommend } from './recommend.js';
19
18
  import { DeliveryData } from './delivery.js';
20
19
  import { saasConfig } from '../../config.js';
21
20
  import { SMS } from './sms.js';
22
21
  import { LineMessage } from './line-message';
23
22
  import { EcInvoice } from './EcInvoice';
24
23
  import { App } from '../../services/app.js';
25
- import { Stock } from './stock';
26
24
  import { OrderEvent } from './order-event.js';
27
25
  import { SeoConfig } from '../../seo-config.js';
28
26
  import { sendmail } from '../../services/ses.js';
@@ -33,13 +31,11 @@ import { CheckoutService } from './checkout.js';
33
31
  import { ProductInitial } from './product-initial.js';
34
32
  import { UtTimer } from '../utils/ut-timer.js';
35
33
  import { AutoFcm } from '../../public-config-initial/auto-fcm.js';
36
- import PaymentTransaction from './model/handlePaymentTransaction.js';
37
34
  import { Language, LanguageLocation } from '../../Language.js';
38
35
  import { PaymentStrategyFactory } from './factories/payment-strategy-factory.js';
39
36
  import { IPaymentStrategy } from './interface/payment-strategy-interface.js';
40
37
  import { PaymentService } from './payment-service.js';
41
38
  import { CartItem, CheckoutEvent } from './checkout-event.js';
42
- import { onlinePayArray } from '../models/glitter-finance';
43
39
 
44
40
  type BindItem = {
45
41
  id: string;
@@ -64,57 +60,61 @@ type InvoiceData = {
64
60
  };
65
61
 
66
62
  type VoucherForType = 'all' | 'collection' | 'product' | 'manager_tag';
63
+ type RebackType = 'rebate' | 'discount' | 'shipment_free' | 'add_on_items' | 'giveaway';
64
+ type Trigger = 'auto' | 'code' | 'distribution';
65
+ type ProductOffStart = 'price_asc' | 'price_desc' | 'price_all';
66
+ type Device = 'normal' | 'pos';
67
+ type Method = 'fixed' | 'percent';
68
+ type Rule = 'min_price' | 'min_count';
69
+ type ConditionType = 'item' | 'order';
70
+ type Counting = 'single' | 'each';
71
+ type IncludeDiscount = 'before' | 'after';
72
+ type SelectShipmentType = 'all' | 'select';
67
73
 
68
74
  export interface VoucherData {
69
- id: number;
75
+ // default-value
76
+ id: string;
77
+ type: 'voucher';
78
+ status: 0 | 1 | -1;
70
79
  title: string;
71
80
  code?: string;
72
- method: 'percent' | 'fixed';
73
- reBackType: 'rebate' | 'discount' | 'shipment_free' | 'add_on_items' | 'giveaway';
74
- add_on_products?: string[] | ProductItem[];
75
- trigger: 'auto' | 'code' | 'distribution';
81
+ reBackType: RebackType;
82
+ method: Method;
83
+ trigger: Trigger;
84
+ device: Device[];
76
85
  value: string;
86
+ add_on_products?: string[];
77
87
  for: VoucherForType;
78
- rule: 'min_price' | 'min_count';
79
- productOffStart: 'price_asc' | 'price_desc' | 'price_all';
80
- conditionType: 'order' | 'item';
81
- includeDiscount: 'before' | 'after';
82
- counting: 'each' | 'single';
83
- forKey: string[];
88
+ rule: Rule;
89
+ counting: Counting;
90
+ conditionType: ConditionType;
91
+ includeDiscount: IncludeDiscount;
92
+ productOffStart: ProductOffStart;
93
+ forKey: (number | string)[];
84
94
  ruleValue: number;
85
95
  startDate: string;
86
96
  startTime: string;
87
97
  endDate?: string;
88
98
  endTime?: string;
89
- status: 0 | 1 | -1;
90
- type: 'voucher';
91
99
  overlay: boolean;
100
+ start_ISO_Date: string;
101
+ end_ISO_Date: string;
102
+ targetList: (number | string)[];
103
+ target: string;
104
+ rebateEndDay: string;
105
+ macroLimited: number;
106
+ microLimited: number;
107
+ selectShipment: {
108
+ type: SelectShipmentType;
109
+ list: string[];
110
+ };
111
+
112
+ // backend-value
92
113
  bind: BindItem[];
93
114
  bind_subtotal: number;
94
115
  times: number;
95
- start_ISO_Date: string;
96
- end_ISO_Date: string;
97
116
  discount_total: number;
98
117
  rebate_total: number;
99
- target: string;
100
- targetList: string[];
101
- device: ('normal' | 'pos')[];
102
- }
103
-
104
- interface ShipmentConfig {
105
- volume: { key: string; value: string }[];
106
- weight: { key: string; value: string }[];
107
- selectCalc: 'volume' | 'weight';
108
- }
109
-
110
- interface ProductItem {
111
- id: number;
112
- userID: number;
113
- content: any;
114
- created_time: Date | string;
115
- updated_time: Date | string;
116
- status: number;
117
- total_sales?: number;
118
118
  }
119
119
 
120
120
  interface seo {
@@ -192,15 +192,6 @@ interface orderVoucherData {
192
192
  targetList: string[];
193
193
  }
194
194
 
195
- interface KeyData {
196
- HASH_IV: string;
197
- HASH_KEY: string;
198
- ActionURL: string;
199
- NotifyURL: string;
200
- ReturnURL: string;
201
- MERCHANT_ID: string;
202
- }
203
-
204
195
  class OrderDetail {
205
196
  subtotal: number;
206
197
  shipment: number;
@@ -326,6 +317,15 @@ type Collection = {
326
317
 
327
318
  type MultiSaleType = 'store' | 'level' | 'tags';
328
319
 
320
+ type ShipmentSetting = {
321
+ cartSetting: {
322
+ minimumTotal: number;
323
+ maximumTotal: number;
324
+ freeShipmnetTarget: number;
325
+ orderFormula: string[];
326
+ };
327
+ };
328
+
329
329
  export type Cart = {
330
330
  archived?: string;
331
331
  customer_info: any;
@@ -375,6 +375,7 @@ export type Cart = {
375
375
  combineOrderID?: number;
376
376
  splitOrders?: string[];
377
377
  parentOrder?: string;
378
+ select_shipment_setting?: ShipmentSetting;
378
379
  };
379
380
 
380
381
  export type Order = {
@@ -809,8 +810,8 @@ export class Shopping {
809
810
  })
810
811
  .map((product: any) => {
811
812
  product.content.designated_logistics = product.content.designated_logistics ?? { list: [], type: 'all' };
812
- if(product.content.designated_logistics.group==='' && !product.content.designated_logistics.type){
813
- product.content.designated_logistics={ list: [], type: 'all' };
813
+ if (product.content.designated_logistics.group === '' && !product.content.designated_logistics.type) {
814
+ product.content.designated_logistics = { list: [], type: 'all' };
814
815
  }
815
816
  product.content.collection = Array.from(
816
817
  new Set(
@@ -1320,7 +1321,7 @@ export class Shopping {
1320
1321
 
1321
1322
  Language.locationList.map(lang => {
1322
1323
  const originList = tagConfig.list[lang] ?? [];
1323
- const updateList = add_tags[lang];
1324
+ const updateList = add_tags[lang] ?? [];
1324
1325
  tagConfig.list[lang] = [...new Set([...originList, ...updateList])];
1325
1326
  });
1326
1327
 
@@ -1401,7 +1402,7 @@ export class Shopping {
1401
1402
  // 處理需 async and await 的驗證
1402
1403
  const validVouchers = await Promise.all(
1403
1404
  allVoucher.map(async (voucher: VoucherData) => {
1404
- const isLimited = await this.checkVoucherLimited(userID, voucher.id);
1405
+ const isLimited = await this.checkVoucherLimited(userID, Number(voucher.id));
1405
1406
  return isLimited ? voucher : null;
1406
1407
  })
1407
1408
  );
@@ -2659,15 +2660,24 @@ export class Shopping {
2659
2660
  // 判斷符合商品類型
2660
2661
  function setBindProduct(voucher: VoucherData): Boolean {
2661
2662
  voucher.bind = [];
2663
+ voucher.forKey ??= [];
2662
2664
  voucher.productOffStart = voucher.productOffStart ?? 'price_all';
2663
2665
 
2664
2666
  switch (voucher.trigger) {
2665
2667
  case 'auto': // 自動填入
2666
- voucher.bind = switchValidProduct(voucher.for, voucher.forKey, voucher.productOffStart);
2668
+ voucher.bind = switchValidProduct(
2669
+ voucher.for,
2670
+ voucher.forKey.map(k => k.toString()),
2671
+ voucher.productOffStart
2672
+ );
2667
2673
  break;
2668
2674
  case 'code': // 輸入代碼
2669
2675
  if (voucher.code === `${cart.code}` || (cart.code_array || []).includes(`${voucher.code}`)) {
2670
- voucher.bind = switchValidProduct(voucher.for, voucher.forKey, voucher.productOffStart);
2676
+ voucher.bind = switchValidProduct(
2677
+ voucher.for,
2678
+ voucher.forKey.map(k => k.toString()),
2679
+ voucher.productOffStart
2680
+ );
2671
2681
  }
2672
2682
  break;
2673
2683
  case 'distribution': // 分銷優惠
@@ -2720,8 +2730,18 @@ export class Shopping {
2720
2730
  cartValue += item.count;
2721
2731
  });
2722
2732
  }
2733
+
2723
2734
  if (voucher.reBackType === 'shipment_free') {
2724
- return cartValue >= ruleValue; // 回傳免運費判斷
2735
+ // 判斷使用的物流是否為優惠券所指定
2736
+ const isSelectShipment: () => boolean = () => {
2737
+ if (voucher.selectShipment.type === 'all') {
2738
+ return true;
2739
+ }
2740
+ return voucher.selectShipment.list.includes(cart.user_info.shipment);
2741
+ };
2742
+
2743
+ // 回傳免運費判斷
2744
+ return cart.shipment_fee > 0 && isSelectShipment() && cartValue >= ruleValue;
2725
2745
  }
2726
2746
  if (cartValue >= ruleValue) {
2727
2747
  if (voucher.counting === 'each') {
@@ -4967,6 +4987,13 @@ export class Shopping {
4967
4987
  ]
4968
4988
  );
4969
4989
  await new Shopping(this.app, this.token).postVariantsAndPriceValue(content);
4990
+
4991
+ // 重新設置管理員標籤
4992
+ await Promise.all([
4993
+ this.setProductCustomizeTagConifg(content.product_customize_tag ?? []),
4994
+ this.setProductGeneralTagConifg(content.product_tag?.language ?? []),
4995
+ ]);
4996
+
4970
4997
  return data.insertId;
4971
4998
  } catch (e) {
4972
4999
  console.error(e);
@@ -5151,8 +5178,7 @@ export class Shopping {
5151
5178
  );
5152
5179
 
5153
5180
  async function getNextId(app: string): Promise<number> {
5154
- const query = `SELECT MAX(id) AS max_id
5155
- FROM \`${app}\`.t_manager_post`;
5181
+ const query = `SELECT MAX(id) AS max_id FROM \`${app}\`.t_manager_post`;
5156
5182
 
5157
5183
  try {
5158
5184
  const result = await db.query(query, []);
@@ -5164,6 +5190,40 @@ export class Shopping {
5164
5190
  }
5165
5191
  }
5166
5192
 
5193
+ function entriesProductsTag(products: any) {
5194
+ const tempTags: any = {
5195
+ general: {}, // 商品標籤(包含語言)
5196
+ customize: [], // 管理員標籤
5197
+ };
5198
+
5199
+ try {
5200
+ products.map((product: any) => {
5201
+ if (product.product_tag.language) {
5202
+ Object.entries(product.product_tag.language).map(tag => {
5203
+ tempTags.general[tag[0]] = (tempTags.general[tag[0]] ?? []).concat(tag[1]);
5204
+ });
5205
+ }
5206
+
5207
+ if (Array.isArray(product.product_customize_tag)) {
5208
+ product.product_customize_tag.map((tag: string) => {
5209
+ tempTags.customize = tempTags.customize.concat(tag);
5210
+ });
5211
+ }
5212
+ });
5213
+
5214
+ Object.keys(tempTags.general).map(key => {
5215
+ tempTags.general[key] = [...new Set(tempTags.general[key])];
5216
+ });
5217
+
5218
+ tempTags.customize = [...new Set(tempTags.customize)];
5219
+
5220
+ return tempTags;
5221
+ } catch (error) {
5222
+ console.error(error);
5223
+ return tempTags;
5224
+ }
5225
+ }
5226
+
5167
5227
  let max_id = await getNextId(this.app);
5168
5228
 
5169
5229
  productArray.map((product: any) => {
@@ -5176,6 +5236,13 @@ export class Shopping {
5176
5236
  });
5177
5237
 
5178
5238
  if (productArray.length) {
5239
+ // 重新設置管理員標籤
5240
+ const tempTags: any = entriesProductsTag(productArray);
5241
+ await Promise.all([
5242
+ this.setProductCustomizeTagConifg(tempTags.customize),
5243
+ this.setProductGeneralTagConifg(tempTags.general),
5244
+ ]);
5245
+
5179
5246
  const data = await db.query(
5180
5247
  `REPLACE
5181
5248
  INTO \`${this.app}\`.\`t_manager_post\` (id,userID,content) values ?
package/src/index.js CHANGED
@@ -15,23 +15,13 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
35
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
27
  };
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}