jufubao-base 1.0.159 → 1.0.160-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.
Files changed (85) hide show
  1. package/package.json +1 -1
  2. package/src/common/authorize.js +201 -70
  3. package/src/components/JfbBaseAddress/JfbBaseAddress.vue +7 -6
  4. package/src/components/JfbBaseAfterOrderDetail/JfbBaseAfterOrderDetail.vue +5 -3
  5. package/src/components/JfbBaseAfterOrderList/JfbBaseAfterOrderList.vue +3 -2
  6. package/src/components/JfbBaseBack/JfbBaseBack.vue +10 -8
  7. package/src/components/JfbBaseBackground/JfbBaseBackground.vue +3 -2
  8. package/src/components/JfbBaseBlock/JfbBaseBlock.vue +3 -2
  9. package/src/components/JfbBaseCard/JfbBaseCard.vue +10 -6
  10. package/src/components/JfbBaseCardBindV2/JfbBaseCardBindV2.vue +57 -26
  11. package/src/components/JfbBaseCardDetail/JfbBaseCardDetail.vue +14 -15
  12. package/src/components/JfbBaseCardDetailEntry/Attr.js +22 -0
  13. package/src/components/JfbBaseCardDetailEntry/JfbBaseCardDetailEntry.vue +393 -424
  14. package/src/components/JfbBaseCardDisabled/JfbBaseCardDisabled.vue +4 -4
  15. package/src/components/JfbBaseCardDisabledEntry/JfbBaseCardDisabledEntry.vue +7 -9
  16. package/src/components/JfbBaseCardEntry/Attr.js +22 -1
  17. package/src/components/JfbBaseCardEntry/JfbBaseCardEntry.vue +91 -36
  18. package/src/components/JfbBaseCardInfo/JfbBaseCardInfo.vue +38 -22
  19. package/src/components/JfbBaseCardInfoEntry/Attr.js +22 -0
  20. package/src/components/JfbBaseCardInfoEntry/JfbBaseCardInfoEntry.vue +285 -260
  21. package/src/components/JfbBaseCardMerge/JfbBaseCardMerge.vue +4 -3
  22. package/src/components/JfbBaseCardMergeEntry/JfbBaseCardMergeEntry.vue +23 -18
  23. package/src/components/JfbBaseCardShift/JfbBaseCardShift.vue +4 -11
  24. package/src/components/JfbBaseCardShiftEntry/JfbBaseCardShiftEntry.vue +16 -19
  25. package/src/components/JfbBaseCardSweepInfo/JfbBaseCardSweepInfo.vue +3 -2
  26. package/src/components/JfbBaseCardV2/JfbBaseCardV2.vue +34 -18
  27. package/src/components/JfbBaseCardV3/JfbBaseCardV3.vue +14 -14
  28. package/src/components/JfbBaseCity/JfbBaseCity.vue +3 -2
  29. package/src/components/JfbBaseClear/JfbBaseClear.vue +3 -2
  30. package/src/components/JfbBaseConList/JfbBaseConList.vue +4 -4
  31. package/src/components/JfbBaseConPhone/JfbBaseConPhone.vue +3 -2
  32. package/src/components/JfbBaseEntry/Attr.js +22 -0
  33. package/src/components/JfbBaseEntry/JfbBaseEntry.vue +84 -20
  34. package/src/components/JfbBaseExpressDetail/JfbBaseExpressDetail.vue +3 -4
  35. package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +33 -22
  36. package/src/components/JfbBaseFastLink/XdFastNav.vue +2 -2
  37. package/src/components/JfbBaseFooter/JfbBaseFooter.vue +0 -1
  38. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +3 -2
  39. package/src/components/JfbBaseLogin/JfbBaseLogin.vue +28 -11
  40. package/src/components/JfbBaseLoginForgetPwd/JfbBaseLoginForgetPwd.vue +7 -9
  41. package/src/components/JfbBaseLoginSetPwd/JfbBaseLoginSetPwd.vue +9 -6
  42. package/src/components/JfbBaseMapOverlay/JfbBaseMapOverlay.vue +19 -5
  43. package/src/components/JfbBaseMapOverlay/XdMapOverlay.vue +52 -37
  44. package/src/components/JfbBaseMapSearch/JfbBaseMapSearch.vue +3 -2
  45. package/src/components/JfbBaseMergeUserCard/JfbBaseMergeUserCard.vue +28 -27
  46. package/src/components/JfbBaseMultipleExpress/JfbBaseMultipleExpress.vue +5 -5
  47. package/src/components/JfbBaseMy/JfbBaseMy.vue +3 -3
  48. package/src/components/JfbBaseMySetting/JfbBaseMySetting.vue +6 -4
  49. package/src/components/JfbBaseNotice/Attr.js +0 -2
  50. package/src/components/JfbBaseNotice/JfbBaseNotice.vue +36 -14
  51. package/src/components/JfbBaseNotice/XdNoticeBar.vue +17 -1
  52. package/src/components/JfbBaseNoticeBottom/JfbBaseNoticeBottom.vue +3 -2
  53. package/src/components/JfbBaseNoticeTop/JfbBaseNoticeTop.vue +3 -2
  54. package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +20 -31
  55. package/src/components/JfbBaseOrderList/JfbBaseOrderList.vue +9 -4
  56. package/src/components/JfbBasePay/JfbBasePay.vue +3 -2
  57. package/src/components/JfbBasePhoneCollect/JfbBasePhoneCollect.vue +22 -7
  58. package/src/components/JfbBasePhoneLogin/JfbBasePhoneLogin.vue +23 -7
  59. package/src/components/JfbBasePoster/JfbBasePoster.vue +118 -18
  60. package/src/components/JfbBasePoster/MoreScreen.vue +155 -37
  61. package/src/components/JfbBasePosterBigSmall/Attr.js +2 -5
  62. package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +191 -67
  63. package/src/components/JfbBasePosterEntry/JfbBasePosterEntry.vue +90 -20
  64. package/src/components/JfbBasePosterType/FourScreen.vue +162 -18
  65. package/src/components/JfbBasePosterType/JfbBasePosterType.vue +0 -35
  66. package/src/components/JfbBaseRecharge/JfbBaseRecharge.vue +4 -4
  67. package/src/components/JfbBaseRechargeOrder/JfbBaseRechargeOrder.vue +3 -4
  68. package/src/components/JfbBaseRechargeOrderDetail/JfbBaseRechargeOrderDetail.vue +4 -7
  69. package/src/components/JfbBaseRechargeSuccess/JfbBaseRechargeSuccess.vue +6 -9
  70. package/src/components/JfbBaseSearch/JfbBaseSearch.vue +3 -2
  71. package/src/components/JfbBaseSuccess/JfbBaseSuccess.vue +5 -4
  72. package/src/components/JfbBaseUserCenter/JfbBaseUserCenter.vue +3 -2
  73. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +5 -3
  74. package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +4 -3
  75. package/src/components/JfbBaseVideo/JfbBaseVideo.vue +14 -11
  76. package/src/components/JfbBaseVideo/XdVideo.vue +0 -4
  77. package/src/components/JfbBaseWallet/JfbBaseWallet.vue +3 -2
  78. package/src/components/JfbBaseWalletDetail/JfbBaseWalletDetail.vue +5 -8
  79. package/src/components/JfbBaseWalletEffective/JfbBaseWalletEffective.vue +5 -8
  80. package/src/components/JfbBaseWalletIndex/JfbBaseWalletIndex.vue +7 -17
  81. package/src/components/JfbBaseWalletItem/JfbBaseWalletItem.vue +13 -21
  82. package/src/components/JfbBaseWebview/JfbBaseWebview.vue +4 -3
  83. package/src/components/JfbBaseWxAuthorize/JfbBaseWxAuthorize.vue +5 -4
  84. package/src/components/JfbBaseWxAuthorizeError/JfbBaseWxAuthorizeError.vue +3 -4
  85. package/src/mixins/colorCardMixins.js +1 -1
