jufubao-base 1.0.400 → 1.0.401-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/components/JfbBaseCardEntry/Api.js +8 -0
- package/src/components/JfbBaseCardEntry/Attr.js +73 -0
- package/src/components/JfbBaseCardEntry/JfbBaseCardEntry.vue +173 -7
- package/src/components/JfbBaseCardEntry/Mock.js +1 -0
- package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +46 -0
- package/src/components/JfbBaseSuccess/JfbBaseSuccess.vue +47 -0
- package/get.package.path.js +0 -22
package/package.json
CHANGED
|
@@ -320,6 +320,17 @@ export default {
|
|
|
320
320
|
{ label: "一行滑块展示", value: "one" }
|
|
321
321
|
]
|
|
322
322
|
},
|
|
323
|
+
{
|
|
324
|
+
label: "是否展示plus权益:",
|
|
325
|
+
ele: "xd-radio",
|
|
326
|
+
valueKey: "isShowPlus",
|
|
327
|
+
groupKey:'content',
|
|
328
|
+
value: data.isShowPlus || "N",
|
|
329
|
+
list: [
|
|
330
|
+
{ label: "展示", value: "Y" },
|
|
331
|
+
{ label: "隐藏", value: "N" }
|
|
332
|
+
]
|
|
333
|
+
},
|
|
323
334
|
{
|
|
324
335
|
label: "二维码文案",
|
|
325
336
|
ele: "el-input",
|
|
@@ -561,6 +572,68 @@ export default {
|
|
|
561
572
|
});
|
|
562
573
|
},
|
|
563
574
|
},
|
|
575
|
+
{
|
|
576
|
+
ele: "title",
|
|
577
|
+
label: "plus权益样式配置",
|
|
578
|
+
size: "small",
|
|
579
|
+
groupKey: "style",
|
|
580
|
+
hidden: data.isShowPlus !== 'Y',
|
|
581
|
+
},
|
|
582
|
+
{
|
|
583
|
+
label: "列表项背景图:",
|
|
584
|
+
ele: "xd-upload",
|
|
585
|
+
valueKey: "plusItemBgImage",
|
|
586
|
+
groupKey:'style',
|
|
587
|
+
value: data.plusItemBgImage || {},
|
|
588
|
+
defaultValue: data.plusItemBgImage || null,
|
|
589
|
+
slot: true,
|
|
590
|
+
type: ['jpg', 'png', 'jpeg'],
|
|
591
|
+
styleType: 'one',
|
|
592
|
+
uploadType: 'aliyun',
|
|
593
|
+
size: 5,
|
|
594
|
+
action: 'action',
|
|
595
|
+
oneWidth: 375,
|
|
596
|
+
oneHeight: 120,
|
|
597
|
+
sort: true,
|
|
598
|
+
hidden: data.isShowPlus !== 'Y',
|
|
599
|
+
inline: true,
|
|
600
|
+
},
|
|
601
|
+
{
|
|
602
|
+
label: "套餐名称颜色:",
|
|
603
|
+
ele: "xd-color",
|
|
604
|
+
valueKey: "plusPackageNameColor",
|
|
605
|
+
groupKey:'style',
|
|
606
|
+
value: data.plusPackageNameColor || '#8C530D',
|
|
607
|
+
hidden: data.isShowPlus !== 'Y',
|
|
608
|
+
inline: true,
|
|
609
|
+
},
|
|
610
|
+
{
|
|
611
|
+
label: "兑换有效期颜色:",
|
|
612
|
+
ele: "xd-color",
|
|
613
|
+
valueKey: "plusValidDateColor",
|
|
614
|
+
groupKey:'style',
|
|
615
|
+
value: data.plusValidDateColor || '#A8630D',
|
|
616
|
+
hidden: data.isShowPlus !== 'Y',
|
|
617
|
+
inline: true,
|
|
618
|
+
},
|
|
619
|
+
{
|
|
620
|
+
label: "按钮文字颜色:",
|
|
621
|
+
ele: "xd-color",
|
|
622
|
+
valueKey: "plusBtnTextColor",
|
|
623
|
+
groupKey:'style',
|
|
624
|
+
value: data.plusBtnTextColor || '#A8630D',
|
|
625
|
+
hidden: data.isShowPlus !== 'Y',
|
|
626
|
+
inline: true,
|
|
627
|
+
},
|
|
628
|
+
{
|
|
629
|
+
label: "按钮背景颜色:",
|
|
630
|
+
ele: "xd-gradient-color",
|
|
631
|
+
valueKey: "plusBtnBgColor",
|
|
632
|
+
groupKey:'style',
|
|
633
|
+
value: data.plusBtnBgColor || 'linear-gradient(90deg, #FFF6E5 0%, #FEE4AA 100%)',
|
|
634
|
+
hidden: data.isShowPlus !== 'Y',
|
|
635
|
+
inline: true,
|
|
636
|
+
},
|
|
564
637
|
]
|
|
565
638
|
},
|
|
566
639
|
};
|
|
@@ -116,6 +116,14 @@
|
|
|
116
116
|
background: tabIndex === 2 ? mainColor : '#fff',
|
|
117
117
|
}"
|
|
118
118
|
>优惠券</view>
|
|
119
|
+
<view
|
|
120
|
+
v-if="isShowPlus === 'Y'"
|
|
121
|
+
@click="tabIndex = 3"
|
|
122
|
+
:style="{
|
|
123
|
+
color: tabIndex === 3 ? '#fff' : '#B8B7BE',
|
|
124
|
+
background: tabIndex === 3 ? mainColor : '#fff',
|
|
125
|
+
}"
|
|
126
|
+
>plus权益</view>
|
|
119
127
|
</view>
|
|
120
128
|
<view class="jfb-base-card-entry__body-sub-tab" v-if="tabIndex === 1">
|
|
121
129
|
<view :style="{
|
|
@@ -335,6 +343,35 @@
|
|
|
335
343
|
<view v-else>暂无数据</view>
|
|
336
344
|
</view>
|
|
337
345
|
<!--content coupon-->
|
|
346
|
+
<!--content plus-->
|
|
347
|
+
<view v-if="tabIndex === 3 && plusList && plusList.length > 0" class="jfb-base-card-entry__body-plus">
|
|
348
|
+
<view class="jfb-base-card-entry__body-plus-list">
|
|
349
|
+
<view
|
|
350
|
+
class="jfb-base-card-entry__body-plus-item"
|
|
351
|
+
v-for="(item, idx) in plusList"
|
|
352
|
+
:key="idx"
|
|
353
|
+
@click="handlePlusClick(item)"
|
|
354
|
+
:style="{
|
|
355
|
+
backgroundImage: plusItemBgImageUrl ? 'url(' + plusItemBgImageUrl + ')' : '',
|
|
356
|
+
backgroundSize: '100% 100%',
|
|
357
|
+
}"
|
|
358
|
+
>
|
|
359
|
+
<view class="jfb-base-card-entry__body-plus-item-top">
|
|
360
|
+
<view class="jfb-base-card-entry__body-plus-item-name" :style="{ color: plusPackageNameColor }">{{ item.plus_product_name }}</view>
|
|
361
|
+
<view
|
|
362
|
+
class="jfb-base-card-entry__body-plus-item-btn"
|
|
363
|
+
:class="{ redeemed: item.button_text === '去使用' }"
|
|
364
|
+
:style="{
|
|
365
|
+
color: plusBtnTextColor,
|
|
366
|
+
background: item.button_text === '去使用' ? '' : plusBtnBgColor,
|
|
367
|
+
}"
|
|
368
|
+
>{{ item.button_text }}</view>
|
|
369
|
+
</view>
|
|
370
|
+
<view class="jfb-base-card-entry__body-plus-item-date" :style="{ color: plusValidDateColor }">兑换有效期:{{ item.end_time | formatTimestamp }}</view>
|
|
371
|
+
</view>
|
|
372
|
+
</view>
|
|
373
|
+
</view>
|
|
374
|
+
<!--content plus-->
|
|
338
375
|
<!--no data-->
|
|
339
376
|
<view v-else-if="cardList !== null && cardList.length === 0">
|
|
340
377
|
<view class="jfb-base-card-entry__body-empty">
|
|
@@ -522,6 +559,14 @@ export default {
|
|
|
522
559
|
cutstr(val){
|
|
523
560
|
if(typeof val.entry_name === 'string') return val.entry_name.slice(0,4);
|
|
524
561
|
return ''
|
|
562
|
+
},
|
|
563
|
+
formatTimestamp(val) {
|
|
564
|
+
if (!val) return '';
|
|
565
|
+
const date = new Date(Number(val) * 1000);
|
|
566
|
+
const y = date.getFullYear();
|
|
567
|
+
const m = String(date.getMonth() + 1).padStart(2, '0');
|
|
568
|
+
const d = String(date.getDate()).padStart(2, '0');
|
|
569
|
+
return `${y}-${m}-${d}`;
|
|
525
570
|
}
|
|
526
571
|
},
|
|
527
572
|
watch: {
|
|
@@ -627,6 +672,14 @@ export default {
|
|
|
627
672
|
buy_name: "",
|
|
628
673
|
code_name: "",
|
|
629
674
|
bussShowType: "",
|
|
675
|
+
isShowPlus: 'N',
|
|
676
|
+
plusList: [],
|
|
677
|
+
plusItemBgImage: {},
|
|
678
|
+
plusItemBgImageUrl: '',
|
|
679
|
+
plusPackageNameColor: '',
|
|
680
|
+
plusValidDateColor: '',
|
|
681
|
+
plusBtnTextColor: '',
|
|
682
|
+
plusBtnBgColor: '',
|
|
630
683
|
};
|
|
631
684
|
},
|
|
632
685
|
created() {
|
|
@@ -690,11 +743,18 @@ export default {
|
|
|
690
743
|
let bussShowType = getContainerPropsValue(container, "content.bussShowType", "one");
|
|
691
744
|
if(this.isPreview) {
|
|
692
745
|
this.tabIndex = this.isShowCoupon==='Y'?2:1;
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
746
|
+
}
|
|
747
|
+
this.isShowPlus = getContainerPropsValue(container, "content.isShowPlus", "N");
|
|
748
|
+
let plusItemBgImage = getContainerPropsValue(container, "content.plusItemBgImage", '');
|
|
749
|
+
this.plusItemBgImageUrl = plusItemBgImage ? getServiceUrl(plusItemBgImage.url) : '';
|
|
750
|
+
this.plusPackageNameColor = getContainerPropsValue(container, "content.plusPackageNameColor", '#8C530D');
|
|
751
|
+
this.plusValidDateColor = getContainerPropsValue(container, "content.plusValidDateColor", '#A8630D');
|
|
752
|
+
this.plusBtnTextColor = getContainerPropsValue(container, "content.plusBtnTextColor", '#A8630D');
|
|
753
|
+
this.plusBtnBgColor = getContainerPropsValue(container, "content.plusBtnBgColor", 'linear-gradient(90deg, #FFF6E5 0%, #FEE4AA 100%)');
|
|
754
|
+
if(this.bussShowType !== bussShowType){
|
|
755
|
+
this.clearDefault();
|
|
756
|
+
this.cardPageNum = 0;
|
|
757
|
+
this.onJfbLoad(this.options);
|
|
698
758
|
}
|
|
699
759
|
this.bussShowType = bussShowType;
|
|
700
760
|
},
|
|
@@ -788,7 +848,8 @@ export default {
|
|
|
788
848
|
* @param item
|
|
789
849
|
* @param entry
|
|
790
850
|
*/
|
|
791
|
-
handleBindLogin(item
|
|
851
|
+
handleBindLogin(item, entry) {
|
|
852
|
+
debugger
|
|
792
853
|
//卡券登录
|
|
793
854
|
if (this.tabIndex === 1 || this.tabIndex === 2) {
|
|
794
855
|
if (item["is_valid"] !== "Y") {
|
|
@@ -915,8 +976,10 @@ export default {
|
|
|
915
976
|
this.getContent();
|
|
916
977
|
if(this.tabIndex===1) {
|
|
917
978
|
this.getCardList(options);
|
|
918
|
-
} else {
|
|
979
|
+
} else if(this.tabIndex===2) {
|
|
919
980
|
this.getCouponList(options);
|
|
981
|
+
} else if(this.tabIndex===3) {
|
|
982
|
+
this.getPlusList(options);
|
|
920
983
|
}
|
|
921
984
|
},
|
|
922
985
|
|
|
@@ -948,6 +1011,51 @@ export default {
|
|
|
948
1011
|
|
|
949
1012
|
},
|
|
950
1013
|
|
|
1014
|
+
getPlusList(options) {
|
|
1015
|
+
this.$xdShowLoading({});
|
|
1016
|
+
let params = {}
|
|
1017
|
+
if(this.entryGroupId) params['group_id'] = this.entryGroupId;
|
|
1018
|
+
jfbRootExec("getListPlusCouponRights", {
|
|
1019
|
+
vm: this,
|
|
1020
|
+
data: params
|
|
1021
|
+
})
|
|
1022
|
+
.then((res) => {
|
|
1023
|
+
this.loadingCardList = false;
|
|
1024
|
+
//过滤入口配置
|
|
1025
|
+
res['site_entry_settings'] = this.filterNotSupportEntry(res['site_entry_settings']);
|
|
1026
|
+
let newList = this.$xdUniHelper.cloneDeep(res.list || []);
|
|
1027
|
+
this.plusList = this.getCardGroupItem(newList, res['site_entry_settings']);
|
|
1028
|
+
this.$xdHideLoading();
|
|
1029
|
+
})
|
|
1030
|
+
.catch(() => {
|
|
1031
|
+
this.loadingCardList = false;
|
|
1032
|
+
this.$xdHideLoading();
|
|
1033
|
+
});
|
|
1034
|
+
},
|
|
1035
|
+
|
|
1036
|
+
handlePlusClick(item) {
|
|
1037
|
+
if (!item.entries || item.entries.length === 0) return;
|
|
1038
|
+
let entry = item.entries[0];
|
|
1039
|
+
let redirectData = entry.redirect_data;
|
|
1040
|
+
let site_path = redirectData.path;
|
|
1041
|
+
jfbRootExec("getBaseByIdCardDetail", {
|
|
1042
|
+
vm: this,
|
|
1043
|
+
data: {
|
|
1044
|
+
card_number: item.card_number
|
|
1045
|
+
}
|
|
1046
|
+
}).then(res => {
|
|
1047
|
+
let code_content = this.getParams(res.card_qrcode, "code_content")
|
|
1048
|
+
let sitePath = `${site_path}?ecode=${Base64.encodeURI(code_content)}`;
|
|
1049
|
+
sitePath = `${sitePath}&is_return_is_used=Y`
|
|
1050
|
+
let sitePathPre = sitePath.split("?")[0];
|
|
1051
|
+
let sitePathAfter = sitePath.split("?")[1];
|
|
1052
|
+
sitePath = `${sitePathPre}?ecode-params=${Base64.encodeURI(sitePathAfter)}`;
|
|
1053
|
+
this.$xdUniHelper.redirectTo({
|
|
1054
|
+
url: sitePath,
|
|
1055
|
+
});
|
|
1056
|
+
})
|
|
1057
|
+
},
|
|
1058
|
+
|
|
951
1059
|
getCardList(options) {
|
|
952
1060
|
let params = {is_all: 'Y', is_show_entry_settings: 'Y', show_type: 'normal'};
|
|
953
1061
|
if(options['jfb_business_code']) {
|
|
@@ -1188,6 +1296,64 @@ export default {
|
|
|
1188
1296
|
}
|
|
1189
1297
|
}
|
|
1190
1298
|
|
|
1299
|
+
.jfb-base-card-entry__body-plus {
|
|
1300
|
+
padding: 0 0 30rpx;
|
|
1301
|
+
|
|
1302
|
+
&-header {
|
|
1303
|
+
font-size: 28rpx;
|
|
1304
|
+
color: #666;
|
|
1305
|
+
margin-bottom: 20rpx;
|
|
1306
|
+
|
|
1307
|
+
&-num {
|
|
1308
|
+
color: #333;
|
|
1309
|
+
font-weight: 700;
|
|
1310
|
+
font-size: 32rpx;
|
|
1311
|
+
}
|
|
1312
|
+
}
|
|
1313
|
+
|
|
1314
|
+
&-list {
|
|
1315
|
+
display: flex;
|
|
1316
|
+
flex-direction: column;
|
|
1317
|
+
gap: 24rpx;
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1320
|
+
&-item {
|
|
1321
|
+
padding: 30rpx 40rpx;
|
|
1322
|
+
background: #fff;
|
|
1323
|
+
border-radius: 16rpx;
|
|
1324
|
+
box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
|
|
1325
|
+
|
|
1326
|
+
&-top {
|
|
1327
|
+
display: flex;
|
|
1328
|
+
align-items: center;
|
|
1329
|
+
justify-content: space-between;
|
|
1330
|
+
}
|
|
1331
|
+
|
|
1332
|
+
&-name {
|
|
1333
|
+
font-size: 32rpx;
|
|
1334
|
+
font-weight: 500;
|
|
1335
|
+
color: #8C530D;
|
|
1336
|
+
}
|
|
1337
|
+
|
|
1338
|
+
&-date {
|
|
1339
|
+
font-size: 28rpx;
|
|
1340
|
+
color: #A8630D;
|
|
1341
|
+
margin-top: 72rpx;
|
|
1342
|
+
}
|
|
1343
|
+
|
|
1344
|
+
&-btn {
|
|
1345
|
+
flex-shrink: 0;
|
|
1346
|
+
margin-left: 20rpx;
|
|
1347
|
+
padding: 12rpx 36rpx;
|
|
1348
|
+
font-size: 32rpx;
|
|
1349
|
+
color: #A8630D;
|
|
1350
|
+
border-radius: 54rpx;
|
|
1351
|
+
text-align: center;
|
|
1352
|
+
background: linear-gradient(90deg, #FFF6E5 0%, #FEE4AA 100%);
|
|
1353
|
+
}
|
|
1354
|
+
}
|
|
1355
|
+
}
|
|
1356
|
+
|
|
1191
1357
|
.card-list {
|
|
1192
1358
|
overflow: hidden;
|
|
1193
1359
|
border-radius: unit(16, rpx);
|
|
@@ -281,4 +281,5 @@ module.exports = {
|
|
|
281
281
|
"card_expire_in": 56760,
|
|
282
282
|
"request_id": "8fde2506c426a55d"
|
|
283
283
|
},
|
|
284
|
+
getListPlusCouponRights:{ "total_size": 1, "list": [{ "card_number": "101001000141415", "card_type_name": "聚福宝福卡(点12位)", "plus_product_id": 60038520, "plus_product_name": "体验卡7天", "start_time": 1754841600, "end_time": 1800547199, "exchange_expire_time": 1800547099, "exchange_status": "N", "exchange_status_name": "未兑换", "business_codes": ["market", "cake"], "exchange_card_numbers": "", "exchange_time": 0, "button_text": "去兑换" }], "request_id": "f2043ea4806956cb" }
|
|
284
285
|
}
|
|
@@ -330,6 +330,15 @@
|
|
|
330
330
|
<text>{{ codeRefreshMinute }}分{{ codeRefreshSecond }}秒后自动刷新</text>
|
|
331
331
|
<xd-font-icon icon="iconmian-loading" size="24" color="#999"></xd-font-icon>
|
|
332
332
|
</view>
|
|
333
|
+
<!-- 预约按钮 -->
|
|
334
|
+
<view v-if="info.codes[0].reservation_buttons && info.codes[0].reservation_buttons.length > 0" class="jfb-base-order-detail__body-reserve">
|
|
335
|
+
<view
|
|
336
|
+
v-for="(btn, idx) in info.codes[0].reservation_buttons"
|
|
337
|
+
:key="idx"
|
|
338
|
+
class="jfb-base-order-detail__body-reserve-btn"
|
|
339
|
+
@click="handleReservationJump(btn.url)"
|
|
340
|
+
>{{ btn.name }}</view>
|
|
341
|
+
</view>
|
|
333
342
|
</view>
|
|
334
343
|
<!--单条条形码或者二维码-->
|
|
335
344
|
<!--其他情况显示-->
|
|
@@ -497,6 +506,15 @@
|
|
|
497
506
|
<text>{{ codeRefreshMinute }}分{{ codeRefreshSecond }}秒后自动刷新</text>
|
|
498
507
|
<xd-font-icon icon="iconmian-loading" size="24" color="#999"></xd-font-icon>
|
|
499
508
|
</view>
|
|
509
|
+
<!-- 预约按钮 -->
|
|
510
|
+
<view v-if="item.reservation_buttons && item.reservation_buttons.length > 0" class="jfb-base-order-detail__body-reserve">
|
|
511
|
+
<view
|
|
512
|
+
v-for="(btn, idx) in item.reservation_buttons"
|
|
513
|
+
:key="idx"
|
|
514
|
+
class="jfb-base-order-detail__body-reserve-btn"
|
|
515
|
+
@click="handleReservationJump(btn.url)"
|
|
516
|
+
>{{ btn.name }}</view>
|
|
517
|
+
</view>
|
|
500
518
|
</view>
|
|
501
519
|
</view>
|
|
502
520
|
<!--其他情况显示-->
|
|
@@ -1761,6 +1779,18 @@ export default {
|
|
|
1761
1779
|
});
|
|
1762
1780
|
}
|
|
1763
1781
|
},
|
|
1782
|
+
handleReservationJump(url) {
|
|
1783
|
+
let reg = /^(http:\/\/|https:\/\/|\/\/)+.+$/;
|
|
1784
|
+
if (reg.test(url)) {
|
|
1785
|
+
this.$xdUniHelper.redirectTo({
|
|
1786
|
+
url: url,
|
|
1787
|
+
});
|
|
1788
|
+
} else {
|
|
1789
|
+
this.$xdAlert({
|
|
1790
|
+
content: "访问路径格式错误!",
|
|
1791
|
+
});
|
|
1792
|
+
}
|
|
1793
|
+
},
|
|
1764
1794
|
handleToPay(item) {
|
|
1765
1795
|
//餐饮固定逻辑
|
|
1766
1796
|
if (this.$configProject.type === "food") {
|
|
@@ -2849,6 +2879,22 @@ export default {
|
|
|
2849
2879
|
color: #999;
|
|
2850
2880
|
}
|
|
2851
2881
|
|
|
2882
|
+
&-reserve {
|
|
2883
|
+
display: flex;
|
|
2884
|
+
flex-wrap: wrap;
|
|
2885
|
+
gap: 16rpx;
|
|
2886
|
+
margin-top: 20rpx;
|
|
2887
|
+
}
|
|
2888
|
+
|
|
2889
|
+
&-reserve-btn {
|
|
2890
|
+
flex: 1;
|
|
2891
|
+
min-width: 0;
|
|
2892
|
+
text-align: center;
|
|
2893
|
+
font-size: 28rpx;
|
|
2894
|
+
color: #2A82E4;
|
|
2895
|
+
text-decoration: underline;
|
|
2896
|
+
}
|
|
2897
|
+
|
|
2852
2898
|
}
|
|
2853
2899
|
.ticket_method_msg {
|
|
2854
2900
|
background-color: #FFEAE6;
|
|
@@ -141,6 +141,15 @@
|
|
|
141
141
|
<text>{{ codeRefreshMinute }}分{{ codeRefreshSecond }}秒后自动刷新</text>
|
|
142
142
|
<xd-font-icon icon="iconmian-loading" size="24" color="#999"></xd-font-icon>
|
|
143
143
|
</view>
|
|
144
|
+
<!-- 预约按钮 -->
|
|
145
|
+
<view v-if="info.codes[0].reservation_buttons && info.codes[0].reservation_buttons.length > 0" class="jfb-base-success__body-reserve">
|
|
146
|
+
<view
|
|
147
|
+
v-for="(btn, idx) in info.codes[0].reservation_buttons"
|
|
148
|
+
:key="idx"
|
|
149
|
+
class="jfb-base-success__body-reserve-btn"
|
|
150
|
+
@click="handleReservationJump(btn.url)"
|
|
151
|
+
>{{ btn.name }}</view>
|
|
152
|
+
</view>
|
|
144
153
|
</view>
|
|
145
154
|
<view v-else>
|
|
146
155
|
<view
|
|
@@ -317,6 +326,15 @@
|
|
|
317
326
|
<text>{{ codeRefreshMinute }}分{{ codeRefreshSecond }}秒后自动刷新</text>
|
|
318
327
|
<xd-font-icon icon="iconmian-loading" size="24" color="#999"></xd-font-icon>
|
|
319
328
|
</view>
|
|
329
|
+
<!-- 预约按钮 -->
|
|
330
|
+
<view v-if="item.reservation_buttons && item.reservation_buttons.length > 0" class="jfb-base-success__body-reserve">
|
|
331
|
+
<view
|
|
332
|
+
v-for="(btn, idx) in item.reservation_buttons"
|
|
333
|
+
:key="idx"
|
|
334
|
+
class="jfb-base-success__body-reserve-btn"
|
|
335
|
+
@click="handleToLink(btn.url)"
|
|
336
|
+
>{{ btn.name }}</view>
|
|
337
|
+
</view>
|
|
320
338
|
</view>
|
|
321
339
|
</view>
|
|
322
340
|
</view>
|
|
@@ -551,6 +569,20 @@ export default {
|
|
|
551
569
|
}
|
|
552
570
|
},
|
|
553
571
|
|
|
572
|
+
handleReservationJump(url) {
|
|
573
|
+
if (this.$configProject.isPreview) return;
|
|
574
|
+
let reg = /^(http:\/\/|https:\/\/|\/\/)+.+$/;
|
|
575
|
+
if (reg.test(url)) {
|
|
576
|
+
this.$xdUniHelper.redirectTo({
|
|
577
|
+
url: url,
|
|
578
|
+
});
|
|
579
|
+
} else {
|
|
580
|
+
this.$xdAlert({
|
|
581
|
+
content: "访问路径格式错误!",
|
|
582
|
+
});
|
|
583
|
+
}
|
|
584
|
+
},
|
|
585
|
+
|
|
554
586
|
/**
|
|
555
587
|
* @description 监听事件变化
|
|
556
588
|
* @param value {object} 业务组件对象自己
|
|
@@ -1007,6 +1039,21 @@ export default {
|
|
|
1007
1039
|
}
|
|
1008
1040
|
}
|
|
1009
1041
|
}
|
|
1042
|
+
&-reserve {
|
|
1043
|
+
display: flex;
|
|
1044
|
+
flex-wrap: wrap;
|
|
1045
|
+
gap: 16rpx;
|
|
1046
|
+
margin-top: 20rpx;
|
|
1047
|
+
|
|
1048
|
+
&-btn {
|
|
1049
|
+
flex: 1;
|
|
1050
|
+
min-width: 0;
|
|
1051
|
+
text-align: center;
|
|
1052
|
+
font-size: 28rpx;
|
|
1053
|
+
color: #2A82E4;
|
|
1054
|
+
text-decoration: underline;
|
|
1055
|
+
}
|
|
1056
|
+
}
|
|
1010
1057
|
&-cashier {
|
|
1011
1058
|
&-code {
|
|
1012
1059
|
font-size: unit(32, rpx);
|
package/get.package.path.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* @description 第三方库
|
|
5
|
-
* @param threePackagePath {String} 第三方库所在项目路径存放路径路
|
|
6
|
-
* @param packname {String} 包名字
|
|
7
|
-
* @returns {string|*}
|
|
8
|
-
*/
|
|
9
|
-
const getPackagePath = (threePackagePath, packname = 'gxd-commands-bussiness')=>{
|
|
10
|
-
if(packname === 'gxd-commands-bussiness') {
|
|
11
|
-
return `/Users/shiyonggao/home/root/Base-Jufubao/xd-commands-bussiness/${threePackagePath}`;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
if (packname === 'gxd-uni-library-editx') {
|
|
15
|
-
return `/Users/shiyonggao/home/root/Base-Jufubao/xd-uni-library-editx/${threePackagePath}`;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
module.exports = {
|
|
21
|
-
getPackagePath
|
|
22
|
-
}
|