jufubao-base 1.0.158 → 1.0.159-beta2
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/common/authorize.js +201 -70
- package/src/components/JfbBaseAddress/JfbBaseAddress.vue +7 -6
- package/src/components/JfbBaseAfterOrderDetail/JfbBaseAfterOrderDetail.vue +5 -3
- package/src/components/JfbBaseAfterOrderList/JfbBaseAfterOrderList.vue +3 -2
- package/src/components/JfbBaseBack/JfbBaseBack.vue +10 -8
- package/src/components/JfbBaseBackground/JfbBaseBackground.vue +3 -2
- package/src/components/JfbBaseBlock/JfbBaseBlock.vue +3 -2
- package/src/components/JfbBaseCard/JfbBaseCard.vue +8 -4
- package/src/components/JfbBaseCardBindV2/JfbBaseCardBindV2.vue +57 -26
- package/src/components/JfbBaseCardDetail/JfbBaseCardDetail.vue +14 -15
- package/src/components/JfbBaseCardDetailEntry/Attr.js +22 -0
- package/src/components/JfbBaseCardDetailEntry/JfbBaseCardDetailEntry.vue +361 -425
- package/src/components/JfbBaseCardDisabled/JfbBaseCardDisabled.vue +4 -4
- package/src/components/JfbBaseCardDisabledEntry/JfbBaseCardDisabledEntry.vue +7 -9
- package/src/components/JfbBaseCardEntry/Attr.js +22 -1
- package/src/components/JfbBaseCardEntry/JfbBaseCardEntry.vue +81 -34
- package/src/components/JfbBaseCardInfo/JfbBaseCardInfo.vue +35 -19
- package/src/components/JfbBaseCardInfoEntry/JfbBaseCardInfoEntry.vue +8 -4
- package/src/components/JfbBaseCardMerge/JfbBaseCardMerge.vue +4 -3
- package/src/components/JfbBaseCardMergeEntry/JfbBaseCardMergeEntry.vue +23 -18
- package/src/components/JfbBaseCardShift/JfbBaseCardShift.vue +4 -11
- package/src/components/JfbBaseCardShiftEntry/JfbBaseCardShiftEntry.vue +16 -19
- package/src/components/JfbBaseCardSweepInfo/JfbBaseCardSweepInfo.vue +3 -2
- package/src/components/JfbBaseCardV2/JfbBaseCardV2.vue +34 -18
- package/src/components/JfbBaseCardV3/JfbBaseCardV3.vue +14 -14
- package/src/components/JfbBaseCity/JfbBaseCity.vue +3 -2
- package/src/components/JfbBaseClear/JfbBaseClear.vue +3 -2
- package/src/components/JfbBaseConList/JfbBaseConList.vue +3 -2
- package/src/components/JfbBaseConPhone/JfbBaseConPhone.vue +3 -2
- package/src/components/JfbBaseEntry/Attr.js +22 -0
- package/src/components/JfbBaseEntry/JfbBaseEntry.vue +80 -16
- package/src/components/JfbBaseExpressDetail/JfbBaseExpressDetail.vue +3 -4
- package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +31 -20
- package/src/components/JfbBaseFastLink/XdFastNav.vue +2 -2
- package/src/components/JfbBaseFooter/JfbBaseFooter.vue +0 -1
- package/src/components/JfbBaseHeader/JfbBaseHeader.vue +3 -2
- package/src/components/JfbBaseLogin/JfbBaseLogin.vue +16 -6
- package/src/components/JfbBaseLoginForgetPwd/JfbBaseLoginForgetPwd.vue +7 -9
- package/src/components/JfbBaseLoginSetPwd/JfbBaseLoginSetPwd.vue +6 -6
- package/src/components/JfbBaseMapOverlay/JfbBaseMapOverlay.vue +19 -5
- package/src/components/JfbBaseMapOverlay/XdMapOverlay.vue +52 -37
- package/src/components/JfbBaseMapSearch/JfbBaseMapSearch.vue +3 -2
- package/src/components/JfbBaseMergeUserCard/JfbBaseMergeUserCard.vue +28 -27
- package/src/components/JfbBaseMultipleExpress/JfbBaseMultipleExpress.vue +5 -5
- package/src/components/JfbBaseMy/JfbBaseMy.vue +3 -3
- package/src/components/JfbBaseMySetting/JfbBaseMySetting.vue +6 -4
- package/src/components/JfbBaseNotice/Attr.js +0 -2
- package/src/components/JfbBaseNotice/JfbBaseNotice.vue +36 -14
- package/src/components/JfbBaseNotice/XdNoticeBar.vue +17 -1
- package/src/components/JfbBaseNoticeBottom/JfbBaseNoticeBottom.vue +3 -2
- package/src/components/JfbBaseNoticeTop/JfbBaseNoticeTop.vue +3 -2
- package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +5 -4
- package/src/components/JfbBaseOrderList/JfbBaseOrderList.vue +4 -3
- package/src/components/JfbBasePay/JfbBasePay.vue +3 -2
- package/src/components/JfbBasePhoneCollect/JfbBasePhoneCollect.vue +12 -7
- package/src/components/JfbBasePhoneLogin/JfbBasePhoneLogin.vue +13 -7
- package/src/components/JfbBasePoster/JfbBasePoster.vue +118 -18
- package/src/components/JfbBasePoster/MoreScreen.vue +155 -37
- package/src/components/JfbBasePosterBigSmall/Attr.js +1 -4
- package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +191 -67
- package/src/components/JfbBasePosterEntry/JfbBasePosterEntry.vue +90 -20
- package/src/components/JfbBasePosterType/FourScreen.vue +162 -18
- package/src/components/JfbBasePosterType/JfbBasePosterType.vue +0 -35
- package/src/components/JfbBaseRecharge/JfbBaseRecharge.vue +4 -4
- package/src/components/JfbBaseRechargeOrder/JfbBaseRechargeOrder.vue +3 -4
- package/src/components/JfbBaseRechargeOrderDetail/JfbBaseRechargeOrderDetail.vue +4 -7
- package/src/components/JfbBaseRechargeSuccess/JfbBaseRechargeSuccess.vue +6 -9
- package/src/components/JfbBaseSearch/JfbBaseSearch.vue +3 -2
- package/src/components/JfbBaseSuccess/JfbBaseSuccess.vue +2 -1
- package/src/components/JfbBaseUserCenter/JfbBaseUserCenter.vue +3 -2
- package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +5 -3
- package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +4 -3
- package/src/components/JfbBaseVideo/JfbBaseVideo.vue +14 -11
- package/src/components/JfbBaseVideo/XdVideo.vue +0 -4
- package/src/components/JfbBaseWallet/JfbBaseWallet.vue +3 -2
- package/src/components/JfbBaseWalletDetail/JfbBaseWalletDetail.vue +5 -8
- package/src/components/JfbBaseWalletEffective/JfbBaseWalletEffective.vue +5 -8
- package/src/components/JfbBaseWalletIndex/JfbBaseWalletIndex.vue +7 -17
- package/src/components/JfbBaseWalletItem/JfbBaseWalletItem.vue +13 -21
- package/src/components/JfbBaseWebview/JfbBaseWebview.vue +4 -3
- package/src/components/JfbBaseWxAuthorize/JfbBaseWxAuthorize.vue +5 -4
- package/src/components/JfbBaseWxAuthorizeError/JfbBaseWxAuthorizeError.vue +3 -4
- package/src/mixins/colorCardMixins.js +1 -1
|
@@ -115,8 +115,9 @@ export default {
|
|
|
115
115
|
};
|
|
116
116
|
},
|
|
117
117
|
watch: {
|
|
118
|
-
container(value) {
|
|
119
|
-
|
|
118
|
+
container(value,oldValue) {
|
|
119
|
+
if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
|
|
120
|
+
if (this.$configProject['isPreview']) this.init(value)
|
|
120
121
|
},
|
|
121
122
|
},
|
|
122
123
|
created() {
|
|
@@ -160,13 +161,12 @@ export default {
|
|
|
160
161
|
},
|
|
161
162
|
handleUnBindCard(item) {
|
|
162
163
|
this.$xdConfirm({
|
|
163
|
-
|
|
164
|
+
styles: this.styles,
|
|
164
165
|
content: "您确定要解除绑定票券吗",
|
|
165
166
|
title: "系统提示",
|
|
166
167
|
width: "80%",
|
|
167
168
|
isTitle: true,
|
|
168
169
|
zIndex: 2000,
|
|
169
|
-
vm: this,
|
|
170
170
|
success: (res) => {
|
|
171
171
|
if (res.confirm) {
|
|
172
172
|
jfbRootExec("disabledCardUnbind", {
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
v-if="isEditx && active"
|
|
12
12
|
>
|
|
13
13
|
<view class="jfb-base-card-disabled-entry__edit-icon" @click="delEdit"
|
|
14
|
-
|
|
14
|
+
>删除</view
|
|
15
15
|
>
|
|
16
16
|
</view>
|
|
17
17
|
<!-- #endif -->
|
|
@@ -178,12 +178,13 @@ export default {
|
|
|
178
178
|
return this.fixedStyle({height: 0, zIndex: 111});
|
|
179
179
|
},
|
|
180
180
|
emptyBg() {
|
|
181
|
-
|
|
181
|
+
return this.getNoData();
|
|
182
182
|
},
|
|
183
183
|
},
|
|
184
184
|
watch: {
|
|
185
|
-
container(value) {
|
|
186
|
-
|
|
185
|
+
container(value,oldValue) {
|
|
186
|
+
if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
|
|
187
|
+
if (this.$configProject['isPreview']) this.init(value)
|
|
187
188
|
},
|
|
188
189
|
},
|
|
189
190
|
created() {
|
|
@@ -195,7 +196,6 @@ export default {
|
|
|
195
196
|
this.getCardList();
|
|
196
197
|
},
|
|
197
198
|
|
|
198
|
-
|
|
199
199
|
getCardList() {
|
|
200
200
|
this.$xdShowLoading({});
|
|
201
201
|
jfbRootExec("getDisableCardListEntry", {vm: this, data: {is_all: "Y", is_show_entry_settings: 'Y'},})
|
|
@@ -226,13 +226,12 @@ export default {
|
|
|
226
226
|
|
|
227
227
|
handleAllUnBindCard(){
|
|
228
228
|
this.$xdConfirm({
|
|
229
|
-
|
|
229
|
+
styles: this.styles,
|
|
230
230
|
content: "您确定要解除绑定所有票券吗?",
|
|
231
231
|
title: "系统提示",
|
|
232
232
|
width: "80%",
|
|
233
233
|
isTitle: true,
|
|
234
234
|
zIndex: 2000,
|
|
235
|
-
vm: this,
|
|
236
235
|
success: (res) => {
|
|
237
236
|
if (res.confirm) {
|
|
238
237
|
let cardIds = this.cardOrgList.map(item=>{
|
|
@@ -259,13 +258,12 @@ export default {
|
|
|
259
258
|
|
|
260
259
|
handleUnBindCard(item) {
|
|
261
260
|
this.$xdConfirm({
|
|
262
|
-
|
|
261
|
+
styles: this.styles,
|
|
263
262
|
content: "您确定要解除绑定票券吗?",
|
|
264
263
|
title: "系统提示",
|
|
265
264
|
width: "80%",
|
|
266
265
|
isTitle: true,
|
|
267
266
|
zIndex: 2000,
|
|
268
|
-
vm: this,
|
|
269
267
|
success: (res) => {
|
|
270
268
|
if (res.confirm) {
|
|
271
269
|
jfbRootExec("disabledCardUnbindEntry", {
|
|
@@ -4,6 +4,28 @@ export default {
|
|
|
4
4
|
style: [],
|
|
5
5
|
advanced: [],
|
|
6
6
|
content: [
|
|
7
|
+
{
|
|
8
|
+
label: '选择综合入口类型:',
|
|
9
|
+
ele: 'xd-site-select-list',
|
|
10
|
+
valueKey: 'entryGroupId',
|
|
11
|
+
value: 'default',
|
|
12
|
+
placeholder: '请选择综合入口类型',
|
|
13
|
+
multiple: false,
|
|
14
|
+
groupKey:'content',
|
|
15
|
+
className: 'input50',
|
|
16
|
+
rules: [
|
|
17
|
+
{required: true, message: '请选择综合入口类型', trigger: ['blur', 'change']}
|
|
18
|
+
],
|
|
19
|
+
handleCustom({action, data}) {
|
|
20
|
+
XdBus.getParentApi('getEntryGroupOption')({key: Date.now()})
|
|
21
|
+
.then(res => {
|
|
22
|
+
data.cb(res.list)
|
|
23
|
+
})
|
|
24
|
+
.catch(error => {
|
|
25
|
+
console.error(error);
|
|
26
|
+
});
|
|
27
|
+
},
|
|
28
|
+
},
|
|
7
29
|
{
|
|
8
30
|
label: '提示内容:',
|
|
9
31
|
ele: 'xd-site-news',
|
|
@@ -312,6 +334,5 @@ export default {
|
|
|
312
334
|
},
|
|
313
335
|
inline: false,
|
|
314
336
|
},
|
|
315
|
-
|
|
316
337
|
],
|
|
317
338
|
};
|
|
@@ -76,6 +76,7 @@
|
|
|
76
76
|
:style="{ background: noticeBackgroundColor }"
|
|
77
77
|
>
|
|
78
78
|
<xd-notice-bar
|
|
79
|
+
style="width: 100%"
|
|
79
80
|
:showIcon="true"
|
|
80
81
|
:scrollable="true"
|
|
81
82
|
:speed="20"
|
|
@@ -386,6 +387,8 @@ import { mapState, mapActions } from "vuex";
|
|
|
386
387
|
import { getContainerPropsValue, isWechat,isQrCode } from "@/utils/xd.base";
|
|
387
388
|
import XdNoticeBar from "@/components/XdNoticeBar/XdNoticeBar";
|
|
388
389
|
import { Base64 } from "js-base64";
|
|
390
|
+
import getServiceUrl from "@/common/getServiceUrl";
|
|
391
|
+
import {parsePath} from "@/utils/linkUrl";
|
|
389
392
|
const Color = require("color");
|
|
390
393
|
|
|
391
394
|
export default {
|
|
@@ -413,8 +416,9 @@ export default {
|
|
|
413
416
|
}
|
|
414
417
|
},
|
|
415
418
|
watch: {
|
|
416
|
-
container(value) {
|
|
417
|
-
|
|
419
|
+
container(value,oldValue) {
|
|
420
|
+
if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
|
|
421
|
+
if (this.$configProject['isPreview']) this.init(value)
|
|
418
422
|
},
|
|
419
423
|
tabIndex(){
|
|
420
424
|
this.clearDefault();
|
|
@@ -433,6 +437,7 @@ export default {
|
|
|
433
437
|
isPreview: false,
|
|
434
438
|
noticeStatus: false,
|
|
435
439
|
loadingCardList: true,
|
|
440
|
+
entryGroupId: '',//加载入口数据组别
|
|
436
441
|
|
|
437
442
|
cutIndex: 1,
|
|
438
443
|
tabIndex: 1,
|
|
@@ -486,7 +491,6 @@ export default {
|
|
|
486
491
|
methods: {
|
|
487
492
|
|
|
488
493
|
init(container){
|
|
489
|
-
//设置
|
|
490
494
|
this.cardLayout = getContainerPropsValue(container,"content.cardLayout","1");
|
|
491
495
|
this.changeUrl = getContainerPropsValue(container,"content.change_url",{value: ""}).value;
|
|
492
496
|
this.disabledUrl = getContainerPropsValue(container,"content.disabled_url",{value: ""}).value;
|
|
@@ -496,6 +500,8 @@ export default {
|
|
|
496
500
|
this.login_name = getContainerPropsValue(container, "content.login_name", "登录");
|
|
497
501
|
this.isShowCode = getContainerPropsValue(container, "content.isShowCode", "Y");
|
|
498
502
|
this.bindCard = getContainerPropsValue(container,"content.bindCard","1");
|
|
503
|
+
//'wechat_mini_program|default'
|
|
504
|
+
this.entryGroupId = getContainerPropsValue(container,"content.entryGroupId","default");
|
|
499
505
|
},
|
|
500
506
|
|
|
501
507
|
handleToLink(path) {
|
|
@@ -577,6 +583,7 @@ export default {
|
|
|
577
583
|
/**
|
|
578
584
|
* @description 已绑定卡登录
|
|
579
585
|
* @param item
|
|
586
|
+
* @param entry
|
|
580
587
|
*/
|
|
581
588
|
handleBindLogin(item , entry) {
|
|
582
589
|
//卡券登录
|
|
@@ -595,7 +602,7 @@ export default {
|
|
|
595
602
|
//#ifdef MP-WEIXIN
|
|
596
603
|
if (this.jfbAuthorize !== null) {
|
|
597
604
|
this.jfbAuthorize.setCardToken(res);
|
|
598
|
-
this.
|
|
605
|
+
this.handleClick(entry);
|
|
599
606
|
}
|
|
600
607
|
//#endif
|
|
601
608
|
if (this.$configProject.isPreview) {
|
|
@@ -603,7 +610,7 @@ export default {
|
|
|
603
610
|
}
|
|
604
611
|
|
|
605
612
|
else {
|
|
606
|
-
this.
|
|
613
|
+
this.handleClick(entry);
|
|
607
614
|
}
|
|
608
615
|
})
|
|
609
616
|
.catch((res) => {
|
|
@@ -618,43 +625,78 @@ export default {
|
|
|
618
625
|
}, false);
|
|
619
626
|
}
|
|
620
627
|
},
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
628
|
+
|
|
629
|
+
|
|
630
|
+
getCardPath(custom_redirect_data = {}){
|
|
631
|
+
//#ifdef H5
|
|
632
|
+
return null;
|
|
633
|
+
//#endif
|
|
634
|
+
//#ifdef MP-WEIXIN
|
|
635
|
+
const dir = custom_redirect_data.dir;
|
|
636
|
+
const actDir = this.projectAttr['deploy_dir'];
|
|
637
|
+
if(custom_redirect_data.appType === 'wxmp') {
|
|
638
|
+
if(dir === actDir) {
|
|
639
|
+
return {
|
|
640
|
+
cardPath: custom_redirect_data.path,
|
|
641
|
+
cardSelf: 'wxmp',
|
|
642
|
+
};
|
|
643
|
+
}
|
|
644
|
+
else return null;
|
|
645
|
+
}
|
|
646
|
+
else if(custom_redirect_data.appType === 'h5'){
|
|
647
|
+
return {
|
|
648
|
+
cardPath: custom_redirect_data.site_url,
|
|
649
|
+
cardSelf: 'h5',
|
|
650
|
+
};
|
|
632
651
|
}
|
|
633
|
-
|
|
652
|
+
else return null;
|
|
653
|
+
//#endif
|
|
654
|
+
},
|
|
655
|
+
|
|
656
|
+
handleClick(entry){
|
|
657
|
+
const {dir, path, host, appType} = entry['redirect_data'];
|
|
658
|
+
let regHttp = /^(\/\/|http:\/\/|https:\/\/).+$/;
|
|
659
|
+
let regSp = /(-apiuri\/v)/;
|
|
660
|
+
|
|
661
|
+
if(appType === undefined) entry.redirect_data.appType = 'h5';
|
|
634
662
|
let nsp = Base64.encodeURI(JSON.stringify({business_code: entry['business_code']}));
|
|
635
663
|
|
|
636
664
|
//外站配置地址
|
|
637
|
-
if
|
|
638
|
-
if
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
665
|
+
if(entry.redirect_type === 'URL') {
|
|
666
|
+
if(regHttp.test(entry.redirect_data['path']) || regSp.test(entry.redirect_data['path'])) {
|
|
667
|
+
this.$xdUniHelper.redirectTo({
|
|
668
|
+
url:`${entry.redirect_data['path']}?x-common=${nsp}&vs=${new Date().getTime()}${cardPathStr}`
|
|
669
|
+
}, false)
|
|
670
|
+
}
|
|
671
|
+
else {
|
|
672
|
+
console.error(`配置错误:${entry.redirect_data['path']}`);
|
|
673
|
+
throw new Error(`配置错误:${entry.redirect_data['path']}`)
|
|
674
|
+
}
|
|
675
|
+
return
|
|
643
676
|
}
|
|
644
677
|
|
|
645
|
-
|
|
646
|
-
let jumpUrl =
|
|
647
|
-
|
|
648
|
-
|
|
678
|
+
//站内应用处理
|
|
679
|
+
let jumpUrl = '';
|
|
680
|
+
let jumpUrlObj = parsePath(path);
|
|
681
|
+
let cardPathStr = '';
|
|
682
|
+
if(jumpUrlObj.isSameApp) jumpUrl = jumpUrlObj.url;
|
|
683
|
+
else jumpUrl = `//${host}/${jumpUrlObj.dir}${jumpUrlObj.url}`;
|
|
684
|
+
|
|
685
|
+
//#ifdef MP-WEIXIN
|
|
686
|
+
//获取自定义卡券登录地址(微信小程序跳转到H5平台起作用)
|
|
687
|
+
if(entry.redirect_data.appType === 'h5') {
|
|
688
|
+
const custom_redirect_data = this.$xdUniHelper.checkVarType(entry['custom_redirect_data']) === 'object'?entry['custom_redirect_data']:{};
|
|
689
|
+
const cardPathObject = this.getCardPath(custom_redirect_data);
|
|
690
|
+
if(cardPathObject !== null) {
|
|
691
|
+
const {cardPath, cardSelf} =cardPathObject
|
|
692
|
+
if(cardPath) cardPathStr = `&card-login=${encodeURIComponent(cardPath)}&cardSelf=${cardSelf}`
|
|
693
|
+
}
|
|
694
|
+
}
|
|
649
695
|
//#endif
|
|
650
696
|
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
}
|
|
654
|
-
else {
|
|
655
|
-
redirectUrl = `${jumpUrl}?x-common=${nsp}&vs=${new Date().getTime()}`
|
|
656
|
-
}
|
|
657
|
-
this.toApp(redirectUrl);
|
|
697
|
+
jumpUrl = `${jumpUrl}?x-common=${nsp}&vs=${new Date().getTime()}${cardPathStr}`;
|
|
698
|
+
if(regHttp.test(jumpUrl)) this.$xdUniHelper.redirectTo({url:jumpUrl}, false)
|
|
699
|
+
else this.$xdUniHelper.navigateTo({url:jumpUrl}, false)
|
|
658
700
|
},
|
|
659
701
|
|
|
660
702
|
toDetail(item, out=true) {
|
|
@@ -692,6 +734,7 @@ export default {
|
|
|
692
734
|
if(options['jfb_business_code']) {
|
|
693
735
|
params['card_business_code'] = options['jfb_business_code'];
|
|
694
736
|
}
|
|
737
|
+
if(this.entryGroupId) params['group_id'] = this.entryGroupId;
|
|
695
738
|
this.$xdShowLoading({});
|
|
696
739
|
jfbRootExec("getListEntryCardBind", {
|
|
697
740
|
vm: this,
|
|
@@ -713,6 +756,10 @@ export default {
|
|
|
713
756
|
),
|
|
714
757
|
};
|
|
715
758
|
});
|
|
759
|
+
|
|
760
|
+
//过滤入口配置
|
|
761
|
+
res['site_entry_settings'] = this.filterNotSupportEntry(res['site_entry_settings']);
|
|
762
|
+
|
|
716
763
|
this.ajaxCardList = res;
|
|
717
764
|
this.hasChangeStatus = this.getCardGroupItem(this.ajaxCardList.list.filter((item) => {
|
|
718
765
|
return item["is_exchange"] === "Y";
|
|
@@ -36,16 +36,24 @@
|
|
|
36
36
|
v-model="card_password"
|
|
37
37
|
:placeholder="card_pwd_placeholder"
|
|
38
38
|
/>
|
|
39
|
+
<!--#ifdef H5-->
|
|
39
40
|
<xd-font-icon
|
|
40
|
-
@click="
|
|
41
|
+
@click="handleIcon()"
|
|
41
42
|
:icon="isPassword ? 'iconbiyan' : 'iconchakan'"
|
|
42
43
|
></xd-font-icon>
|
|
44
|
+
<!--#endif-->
|
|
45
|
+
<!--#ifdef MP-WEIXIN-->
|
|
46
|
+
<xd-font-icon
|
|
47
|
+
:width="72"
|
|
48
|
+
:height="72"
|
|
49
|
+
@click="handleIcon()"
|
|
50
|
+
:icon="isPassword ? 'iconbiyan' : 'iconchakan'"
|
|
51
|
+
></xd-font-icon>
|
|
52
|
+
<!--#endif-->
|
|
43
53
|
</view>
|
|
44
54
|
</view>
|
|
45
55
|
<view class="jfb-base-card-info__body-footer" :style="prod_bottom">
|
|
46
|
-
<xd-button type="primary" width="360rpx" @click="handleGetInfo"
|
|
47
|
-
>确认</xd-button
|
|
48
|
-
>
|
|
56
|
+
<xd-button type="primary" width="360rpx" @click="handleGetInfo">确认</xd-button>
|
|
49
57
|
</view>
|
|
50
58
|
</view>
|
|
51
59
|
|
|
@@ -78,15 +86,12 @@
|
|
|
78
86
|
<view
|
|
79
87
|
v-if="info.other_card_point && info.card_point_type !== 1"
|
|
80
88
|
class="jfb-base-card-info__body-residue-reach"
|
|
81
|
-
|
|
82
|
-
>
|
|
89
|
+
>购买其他物品可抵:{{ info.other_card_point }}</view>
|
|
83
90
|
</view>
|
|
84
91
|
<view
|
|
85
92
|
class="jfb-base-card-info__body-residue-business"
|
|
86
93
|
v-if="info.card_point_type !== 1"
|
|
87
|
-
>
|
|
88
|
-
所属业务线:{{ info.main_business_code_name }}
|
|
89
|
-
</view>
|
|
94
|
+
>所属业务线:{{ info.main_business_code_name }}</view>
|
|
90
95
|
</view>
|
|
91
96
|
<view :style="{ height: '100rpx' }"></view>
|
|
92
97
|
</view>
|
|
@@ -129,18 +134,10 @@ export default {
|
|
|
129
134
|
label: "票券号码",
|
|
130
135
|
key: "card_number",
|
|
131
136
|
},
|
|
132
|
-
// {
|
|
133
|
-
// label: "票券类型",
|
|
134
|
-
// key: "unit",
|
|
135
|
-
// },
|
|
136
137
|
{
|
|
137
138
|
label: "票券状态",
|
|
138
139
|
key: "card_status_name",
|
|
139
140
|
},
|
|
140
|
-
// {
|
|
141
|
-
// label: "票券转换",
|
|
142
|
-
// key: "is_exchange_name",
|
|
143
|
-
// },
|
|
144
141
|
{
|
|
145
142
|
label: "有效期",
|
|
146
143
|
key: "end_time",
|
|
@@ -177,7 +174,7 @@ export default {
|
|
|
177
174
|
return true;
|
|
178
175
|
},
|
|
179
176
|
showValueKey(){
|
|
180
|
-
if(this.info.is_expired === "Y"){
|
|
177
|
+
if(this.info && this.info.is_expired === "Y"){
|
|
181
178
|
return this.valueKey.filter(item => item.key !== "end_time");
|
|
182
179
|
}
|
|
183
180
|
return this.valueKey;
|
|
@@ -185,6 +182,9 @@ export default {
|
|
|
185
182
|
},
|
|
186
183
|
created() {},
|
|
187
184
|
methods: {
|
|
185
|
+
handleIcon(){
|
|
186
|
+
this.isPassword = !this.isPassword
|
|
187
|
+
},
|
|
188
188
|
toShowCouponDialog(){
|
|
189
189
|
if(this.info){
|
|
190
190
|
jfbRootFnExec(this, 'onCustomEvent')("@showBaseConDialog", {user_card_number: this.info.card_number})
|
|
@@ -256,7 +256,7 @@ export default {
|
|
|
256
256
|
//卡券已被自己绑定时的弹框
|
|
257
257
|
handleBindConfirm(){
|
|
258
258
|
this.$xdConfirm({
|
|
259
|
-
|
|
259
|
+
styles: this.styles,
|
|
260
260
|
width: '90%',
|
|
261
261
|
content: '您已绑定该票券,无需再次绑定',
|
|
262
262
|
confirmText: '我的票券',
|
|
@@ -293,6 +293,12 @@ export default {
|
|
|
293
293
|
onJfbLoad(options) {
|
|
294
294
|
this.init();
|
|
295
295
|
this.qrcode = options.qrcode;
|
|
296
|
+
//#ifdef MP-WEIXIN
|
|
297
|
+
if(options.qrcode) {
|
|
298
|
+
this.qrcode = decodeURIComponent(options.qrcode);
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
//#endif
|
|
296
302
|
if(options.inCallback) {
|
|
297
303
|
this.inCallbackUrlOrg = options.inCallback;
|
|
298
304
|
}
|
|
@@ -407,6 +413,16 @@ export default {
|
|
|
407
413
|
color: #a6a6a6;
|
|
408
414
|
margin-right: unit(70, rpx);
|
|
409
415
|
text-align: center;
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
& .mp {
|
|
421
|
+
display: flex;
|
|
422
|
+
justify-content: center;
|
|
423
|
+
align-items: center;
|
|
424
|
+
width: 72rpx;
|
|
425
|
+
height: 72rpx
|
|
410
426
|
}
|
|
411
427
|
|
|
412
428
|
input {
|
|
@@ -168,8 +168,9 @@ export default {
|
|
|
168
168
|
};
|
|
169
169
|
},
|
|
170
170
|
watch: {
|
|
171
|
-
container(value) {
|
|
172
|
-
|
|
171
|
+
container(value,oldValue) {
|
|
172
|
+
if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
|
|
173
|
+
if (this.$configProject['isPreview']) this.init(value)
|
|
173
174
|
},
|
|
174
175
|
},
|
|
175
176
|
computed: {
|
|
@@ -194,7 +195,7 @@ export default {
|
|
|
194
195
|
handleToLink() {
|
|
195
196
|
if(this.info.card_point===0) {
|
|
196
197
|
this.$xdConfirm({
|
|
197
|
-
|
|
198
|
+
styles: this.styles,
|
|
198
199
|
content: "票券余额为0,是否确认绑定?",
|
|
199
200
|
width: "80%",
|
|
200
201
|
success: (res) => {
|
|
@@ -269,7 +270,7 @@ export default {
|
|
|
269
270
|
//卡券已被自己绑定时的弹框
|
|
270
271
|
handleBindConfirm(){
|
|
271
272
|
this.$xdConfirm({
|
|
272
|
-
|
|
273
|
+
styles: this.styles,
|
|
273
274
|
width: '90%',
|
|
274
275
|
content: '您已绑定该票券,无需再次绑定',
|
|
275
276
|
confirmText: '我的票券',
|
|
@@ -308,6 +309,9 @@ export default {
|
|
|
308
309
|
onJfbLoad(options) {
|
|
309
310
|
this.init();
|
|
310
311
|
this.qrcode = options.qrcode;
|
|
312
|
+
//#ifdef MP-WEIXIN
|
|
313
|
+
this.qrcode = decodeURIComponent(options.qrcode);
|
|
314
|
+
//#endif
|
|
311
315
|
if(options.inCallback) {
|
|
312
316
|
this.inCallbackUrlOrg = options.inCallback;
|
|
313
317
|
}
|
|
@@ -135,8 +135,9 @@ export default {
|
|
|
135
135
|
}),
|
|
136
136
|
},
|
|
137
137
|
watch: {
|
|
138
|
-
container(value) {
|
|
139
|
-
|
|
138
|
+
container(value,oldValue) {
|
|
139
|
+
if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
|
|
140
|
+
if (this.$configProject['isPreview']) this.init(value)
|
|
140
141
|
},
|
|
141
142
|
},
|
|
142
143
|
created() {
|
|
@@ -203,7 +204,7 @@ export default {
|
|
|
203
204
|
this.$xdConfirm({
|
|
204
205
|
title: "是否确认合并卡",
|
|
205
206
|
isHtml: true,
|
|
206
|
-
|
|
207
|
+
styles: this.styles,
|
|
207
208
|
content: `转出卡号:${
|
|
208
209
|
this.mergeForm.from_card_number
|
|
209
210
|
}(剩余点数:${this.$xdUniHelper.divisionFloatNumber(
|
|
@@ -40,13 +40,14 @@
|
|
|
40
40
|
</view>
|
|
41
41
|
</view>
|
|
42
42
|
<view class="merge-item" :style="{background: themeInStyle['color']}">
|
|
43
|
-
<view class="merge-item-box" :style="{backgroundImage: `url(
|
|
44
|
-
<view class="merge-item-title">
|
|
43
|
+
<view class="merge-item-box" :style="{backgroundImage: `url(//img.jufubao.cn/component/card/mergbg.jpg)`}">
|
|
44
|
+
<view class="merge-item-title" :style="{background: themeOutStyle['color']}">
|
|
45
45
|
<xd-font-icon icon="iconzhuanru"></xd-font-icon>
|
|
46
46
|
<view>转入的票券</view>
|
|
47
47
|
</view>
|
|
48
48
|
<view>
|
|
49
49
|
<xd-select
|
|
50
|
+
v-if="toListLoading"
|
|
50
51
|
:disabled="toList.length === 0"
|
|
51
52
|
:key="randomKey"
|
|
52
53
|
:height="66"
|
|
@@ -88,10 +89,11 @@
|
|
|
88
89
|
<view class="bottom_btn-mask"></view>
|
|
89
90
|
<view class="bottom_btn" :style="prod_bottom">
|
|
90
91
|
<xd-button
|
|
92
|
+
v-if="btnLoading"
|
|
91
93
|
:key="disabledKey"
|
|
92
94
|
:disabled="disabled"
|
|
93
95
|
@click="handleToSubmit"
|
|
94
|
-
|
|
96
|
+
style="width: 90%"
|
|
95
97
|
:type="disabled ?'info': 'primary'"
|
|
96
98
|
>合并</xd-button>
|
|
97
99
|
</view>
|
|
@@ -137,9 +139,11 @@ export default {
|
|
|
137
139
|
toList: [],
|
|
138
140
|
fromSelect: null,
|
|
139
141
|
toSelect: null,
|
|
140
|
-
randomKey:
|
|
142
|
+
randomKey:'randomKey',
|
|
141
143
|
valid_code:'',
|
|
142
144
|
valid_token: 'valid_token',
|
|
145
|
+
toListLoading: true,
|
|
146
|
+
btnLoading: true,
|
|
143
147
|
|
|
144
148
|
|
|
145
149
|
content: "",
|
|
@@ -178,13 +182,17 @@ export default {
|
|
|
178
182
|
},
|
|
179
183
|
|
|
180
184
|
disabled(){
|
|
181
|
-
this.
|
|
185
|
+
this.btnLoading = false;
|
|
186
|
+
setTimeout(()=>{
|
|
187
|
+
this.btnLoading = true;
|
|
188
|
+
},10)
|
|
182
189
|
return this.fromSelect === null || this.toSelect === null;
|
|
183
190
|
},
|
|
184
191
|
},
|
|
185
192
|
watch: {
|
|
186
|
-
container(value) {
|
|
187
|
-
|
|
193
|
+
container(value,oldValue) {
|
|
194
|
+
if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
|
|
195
|
+
if (this.$configProject['isPreview']) this.init(value)
|
|
188
196
|
},
|
|
189
197
|
},
|
|
190
198
|
created() {
|
|
@@ -194,7 +202,6 @@ export default {
|
|
|
194
202
|
this.switchValidToken();
|
|
195
203
|
this.validImageAPIUrl = this.brandInfo["api_host"] + "/common/v1/valid_code/image/show";
|
|
196
204
|
this.contentBackgroundColor = Color(this.warningColor).alpha(0.2).toString();
|
|
197
|
-
|
|
198
205
|
},
|
|
199
206
|
methods: {
|
|
200
207
|
onJfbLoad(options) {
|
|
@@ -251,14 +258,6 @@ export default {
|
|
|
251
258
|
},
|
|
252
259
|
|
|
253
260
|
handleToSubmit() {
|
|
254
|
-
// if (!this.valid_code) {
|
|
255
|
-
// uni.showToast({
|
|
256
|
-
// title: "验证码不能为空!",
|
|
257
|
-
// icon: "none",
|
|
258
|
-
// });
|
|
259
|
-
// return;
|
|
260
|
-
// }
|
|
261
|
-
|
|
262
261
|
let outPrice = this.$xdUniHelper.divisionFloatNumber(this.fromSelect.card_point, 100);
|
|
263
262
|
let outHtml = `${this.fromSelect.value}(剩余:${outPrice})`;
|
|
264
263
|
let inPrice = this.$xdUniHelper.divisionFloatNumber(this.toSelect.card_point, 100);
|
|
@@ -266,7 +265,7 @@ export default {
|
|
|
266
265
|
this.$xdConfirm({
|
|
267
266
|
title: "是否确认合并票券",
|
|
268
267
|
isHtml: true,
|
|
269
|
-
|
|
268
|
+
styles: this.styles,
|
|
270
269
|
content: `<div class="label-value"><div><span>转出票券:</span><span>${outHtml}</span></div><div><span>转入票券:</span><span>${inHtml}</span></div></div>`,
|
|
271
270
|
success: (action) => {
|
|
272
271
|
let params = {
|
|
@@ -295,6 +294,8 @@ export default {
|
|
|
295
294
|
});
|
|
296
295
|
},
|
|
297
296
|
handleChangeFrom(select) {
|
|
297
|
+
this.toListLoading = false;
|
|
298
|
+
this.randomKey = null;
|
|
298
299
|
this.fromSelect = select.item;
|
|
299
300
|
jfbRootExec("toCardListEntry", {vm: this, data: {card_number: select.item.value,},})
|
|
300
301
|
.then((res) => {
|
|
@@ -308,7 +309,11 @@ export default {
|
|
|
308
309
|
name: item.card_type_name
|
|
309
310
|
};
|
|
310
311
|
});
|
|
311
|
-
this.randomKey =
|
|
312
|
+
this.randomKey = this.$xdUniHelper.randomChar(20);
|
|
313
|
+
setTimeout(()=>{
|
|
314
|
+
this.toListLoading = true;
|
|
315
|
+
},50)
|
|
316
|
+
|
|
312
317
|
})
|
|
313
318
|
.catch((err) => {
|
|
314
319
|
this.$xdLog.catch(err)
|
|
@@ -44,9 +44,7 @@
|
|
|
44
44
|
<xd-radio size="small" v-model="isCheck"></xd-radio>
|
|
45
45
|
<view>我已经阅读和同意积分转换规则</view>
|
|
46
46
|
</view>
|
|
47
|
-
<xd-button type="primary" width="360rpx" @click="handleChange"
|
|
48
|
-
>立即转换</xd-button
|
|
49
|
-
>
|
|
47
|
+
<xd-button type="primary" width="360rpx" @click="handleChange">立即转换</xd-button>
|
|
50
48
|
</view>
|
|
51
49
|
<xd-dailog
|
|
52
50
|
class="dialog"
|
|
@@ -63,13 +61,8 @@
|
|
|
63
61
|
icon="icondui-01"
|
|
64
62
|
></xd-font-icon>
|
|
65
63
|
<view class="jfb-base-card-shift__body-success-title">转换成功</view>
|
|
66
|
-
<view class="jfb-base-card-shift__body-success-content">
|
|
67
|
-
|
|
68
|
-
{{ changeNumber }}已自动帮您绑定成功,可在卡列表查询
|
|
69
|
-
</view>
|
|
70
|
-
<xd-button type="primarys" width="360rpx" @click="handleToLink"
|
|
71
|
-
>返回列表</xd-button
|
|
72
|
-
>
|
|
64
|
+
<view class="jfb-base-card-shift__body-success-content">您已成功将{{ card_number }} 转换为{{ changeNumber }}已自动帮您绑定成功,可在卡列表查询</view>
|
|
65
|
+
<xd-button type="primarys" width="360rpx" @click="handleToLink">返回列表</xd-button>
|
|
73
66
|
</view>
|
|
74
67
|
</xd-dailog>
|
|
75
68
|
</view>
|
|
@@ -159,7 +152,7 @@ export default {
|
|
|
159
152
|
this.$xdConfirm({
|
|
160
153
|
title: "是否确认转换",
|
|
161
154
|
isHtml: true,
|
|
162
|
-
|
|
155
|
+
styles: this.styles,
|
|
163
156
|
content:content,
|
|
164
157
|
success:(action)=>{
|
|
165
158
|
if(action.confirm) {
|