ts-glitter 13.9.1 → 13.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.
- package/lowcode/Entry.js +1 -1
- package/lowcode/Entry.ts +1 -1
- package/lowcode/jspage/function-page/setting_editor.js +1 -0
- package/lowcode/jspage/function-page/setting_editor.ts +2 -0
- package/lowcode/jspage/main.js +2 -2
- package/lowcode/jspage/main.ts +2 -2
- package/lowcode/official_view_component/official/form.js +6 -0
- package/lowcode/official_view_component/official/form.ts +7 -0
- package/lowcode/public-components/checkout/index.js +262 -85
- package/lowcode/public-components/checkout/index.ts +264 -86
- package/package.json +1 -1
- package/src/api-public/services/auto-send-email.js +4 -2
- package/src/api-public/services/auto-send-email.js.map +1 -1
- package/src/api-public/services/auto-send-email.ts +4 -2
- package/src/api-public/services/sms.js +2 -1
- package/src/api-public/services/sms.js.map +1 -1
- package/src/api-public/services/sms.ts +4 -1
package/lowcode/Entry.js
CHANGED
|
@@ -70,7 +70,7 @@ export class Entry {
|
|
|
70
70
|
}
|
|
71
71
|
window.renderClock = (_a = window.renderClock) !== null && _a !== void 0 ? _a : clockF();
|
|
72
72
|
console.log(`Entry-time:`, window.renderClock.stop());
|
|
73
|
-
glitter.share.editerVersion = 'V_13.9.
|
|
73
|
+
glitter.share.editerVersion = 'V_13.9.4';
|
|
74
74
|
glitter.share.start = new Date();
|
|
75
75
|
const vm = {
|
|
76
76
|
appConfig: [],
|
package/lowcode/Entry.ts
CHANGED
|
@@ -72,7 +72,7 @@ export class Entry {
|
|
|
72
72
|
}
|
|
73
73
|
(window as any).renderClock = (window as any).renderClock ?? clockF();
|
|
74
74
|
console.log(`Entry-time:`, (window as any).renderClock.stop());
|
|
75
|
-
glitter.share.editerVersion = 'V_13.9.
|
|
75
|
+
glitter.share.editerVersion = 'V_13.9.4';
|
|
76
76
|
glitter.share.start = new Date();
|
|
77
77
|
const vm: {
|
|
78
78
|
appConfig: any;
|
|
@@ -242,6 +242,7 @@ export class Setting_editor {
|
|
|
242
242
|
${(_b = (_a = dd === null || dd === void 0 ? void 0 : dd.info) === null || _a === void 0 ? void 0 : _a.guideClass) !== null && _b !== void 0 ? _b : ''} ${dd.type === 'container' ? ` mainRow${index}` : ''}"
|
|
243
243
|
style="gap:7px;color:#393939;${dd.toggle ? `border-radius: 5px;background: #F2F2F2;` : ``}"
|
|
244
244
|
onclick="${gvc.event(() => __awaiter(this, void 0, void 0, function* () {
|
|
245
|
+
gvc.glitter.setUrlParameter('page-id');
|
|
245
246
|
if (dd.type === 'container') {
|
|
246
247
|
list.map((d1) => {
|
|
247
248
|
d1.toggle = false;
|
|
@@ -782,6 +782,7 @@ export class Setting_editor {
|
|
|
782
782
|
// // resolve(d2.response.result[0])
|
|
783
783
|
// })
|
|
784
784
|
|
|
785
|
+
|
|
785
786
|
$('#editerCenter').html(html`
|
|
786
787
|
<iframe src="${url.href}"
|
|
787
788
|
style="border: none;height: calc(100%);"></iframe>`);
|
|
@@ -893,6 +894,7 @@ export class Setting_editor {
|
|
|
893
894
|
${dd?.info?.guideClass ?? ''} ${dd.type === 'container' ? ` mainRow${index}` : ''}"
|
|
894
895
|
style="gap:7px;color:#393939;${dd.toggle ? `border-radius: 5px;background: #F2F2F2;` : ``}"
|
|
895
896
|
onclick="${gvc.event(async() => {
|
|
897
|
+
gvc.glitter.setUrlParameter('page-id')
|
|
896
898
|
if (dd.type === 'container') {
|
|
897
899
|
list.map((d1: any) => {
|
|
898
900
|
d1.toggle = false;
|
package/lowcode/jspage/main.js
CHANGED
|
@@ -216,7 +216,7 @@ init(import.meta.url, (gvc, glitter, gBundle) => {
|
|
|
216
216
|
tag: glitter.getUrlParameter('page'),
|
|
217
217
|
appName: gBundle.appName
|
|
218
218
|
}, (d2) => {
|
|
219
|
-
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('hidden')) {
|
|
219
|
+
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('shop') || glitter.getUrlParameter('page').startsWith('hidden')) {
|
|
220
220
|
Article.get({
|
|
221
221
|
page: 0,
|
|
222
222
|
limit: 1,
|
|
@@ -415,7 +415,7 @@ init(import.meta.url, (gvc, glitter, gBundle) => {
|
|
|
415
415
|
else {
|
|
416
416
|
return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
|
|
417
417
|
let result = true;
|
|
418
|
-
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('hidden')) {
|
|
418
|
+
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('hidden') || glitter.getUrlParameter('page').startsWith('shop')) {
|
|
419
419
|
Article.get({
|
|
420
420
|
page: 0,
|
|
421
421
|
limit: 1,
|
package/lowcode/jspage/main.ts
CHANGED
|
@@ -243,7 +243,7 @@ init(import.meta.url, (gvc, glitter, gBundle) => {
|
|
|
243
243
|
tag: glitter.getUrlParameter('page'),
|
|
244
244
|
appName: gBundle.appName
|
|
245
245
|
}, (d2: any) => {
|
|
246
|
-
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('hidden')) {
|
|
246
|
+
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('shop') || glitter.getUrlParameter('page').startsWith('hidden')) {
|
|
247
247
|
Article.get({
|
|
248
248
|
page: 0,
|
|
249
249
|
limit: 1,
|
|
@@ -450,7 +450,7 @@ init(import.meta.url, (gvc, glitter, gBundle) => {
|
|
|
450
450
|
} else {
|
|
451
451
|
return new Promise(async (resolve) => {
|
|
452
452
|
let result = true;
|
|
453
|
-
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('hidden')) {
|
|
453
|
+
if (glitter.getUrlParameter('page').startsWith('pages') || glitter.getUrlParameter('page').startsWith('hidden') || glitter.getUrlParameter('page').startsWith('shop')) {
|
|
454
454
|
Article.get({
|
|
455
455
|
page: 0,
|
|
456
456
|
limit: 1,
|
|
@@ -708,6 +708,12 @@ export class FormWidget {
|
|
|
708
708
|
.join('')}
|
|
709
709
|
</div>`;
|
|
710
710
|
}
|
|
711
|
+
static checkLeakData(form_config_list, formData) {
|
|
712
|
+
const find = form_config_list.find((dd) => {
|
|
713
|
+
return dd.require === 'true' && !formData[dd.key];
|
|
714
|
+
});
|
|
715
|
+
return find && find.title;
|
|
716
|
+
}
|
|
711
717
|
}
|
|
712
718
|
Plugin.createComponent(import.meta.url, (glitter, editMode) => {
|
|
713
719
|
return {
|
|
@@ -794,6 +794,13 @@ export class FormWidget {
|
|
|
794
794
|
.join('')}
|
|
795
795
|
</div>`;
|
|
796
796
|
}
|
|
797
|
+
|
|
798
|
+
public static checkLeakData(form_config_list:any,formData:any){
|
|
799
|
+
const find = form_config_list.find((dd: any) => {
|
|
800
|
+
return dd.require === 'true' && !formData[dd.key];
|
|
801
|
+
});
|
|
802
|
+
return find && find.title;
|
|
803
|
+
}
|
|
797
804
|
}
|
|
798
805
|
|
|
799
806
|
Plugin.createComponent(import.meta.url, (glitter: Glitter, editMode: boolean) => {
|
|
@@ -43,31 +43,34 @@ export class CheckoutIndex {
|
|
|
43
43
|
"title": "鱷魚皮沙發",
|
|
44
44
|
"sale_price": 25000,
|
|
45
45
|
"collection": [
|
|
46
|
-
"折扣專區"
|
|
46
|
+
"折扣專區",
|
|
47
|
+
"熱門商品",
|
|
48
|
+
"熱門商品 / 夏季限定"
|
|
47
49
|
],
|
|
48
50
|
"sku": "133",
|
|
49
51
|
"shipment_obj": {
|
|
50
|
-
"type": "
|
|
51
|
-
"value":
|
|
52
|
+
"type": "weight",
|
|
53
|
+
"value": 100
|
|
52
54
|
},
|
|
53
|
-
"discount_price":
|
|
55
|
+
"discount_price": 88,
|
|
54
56
|
"rebate": 0
|
|
55
57
|
}
|
|
56
58
|
],
|
|
57
|
-
"total":
|
|
59
|
+
"total": 25412,
|
|
58
60
|
"email": "sam38124@gmail.com",
|
|
59
61
|
"user_info": {
|
|
60
|
-
"shipment": "
|
|
62
|
+
"shipment": "sescsbsfs4s2s4sf"
|
|
61
63
|
},
|
|
62
|
-
"shipment_fee":
|
|
64
|
+
"shipment_fee": 500,
|
|
63
65
|
"rebate": 0,
|
|
64
66
|
"use_rebate": 0,
|
|
65
|
-
"orderID": "
|
|
67
|
+
"orderID": "1732290751810",
|
|
66
68
|
"shipment_support": [
|
|
67
69
|
"OKMARTC2C",
|
|
68
70
|
"shop",
|
|
69
71
|
"FAMIC2C",
|
|
70
|
-
"UNIMARTC2C"
|
|
72
|
+
"UNIMARTC2C",
|
|
73
|
+
"sescsbsfs4s2s4sf"
|
|
71
74
|
],
|
|
72
75
|
"shipment_info": "<p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;' id=\"isPasted\">感謝您在 SHOPNEX 購買商品,商品的包裝與配送</p><p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;'>預計花費約 3 到 6 週,煩請耐心等候!</p><p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;'>若約定配送日當天未能聯繫到你,因而無法完成配送</p><p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;'>商家會約定再次配送的時間,您將支付額外的運費。</p>",
|
|
73
76
|
"shipment_selector": [
|
|
@@ -86,6 +89,71 @@ export class CheckoutIndex {
|
|
|
86
89
|
{
|
|
87
90
|
"name": "實體門市取貨",
|
|
88
91
|
"value": "shop"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"form": [
|
|
95
|
+
{
|
|
96
|
+
"col": "12",
|
|
97
|
+
"key": "1732152125723",
|
|
98
|
+
"page": "form-select",
|
|
99
|
+
"type": "form_plugin_v2",
|
|
100
|
+
"group": "",
|
|
101
|
+
"title": "物流司機",
|
|
102
|
+
"col_sm": "12",
|
|
103
|
+
"toggle": true,
|
|
104
|
+
"appName": "cms_system",
|
|
105
|
+
"require": "true",
|
|
106
|
+
"readonly": "write",
|
|
107
|
+
"formFormat": "{}",
|
|
108
|
+
"moduleName": "下拉選單",
|
|
109
|
+
"style_data": {
|
|
110
|
+
"input": {
|
|
111
|
+
"list": [],
|
|
112
|
+
"class": "",
|
|
113
|
+
"style": "",
|
|
114
|
+
"version": "v2"
|
|
115
|
+
},
|
|
116
|
+
"label": {
|
|
117
|
+
"list": [],
|
|
118
|
+
"class": "form-label fs-base ",
|
|
119
|
+
"style": "",
|
|
120
|
+
"version": "v2"
|
|
121
|
+
},
|
|
122
|
+
"container": {
|
|
123
|
+
"list": [],
|
|
124
|
+
"class": "",
|
|
125
|
+
"style": "",
|
|
126
|
+
"version": "v2"
|
|
127
|
+
}
|
|
128
|
+
},
|
|
129
|
+
"form_config": {
|
|
130
|
+
"type": "name",
|
|
131
|
+
"title": "",
|
|
132
|
+
"option": [
|
|
133
|
+
{
|
|
134
|
+
"name": "A司機",
|
|
135
|
+
"index": 0,
|
|
136
|
+
"value": "A司機"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"name": "B司機",
|
|
140
|
+
"index": 0,
|
|
141
|
+
"value": "B司機"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"name": "C司機",
|
|
145
|
+
"index": 0,
|
|
146
|
+
"value": "C司機"
|
|
147
|
+
}
|
|
148
|
+
],
|
|
149
|
+
"input_style": {},
|
|
150
|
+
"title_style": {},
|
|
151
|
+
"place_holder": ""
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
],
|
|
155
|
+
"name": "小榮物流",
|
|
156
|
+
"value": "sescsbsfs4s2s4sf"
|
|
89
157
|
}
|
|
90
158
|
],
|
|
91
159
|
"use_wallet": 0,
|
|
@@ -96,72 +164,8 @@ export class CheckoutIndex {
|
|
|
96
164
|
"orderSource": "",
|
|
97
165
|
"code_array": [],
|
|
98
166
|
"give_away": [],
|
|
99
|
-
"user_rebate_sum":
|
|
100
|
-
"code": "J3IXLO",
|
|
167
|
+
"user_rebate_sum": 39807,
|
|
101
168
|
"voucherList": [
|
|
102
|
-
{
|
|
103
|
-
"id": 677,
|
|
104
|
-
"for": "all",
|
|
105
|
-
"code": "J3IXLO",
|
|
106
|
-
"rule": "min_count",
|
|
107
|
-
"type": "voucher",
|
|
108
|
-
"title": "示範優惠券1011",
|
|
109
|
-
"value": "100",
|
|
110
|
-
"device": [
|
|
111
|
-
"normal",
|
|
112
|
-
"pos"
|
|
113
|
-
],
|
|
114
|
-
"forKey": [],
|
|
115
|
-
"method": "fixed",
|
|
116
|
-
"status": 1,
|
|
117
|
-
"target": "all",
|
|
118
|
-
"userID": 122538856,
|
|
119
|
-
"endDate": "2024-11-28",
|
|
120
|
-
"endTime": "00:13",
|
|
121
|
-
"overlay": false,
|
|
122
|
-
"trigger": "code",
|
|
123
|
-
"counting": "single",
|
|
124
|
-
"ruleValue": 0,
|
|
125
|
-
"startDate": "2024-10-11",
|
|
126
|
-
"startTime": "17:00",
|
|
127
|
-
"reBackType": "discount",
|
|
128
|
-
"targetList": [
|
|
129
|
-
"neverBuying"
|
|
130
|
-
],
|
|
131
|
-
"end_ISO_Date": "2024-11-27T16:13:00.000Z",
|
|
132
|
-
"macroLimited": 0,
|
|
133
|
-
"microLimited": 0,
|
|
134
|
-
"rebateEndDay": "30",
|
|
135
|
-
"conditionType": "order",
|
|
136
|
-
"start_ISO_Date": "2024-10-11T09:00:00.000Z",
|
|
137
|
-
"bind": [
|
|
138
|
-
{
|
|
139
|
-
"spec": [
|
|
140
|
-
"黑色",
|
|
141
|
-
"小型"
|
|
142
|
-
],
|
|
143
|
-
"id": 711,
|
|
144
|
-
"count": 1,
|
|
145
|
-
"preview_image": "https://d3jnmi1tfjgtti.cloudfront.net/file/122538856/DALL·E2024-11-1219.41.03-Aluxuriouscrocodileleathersofainamodernlivingroomsetting,showcasingahigh-qualitycrocodileskintexturethatlooksdurableandelegant.T.webp",
|
|
146
|
-
"title": "鱷魚皮沙發",
|
|
147
|
-
"sale_price": 25000,
|
|
148
|
-
"collection": [
|
|
149
|
-
"折扣專區"
|
|
150
|
-
],
|
|
151
|
-
"sku": "133",
|
|
152
|
-
"shipment_obj": {
|
|
153
|
-
"type": "volume",
|
|
154
|
-
"value": 1
|
|
155
|
-
},
|
|
156
|
-
"discount_price": 188,
|
|
157
|
-
"rebate": 0
|
|
158
|
-
}
|
|
159
|
-
],
|
|
160
|
-
"times": 1,
|
|
161
|
-
"bind_subtotal": 25000,
|
|
162
|
-
"discount_total": 100,
|
|
163
|
-
"rebate_total": 0
|
|
164
|
-
},
|
|
165
169
|
{
|
|
166
170
|
"id": 718,
|
|
167
171
|
"for": "all",
|
|
@@ -206,14 +210,16 @@ export class CheckoutIndex {
|
|
|
206
210
|
"title": "鱷魚皮沙發",
|
|
207
211
|
"sale_price": 25000,
|
|
208
212
|
"collection": [
|
|
209
|
-
"折扣專區"
|
|
213
|
+
"折扣專區",
|
|
214
|
+
"熱門商品",
|
|
215
|
+
"熱門商品 / 夏季限定"
|
|
210
216
|
],
|
|
211
217
|
"sku": "133",
|
|
212
218
|
"shipment_obj": {
|
|
213
|
-
"type": "
|
|
214
|
-
"value":
|
|
219
|
+
"type": "weight",
|
|
220
|
+
"value": 100
|
|
215
221
|
},
|
|
216
|
-
"discount_price":
|
|
222
|
+
"discount_price": 88,
|
|
217
223
|
"rebate": 0
|
|
218
224
|
}
|
|
219
225
|
],
|
|
@@ -223,7 +229,7 @@ export class CheckoutIndex {
|
|
|
223
229
|
"rebate_total": 0
|
|
224
230
|
}
|
|
225
231
|
],
|
|
226
|
-
"discount":
|
|
232
|
+
"discount": 88,
|
|
227
233
|
"payment_setting": {
|
|
228
234
|
"TYPE": "ecPay"
|
|
229
235
|
},
|
|
@@ -724,7 +730,7 @@ export class CheckoutIndex {
|
|
|
724
730
|
<span class="d-block d-md-none" style="position: absolute;bottom:0px;right:0px;">合計 NT. ${((item.discount_price) ? ((item.sale_price - item.discount_price) * item.count) : (item.sale_price * item.count)).toLocaleString()}</span>
|
|
725
731
|
<div class="${gClass('td')} d-none d-md-flex" style="bottom:0px;right:10px;">
|
|
726
732
|
<span class="d-none d-md-block">合計 NT. ${((item.discount_price) ? ((item.sale_price - item.discount_price) * item.count) : (item.sale_price * item.count)).toLocaleString()}</span>
|
|
727
|
-
<div class="d-none d-md-block" style="position: absolute; right:
|
|
733
|
+
<div class="d-none d-md-block" style="position: absolute; right: -10px; transform: translateY(-50%); top: 50%;">
|
|
728
734
|
<i class="fa-solid fa-xmark-large"
|
|
729
735
|
style="cursor: pointer;" onclick="${gvc.event(() => {
|
|
730
736
|
ApiCart.setCart((cartItem) => {
|
|
@@ -1127,7 +1133,7 @@ export class CheckoutIndex {
|
|
|
1127
1133
|
<div class="${gClass('banner-bgr')}">
|
|
1128
1134
|
<span class="${gClass('banner-text')}">付款及配送方式</span>
|
|
1129
1135
|
</div>
|
|
1130
|
-
${vm.cartData.shipment_info ? `<div class="
|
|
1136
|
+
${vm.cartData.shipment_info ? `<div class="pt-2 mx-2 mx-sm-3">${vm.cartData.shipment_info}</div>` : ''}
|
|
1131
1137
|
<div class="row m-0 my-md-3">
|
|
1132
1138
|
<div class="col-12 col-md-6 mb-2 mb-sm-0">
|
|
1133
1139
|
<label class="${gClass('label')}">付款方式</label>
|
|
@@ -1146,7 +1152,7 @@ export class CheckoutIndex {
|
|
|
1146
1152
|
</select>
|
|
1147
1153
|
</div>
|
|
1148
1154
|
</div>
|
|
1149
|
-
<div class="col-12 col-md-6">
|
|
1155
|
+
<div class="col-12 col-md-6 mb-2">
|
|
1150
1156
|
<label class="${gClass('label')}">配送方式</label>
|
|
1151
1157
|
<div>
|
|
1152
1158
|
<select class="w-100 ${gClass('select')}"
|
|
@@ -1187,13 +1193,77 @@ export class CheckoutIndex {
|
|
|
1187
1193
|
})()}</span>
|
|
1188
1194
|
</button>
|
|
1189
1195
|
</div>
|
|
1196
|
+
${(() => {
|
|
1197
|
+
var _a;
|
|
1198
|
+
try {
|
|
1199
|
+
vm.cartData.user_info.custom_form_delivery = (_a = vm.cartData.user_info.custom_form_delivery) !== null && _a !== void 0 ? _a : {};
|
|
1200
|
+
const form_array = JSON.parse(JSON.stringify(this.getShipmentMethod(vm.cartData).find((dd) => {
|
|
1201
|
+
return vm.cartData.user_info.shipment === dd.value;
|
|
1202
|
+
}).form));
|
|
1203
|
+
form_array.map((dd) => {
|
|
1204
|
+
dd.col = '4';
|
|
1205
|
+
dd.form_config.title_style = {
|
|
1206
|
+
list: [
|
|
1207
|
+
{
|
|
1208
|
+
class: gClass('label') + ' mb-2',
|
|
1209
|
+
style: 'return `color:${glitter.share.globalValue[`theme_color.0.title`]} !important;font-size:16px !important;`',
|
|
1210
|
+
stylist: [],
|
|
1211
|
+
dataType: 'code',
|
|
1212
|
+
style_from: 'code',
|
|
1213
|
+
classDataType: 'static',
|
|
1214
|
+
},
|
|
1215
|
+
],
|
|
1216
|
+
class: 'form-label',
|
|
1217
|
+
style: 'font-size: 20px;font-style: normal;font-weight: 400;line-height: 140%; color:#393939 !important;',
|
|
1218
|
+
stylist: [],
|
|
1219
|
+
version: 'v2',
|
|
1220
|
+
dataType: 'static',
|
|
1221
|
+
style_from: 'code',
|
|
1222
|
+
classDataType: 'static',
|
|
1223
|
+
};
|
|
1224
|
+
dd.form_config.input_style = {
|
|
1225
|
+
list: [
|
|
1226
|
+
{
|
|
1227
|
+
class: gClass('input'),
|
|
1228
|
+
style: 'return `border-radius: ${widget.formData.radius}px !important;`',
|
|
1229
|
+
stylist: [],
|
|
1230
|
+
dataType: 'code',
|
|
1231
|
+
style_from: 'code',
|
|
1232
|
+
classDataType: 'static',
|
|
1233
|
+
},
|
|
1234
|
+
],
|
|
1235
|
+
class: ' mb-3',
|
|
1236
|
+
style: 'background: #FFF;',
|
|
1237
|
+
stylist: [],
|
|
1238
|
+
version: 'v2',
|
|
1239
|
+
dataType: 'static',
|
|
1240
|
+
style_from: 'code',
|
|
1241
|
+
classDataType: 'static',
|
|
1242
|
+
};
|
|
1243
|
+
});
|
|
1244
|
+
return [
|
|
1245
|
+
FormWidget.editorView({
|
|
1246
|
+
gvc: gvc,
|
|
1247
|
+
array: form_array,
|
|
1248
|
+
refresh: () => {
|
|
1249
|
+
this.storeLocalData(vm.cartData);
|
|
1250
|
+
},
|
|
1251
|
+
formData: vm.cartData.user_info.custom_form_delivery,
|
|
1252
|
+
})
|
|
1253
|
+
].join('');
|
|
1254
|
+
}
|
|
1255
|
+
catch (e) {
|
|
1256
|
+
console.log(e);
|
|
1257
|
+
return ``;
|
|
1258
|
+
}
|
|
1259
|
+
})()}
|
|
1190
1260
|
</div>
|
|
1191
1261
|
</section>
|
|
1192
1262
|
<section class="${['UNIMARTC2C', 'FAMIC2C', 'HILIFEC2C', 'OKMARTC2C'].includes(vm.cartData.user_info.shipment) ? `` : `mt-4`}">
|
|
1193
1263
|
<div class="${gClass('banner-bgr')}">
|
|
1194
1264
|
<span class="${gClass('banner-text')}">顧客資料</span>
|
|
1195
1265
|
</div>
|
|
1196
|
-
<div class="row m-0 mt-3">
|
|
1266
|
+
<div class="row m-0 mt-3 mb-2">
|
|
1197
1267
|
${[{
|
|
1198
1268
|
name: '姓名',
|
|
1199
1269
|
key: 'name'
|
|
@@ -1835,7 +1905,10 @@ export class CheckoutIndex {
|
|
|
1835
1905
|
};
|
|
1836
1906
|
})}
|
|
1837
1907
|
<div class="w-100 d-flex align-items-center justify-content-end px-2 mt-3" >
|
|
1838
|
-
<button class="${gClass('button-bgr')}" onclick="${gvc.event(() => {
|
|
1908
|
+
<button class="${gClass('button-bgr')}" onclick="${gvc.event(() => __awaiter(this, void 0, void 0, function* () {
|
|
1909
|
+
if (!(yield this.checkFormData(vm.cartData, widget))) {
|
|
1910
|
+
return;
|
|
1911
|
+
}
|
|
1839
1912
|
['MerchantTradeNo', 'LogisticsSubType', 'CVSStoreID', 'CVSStoreName', 'CVSTelephone', 'CVSOutSide', 'ExtraData', 'CVSAddress'].map((dd) => {
|
|
1840
1913
|
if (gvc.glitter.getUrlParameter(dd)) {
|
|
1841
1914
|
vm.cartData.user_info[dd] = decodeURI(glitter.getUrlParameter(dd));
|
|
@@ -1878,7 +1951,7 @@ export class CheckoutIndex {
|
|
|
1878
1951
|
ApiCart.clearCart();
|
|
1879
1952
|
}
|
|
1880
1953
|
});
|
|
1881
|
-
})}" style="width:200px;" >
|
|
1954
|
+
}))}" style="width:200px;" >
|
|
1882
1955
|
<span class="${gClass('button-text')}">下一步</span>
|
|
1883
1956
|
</button>
|
|
1884
1957
|
</div>
|
|
@@ -1975,6 +2048,110 @@ export class CheckoutIndex {
|
|
|
1975
2048
|
};
|
|
1976
2049
|
})());
|
|
1977
2050
|
}
|
|
2051
|
+
static checkFormData(cartData, widget) {
|
|
2052
|
+
function checkEmailPattern(input) {
|
|
2053
|
+
const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
|
|
2054
|
+
return emailPattern.test(input);
|
|
2055
|
+
}
|
|
2056
|
+
function checkPhonePattern(input) {
|
|
2057
|
+
const phonePattern = /^09\d{8}$/;
|
|
2058
|
+
return phonePattern.test(input);
|
|
2059
|
+
}
|
|
2060
|
+
function checkReceiverPattern(input) {
|
|
2061
|
+
const receiverPattern = /^[\u4e00-\u9fa5]{2,5}|[a-zA-Z]{4,10}$/;
|
|
2062
|
+
return receiverPattern.test(input);
|
|
2063
|
+
}
|
|
2064
|
+
function checkAddressPattern(input) {
|
|
2065
|
+
const addressPattern = /^.{6,60}$/;
|
|
2066
|
+
return addressPattern.test(input);
|
|
2067
|
+
}
|
|
2068
|
+
return new Promise((resolve) => {
|
|
2069
|
+
var _a;
|
|
2070
|
+
let pass = true;
|
|
2071
|
+
const userData = cartData.customer_info;
|
|
2072
|
+
const subData = cartData.user_info;
|
|
2073
|
+
function checkString(text, errorMessage, type = '') {
|
|
2074
|
+
if ((pass && !text) || text === '') {
|
|
2075
|
+
pass = false;
|
|
2076
|
+
widget.event('error', { title: `請輸入「${errorMessage}」` });
|
|
2077
|
+
}
|
|
2078
|
+
if (pass && type === 'email' && !checkEmailPattern(text)) {
|
|
2079
|
+
pass = false;
|
|
2080
|
+
widget.event('error', { title: `「${errorMessage}」格式錯誤` });
|
|
2081
|
+
}
|
|
2082
|
+
if (pass && type === 'phone' && !checkPhonePattern(text)) {
|
|
2083
|
+
pass = false;
|
|
2084
|
+
widget.event('error', { title: `<div class="text-center">「${errorMessage}」格式錯誤<br/>請輸入 09 開頭的手機格式</div>` });
|
|
2085
|
+
}
|
|
2086
|
+
if (pass && type === 'name' && !checkReceiverPattern(text)) {
|
|
2087
|
+
pass = false;
|
|
2088
|
+
widget.event('error', { title: '姓名請設定為4~10字元(中文2~5個字, 英文4~10個字, 不得含指定特殊符號)' });
|
|
2089
|
+
}
|
|
2090
|
+
}
|
|
2091
|
+
if (subData['shipment'] === 'normal' && (!subData['address'] || subData['address'] === '')) {
|
|
2092
|
+
widget.event('error', { title: '請輸入「配送地址」' });
|
|
2093
|
+
}
|
|
2094
|
+
else if (subData['shipment'] === 'normal' && !checkAddressPattern(subData['address'])) {
|
|
2095
|
+
widget.event('error', { title: '地址長度需大於6個字元,且不可超過60個字元' });
|
|
2096
|
+
}
|
|
2097
|
+
else if (['UNIMARTC2C', 'FAMIC2C', 'HILIFEC2C', 'OKMARTC2C'].includes(subData['shipment']) && (!subData['CVSStoreName'] || subData['CVSStoreName'] === '')) {
|
|
2098
|
+
widget.event('error', { title: '請選擇「配送門市」' });
|
|
2099
|
+
}
|
|
2100
|
+
else if ((() => {
|
|
2101
|
+
const form = this.getShipmentMethod(cartData).find((dd) => {
|
|
2102
|
+
return dd.value === subData['shipment'];
|
|
2103
|
+
}).form;
|
|
2104
|
+
return FormWidget.checkLeakData(form, subData.custom_form_delivery);
|
|
2105
|
+
})()) {
|
|
2106
|
+
const form = this.getShipmentMethod(cartData).find((dd) => {
|
|
2107
|
+
return dd.value === subData['shipment'];
|
|
2108
|
+
}).form;
|
|
2109
|
+
widget.event('error', { title: `請輸入「${FormWidget.checkLeakData(form, subData)}」` });
|
|
2110
|
+
}
|
|
2111
|
+
else if ((() => {
|
|
2112
|
+
return FormWidget.checkLeakData(cartData.custom_form_format, cartData.custom_form_data);
|
|
2113
|
+
})()) {
|
|
2114
|
+
widget.event('error', { title: `請輸入「${FormWidget.checkLeakData(cartData.custom_form_format, cartData.custom_form_data)}」` });
|
|
2115
|
+
}
|
|
2116
|
+
else if (cartData.voucherList
|
|
2117
|
+
.filter((dd) => {
|
|
2118
|
+
return dd.reBackType === 'giveaway';
|
|
2119
|
+
})
|
|
2120
|
+
.find((dd) => {
|
|
2121
|
+
return !dd.select_gif.id;
|
|
2122
|
+
})) {
|
|
2123
|
+
widget.event('error', { title: '請選擇「贈品」' });
|
|
2124
|
+
}
|
|
2125
|
+
else {
|
|
2126
|
+
checkString(userData.name, '顧客姓名', 'name');
|
|
2127
|
+
checkString(userData.phone, '顧客電話', 'phone');
|
|
2128
|
+
checkString(userData.email, '顧客信箱', 'email');
|
|
2129
|
+
checkString(subData.name, '收件人姓名', 'name');
|
|
2130
|
+
checkString(subData.phone, '收件人電話', 'phone');
|
|
2131
|
+
checkString(subData.email, '收件人信箱', 'email');
|
|
2132
|
+
if (pass) {
|
|
2133
|
+
if (window.gtag) {
|
|
2134
|
+
window.gtag('event', 'begin_checkout', {
|
|
2135
|
+
currency: 'TWD',
|
|
2136
|
+
value: cartData.total,
|
|
2137
|
+
coupon: (_a = cartData.code) !== null && _a !== void 0 ? _a : '',
|
|
2138
|
+
items: cartData.lineItems.map((item) => {
|
|
2139
|
+
return {
|
|
2140
|
+
item_id: item.id,
|
|
2141
|
+
item_name: item.title,
|
|
2142
|
+
item_variant: item.spec.join('-'),
|
|
2143
|
+
price: item.sale_price,
|
|
2144
|
+
quantity: item.count,
|
|
2145
|
+
discount: item.discount_price,
|
|
2146
|
+
};
|
|
2147
|
+
}),
|
|
2148
|
+
});
|
|
2149
|
+
}
|
|
2150
|
+
resolve(subData);
|
|
2151
|
+
}
|
|
2152
|
+
}
|
|
2153
|
+
});
|
|
2154
|
+
}
|
|
1978
2155
|
static viewDialog(obj) {
|
|
1979
2156
|
return obj.gvc.glitter.innerDialog((gvc) => {
|
|
1980
2157
|
var _a;
|
|
@@ -33,7 +33,7 @@ export class CheckoutIndex {
|
|
|
33
33
|
page: true,
|
|
34
34
|
};
|
|
35
35
|
const vm = {
|
|
36
|
-
cartData:
|
|
36
|
+
cartData:{
|
|
37
37
|
"customer_info": {},
|
|
38
38
|
"lineItems": [
|
|
39
39
|
{
|
|
@@ -47,31 +47,34 @@ export class CheckoutIndex {
|
|
|
47
47
|
"title": "鱷魚皮沙發",
|
|
48
48
|
"sale_price": 25000,
|
|
49
49
|
"collection": [
|
|
50
|
-
"折扣專區"
|
|
50
|
+
"折扣專區",
|
|
51
|
+
"熱門商品",
|
|
52
|
+
"熱門商品 / 夏季限定"
|
|
51
53
|
],
|
|
52
54
|
"sku": "133",
|
|
53
55
|
"shipment_obj": {
|
|
54
|
-
"type": "
|
|
55
|
-
"value":
|
|
56
|
+
"type": "weight",
|
|
57
|
+
"value": 100
|
|
56
58
|
},
|
|
57
|
-
"discount_price":
|
|
59
|
+
"discount_price": 88,
|
|
58
60
|
"rebate": 0
|
|
59
61
|
}
|
|
60
62
|
],
|
|
61
|
-
"total":
|
|
63
|
+
"total": 25412,
|
|
62
64
|
"email": "sam38124@gmail.com",
|
|
63
65
|
"user_info": {
|
|
64
|
-
"shipment": "
|
|
66
|
+
"shipment": "sescsbsfs4s2s4sf"
|
|
65
67
|
},
|
|
66
|
-
"shipment_fee":
|
|
68
|
+
"shipment_fee": 500,
|
|
67
69
|
"rebate": 0,
|
|
68
70
|
"use_rebate": 0,
|
|
69
|
-
"orderID": "
|
|
71
|
+
"orderID": "1732290751810",
|
|
70
72
|
"shipment_support": [
|
|
71
73
|
"OKMARTC2C",
|
|
72
74
|
"shop",
|
|
73
75
|
"FAMIC2C",
|
|
74
|
-
"UNIMARTC2C"
|
|
76
|
+
"UNIMARTC2C",
|
|
77
|
+
"sescsbsfs4s2s4sf"
|
|
75
78
|
],
|
|
76
79
|
"shipment_info": "<p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;' id=\"isPasted\">感謝您在 SHOPNEX 購買商品,商品的包裝與配送</p><p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;'>預計花費約 3 到 6 週,煩請耐心等候!</p><p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;'>若約定配送日當天未能聯繫到你,因而無法完成配送</p><p style='box-sizing: border-box; margin: 0px; text-align: left; font-size: 14px; font-weight: 700; letter-spacing: 1.2px; color: rgb(254, 85, 65); font-family: \"Open Sans\", sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;'>商家會約定再次配送的時間,您將支付額外的運費。</p>",
|
|
77
80
|
"shipment_selector": [
|
|
@@ -90,6 +93,71 @@ export class CheckoutIndex {
|
|
|
90
93
|
{
|
|
91
94
|
"name": "實體門市取貨",
|
|
92
95
|
"value": "shop"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"form": [
|
|
99
|
+
{
|
|
100
|
+
"col": "12",
|
|
101
|
+
"key": "1732152125723",
|
|
102
|
+
"page": "form-select",
|
|
103
|
+
"type": "form_plugin_v2",
|
|
104
|
+
"group": "",
|
|
105
|
+
"title": "物流司機",
|
|
106
|
+
"col_sm": "12",
|
|
107
|
+
"toggle": true,
|
|
108
|
+
"appName": "cms_system",
|
|
109
|
+
"require": "true",
|
|
110
|
+
"readonly": "write",
|
|
111
|
+
"formFormat": "{}",
|
|
112
|
+
"moduleName": "下拉選單",
|
|
113
|
+
"style_data": {
|
|
114
|
+
"input": {
|
|
115
|
+
"list": [],
|
|
116
|
+
"class": "",
|
|
117
|
+
"style": "",
|
|
118
|
+
"version": "v2"
|
|
119
|
+
},
|
|
120
|
+
"label": {
|
|
121
|
+
"list": [],
|
|
122
|
+
"class": "form-label fs-base ",
|
|
123
|
+
"style": "",
|
|
124
|
+
"version": "v2"
|
|
125
|
+
},
|
|
126
|
+
"container": {
|
|
127
|
+
"list": [],
|
|
128
|
+
"class": "",
|
|
129
|
+
"style": "",
|
|
130
|
+
"version": "v2"
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
"form_config": {
|
|
134
|
+
"type": "name",
|
|
135
|
+
"title": "",
|
|
136
|
+
"option": [
|
|
137
|
+
{
|
|
138
|
+
"name": "A司機",
|
|
139
|
+
"index": 0,
|
|
140
|
+
"value": "A司機"
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"name": "B司機",
|
|
144
|
+
"index": 0,
|
|
145
|
+
"value": "B司機"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"name": "C司機",
|
|
149
|
+
"index": 0,
|
|
150
|
+
"value": "C司機"
|
|
151
|
+
}
|
|
152
|
+
],
|
|
153
|
+
"input_style": {},
|
|
154
|
+
"title_style": {},
|
|
155
|
+
"place_holder": ""
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
],
|
|
159
|
+
"name": "小榮物流",
|
|
160
|
+
"value": "sescsbsfs4s2s4sf"
|
|
93
161
|
}
|
|
94
162
|
],
|
|
95
163
|
"use_wallet": 0,
|
|
@@ -100,72 +168,8 @@ export class CheckoutIndex {
|
|
|
100
168
|
"orderSource": "",
|
|
101
169
|
"code_array": [],
|
|
102
170
|
"give_away": [],
|
|
103
|
-
"user_rebate_sum":
|
|
104
|
-
"code": "J3IXLO",
|
|
171
|
+
"user_rebate_sum": 39807,
|
|
105
172
|
"voucherList": [
|
|
106
|
-
{
|
|
107
|
-
"id": 677,
|
|
108
|
-
"for": "all",
|
|
109
|
-
"code": "J3IXLO",
|
|
110
|
-
"rule": "min_count",
|
|
111
|
-
"type": "voucher",
|
|
112
|
-
"title": "示範優惠券1011",
|
|
113
|
-
"value": "100",
|
|
114
|
-
"device": [
|
|
115
|
-
"normal",
|
|
116
|
-
"pos"
|
|
117
|
-
],
|
|
118
|
-
"forKey": [],
|
|
119
|
-
"method": "fixed",
|
|
120
|
-
"status": 1,
|
|
121
|
-
"target": "all",
|
|
122
|
-
"userID": 122538856,
|
|
123
|
-
"endDate": "2024-11-28",
|
|
124
|
-
"endTime": "00:13",
|
|
125
|
-
"overlay": false,
|
|
126
|
-
"trigger": "code",
|
|
127
|
-
"counting": "single",
|
|
128
|
-
"ruleValue": 0,
|
|
129
|
-
"startDate": "2024-10-11",
|
|
130
|
-
"startTime": "17:00",
|
|
131
|
-
"reBackType": "discount",
|
|
132
|
-
"targetList": [
|
|
133
|
-
"neverBuying"
|
|
134
|
-
],
|
|
135
|
-
"end_ISO_Date": "2024-11-27T16:13:00.000Z",
|
|
136
|
-
"macroLimited": 0,
|
|
137
|
-
"microLimited": 0,
|
|
138
|
-
"rebateEndDay": "30",
|
|
139
|
-
"conditionType": "order",
|
|
140
|
-
"start_ISO_Date": "2024-10-11T09:00:00.000Z",
|
|
141
|
-
"bind": [
|
|
142
|
-
{
|
|
143
|
-
"spec": [
|
|
144
|
-
"黑色",
|
|
145
|
-
"小型"
|
|
146
|
-
],
|
|
147
|
-
"id": 711,
|
|
148
|
-
"count": 1,
|
|
149
|
-
"preview_image": "https://d3jnmi1tfjgtti.cloudfront.net/file/122538856/DALL·E2024-11-1219.41.03-Aluxuriouscrocodileleathersofainamodernlivingroomsetting,showcasingahigh-qualitycrocodileskintexturethatlooksdurableandelegant.T.webp",
|
|
150
|
-
"title": "鱷魚皮沙發",
|
|
151
|
-
"sale_price": 25000,
|
|
152
|
-
"collection": [
|
|
153
|
-
"折扣專區"
|
|
154
|
-
],
|
|
155
|
-
"sku": "133",
|
|
156
|
-
"shipment_obj": {
|
|
157
|
-
"type": "volume",
|
|
158
|
-
"value": 1
|
|
159
|
-
},
|
|
160
|
-
"discount_price": 188,
|
|
161
|
-
"rebate": 0
|
|
162
|
-
}
|
|
163
|
-
],
|
|
164
|
-
"times": 1,
|
|
165
|
-
"bind_subtotal": 25000,
|
|
166
|
-
"discount_total": 100,
|
|
167
|
-
"rebate_total": 0
|
|
168
|
-
},
|
|
169
173
|
{
|
|
170
174
|
"id": 718,
|
|
171
175
|
"for": "all",
|
|
@@ -210,14 +214,16 @@ export class CheckoutIndex {
|
|
|
210
214
|
"title": "鱷魚皮沙發",
|
|
211
215
|
"sale_price": 25000,
|
|
212
216
|
"collection": [
|
|
213
|
-
"折扣專區"
|
|
217
|
+
"折扣專區",
|
|
218
|
+
"熱門商品",
|
|
219
|
+
"熱門商品 / 夏季限定"
|
|
214
220
|
],
|
|
215
221
|
"sku": "133",
|
|
216
222
|
"shipment_obj": {
|
|
217
|
-
"type": "
|
|
218
|
-
"value":
|
|
223
|
+
"type": "weight",
|
|
224
|
+
"value": 100
|
|
219
225
|
},
|
|
220
|
-
"discount_price":
|
|
226
|
+
"discount_price": 88,
|
|
221
227
|
"rebate": 0
|
|
222
228
|
}
|
|
223
229
|
],
|
|
@@ -227,7 +233,7 @@ export class CheckoutIndex {
|
|
|
227
233
|
"rebate_total": 0
|
|
228
234
|
}
|
|
229
235
|
],
|
|
230
|
-
"discount":
|
|
236
|
+
"discount": 88,
|
|
231
237
|
"payment_setting": {
|
|
232
238
|
"TYPE": "ecPay"
|
|
233
239
|
},
|
|
@@ -246,7 +252,7 @@ export class CheckoutIndex {
|
|
|
246
252
|
"bank_user": "陳女士",
|
|
247
253
|
"bank_account": "888800004567"
|
|
248
254
|
}
|
|
249
|
-
}
|
|
255
|
+
}as any,
|
|
250
256
|
};
|
|
251
257
|
const noImageURL = 'https://d3jnmi1tfjgtti.cloudfront.net/file/234285319/1722936949034-default_image.jpg';
|
|
252
258
|
const classPrefix = Tool.randomString(6);
|
|
@@ -764,7 +770,7 @@ export class CheckoutIndex {
|
|
|
764
770
|
<span class="d-block d-md-none" style="position: absolute;bottom:0px;right:0px;">合計 NT. ${((item.discount_price) ? (((item.sale_price - item.discount_price) as any)* item.count):(item.sale_price * item.count)).toLocaleString()}</span>
|
|
765
771
|
<div class="${gClass('td')} d-none d-md-flex" style="bottom:0px;right:10px;">
|
|
766
772
|
<span class="d-none d-md-block">合計 NT. ${((item.discount_price) ? (((item.sale_price - item.discount_price) as any)* item.count):(item.sale_price * item.count)).toLocaleString()}</span>
|
|
767
|
-
<div class="d-none d-md-block" style="position: absolute; right:
|
|
773
|
+
<div class="d-none d-md-block" style="position: absolute; right: -10px; transform: translateY(-50%); top: 50%;">
|
|
768
774
|
<i class="fa-solid fa-xmark-large"
|
|
769
775
|
style="cursor: pointer;" onclick="${gvc.event(()=>{
|
|
770
776
|
ApiCart.setCart((cartItem)=>{
|
|
@@ -1191,7 +1197,7 @@ this.viewDialog({
|
|
|
1191
1197
|
<div class="${gClass('banner-bgr')}">
|
|
1192
1198
|
<span class="${gClass('banner-text')}">付款及配送方式</span>
|
|
1193
1199
|
</div>
|
|
1194
|
-
${vm.cartData.shipment_info ? `<div class="
|
|
1200
|
+
${vm.cartData.shipment_info ? `<div class="pt-2 mx-2 mx-sm-3">${vm.cartData.shipment_info}</div>`:''}
|
|
1195
1201
|
<div class="row m-0 my-md-3">
|
|
1196
1202
|
<div class="col-12 col-md-6 mb-2 mb-sm-0">
|
|
1197
1203
|
<label class="${gClass('label')}">付款方式</label>
|
|
@@ -1213,7 +1219,7 @@ this.viewDialog({
|
|
|
1213
1219
|
</select>
|
|
1214
1220
|
</div>
|
|
1215
1221
|
</div>
|
|
1216
|
-
<div class="col-12 col-md-6">
|
|
1222
|
+
<div class="col-12 col-md-6 mb-2">
|
|
1217
1223
|
<label class="${gClass('label')}">配送方式</label>
|
|
1218
1224
|
<div>
|
|
1219
1225
|
<select class="w-100 ${gClass('select')}"
|
|
@@ -1256,13 +1262,75 @@ this.viewDialog({
|
|
|
1256
1262
|
})()}</span>
|
|
1257
1263
|
</button>
|
|
1258
1264
|
</div>
|
|
1265
|
+
${(()=>{
|
|
1266
|
+
try {
|
|
1267
|
+
vm.cartData.user_info.custom_form_delivery=vm.cartData.user_info.custom_form_delivery??{};
|
|
1268
|
+
const form_array = JSON.parse(JSON.stringify(this.getShipmentMethod(vm.cartData).find((dd:any)=>{
|
|
1269
|
+
return vm.cartData.user_info.shipment === dd.value
|
|
1270
|
+
}).form));
|
|
1271
|
+
form_array.map((dd: any) => {
|
|
1272
|
+
dd.col = '4';
|
|
1273
|
+
dd.form_config.title_style = {
|
|
1274
|
+
list: [
|
|
1275
|
+
{
|
|
1276
|
+
class: gClass('label') + ' mb-2',
|
|
1277
|
+
style: 'return `color:${glitter.share.globalValue[`theme_color.0.title`]} !important;font-size:16px !important;`',
|
|
1278
|
+
stylist: [],
|
|
1279
|
+
dataType: 'code',
|
|
1280
|
+
style_from: 'code',
|
|
1281
|
+
classDataType: 'static',
|
|
1282
|
+
},
|
|
1283
|
+
],
|
|
1284
|
+
class: 'form-label',
|
|
1285
|
+
style: 'font-size: 20px;font-style: normal;font-weight: 400;line-height: 140%; color:#393939 !important;',
|
|
1286
|
+
stylist: [],
|
|
1287
|
+
version: 'v2',
|
|
1288
|
+
dataType: 'static',
|
|
1289
|
+
style_from: 'code',
|
|
1290
|
+
classDataType: 'static',
|
|
1291
|
+
};
|
|
1292
|
+
dd.form_config.input_style = {
|
|
1293
|
+
list: [
|
|
1294
|
+
{
|
|
1295
|
+
class: gClass('input'),
|
|
1296
|
+
style: 'return `border-radius: ${widget.formData.radius}px !important;`',
|
|
1297
|
+
stylist: [],
|
|
1298
|
+
dataType: 'code',
|
|
1299
|
+
style_from: 'code',
|
|
1300
|
+
classDataType: 'static',
|
|
1301
|
+
},
|
|
1302
|
+
],
|
|
1303
|
+
class: ' mb-3',
|
|
1304
|
+
style: 'background: #FFF;',
|
|
1305
|
+
stylist: [],
|
|
1306
|
+
version: 'v2',
|
|
1307
|
+
dataType: 'static',
|
|
1308
|
+
style_from: 'code',
|
|
1309
|
+
classDataType: 'static',
|
|
1310
|
+
};
|
|
1311
|
+
});
|
|
1312
|
+
return [
|
|
1313
|
+
FormWidget.editorView({
|
|
1314
|
+
gvc: gvc,
|
|
1315
|
+
array: form_array,
|
|
1316
|
+
refresh: () => {
|
|
1317
|
+
this.storeLocalData(vm.cartData)
|
|
1318
|
+
},
|
|
1319
|
+
formData: vm.cartData.user_info.custom_form_delivery,
|
|
1320
|
+
})
|
|
1321
|
+
].join('');
|
|
1322
|
+
}catch (e) {
|
|
1323
|
+
console.log(e)
|
|
1324
|
+
return ``
|
|
1325
|
+
}
|
|
1326
|
+
})()}
|
|
1259
1327
|
</div>
|
|
1260
1328
|
</section>
|
|
1261
1329
|
<section class="${['UNIMARTC2C', 'FAMIC2C', 'HILIFEC2C', 'OKMARTC2C'].includes(vm.cartData.user_info.shipment) ? `` : `mt-4`}">
|
|
1262
1330
|
<div class="${gClass('banner-bgr')}">
|
|
1263
1331
|
<span class="${gClass('banner-text')}">顧客資料</span>
|
|
1264
1332
|
</div>
|
|
1265
|
-
<div class="row m-0 mt-3">
|
|
1333
|
+
<div class="row m-0 mt-3 mb-2">
|
|
1266
1334
|
${[{
|
|
1267
1335
|
name: '姓名',
|
|
1268
1336
|
key: 'name'
|
|
@@ -1922,7 +1990,10 @@ this.viewDialog({
|
|
|
1922
1990
|
})
|
|
1923
1991
|
}
|
|
1924
1992
|
<div class="w-100 d-flex align-items-center justify-content-end px-2 mt-3" >
|
|
1925
|
-
<button class="${gClass('button-bgr')}" onclick="${gvc.event(() => {
|
|
1993
|
+
<button class="${gClass('button-bgr')}" onclick="${gvc.event(async () => {
|
|
1994
|
+
if(!await this.checkFormData(vm.cartData,widget)){
|
|
1995
|
+
return
|
|
1996
|
+
}
|
|
1926
1997
|
['MerchantTradeNo', 'LogisticsSubType', 'CVSStoreID', 'CVSStoreName', 'CVSTelephone', 'CVSOutSide', 'ExtraData', 'CVSAddress'].map((dd) => {
|
|
1927
1998
|
if (gvc.glitter.getUrlParameter(dd)) {
|
|
1928
1999
|
vm.cartData.user_info[dd] = decodeURI(glitter.getUrlParameter(dd));
|
|
@@ -2093,6 +2164,113 @@ this.viewDialog({
|
|
|
2093
2164
|
})()
|
|
2094
2165
|
);
|
|
2095
2166
|
}
|
|
2167
|
+
//檢查資料
|
|
2168
|
+
public static checkFormData(cartData:any,widget:any){
|
|
2169
|
+
|
|
2170
|
+
|
|
2171
|
+
function checkEmailPattern(input:any) {
|
|
2172
|
+
const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
|
|
2173
|
+
return emailPattern.test(input);
|
|
2174
|
+
}
|
|
2175
|
+
|
|
2176
|
+
function checkPhonePattern(input:any) {
|
|
2177
|
+
const phonePattern = /^09\d{8}$/;
|
|
2178
|
+
return phonePattern.test(input);
|
|
2179
|
+
}
|
|
2180
|
+
|
|
2181
|
+
function checkReceiverPattern(input:any) {
|
|
2182
|
+
const receiverPattern = /^[\u4e00-\u9fa5]{2,5}|[a-zA-Z]{4,10}$/;
|
|
2183
|
+
return receiverPattern.test(input);
|
|
2184
|
+
}
|
|
2185
|
+
|
|
2186
|
+
function checkAddressPattern(input:any) {
|
|
2187
|
+
const addressPattern = /^.{6,60}$/;
|
|
2188
|
+
return addressPattern.test(input);
|
|
2189
|
+
}
|
|
2190
|
+
|
|
2191
|
+
return new Promise((resolve) => {
|
|
2192
|
+
let pass = true;
|
|
2193
|
+
const userData = cartData.customer_info;
|
|
2194
|
+
const subData=cartData.user_info;
|
|
2195
|
+
function checkString(text:any, errorMessage:any, type = '') {
|
|
2196
|
+
if ((pass && !text) || text === '') {
|
|
2197
|
+
pass = false;
|
|
2198
|
+
widget.event('error', { title: `請輸入「${errorMessage}」` });
|
|
2199
|
+
}
|
|
2200
|
+
if (pass && type === 'email' && !checkEmailPattern(text)) {
|
|
2201
|
+
pass = false;
|
|
2202
|
+
widget.event('error', { title: `「${errorMessage}」格式錯誤` });
|
|
2203
|
+
}
|
|
2204
|
+
if (pass && type === 'phone' && !checkPhonePattern(text)) {
|
|
2205
|
+
pass = false;
|
|
2206
|
+
widget.event('error', { title: `<div class="text-center">「${errorMessage}」格式錯誤<br/>請輸入 09 開頭的手機格式</div>` });
|
|
2207
|
+
}
|
|
2208
|
+
if (pass && type === 'name' && !checkReceiverPattern(text)) {
|
|
2209
|
+
pass = false;
|
|
2210
|
+
widget.event('error', { title: '姓名請設定為4~10字元(中文2~5個字, 英文4~10個字, 不得含指定特殊符號)' });
|
|
2211
|
+
}
|
|
2212
|
+
}
|
|
2213
|
+
|
|
2214
|
+
if (subData['shipment'] === 'normal' && (!subData['address'] || subData['address'] === '')) {
|
|
2215
|
+
widget.event('error', { title: '請輸入「配送地址」' });
|
|
2216
|
+
} else if (subData['shipment'] === 'normal' && !checkAddressPattern(subData['address'])) {
|
|
2217
|
+
widget.event('error', { title: '地址長度需大於6個字元,且不可超過60個字元' });
|
|
2218
|
+
} else if (['UNIMARTC2C', 'FAMIC2C', 'HILIFEC2C', 'OKMARTC2C'].includes(subData['shipment']) && (!subData['CVSStoreName'] || subData['CVSStoreName'] === '')) {
|
|
2219
|
+
widget.event('error', { title: '請選擇「配送門市」' });
|
|
2220
|
+
} else if ((()=>{
|
|
2221
|
+
const form= this.getShipmentMethod(cartData).find((dd:any)=>{
|
|
2222
|
+
return dd.value===subData['shipment']
|
|
2223
|
+
}).form;
|
|
2224
|
+
return FormWidget.checkLeakData(form,subData.custom_form_delivery);
|
|
2225
|
+
})()) {
|
|
2226
|
+
const form= this.getShipmentMethod(cartData).find((dd:any)=>{
|
|
2227
|
+
return dd.value===subData['shipment']
|
|
2228
|
+
}).form;
|
|
2229
|
+
widget.event('error', { title: `請輸入「${FormWidget.checkLeakData(form,subData)}」` });
|
|
2230
|
+
} else if ((()=>{
|
|
2231
|
+
return FormWidget.checkLeakData(cartData.custom_form_format,cartData.custom_form_data);
|
|
2232
|
+
})()){
|
|
2233
|
+
widget.event('error', { title: `請輸入「${FormWidget.checkLeakData(cartData.custom_form_format,cartData.custom_form_data)}」` });
|
|
2234
|
+
}else if(
|
|
2235
|
+
cartData.voucherList
|
|
2236
|
+
.filter((dd:any) => {
|
|
2237
|
+
return dd.reBackType === 'giveaway';
|
|
2238
|
+
})
|
|
2239
|
+
.find((dd:any) => {
|
|
2240
|
+
return !dd.select_gif.id;
|
|
2241
|
+
})
|
|
2242
|
+
) {
|
|
2243
|
+
widget.event('error', { title: '請選擇「贈品」' });
|
|
2244
|
+
} else {
|
|
2245
|
+
checkString(userData.name, '顧客姓名', 'name');
|
|
2246
|
+
checkString(userData.phone, '顧客電話', 'phone');
|
|
2247
|
+
checkString(userData.email, '顧客信箱', 'email');
|
|
2248
|
+
checkString(subData.name, '收件人姓名', 'name');
|
|
2249
|
+
checkString(subData.phone, '收件人電話', 'phone');
|
|
2250
|
+
checkString(subData.email, '收件人信箱', 'email');
|
|
2251
|
+
if (pass) {
|
|
2252
|
+
if ((window as any).gtag) {
|
|
2253
|
+
(window as any).gtag('event', 'begin_checkout', {
|
|
2254
|
+
currency: 'TWD',
|
|
2255
|
+
value: cartData.total,
|
|
2256
|
+
coupon: cartData.code ?? '',
|
|
2257
|
+
items: cartData.lineItems.map((item:any) => {
|
|
2258
|
+
return {
|
|
2259
|
+
item_id: item.id,
|
|
2260
|
+
item_name: item.title,
|
|
2261
|
+
item_variant: item.spec.join('-'),
|
|
2262
|
+
price: item.sale_price,
|
|
2263
|
+
quantity: item.count,
|
|
2264
|
+
discount: item.discount_price,
|
|
2265
|
+
};
|
|
2266
|
+
}),
|
|
2267
|
+
});
|
|
2268
|
+
}
|
|
2269
|
+
resolve(subData);
|
|
2270
|
+
}
|
|
2271
|
+
}
|
|
2272
|
+
});
|
|
2273
|
+
}
|
|
2096
2274
|
//彈出視窗
|
|
2097
2275
|
public static viewDialog(obj: { gvc: GVC; tag: string; title?: string; innerHTML: (gvc: GVC) => string }) {
|
|
2098
2276
|
return obj.gvc.glitter.innerDialog((gvc: GVC) => {
|
package/package.json
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.AutoSendEmail = void 0;
|
|
4
4
|
const user_js_1 = require("../services/user.js");
|
|
5
5
|
const mail_js_1 = require("../services/mail.js");
|
|
6
|
+
const app_js_1 = require("../../services/app.js");
|
|
6
7
|
class AutoSendEmail {
|
|
7
8
|
static async getDefCompare(app, tag) {
|
|
8
9
|
var _a;
|
|
@@ -494,11 +495,12 @@ class AutoSendEmail {
|
|
|
494
495
|
}
|
|
495
496
|
static async customerOrder(app, tag, order_id, email) {
|
|
496
497
|
const customerMail = await this.getDefCompare(app, tag);
|
|
498
|
+
const brandAndMemberType = await app_js_1.App.checkBrandAndMemberType(app);
|
|
497
499
|
if (customerMail.toggle) {
|
|
498
500
|
await new mail_js_1.Mail(app).postMail({
|
|
499
501
|
name: customerMail.name,
|
|
500
|
-
title: customerMail.title.replace(/@\{\{訂單號碼\}\}/g, order_id),
|
|
501
|
-
content: customerMail.content.replace(/@\{\{訂單號碼\}\}/g, order_id),
|
|
502
|
+
title: customerMail.title.replace(/@\{\{訂單號碼\}\}/g, `<a href="https://${brandAndMemberType.domain}/order_detail?cart_token=${order_id}">${order_id}</a>`),
|
|
503
|
+
content: customerMail.content.replace(/@\{\{訂單號碼\}\}/g, `<a href="https://${brandAndMemberType.domain}/order_detail?cart_token=${order_id}">${order_id}</a>`),
|
|
502
504
|
email: [email],
|
|
503
505
|
type: tag,
|
|
504
506
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-send-email.js","sourceRoot":"","sources":["auto-send-email.ts"],"names":[],"mappings":";;;AAAA,iDAA2C;AAC3C,iDAA2C;
|
|
1
|
+
{"version":3,"file":"auto-send-email.js","sourceRoot":"","sources":["auto-send-email.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { User } from '../services/user.js';
|
|
2
2
|
import { Mail } from '../services/mail.js';
|
|
3
|
+
import {App} from "../../services/app.js";
|
|
3
4
|
|
|
4
5
|
export class AutoSendEmail {
|
|
5
6
|
public static async getDefCompare(app: string, tag: string) {
|
|
@@ -494,11 +495,12 @@ export class AutoSendEmail {
|
|
|
494
495
|
|
|
495
496
|
public static async customerOrder(app: string, tag: string, order_id: string, email: string) {
|
|
496
497
|
const customerMail = await this.getDefCompare(app, tag);
|
|
498
|
+
const brandAndMemberType = await App.checkBrandAndMemberType(app);
|
|
497
499
|
if (customerMail.toggle) {
|
|
498
500
|
await new Mail(app).postMail({
|
|
499
501
|
name: customerMail.name,
|
|
500
|
-
title: customerMail.title.replace(/@\{\{訂單號碼\}\}/g, order_id),
|
|
501
|
-
content: customerMail.content.replace(/@\{\{訂單號碼\}\}/g, order_id),
|
|
502
|
+
title: customerMail.title.replace(/@\{\{訂單號碼\}\}/g, `<a href="https://${brandAndMemberType.domain}/order_detail?cart_token=${order_id}">${order_id}</a>`),
|
|
503
|
+
content: customerMail.content.replace(/@\{\{訂單號碼\}\}/g, `<a href="https://${brandAndMemberType.domain}/order_detail?cart_token=${order_id}">${order_id}</a>`),
|
|
502
504
|
email: [email],
|
|
503
505
|
type: tag,
|
|
504
506
|
});
|
|
@@ -63,7 +63,7 @@ class SMS {
|
|
|
63
63
|
await this.usePoints({
|
|
64
64
|
message: obj.data,
|
|
65
65
|
user_count: 1,
|
|
66
|
-
order_id: obj.order_id,
|
|
66
|
+
order_id: obj.order_id + '_' + (await tool_js_1.default.randomNumber(4)),
|
|
67
67
|
phone: obj.phone,
|
|
68
68
|
});
|
|
69
69
|
return new Promise((resolve, reject) => {
|
|
@@ -92,6 +92,7 @@ class SMS {
|
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
catch (e) {
|
|
95
|
+
console.log(`error`, e);
|
|
95
96
|
throw exception_js_1.default.BadRequestError('BAD_REQUEST', 'send SNS Error:' + e, null);
|
|
96
97
|
}
|
|
97
98
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms.js","sourceRoot":"","sources":["sms.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sms.js","sourceRoot":"","sources":["sms.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,11 +86,12 @@ export class SMS {
|
|
|
86
86
|
},
|
|
87
87
|
data: snsData,
|
|
88
88
|
};
|
|
89
|
+
|
|
89
90
|
//扣除點數
|
|
90
91
|
await this.usePoints({
|
|
91
92
|
message: obj.data,
|
|
92
93
|
user_count: 1,
|
|
93
|
-
order_id: obj.order_id,
|
|
94
|
+
order_id: obj.order_id+'_'+(await Tool.randomNumber(4)),
|
|
94
95
|
phone: obj.phone,
|
|
95
96
|
});
|
|
96
97
|
return new Promise<boolean>((resolve, reject) => {
|
|
@@ -118,6 +119,7 @@ export class SMS {
|
|
|
118
119
|
return false;
|
|
119
120
|
}
|
|
120
121
|
} catch (e) {
|
|
122
|
+
console.log(`error`,e)
|
|
121
123
|
throw exception.BadRequestError('BAD_REQUEST', 'send SNS Error:' + e, null);
|
|
122
124
|
}
|
|
123
125
|
}
|
|
@@ -322,6 +324,7 @@ export class SMS {
|
|
|
322
324
|
}
|
|
323
325
|
let total = this.getUsePoints(obj.message, obj.user_count);
|
|
324
326
|
const brandAndMemberType = await App.checkBrandAndMemberType(this.app);
|
|
327
|
+
|
|
325
328
|
await db.query(
|
|
326
329
|
`insert into \`${brandAndMemberType.brand}\`.t_sms_points
|
|
327
330
|
set ?`,
|