@@ -10,37 +10,10 @@
10
10
  :class="{ editx: isEditx && active }"
11
11
  v-if="isEditx && active"
12
12
  >
13
- <view class="jfb-base-card-detail-entry__edit-icon" @click="delEdit"
14
- >删除</view
15
- >
13
+ <view class="jfb-base-card-detail-entry__edit-icon" @click="delEdit">删除</view>
16
14
  </view>
17
15
  <!-- #endif -->
18
16
  <view class="jfb-base-card-detail-entry__body" v-if="info!==null">
19
- <!-- <view class="card-list" :style="{
20
- background: headerBg['color'],
21
- backgroundSize: '100%'
22
- }">
23
- <view class="card-list-warp" :style="{backgroundImage: `url(${headerBg['image']})`}">
24
- <view class="card-list__title"><view>{{info['card_type_name']}}</view></view>
25
- <div class="card-list__content">
26
- <view>
27
- <text>券号:</text>
28
- <text>{{info.card_number}}</text>
29
- </view>
30
- </div>
31
- <view class="card-list__date">
32
- <text>有效期:</text>
33
- <text>{{info.end_time}}</text>
34
- </view>
35
- <view class="card-list__yue">
36
- <text>余额:</text>
37
- <text>{{info.card_point}} {{ info.unit }}</text>
38
- </view>
39
- <view class="card-list__other" v-if="info.other_card_point && info.card_point_type === 2">
40
- <view><text>购买其他物品可抵:</text><text>{{info.other_card_point}} {{ info.unit }}</text></view>
41
- </view>
42
- </view>
43
- </view> -->
44
17
  <view class="qrcode_card">
45
18
  <view class="jfb-base-card-detail-entry__body-qrcode">
46
19
  <view class="barcode_wrap">
@@ -55,13 +28,13 @@
55
28
  ></image>
56
29
  <image v-if="isBrandLogo" class="logo-icon" :src="brandLogo"></image>
57
30
  </view>
58
- <!-- <view :style="{marginTop: '20rpx'}" v-if="timeStr">消费二维码,有效期为{{ info["card_qrcode_expire"] / 60 }}分钟</view> -->
59
31
  <view v-if="timeStr">{{ timeStr }}后自动刷新</view>
60
32
  <view class="refresh_wrap" @click="handleRefresh">
61
- <xd-font-icon icon="iconshuaxin"
33
+ <xd-font-icon
34
+ icon="iconshuaxin"
62
35
  style="margin-right: 24rpx;"
63
- size="28"></xd-font-icon> 刷新二维码
64
- </view>
36
+ size="28"
37
+ ></xd-font-icon> 刷新二维码</view>
65
38
  </view>
66
39
  <view class="card_info">
67
40
  <view class="card_type">{{ info['card_type_name'] }}</view>
@@ -73,53 +46,47 @@
73
46
  </view>
74
47
  </view>
75
48
  </view>
76
-
77
49
  <view
78
- v-if="info.site_entry_settings&&info.site_entry_settings.length>0"
79
- class="jfb-base-card-detail-entry__body-business"
50
+ v-if="info.site_entry_settings&&info.site_entry_settings.length>0"
51
+ class="jfb-base-card-detail-entry__body-business"
80
52
  >
81
- <view
82
- class="jfb-base-card-detail-entry__body-business-title"
83
- >
84
- 进入业务板块
85
- </view>
86
- <view style="display:flex;align-content:center;justify-content:flex-start">
87
- <view class="jfb-base-card-detail-entry__body-business-content">
88
- <view
89
- class="jfb-base-card-detail-entry__body-business-content-item"
90
- @click="handleBindLogin(item)"
91
- v-for="(item,index) in info.site_entry_settings"
92
- :key="index">
93
- <view><image :src="item.image_url"></image></view>
94
- <view>{{item.entry_name}}</view>
53
+ <view class="jfb-base-card-detail-entry__body-business-title">进入业务板块</view>
54
+ <view style="display:flex;align-content:center;justify-content:flex-start">
55
+ <view class="jfb-base-card-detail-entry__body-business-content">
56
+ <view
57
+ class="jfb-base-card-detail-entry__body-business-content-item"
58
+ @click="handleBindLogin(item)"
59
+ v-for="(item,index) in info.site_entry_settings"
60
+ :key="index"
61
+ >
62
+ <view><image :src="item.image_url"></image></view>
63
+ <view>{{item.entry_name}}</view>
64
+ </view>
65
+ </view>
95
66
  </view>
96
67
  </view>
97
- </view>
98
- </view>
99
- <view :style="{height: '100rpx'}"></view>
100
- <!-- 靠底支付 -->
101
- <view class="fixe_bottom" :style="prod_bottom">
102
- <view v-if="0">
103
- <xd-button size="small" type="primary" width="100%">消费记录</xd-button>
104
- </view>
105
- <view v-if="info.is_exchange==='Y'">
106
- <xd-button
107
- width="100%"
108
- @click="handleToShift"
109
- size="small"
110
- type="primary"
111
- >券转换</xd-button>
112
- </view>
113
- <view v-if="isShowUnbind">
114
- <xd-button
115
- width="100%"
116
- @click="handleUnBindCard"
117
- size="small"
118
- type="primary">
119
- 解除绑定
120
- </xd-button>
121
- </view>
68
+ <view :style="{height: '100rpx'}"></view>
69
+ <!-- 靠底支付 -->
70
+ <view class="fixe_bottom" :style="prod_bottom">
71
+ <view v-if="0">
72
+ <xd-button size="small" type="primary" width="100%">消费记录</xd-button>
73
+ </view>
74
+ <view v-if="info.is_exchange==='Y'">
75
+ <xd-button
76
+ width="100%"
77
+ @click="handleToShift()"
78
+ size="small"
79
+ type="primary"
80
+ >券转换</xd-button>
122
81
  </view>
82
+ <view v-if="isShowUnbind">
83
+ <xd-button
84
+ width="100%"
85
+ @click="handleUnBindCard()"
86
+ size="small"
87
+ type="primary">解除绑定</xd-button>
88
+ </view>
89
+ </view>
123
90
  </view>
124
91
  </view>
125
92
  </template>
@@ -139,6 +106,7 @@ import XdPwPay from "./XdPwPay";
139
106
  import XdEditPwd from "./XdEditPwd";
140
107
  import XdUnit from "@/components/XdUnit/XdUnit";
141
108
  import XdButton from '@/components/XdButton/XdButton'
109
+ import {parsePath} from "@/utils/linkUrl";
142
110
  export default {
143
111
  name: "JfbBaseCardDetailEntry",
144
112
  components: {
@@ -154,6 +122,7 @@ export default {
154
122
  data() {
155
123
  return {
156
124
  userInfo: null, //用户信息(暂时不可用)
125
+ entryGroupId: '',//加载入口数据组别
157
126
 
158
127
  info: null,
159
128
  timeStr: "",
@@ -177,83 +146,66 @@ export default {
177
146
  shift_url: "",
178
147
 
179
148
  //品牌logo
180
- brandLogo:
181
- "data:image/png;base64,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",
149
+ //#ifdef H5
150
+ brandLogo: '//img.jufubao.cn/common/jufubao_logo.png?v=1.0.0',
151
+ //#endif
152
+ //#ifdef MP-WEIXIN
153
+ brandLogo:'https://img.jufubao.cn/common/jufubao_logo.png?v=1.0.0',
154
+ //#endif
182
155
  isBrandLogo: false,
183
-
184
156
  isShowUnbind: false, //是否启动绑定按钮
185
157
  headerBg: {},
186
158
  };
187
159
  },
188
160
  watch: {
189
- container(value) {
190
- this.init(value);
161
+ container(value,oldValue) {
162
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
163
+ if (this.$configProject['isPreview']) this.init(value)
191
164
  },
192
165
  },
193
166
  computed: {
194
- ...mapState(["brandInfo"]),
195
- jfbAuthorize: (state) => state.jfbAuthorize,
167
+ ...mapState(["brandInfo",'jfbAuthorize']),
168
+
196
169
  prod_bottom() {
197
- return this.fixedStyle({height: 0, zIndex: 111});
198
- },
170
+ return this.fixedStyle({height: 0, zIndex: 111});
171
+ },
172
+ },
173
+ created() {
174
+ this.init(this.container)
199
175
  },
200
- created() {},
201
176
  methods: {
202
177
  onJfbLoad(options) {
203
- console.log(options,'optionsoptionsoptionsoptions');
204
178
  if (options["x-params"]) {
205
179
  try {
206
180
  let params = JSON.parse(Base64.decode(options["x-params"]));
207
181
  this.brandLogo = params["qrcode_logo"];
182
+
208
183
  } catch (e) {
209
184
  console.warn(options["x-params"]);
210
185
  }
211
186
  }
212
187
 
213
- this.$nextTick(() => {
214
- this.card_number = options.card_number;
215
- this.init();
216
-
217
- // if (card_number) {
218
- // this.card_number = card_number;
219
- // if (this.brandInfo['is_enable_pay_password'] === 'N') {
220
- // this.init();
221
- // } else if (this.brandInfo['is_enable_pay_password'] === 'Y' && this.userInfo['has_user_set_password'] === 'N') {
222
- // this.editShow = true
223
- // this.pwdTitle = '您还未设置支付密码,请设置您的平台支付密码'
224
- // } else if (this.brandInfo['is_enable_pay_password'] === 'Y' && this.userInfo['has_user_set_password'] === 'Y') {
225
- // this.show = true
226
- // this.textList = [
227
- // {
228
- // label: '查看卡详情',
229
- // },
230
- // {
231
- // label: '请输入支付密码',
232
- // }
233
- // ]
234
- // }
235
- // this.first = true;
236
- // } else {
237
- // setTimeout(() => {
238
- // this.$xdUniHelper.navigateTo({
239
- // url: `/pages/index/index`
240
- // }, false)
241
- // }, 2000)
242
- // }
243
- });
188
+ this.card_number = options.card_number;
189
+ this.dataInit();
244
190
  },
245
- /**
246
- * @description 监听事件变化
247
- * @param container {object} 业务组件对象自己
248
- */
249
- init() {
191
+
192
+ dataInit(){
250
193
  this.detail();
251
194
  this.refrush();
252
195
  if(this.$configProject.isPreview) {
253
196
  this.timeStr = "01分19秒"
254
197
  }
255
- this.backUrl = getContainerPropsValue( this.container, "content.back_url", { value: "" }).value;
256
- this.shift_url = getContainerPropsValue( this.container, "content.shift_url", { value: "" }).value;
198
+ },
199
+
200
+ /**
201
+ * @description 监听事件变化
202
+ * @param container {object} 业务组件对象自己
203
+ */
204
+ init(container) {
205
+ this.backUrl = getContainerPropsValue(container, "content.back_url", { value: "" }).value;
206
+ this.shift_url = getContainerPropsValue(container, "content.shift_url", { value: "" }).value;
207
+ //'wechat_mini_program|default'
208
+ this.entryGroupId = getContainerPropsValue(container,"content.entryGroupId","default");
257
209
  },
258
210
  /**
259
211
  * @description 获取卡详情
@@ -264,6 +216,7 @@ export default {
264
216
  data: {
265
217
  card_number: this.card_number,
266
218
  is_show_entry_settings: "Y",
219
+ group_id: this.entryGroupId
267
220
  },
268
221
  })
269
222
  .then((res) => {
@@ -279,6 +232,9 @@ export default {
279
232
  100
280
233
  );
281
234
  }
235
+
236
+ res['site_entry_settings'] = this.filterNotSupportEntry(res['site_entry_settings']);
237
+
282
238
  if(res && res.site_entry_settings && res.site_entry_settings.length>0) {
283
239
  res.site_entry_settings = res.site_entry_settings.filter(item=>{
284
240
  item['image_url'] = getServiceUrl(item['image_url'])
@@ -307,7 +263,6 @@ export default {
307
263
  handleRefresh(){
308
264
  clearInterval(this.timeer);
309
265
  this.detail();
310
- // this.refrush();
311
266
  },
312
267
  refrush() {
313
268
  if (this.stopTimer) return;
@@ -317,8 +272,7 @@ export default {
317
272
  return;
318
273
  }
319
274
  this.time++;
320
- let time =
321
- this.time >= 5 ? 32 * 1000 : Math.pow(this.date, this.time) * 1000;
275
+ let time = this.time >= 5 ? 32 * 1000 : Math.pow(this.date, this.time) * 1000;
322
276
  this.refrushTimeer = setTimeout(() => {
323
277
  jfbRootExec("getCardYueEntry", {
324
278
  vm: this,
@@ -327,9 +281,8 @@ export default {
327
281
  },
328
282
  })
329
283
  .then((res) => {
330
- //res[4]['value'] = this.$xdUniHelper.random(20,30);
331
284
  let refrushInfo = this.$xdUniHelper.cloneDeep(this.info);
332
- if (res && res !== null && Object.keys(res).length > 0) {
285
+ if (res && Object.keys(res).length > 0) {
333
286
  if (res.card_point) {
334
287
  refrushInfo.card_point = this.$xdUniHelper.divisionFloatNumber(
335
288
  res.card_point,
@@ -352,81 +305,125 @@ export default {
352
305
  .catch();
353
306
  }, time);
354
307
  },
355
- /**
308
+ /**
356
309
  * @description 已绑定卡登录
357
- * @param item
310
+ * @param entry
358
311
  */
359
- handleBindLogin(entry) {
312
+ handleBindLogin(entry) {
360
313
  //卡券登录
361
314
  this.$xdShowLoading({});
362
315
  jfbRootExec("detailLoginEntryCardBind", {
363
- vm: this,
364
- data: { card_number: this.info["card_number"] },
365
- })
366
- .then((res) => {
367
- this.$xdHideLoading();
368
- //#ifdef MP-WEIXIN
369
- if (this.jfbAuthorize !== null) {
370
- this.jfbAuthorize.setCardToken(res);
371
- this.handleToApp(entry);
372
- }
373
- //#endif
374
- if (this.$configProject.isPreview) {
375
- console.log("handleBindLogin", "预览模式不跳转", this.inCallback);
376
- }
377
-
378
- else {
379
- this.handleToApp(entry);
380
- }
381
- })
382
- .catch((res) => {
383
- this.$xdHideLoading();
384
- });
385
- },
386
- toApp(url){
387
- this.$xdUniHelper.redirectTo({
388
- url
316
+ vm: this,
317
+ data: { card_number: this.info["card_number"] },
389
318
  })
319
+ .then((res) => {
320
+ this.$xdHideLoading();
321
+
322
+ //#ifdef MP-WEIXIN
323
+ if (this.jfbAuthorize !== null) {
324
+ this.jfbAuthorize.setCardToken(res);
325
+ this.handleClick(entry);
326
+ return
327
+ }
328
+ //#endif
329
+
330
+ if (this.$configProject.isPreview) {
331
+ console.log("handleBindLogin", "预览模式不跳转", this.inCallback);
332
+ }
333
+ else {
334
+ this.handleClick(entry);
335
+ }
336
+ })
337
+ .catch((res) => {
338
+ this.$xdHideLoading();
339
+ });
390
340
  },
391
- handleToApp(entry){
392
- let item, redirectUrl;
393
- try{
394
- item = JSON.parse(entry['redirect_data']);
395
- }catch (e) {
396
- return;
341
+
342
+ getCardPath(custom_redirect_data = {}){
343
+ //#ifdef H5
344
+ return null;
345
+ //#endif
346
+ //#ifdef MP-WEIXIN
347
+ const dir = custom_redirect_data.dir;
348
+ const actDir = this.projectAttr['deploy_dir'];
349
+ if(custom_redirect_data.appType === 'wxmp') {
350
+ if(dir === actDir) {
351
+ return {
352
+ cardPath: custom_redirect_data.path,
353
+ cardSelf: 'wxmp',
354
+ };
355
+ }
356
+ else return null;
397
357
  }
398
- const {dir, path, host} = item;
358
+ else if(custom_redirect_data.appType === 'h5'){
359
+ return {
360
+ cardPath: custom_redirect_data.site_url,
361
+ cardSelf: 'h5',
362
+ };
363
+ }
364
+ else return null;
365
+ //#endif
366
+ },
367
+
368
+
369
+ handleClick(entry){
370
+ const {dir, path, host, appType} = entry['redirect_data'];
371
+ let regHttp = /^(\/\/|http:\/\/|https:\/\/).+$/;
372
+ let regSp = /(-apiuri\/v)/;
373
+
374
+ if(!appType) entry.redirect_data.appType = 'h5';
399
375
  let nsp = Base64.encodeURI(JSON.stringify({business_code: entry['business_code']}));
400
376
 
401
377
  //外站配置地址
402
- if (entry.redirect_type === 'URL') {
403
- if (item['path'].indexOf('?') === -1) {
404
- redirectUrl = `${item['path']}?x-common=${nsp}&vs=${new Date().getTime()}`
405
- } else redirectUrl = `${item['path']}&x-common=${nsp}&vs=${new Date().getTime()}`;
406
- this.toApp(redirectUrl);
407
- return;
378
+ if(entry.redirect_type === 'URL') {
379
+ if(regHttp.test(entry.redirect_data['path']) || regSp.test(entry.redirect_data['path'])) {
380
+ this.$xdUniHelper.redirectTo({
381
+ url:`${entry.redirect_data['path']}?x-common=${nsp}&vs=${new Date().getTime()}${cardPathStr}`
382
+ }, false)
383
+ }
384
+ else {
385
+ console.error(`配置错误:${entry.redirect_data['path']}`);
386
+ throw new Error(`配置错误:${entry.redirect_data['path']}`)
387
+ }
388
+ return
408
389
  }
409
390
 
410
- //站内转换
411
- let jumpUrl = item.path;
412
- //#ifdef H5
413
- jumpUrl = `//${host}/${dir}${path}`;
414
- //#endif
415
-
416
- if (item['fixed_business_code'] === '') {
417
- redirectUrl = `${jumpUrl}?x-common=${nsp}&vs=${new Date().getTime()}`
391
+ //站内应用处理
392
+ let jumpUrl = path;
393
+ let cardPathStr = '';
394
+ const {deploy_dir} = this.projectAttr;
395
+ if(host === this.projectAttr.host && deploy_dir !== dir){
396
+ jumpUrl = `//${host}/${dir}${path}`;
397
+ //#ifdef MP-WEIXIN
398
+ jumpUrl = `https:${jumpUrl}`;
399
+ //#endif
418
400
  }
419
- else {
420
- redirectUrl = `${jumpUrl}?x-common=${nsp}&vs=${new Date().getTime()}`
401
+
402
+
403
+ //#ifdef MP-WEIXIN
404
+ //获取自定义卡券登录地址(微信小程序跳转到H5平台起作用)
405
+ if(entry.redirect_data.appType === 'h5') {
406
+ const custom_redirect_data = this.$xdUniHelper.checkVarType(entry['custom_redirect_data']) === 'object'?entry['custom_redirect_data']:{};
407
+ const cardPathObject = this.getCardPath(custom_redirect_data);
408
+ if(cardPathObject !== null) {
409
+ const {cardPath, cardSelf} =cardPathObject
410
+ if(cardPath) cardPathStr = `&card-login=${encodeURIComponent(cardPath)}&cardSelf=${cardSelf}`
411
+ }
421
412
  }
422
- this.toApp(redirectUrl);
413
+ //#endif
414
+
415
+ jumpUrl = `${jumpUrl}?x-common=${nsp}&vs=${new Date().getTime()}${cardPathStr}`;
416
+ console.warn(`entry.path:${jumpUrl}`);
417
+ if(regHttp.test(jumpUrl)) this.$xdUniHelper.redirectTo({url:jumpUrl}, false)
418
+ else this.$xdUniHelper.navigateTo({url:jumpUrl}, false)
423
419
  },
420
+
424
421
  handleOnClose() {
425
422
  this.editShow = false;
426
423
  },
427
424
  handlePwdOnSubmit(val) {
428
425
  this.password = val;
429
- this.init();
426
+ this.dataInit();
430
427
  },
431
428
 
432
429
  handleOnForget() {
@@ -439,13 +436,12 @@ export default {
439
436
  },
440
437
  handleUnBindCard() {
441
438
  this.$xdConfirm({
442
- $vm: this,
439
+ styles: this.styles,
443
440
  content: "您确定要解除绑定票券吗",
444
441
  title: "系统提示",
445
442
  width: "80%",
446
443
  isTitle: true,
447
444
  zIndex: 2000,
448
- vm: this,
449
445
  success: (res) => {
450
446
  if (res.confirm) {
451
447
  this.timeStr = ""
@@ -495,7 +491,7 @@ export default {
495
491
  },
496
492
  handleToShift() {
497
493
  this.$xdUniHelper.navigateTo({
498
- url: `${this.shift_url}?card_number=${this.info["card_number"]}`,
494
+ url: `${this.shift_url}?card_number=${this.info["card_number"]}`,
499
495
  });
500
496
  },
501
497
  onJfbBack(options) {
@@ -507,6 +503,7 @@ export default {
507
503
  }
508
504
  this.$xdUniHelper.navigateBack();
509
505
  },
506
+
510
507
  onJfbUnload() {
511
508
  this.timeStr = ""
512
509
  if (this.timeer) {
@@ -516,39 +513,9 @@ export default {
516
513
  clearTimeout(this.refrushTimeer);
517
514
  }
518
515
  },
519
- onJfbScroll(options) {
520
- console.log("event.onJfbScroll", options);
521
- },
522
- onJfbReachBottom(options) {
523
- console.log("event.onJfbReachBottom", options);
524
- },
516
+
525
517
  onJfbShow(options) {
526
- console.log("event.onJfbShow", options);
527
518
  this.onJfbLoad(options)
528
- // if (this.first) {
529
- // if (this.brandInfo["is_enable_pay_password"] === "N") {
530
- // this.init();
531
- // } else if (
532
- // this.brandInfo["is_enable_pay_password"] === "Y" &&
533
- // this.userInfo["has_user_set_password"] === "N"
534
- // ) {
535
- // this.editShow = true;
536
- // this.pwdTitle = "您还未设置支付密码,请设置您的平台支付密码";
537
- // } else if (
538
- // this.brandInfo["is_enable_pay_password"] === "Y" &&
539
- // this.userInfo["has_user_set_password"] === "Y"
540
- // ) {
541
- // this.show = true;
542
- // this.textList = [
543
- // {
544
- // label: "查看卡详情",
545
- // },
546
- // {
547
- // label: "请输入支付密码",
548
- // },
549
- // ];
550
- // }
551
- // }
552
519
  },
553
520
  onJfbHide(options) {
554
521
  this.timeStr = ""
@@ -610,215 +577,215 @@ export default {
610
577
  }
611
578
  padding: unit(26, rpx);
612
579
  .card-list {
613
- overflow: hidden;
614
- border-radius: unit(16, rpx);
615
- margin-bottom: unit(30, rpx);
616
-
617
- &:last-child {
618
- margin-bottom: 0;
619
- }
580
+ overflow: hidden;
581
+ border-radius: unit(16, rpx);
582
+ margin-bottom: unit(30, rpx);
620
583
 
584
+ &:last-child {
585
+ margin-bottom: 0;
586
+ }
621
587
 
622
- &__title {
623
- height: unit(56, rpx);
624
- display: flex;
625
- justify-content: flex-start;
626
- align-items: center;
627
-
628
- & > view {
629
- padding: 0 unit(80, rpx);
630
- font-size: unit(24, rpx);
631
- line-height: unit(56, rpx);
632
- background: rgba(102, 102, 102, 0.4);
633
- color: #fff;
634
- border-radius: 0 0 unit(16, rpx) 0;
635
- }
636
588
 
637
- }
638
-
639
- &__content {
640
- padding: unit(10, rpx) unit(40, rpx) 0;
641
- height: unit(86, rpx);
642
- display: flex;
643
- justify-content: space-between;
644
- align-items: center;
645
-
646
- & > view:first-child {
647
- font-size: unit(36, rpx);
648
- line-height: unit(86, rpx);
649
- color: #fff;
650
- font-weight: 700;
651
- }
589
+ &__title {
590
+ height: unit(56, rpx);
591
+ display: flex;
592
+ justify-content: flex-start;
593
+ align-items: center;
652
594
 
653
- & > view:nth-child(2) {
654
- font-size: unit(24, rpx);
655
- display: flex;
656
- justify-content: space-between;
657
- align-items: center;
658
- flex-flow: wrap;
659
- flex-direction: column;
660
- color: #fff;
661
- }
662
- }
595
+ & > view {
596
+ padding: 0 unit(80, rpx);
597
+ font-size: unit(24, rpx);
598
+ line-height: unit(56, rpx);
599
+ background: rgba(102, 102, 102, 0.4);
600
+ color: #fff;
601
+ border-radius: 0 0 unit(16, rpx) 0;
602
+ }
663
603
 
664
- &__date {
665
- padding: 0 unit(40, rpx);
666
- font-size: unit(28, rpx);
667
- line-height: unit(32, rpx);
668
- color: #fff;
669
- }
604
+ }
670
605
 
671
- &__yue {
672
- padding: unit(10, rpx) unit(40, rpx) 0;
673
- font-size: unit(28, rpx);
674
- line-height: unit(32, rpx);
675
- color: #fff;
606
+ &__content {
607
+ padding: unit(10, rpx) unit(40, rpx) 0;
608
+ height: unit(86, rpx);
609
+ display: flex;
610
+ justify-content: space-between;
611
+ align-items: center;
676
612
 
677
- & > text:nth-child(2) {
678
- font-weight: 700;
679
- }
680
- }
613
+ & > view:first-child {
614
+ font-size: unit(36, rpx);
615
+ line-height: unit(86, rpx);
616
+ color: #fff;
617
+ font-weight: 700;
618
+ }
681
619
 
682
- &__other {
683
- display: flex;
684
- justify-content: flex-start;
685
- align-items: center;
686
- padding: unit(20, rpx) unit(40, rpx) 0;
687
- margin-top: unit(0, rpx);
688
-
689
- & > view {
690
- border-radius:unit(8, rpx);
691
- background: rgba(255, 255, 255, 0.2);
692
- height: unit(48, rpx);
693
- line-height: unit(48, rpx);
694
- display: flex;
695
- justify-content: flex-start;
696
- align-items: center;
697
- font-weight: 400;
698
- font-size: unit(24, rpx);
699
- padding: 0 unit(20, rpx);
700
- color: #fff;
701
- }
620
+ & > view:nth-child(2) {
621
+ font-size: unit(24, rpx);
622
+ display: flex;
623
+ justify-content: space-between;
624
+ align-items: center;
625
+ flex-flow: wrap;
626
+ flex-direction: column;
627
+ color: #fff;
628
+ }
629
+ }
702
630
 
631
+ &__date {
632
+ padding: 0 unit(40, rpx);
633
+ font-size: unit(28, rpx);
634
+ line-height: unit(32, rpx);
635
+ color: #fff;
636
+ }
703
637
 
704
- }
638
+ &__yue {
639
+ padding: unit(10, rpx) unit(40, rpx) 0;
640
+ font-size: unit(28, rpx);
641
+ line-height: unit(32, rpx);
642
+ color: #fff;
705
643
 
706
- &__nodata {
707
- padding: unit(20, rpx) unit(40, rpx) 0;
708
- margin-top: unit(0, rpx);
709
- color: #fff;
710
- font-size: unit(28, rpx);
711
- }
644
+ & > text:nth-child(2) {
645
+ font-weight: 700;
646
+ }
647
+ }
712
648
 
713
- &__entry {
714
- padding: unit(20, rpx) unit(40, rpx) 0;
715
- & > view {
716
- line-height: unit(64, rpx);
717
- text-align: center;
718
- font-size: unit(26, rpx);
719
- border-radius: unit(32, rpx);
720
- background: rgba(255, 255, 255, 1);
721
- box-shadow: 0 unit(4, rpx) unit(8, rpx) rgba(156, 62, 0, 0.11);
722
- font-weight: 500;
723
- }
724
- }
649
+ &__other {
650
+ display: flex;
651
+ justify-content: flex-start;
652
+ align-items: center;
653
+ padding: unit(20, rpx) unit(40, rpx) 0;
654
+ margin-top: unit(0, rpx);
725
655
 
726
- &__entrys {
727
- margin: unit(20, rpx) unit(20, rpx) 0;
728
- padding: unit(30, rpx);
729
- border-radius: unit(16, rpx);
730
- background: rgba(255, 255, 255, 1);
731
- box-shadow: 0 unit(4, rpx) unit(8, rpx) rgba(156, 62, 0, 0.11);
656
+ & > view {
657
+ border-radius:unit(8, rpx);
658
+ background: rgba(255, 255, 255, 0.2);
659
+ height: unit(48, rpx);
660
+ line-height: unit(48, rpx);
661
+ display: flex;
662
+ justify-content: flex-start;
663
+ align-items: center;
664
+ font-weight: 400;
665
+ font-size: unit(24, rpx);
666
+ padding: 0 unit(20, rpx);
667
+ color: #fff;
668
+ }
732
669
 
733
- &-title {
734
- display: flex;
735
- justify-content: space-between;
736
- align-items: center;
737
670
 
671
+ }
738
672
 
739
- & > view:first-child {
673
+ &__nodata {
674
+ padding: unit(20, rpx) unit(40, rpx) 0;
675
+ margin-top: unit(0, rpx);
676
+ color: #fff;
740
677
  font-size: unit(28, rpx);
741
- font-weight: 500;
742
- flex: 1;
743
678
  }
744
679
 
745
- & > view:nth-child(2) {
746
- display: flex;
747
- justify-content: flex-start;
748
- align-items: center;
749
- flex-shrink: 0;
750
- font-size: unit(20, rpx);
751
- color: #999;
680
+ &__entry {
681
+ padding: unit(20, rpx) unit(40, rpx) 0;
682
+ & > view {
683
+ line-height: unit(64, rpx);
684
+ text-align: center;
685
+ font-size: unit(26, rpx);
686
+ border-radius: unit(32, rpx);
687
+ background: rgba(255, 255, 255, 1);
688
+ box-shadow: 0 unit(4, rpx) unit(8, rpx) rgba(156, 62, 0, 0.11);
689
+ font-weight: 500;
690
+ }
752
691
  }
753
- }
754
-
755
- &-scroll {
756
692
 
757
- }
693
+ &__entrys {
694
+ margin: unit(20, rpx) unit(20, rpx) 0;
695
+ padding: unit(30, rpx);
696
+ border-radius: unit(16, rpx);
697
+ background: rgba(255, 255, 255, 1);
698
+ box-shadow: 0 unit(4, rpx) unit(8, rpx) rgba(156, 62, 0, 0.11);
758
699
 
759
- &-item {
760
- display: flex;
761
- justify-content: flex-start;
762
- align-items: center;
763
- flex-flow: nowrap;
764
- margin-left: unit(-14, rpx);
765
- padding-top: unit(20, rpx);
700
+ &-title {
701
+ display: flex;
702
+ justify-content: space-between;
703
+ align-items: center;
766
704
 
767
- & > view {
768
- width: unit(120, rpx);
769
- margin-right: unit(10, rpx);
770
- flex-shrink: 0;
771
- display: flex;
772
- justify-content: center;
773
- flex-direction: column;
774
- align-items: center;
775
705
 
776
- & > view:first-child {
777
- width: unit(76, rpx);
778
- height: unit(76, rpx);
779
- overflow: hidden;
706
+ & > view:first-child {
707
+ font-size: unit(28, rpx);
708
+ font-weight: 500;
709
+ flex: 1;
710
+ }
780
711
 
781
- & > image {
782
- height: 100%;
783
- width: 100%;
712
+ & > view:nth-child(2) {
713
+ display: flex;
714
+ justify-content: flex-start;
715
+ align-items: center;
716
+ flex-shrink: 0;
717
+ font-size: unit(20, rpx);
718
+ color: #999;
784
719
  }
785
720
  }
786
721
 
787
- & > view:nth-child(2) {
788
- margin-top: unit(10, rpx);
789
- font-size: unit(24, rpx);
790
- line-height: unit(36, rpx);
791
- margin-bottom: unit(10, rpx);
722
+ &-scroll {
723
+
792
724
  }
793
725
 
794
- & > view:nth-child(3) {
726
+ &-item {
795
727
  display: flex;
796
728
  justify-content: flex-start;
797
729
  align-items: center;
798
- flex-shrink: 0;
799
- font-size: unit(20, rpx);
800
- color: #999;
801
- }
730
+ flex-flow: nowrap;
731
+ margin-left: unit(-14, rpx);
732
+ padding-top: unit(20, rpx);
733
+
734
+ & > view {
735
+ width: unit(120, rpx);
736
+ margin-right: unit(10, rpx);
737
+ flex-shrink: 0;
738
+ display: flex;
739
+ justify-content: center;
740
+ flex-direction: column;
741
+ align-items: center;
742
+
743
+ & > view:first-child {
744
+ width: unit(76, rpx);
745
+ height: unit(76, rpx);
746
+ overflow: hidden;
747
+
748
+ & > image {
749
+ height: 100%;
750
+ width: 100%;
751
+ }
752
+ }
802
753
 
803
- &:last-child {
804
- margin-right: 0;
805
- }
754
+ & > view:nth-child(2) {
755
+ margin-top: unit(10, rpx);
756
+ font-size: unit(24, rpx);
757
+ line-height: unit(36, rpx);
758
+ margin-bottom: unit(10, rpx);
759
+ }
806
760
 
807
- }
761
+ & > view:nth-child(3) {
762
+ display: flex;
763
+ justify-content: flex-start;
764
+ align-items: center;
765
+ flex-shrink: 0;
766
+ font-size: unit(20, rpx);
767
+ color: #999;
768
+ }
808
769
 
770
+ &:last-child {
771
+ margin-right: 0;
772
+ }
809
773
 
810
- }
811
- }
774
+ }
812
775
 
813
- &-warp {
814
- width: unit(700, rpx);
815
- // min-height: unit(290, rpx);
816
- position: relative;
817
- border-radius: unit(16, rpx);
818
- background-size: 100%;
819
- padding-bottom: unit(20, rpx);
820
- }
821
- }
776
+
777
+ }
778
+ }
779
+
780
+ &-warp {
781
+ width: unit(700, rpx);
782
+ // min-height: unit(290, rpx);
783
+ position: relative;
784
+ border-radius: unit(16, rpx);
785
+ background-size: 100%;
786
+ padding-bottom: unit(20, rpx);
787
+ }
788
+ }
822
789
 
823
790
  &-qrcode {
824
791
  text-align: center;
@@ -917,54 +884,56 @@ export default {
917
884
  }
918
885
 
919
886
  &-content {
920
- display: flex;
921
- justify-content: flex-start;
922
- align-items: center;
923
- flex-flow: wrap;
924
- padding-left: unit(30, rpx);
925
-
926
- & > view {
927
- width: unit(120, rpx);
928
- margin-right: unit(10, rpx);
929
- flex-shrink: 0;
930
887
  display: flex;
931
- justify-content: center;
932
- flex-direction: column;
888
+ justify-content: flex-start;
933
889
  align-items: center;
890
+ flex-flow: wrap;
891
+ padding-left: unit(30, rpx);
934
892
 
935
- & > view:first-child {
936
- width: unit(76, rpx);
937
- height: unit(76, rpx);
938
- overflow: hidden;
893
+ & > view {
894
+ width: unit(120, rpx);
895
+ margin-right: unit(10, rpx);
896
+ flex-shrink: 0;
897
+ display: flex;
898
+ justify-content: center;
899
+ flex-direction: column;
900
+ align-items: center;
939
901
 
940
- & > image {
941
- height: 100%;
942
- width: 100%;
902
+ & > view:first-child {
903
+ width: unit(76, rpx);
904
+ height: unit(76, rpx);
905
+ overflow: hidden;
906
+
907
+ & > image {
908
+ height: 100%;
909
+ width: 100%;
910
+ }
943
911
  }
944
- }
945
912
 
946
- & > view:nth-child(2) {
947
- margin-top: unit(10, rpx);
948
- font-size: unit(24, rpx);
949
- line-height: unit(36, rpx);
950
- margin-bottom: unit(10, rpx);
951
- }
913
+ & > view:nth-child(2) {
914
+ margin-top: unit(10, rpx);
915
+ font-size: unit(24, rpx);
916
+ line-height: unit(36, rpx);
917
+ height: unit(36, rpx);
918
+ overflow: hidden;
919
+ margin-bottom: unit(10, rpx);
920
+ }
952
921
 
953
- & > view:nth-child(3) {
954
- display: flex;
955
- justify-content: flex-start;
956
- align-items: center;
957
- flex-shrink: 0;
958
- font-size: unit(20, rpx);
959
- color: #999;
960
- }
922
+ & > view:nth-child(3) {
923
+ display: flex;
924
+ justify-content: flex-start;
925
+ align-items: center;
926
+ flex-shrink: 0;
927
+ font-size: unit(20, rpx);
928
+ color: #999;
929
+ }
961
930
 
962
- &:last-child {
963
- margin-right: 0;
931
+ &:last-child {
932
+ margin-right: 0;
933
+ }
964
934
  }
965
935
  }
966
936
  }
967
- }
968
937
 
969
938
  .fixe_bottom{
970
939
  display: flex;