jufubao-base 1.0.172 → 1.0.174-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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-base",
3
- "version": "1.0.172",
3
+ "version": "1.0.174-beta1",
4
4
  "private": false,
5
5
  "description": "聚福宝业务组件基础插件包",
6
6
  "main": "index.js",
@@ -16,6 +16,44 @@ export default {
16
16
  { label: '账号登录页', value: 'account' },
17
17
  ],
18
18
  },
19
+ {
20
+ label: "logo配置:",
21
+ ele: "title",
22
+ groupKey: "content",
23
+ size: "small"
24
+ },
25
+ {
26
+ label: "是否展示logo:",
27
+ ele: "xd-radio",
28
+ valueKey: "showLogo",
29
+ value: data.showLogo || "Y",
30
+ groupKey: "content",
31
+ list: [
32
+ { label: '展示', value: "Y" },
33
+ { label: '隐藏', value: "N" },
34
+ ],
35
+ },
36
+ {
37
+ label: '自定义Logo:',
38
+ ele: "xd-upload",
39
+ valueKey: 'customLogoUrl',
40
+ groupKey:'content',
41
+ value: data.customLogoUrl || {},
42
+ defaultValue: data.customLogoUrl || null,
43
+ slot: true,
44
+ oneWidth: 100,
45
+ oneHeight: 100,
46
+ elinputClassName: 'input40',
47
+ tipsformet: '上传格式:@imageType@不超过@size@MB.建议比例1:1',
48
+ type: ['jpg', 'png', 'jpeg'],
49
+ styleType: 'one',
50
+ uploadType: 'aliyun',
51
+ size: 5,
52
+ action: 'action',
53
+ sort: true,
54
+ maxlen: 100,
55
+ hidden: data.showLogo !== "Y",
56
+ },
19
57
  {
20
58
  ele: 'title',
21
59
  label: '按钮内容配置',
@@ -597,7 +635,7 @@ export default {
597
635
  label: 'logo样式配置',
598
636
  size: 'small',
599
637
  groupKey: 'style',
600
- hidden: data.previewCurrent !== "auth",
638
+ hidden: data.previewCurrent !== "auth" || data.showLogo !== "Y",
601
639
  },
602
640
  {
603
641
  label: "logo区域高度:",
@@ -608,7 +646,7 @@ export default {
608
646
  groupKey:'style',
609
647
  placeholder: "请输入logo区域高度",
610
648
  className: 'input60',
611
- hidden: data.previewCurrent !== "auth",
649
+ hidden: data.previewCurrent !== "auth" || data.showLogo !== "Y",
612
650
  },
613
651
  {
614
652
  label: "logo图片高度:",
@@ -619,7 +657,7 @@ export default {
619
657
  groupKey:'style',
620
658
  placeholder: "请输入logo图片高度",
621
659
  className: 'input60',
622
- hidden: data.previewCurrent !== "auth",
660
+ hidden: data.previewCurrent !== "auth" || data.showLogo !== "Y",
623
661
  },
624
662
  {
625
663
  label: 'logo圆角设置:',
@@ -639,7 +677,7 @@ export default {
639
677
  console.error(error);
640
678
  });
641
679
  },
642
- hidden: data.previewCurrent !== "auth",
680
+ hidden: data.previewCurrent !== "auth" || data.showLogo !== "Y",
643
681
  },
644
682
  {
645
683
  ele: "title",
@@ -648,6 +686,24 @@ export default {
648
686
  groupKey: "style",
649
687
  hidden: data.previewCurrent !== "account",
650
688
  },
689
+ {
690
+ label: '登录方式菜单外边距:',
691
+ ele: "xd-margin-padding",
692
+ valueKey: 'loginMenuMargin',
693
+ value: data.loginMenuMargin || {
694
+ top: 40,
695
+ right: 70,
696
+ bottom: 40,
697
+ left: 70
698
+ },
699
+ setting: {
700
+ type: 'margin',
701
+ },
702
+ placeholder: '请设置边距',
703
+ inline: false,
704
+ notice: '设置外边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
705
+ hidden: data.previewCurrent !== "account",
706
+ },
651
707
  {
652
708
  label: "输入框样式:",
653
709
  ele: 'xd-radio',
@@ -943,7 +999,7 @@ export default {
943
999
  },
944
1000
  placeholder: '请设置边距',
945
1001
  inline: false,
946
- notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:左右边距<span style="color: red">40</span>像素,上下边距<span style="color: red">20</span>像素',
1002
+ notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
947
1003
  hidden: data.previewCurrent !== "account",
948
1004
  },
949
1005
  {
@@ -1072,7 +1128,7 @@ export default {
1072
1128
  },
1073
1129
  placeholder: '请设置边距',
1074
1130
  inline: false,
1075
- notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
1131
+ notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:左右边距<span style="color: red">40</span>像素,上下边距<span style="color: red">20</span>像素',
1076
1132
  hidden: data.previewCurrent !== "auth"
1077
1133
  },
1078
1134
  {
@@ -19,13 +19,15 @@
19
19
  <view class="jfb-base-login__body" :style="{
20
20
  '--agreement-align': agreementAlign
21
21
  }">
22
+
23
+ <view v-if="showLogo === 'Y'" class="logo-wrap" :style="{
24
+ height: logoWrapHeight + 'rpx',
25
+ }">
26
+ <image :style="logoStyle" mode="heightFix" :src="logo" @click="openDebugger()" />
27
+ <view v-if="isShowSiteName === 'Y'" :style="{ color: logoTextColor, }" >{{ partnerName }}</view>
28
+ </view>
29
+
22
30
  <view v-if="showStep === 1" class="panel-login-auth">
23
- <view class="logo-wrap" :style="{
24
- height: logoWrapHeight + 'rpx',
25
- }">
26
- <image :style="logoStyle" mode="heightFix" :src="logo" @click="openDebugger()" />
27
- <view v-if="isShowSiteName === 'Y'" :style="{ color: logoTextColor, }" >{{ partnerName }}</view>
28
- </view>
29
31
  <view class="login_types" :style="authBtnBoxStyle">
30
32
  <!--#ifdef H5-->
31
33
  <xd-button
@@ -100,7 +102,7 @@
100
102
  </view>
101
103
  </view>
102
104
  <view v-if="showStep === 2" class="panel-login-password">
103
- <view class="phone-login-type">
105
+ <view class="phone-login-type" :style="accountLoginTypeBoxStyle">
104
106
  <view
105
107
  v-if="phoneLogin"
106
108
  class="_item"
@@ -116,7 +118,7 @@
116
118
  >密码登录<text :style="{ background: mainColor }"></text
117
119
  ></view>
118
120
  </view>
119
- <view style="margin-top: 40rpx" :style="loginFormStyle">
121
+ <view :style="loginFormStyle">
120
122
  <xd-form
121
123
  :label-align="labelAlign"
122
124
  :labelPosition="labelPosition"
@@ -434,6 +436,9 @@ export default {
434
436
  }, //条款内边距
435
437
  authAgreePadding: {}, //授权登录条款内边距
436
438
  authBtnPadding: {}, //授权登录按钮内边距
439
+ showLogo: "Y", //是否显示logo
440
+ customLogoUrl: {}, //自定义logo地址
441
+ loginMenuMargin: {},
437
442
  };
438
443
  },
439
444
  computed: {
@@ -484,18 +489,27 @@ export default {
484
489
  },
485
490
  authBtnBoxStyle(){
486
491
  let padding = `${this.checkValue(this.authBtnPadding.top, 20)}rpx`;
487
- padding = `${padding} ${this.checkValue(this.authBtnPadding.right, 20)}rpx`;
492
+ padding = `${padding} ${this.checkValue(this.authBtnPadding.right, 40)}rpx`;
488
493
  padding = `${padding} ${this.checkValue(this.authBtnPadding.bottom, 20)}rpx`;
489
- padding = `${padding} ${this.checkValue(this.authBtnPadding.left, 20)}rpx`;
494
+ padding = `${padding} ${this.checkValue(this.authBtnPadding.left, 40)}rpx`;
490
495
  return this.styleObjectToString({
491
496
  padding: padding,
492
497
  })
493
498
  },
494
499
  btnWrapStyle(){
495
500
  let padding = `${this.checkValue(this.btnMargin.top, 20)}rpx`;
496
- padding = `${padding} ${this.checkValue(this.btnMargin.right, 40)}rpx`;
501
+ padding = `${padding} ${this.checkValue(this.btnMargin.right, 20)}rpx`;
497
502
  padding = `${padding} ${this.checkValue(this.btnMargin.bottom, 20)}rpx`;
498
- padding = `${padding} ${this.checkValue(this.btnMargin.left, 40)}rpx`;
503
+ padding = `${padding} ${this.checkValue(this.btnMargin.left, 20)}rpx`;
504
+ return this.styleObjectToString({
505
+ padding: padding,
506
+ })
507
+ },
508
+ accountLoginTypeBoxStyle(){
509
+ let padding = `${this.checkValue(this.loginMenuMargin.top, 20)}rpx`;
510
+ padding = `${padding} ${this.checkValue(this.loginMenuMargin.right, 20)}rpx`;
511
+ padding = `${padding} ${this.checkValue(this.loginMenuMargin.bottom, 20)}rpx`;
512
+ padding = `${padding} ${this.checkValue(this.loginMenuMargin.left, 20)}rpx`;
499
513
  return this.styleObjectToString({
500
514
  padding: padding,
501
515
  })
@@ -621,7 +635,7 @@ export default {
621
635
  name = this["siteInfo"]["mapping"]["site_name"];
622
636
  if (this.projectAttr["site_logo"])
623
637
  logo = getServiceUrl(this.projectAttr["site_logo"], "size3");
624
- this.logo = logo || "//dummyimage.com/100x100";
638
+
625
639
  this.partnerName = name || "聚福宝福利";
626
640
  this.logoTextColor = getContainerPropsValue(value, "content.logoTextColor", "#333");
627
641
  this.callback_url = getContainerPropsValue(value, "content.callback_url", {value: ''}).value;
@@ -668,10 +682,28 @@ export default {
668
682
  this.contentFont = getContainerPropsValue(value, "content.contentFont", {});
669
683
  this.placeholderFont = getContainerPropsValue(value, "content.placeholderFont", {});
670
684
  this.getCodeFont = getContainerPropsValue(value, "content.getCodeFont", {});
671
- this.agreeFont = getContainerPropsValue(value, "content.agreeFont", {});
672
- this.privacyFont = getContainerPropsValue(value, "content.privacyFont", {});
685
+ this.showLogo = getContainerPropsValue(value, "content.showLogo", 'Y');
686
+ this.customLogoUrl = getContainerPropsValue(value, "content.customLogoUrl", {});
687
+ this.loginMenuMargin = getContainerPropsValue(value, "content.loginMenuMargin", {});
688
+
689
+ if(this.customLogoUrl && this.customLogoUrl.path){
690
+ logo = this.customLogoUrl.path;
691
+ }
692
+ this.logo = logo || "//dummyimage.com/100x100";
693
+
694
+ let agreeFont = getContainerPropsValue(value, "content.agreeFont", {});
695
+ if(!agreeFont.color) {
696
+ agreeFont.color = '#666'
697
+ }
698
+ this.agreeFont = agreeFont;
699
+ let privacyFont = getContainerPropsValue(value, "content.privacyFont", {});
700
+ if(!privacyFont.color) {
701
+ privacyFont.color = this.mainColor
702
+ }
703
+ this.privacyFont = privacyFont;
704
+
673
705
  this.agreementAlign = getContainerPropsValue(value, "content.agreementAlign", 'center');
674
- console.log(this.agreePadding, 'this.agreePadding');
706
+ console.log(this.customLogoUrl, 'this.customLogoUrl');
675
707
  if(this.inputStyle === 'face'){
676
708
  this.labelPosition = 'top';
677
709
  this.labelAlign = 'left';
@@ -1135,6 +1167,21 @@ export default {
1135
1167
  border: 1px solid @xd-base-color;
1136
1168
  border-radius: 40rpx;
1137
1169
  }
1170
+ .logo-wrap {
1171
+ display: flex;
1172
+ align-items: center;
1173
+ justify-content: center;
1174
+ flex-direction: column;
1175
+ image {
1176
+ width: 180rpx;
1177
+ height: 180rpx;
1178
+ margin-bottom: unit(12,rpx);
1179
+ }
1180
+ & > view {
1181
+ font-size: unit(36,rpx);
1182
+ font-weight: 600;
1183
+ }
1184
+ }
1138
1185
  .panel-login-auth {
1139
1186
  ::v-deep .uni-forms-item__label {
1140
1187
  .label-text {
@@ -1142,21 +1189,7 @@ export default {
1142
1189
  color: #a6a6a6;
1143
1190
  }
1144
1191
  }
1145
- .logo-wrap {
1146
- display: flex;
1147
- align-items: center;
1148
- justify-content: center;
1149
- flex-direction: column;
1150
- image {
1151
- width: 180rpx;
1152
- height: 180rpx;
1153
- margin-bottom: unit(12,rpx);
1154
- }
1155
- view {
1156
- font-size: unit(36,rpx);
1157
- font-weight: 600;
1158
- }
1159
- }
1192
+
1160
1193
  .login_types {
1161
1194
  padding: 10rpx 50rpx;
1162
1195
 
@@ -442,6 +442,9 @@
442
442
  @import "./JfbBaseNoticeLess.less";
443
443
 
444
444
  .jfb-base-notice {
445
+ position: relative;
446
+ z-index: 100;
447
+
445
448
  &__body{
446
449
  .content-list {
447
450
  display: flex;
@@ -103,7 +103,7 @@
103
103
  v-model="form.valid_code"
104
104
  placeholder="请输入验证码"
105
105
  />
106
- <view class="form_valid_code">
106
+ <view class="form_valid_code" @click="switchValidToken">
107
107
  <image
108
108
  style="width: 100%;height:100%"
109
109
  :src="validImageAPIUrl + '?image_width=160&image_height=50&token='+ valid_token"
@@ -461,7 +461,7 @@
461
461
  }
462
462
  },
463
463
  toShowCouponDialog(){
464
- if(this.info){
464
+ if(this.form.card_number){
465
465
  jfbRootFnExec(this, 'onCustomEvent')("@showBaseConDialog", {user_card_number: this.form.card_number})
466
466
  }
467
467
  },
@@ -478,6 +478,7 @@
478
478
  let path = this.getUrlCallback(this.my_card_url || this.backUrl);
479
479
  //有优惠券处理
480
480
  if(this.hasCon){
481
+ console.warn("绑定成功有优惠券处理");
481
482
  this.toShowCouponDialog();
482
483
  this.$bus.$on("onCloseConDialog",(container_id) => {
483
484
  if(container_id === this.hasCon){
@@ -526,18 +527,24 @@
526
527
  title: '请输入验证码',
527
528
  icon: "none"
528
529
  })
529
- await this.checkValidToken();
530
+ this.$xdShowLoading({});
530
531
 
531
- jfbRootExec("pwdCardBind", {
532
- vm: this,
533
- data: {
534
- card_password: card_password,
535
- card_number: card_number + "",
536
- is_show_pop: "Y"
537
- }
538
- }).then(res => {
539
- this.handlerAfterBindCard(res);
532
+ this.checkValidToken().then(() => {
533
+ jfbRootExec("pwdCardBind", {
534
+ vm: this,
535
+ data: {
536
+ card_password: card_password,
537
+ card_number: card_number + "",
538
+ is_show_pop: "Y"
539
+ }
540
+ }).then(res => {
541
+ this.$xdHideLoading();
542
+ this.handlerAfterBindCard(res);
543
+ })
544
+ }).catch(err => {
545
+ this.$xdHideLoading();
540
546
  })
547
+
541
548
  },
542
549
  //绑定电子码票券
543
550
  toBindCardDigital(){
@@ -52,230 +52,6 @@ export default {
52
52
  maxlen: 100,
53
53
  hidden: data.previewCurrent !== 'main'
54
54
  },
55
- {
56
- label: "票券使用规则",
57
- ele: 'xd-site-news',
58
- valueKey: 'cardRule',
59
- groupKey:'content',
60
- value: data.cardRule || null,
61
- className: 'input70',
62
- setting: {
63
- config: {
64
- sort: true,
65
- maxlen: 100,
66
- action: 'aliyun',
67
- size: 5,
68
- tipsformet: '上传文件格式:@imageType@,不超过@size@MB.',
69
- uploadType: 'aliyun',
70
- type: ['jpg', 'png', 'jpeg']
71
- },
72
- },
73
- handleCustom({action, data}) {
74
- if (data && data.params) {
75
- //当一个插件中出现使用内容分类时候需要设置code值,在页面引用时候容器id + code进行拼接
76
- //data.params = Object.assign({}, data.params, {code: 'g_test_id'});
77
- }
78
-
79
- //获取返回参数(场景类型名称为必填)
80
- //获取返回参数(场景类型名称为必填)
81
- let loading = { close(){}}
82
-
83
- //获取显示内容
84
- if (action === 'screen') {
85
- XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_bucket_content_tip'})
86
- .then(res => {
87
- loading.close();
88
- data.cb(res['list'])
89
- })
90
- .catch(error => {
91
- console.error(error);
92
- loading.close();
93
- });
94
-
95
- }
96
-
97
- //获取返回参数(广告位高度必选项)
98
- if (action === 'getNewsInfo') {
99
- XdBus.getParentApi('cmsGetPublishEditxContent')(data.params)
100
- .then(res => {
101
- loading.close()
102
- data.cb({list: res.list, selectId: res.selected})
103
- })
104
- .catch(error => {
105
- loading.close()
106
- console.error(error);
107
- });
108
- }
109
-
110
- //获取产品业务线列表
111
- if (action === 'namespace') {
112
- XdBus.getParentApi('getOptionsNamespaces')({})
113
- .then(res => {
114
- loading.close()
115
- data.cb(res['list'])
116
- })
117
- .catch(error => {
118
- loading.close()
119
- console.error(error);
120
- });
121
- }
122
-
123
- //使用内容分类
124
- if (action === 'cmsPublishEditxContent') {
125
- loading = XdBus.getParentApi('loading')({});
126
- XdBus.getParentApi('cmsPublishEditxContent')(data.params)
127
- .then(res => {
128
- console.log('cmsPublishEditxContent', res)
129
- loading.close();
130
- data.cb(res)
131
- })
132
- .catch(error => {
133
- loading.close();
134
- console.error(error);
135
- });
136
- }
137
-
138
- //位置列表
139
- if (action === 'getListPostion') {
140
- loading = XdBus.getParentApi('loading')({});
141
- XdBus.getParentApi('getListNewsPosition')(data.params)
142
- .then(res => {
143
- loading.close();
144
- data.cb(res)
145
- })
146
- .catch(error => {
147
- loading.close();
148
- console.error(error);
149
- });
150
- }
151
-
152
- //位置创建
153
- if (action === 'addPostion') {
154
- loading = XdBus.getParentApi('loading')({});
155
- XdBus.getParentApi('addNewsPosition')(data.params)
156
- .then(res => {
157
- loading.close();
158
- data.cb(true)
159
- })
160
- .catch(error => {
161
- console.error(error);
162
- loading.close();
163
- data.cb(false)
164
- });
165
- }
166
-
167
- //位置编辑
168
- if (action === 'editPostion') {
169
- loading = XdBus.getParentApi('loading')({});
170
- XdBus.getParentApi('updateNewsPosition')(data.params)
171
- .then(res => {
172
- loading.close();
173
- data.cb(true)
174
- })
175
- .catch(error => {
176
- console.error(error);
177
- loading.close();
178
- data.cb(false)
179
- });
180
- }
181
-
182
- //位置删除
183
- if (action === 'deleltePostion') {
184
- loading = XdBus.getParentApi('loading')({});
185
- XdBus.getParentApi('deleteNewsPosition')(data.params)
186
- .then(res => {
187
- loading.close();
188
- data.cb(true)
189
- })
190
- .catch(error => {
191
- console.error(error);
192
- loading.close();
193
- data.cb(false)
194
- });
195
- }
196
-
197
- //获取广告位内容列表
198
- if (action === 'getListContent') {
199
- loading = XdBus.getParentApi('loading')({});
200
- XdBus.getParentApi('getListNewsContent')(data.params)
201
- .then(res => {
202
- loading.close();
203
- data.cb(res)
204
- })
205
- .catch(error => {
206
- loading.close();
207
- console.error(error);
208
- });
209
- }
210
-
211
- //广告内容创建
212
- if (action === 'addContent') {
213
- loading = XdBus.getParentApi('loading')({});
214
- XdBus.getParentApi('addNewsContent')(data.params)
215
- .then(res => {
216
- loading.close();
217
- data.cb(true)
218
- })
219
- .catch(error => {
220
- console.error(error);
221
- loading.close();
222
- data.cb(false)
223
- });
224
- }
225
-
226
- //广告内容编辑
227
- if (action === 'editContent') {
228
- loading = XdBus.getParentApi('loading')({});
229
- XdBus.getParentApi('updateNewsContent')(data.params)
230
- .then(res => {
231
- loading.close();
232
- data.cb(true)
233
- })
234
- .catch(error => {
235
- console.error(error);
236
- loading.close();
237
- data.cb(false)
238
- });
239
- }
240
-
241
- //广告内容删除
242
- if (action === 'deleteContent') {
243
- loading = XdBus.getParentApi('loading')({});
244
- XdBus.getParentApi('deleteNewsContent')(data.params)
245
- .then(res => {
246
- loading.close();
247
- data.cb(true)
248
- })
249
- .catch(error => {
250
- console.error(error);
251
- loading.close();
252
- data.cb(false)
253
- });
254
- }
255
-
256
- //内容发布
257
- if (action === 'publish') {
258
- loading = XdBus.getParentApi('loading')({});
259
- console.log('publish', data.params)
260
- XdBus.getParentApi('cmsPublishContent')(data.params)
261
- .then(res => {
262
- loading.close();
263
- data.cb(res)
264
- })
265
- .catch(error => {
266
- loading.close();
267
- console.error(error);
268
- });
269
- }
270
-
271
- //通知页面进行刷新
272
- if (action === 'update') {
273
- loading = XdBus.getParentApi('loading')({});
274
- XdBus.getParentApi('getXdBusUpdateView')('onUpdateView', {});
275
- loading.close()
276
- }
277
- },
278
- },
279
55
  {
280
56
  label: "票券信息样式配置",
281
57
  ele: "title",
@@ -78,7 +78,7 @@
78
78
  </view>
79
79
  </view>
80
80
  <view v-if="curModule === 'rule'">
81
- <view v-if="cardRule" v-html="cardRule" class="rule_wrap" :style="ruleDetailBoxStyle">
81
+ <view v-if="cardInfo.card_use_rule" v-html="cardInfo.card_use_rule" class="rule_wrap" :style="ruleDetailBoxStyle">
82
82
  </view>
83
83
  <view v-else class="rule_wrap" :style="ruleDetailBoxStyle">
84
84
  使用规则暂无
@@ -141,7 +141,7 @@
141
141
  time: 2, //时间幂指数
142
142
  stopTimer: false, //停止轮询
143
143
 
144
- cardRule: "",
144
+ // cardRule: "",
145
145
  showBusinessList: "Y",
146
146
  //todo
147
147
  cardInfoMargin: {},
@@ -340,7 +340,7 @@
340
340
  onJfbLoad(options) {
341
341
  this.card_number = options.card_number;
342
342
  this.getCardDetail();
343
- this.getContent();
343
+ // this.getContent();
344
344
  },
345
345
  /**
346
346
  * @description 监听事件变化
@@ -496,27 +496,27 @@
496
496
  if(regHttp.test(jumpUrl)) this.$xdUniHelper.redirectTo({url:jumpUrl}, false)
497
497
  else this.$xdUniHelper.navigateTo({url:jumpUrl}, false)
498
498
  },
499
- getContent() {
500
- jfbRootExec("getListBaseNewsContent", {
501
- vm: this,
502
- data: {
503
- page_id: this.pageAttr["page_id"], //页面ID
504
- container_id: this.containerId, //组件ID
505
- limit: 1,
506
- },
507
- })
508
- .then((res) => {
509
- if (res.list.length > 0) {
510
- if(res.list && res.list.length > 0) {
511
- this.cardRule = this.$xdUniHelper.filterHtml(res.list[0].content);
512
- }
513
- // this.noticeStatus = true;
514
- }
515
- })
516
- .catch((error) => {
517
- console.error(error);
518
- });
519
- },
499
+ // getContent() {
500
+ // jfbRootExec("getListBaseNewsContent", {
501
+ // vm: this,
502
+ // data: {
503
+ // page_id: this.pageAttr["page_id"], //页面ID
504
+ // container_id: this.containerId, //组件ID
505
+ // limit: 1,
506
+ // },
507
+ // })
508
+ // .then((res) => {
509
+ // if (res.list.length > 0) {
510
+ // if(res.list && res.list.length > 0) {
511
+ // this.cardRule = this.$xdUniHelper.filterHtml(res.list[0].content);
512
+ // }
513
+ // // this.noticeStatus = true;
514
+ // }
515
+ // })
516
+ // .catch((error) => {
517
+ // console.error(error);
518
+ // });
519
+ // },
520
520
  handleRefresh(){
521
521
  clearInterval(this.timeer);
522
522
  this.getCardDetail();
@@ -108,8 +108,9 @@
108
108
  </view>
109
109
  <view v-if="!hasCardList" class="no_more_card" @click="toDisableUrl">没有更多券了,查看失效的票券 ></view>
110
110
  </view>
111
- <view v-else>
112
- <!-- 暂无数据 -->
111
+ <view v-else class="empty_data">
112
+ <image :src="emptyBg"></image>
113
+ 暂无票券
113
114
  </view>
114
115
  </view>
115
116
  </template>
@@ -131,8 +132,9 @@
131
132
  ></xd-coupon-item>
132
133
  <view v-if="!hasCouponList" class="no_more_card" @click="toDisableUrl">没有更多券了,查看失效的票券 ></view>
133
134
  </view>
134
- <view v-else>
135
- 暂无数据
135
+ <view v-else class="empty_data">
136
+ <image :src="emptyBg"></image>
137
+ 暂无票券
136
138
  </view>
137
139
 
138
140
  </template>
@@ -151,6 +153,7 @@
151
153
  import { getContainerPropsValue } from "@/utils/xd.base";
152
154
  import componentsMixins from "@/mixins/componentsMixins";
153
155
  import extsMixins from "@/mixins/extsMixins";
156
+ import colorCardMixins from "@/mixins/colorCardMixins";
154
157
  import getServiceUrl from '@/common/getServiceUrl'
155
158
  import XdNoticeBar from "@/components/XdNoticeBar/XdNoticeBar";
156
159
  import XdCouponItem from "./XdCouponItem";
@@ -166,7 +169,7 @@
166
169
  XdNotice,
167
170
  },
168
171
  mixins: [
169
- componentsMixins, extsMixins, JfbBaseTfkCardLoginMixin
172
+ componentsMixins, extsMixins, JfbBaseTfkCardLoginMixin, colorCardMixins
170
173
  ],
171
174
  data() {
172
175
  return {
@@ -256,6 +259,9 @@
256
259
  jwxSDK: (state) => state.jwxSDK,
257
260
  jfbAuthorize: (state) => state.jfbAuthorize,
258
261
  }),
262
+ emptyBg() {
263
+ return this.getNoData();
264
+ },
259
265
  menuBoxStyle(){
260
266
  let padding = `${this.checkValue(this.menuPadding.top, 20)}rpx`;
261
267
  padding = `${padding} ${this.checkValue(this.menuPadding.right, 20)}rpx`;
@@ -863,6 +869,19 @@
863
869
  color: #CCCCCC;
864
870
  font-size: 28rpx;
865
871
  }
872
+ .empty_data{
873
+ color: #888;
874
+ font-size: unit(24,rpx);
875
+ height: 60vh;
876
+ display: flex;
877
+ flex-direction: column;
878
+ align-items: center;
879
+ justify-content: center;
880
+ & > image {
881
+ width: unit(460,rpx);
882
+ height: unit(400,rpx);
883
+ }
884
+ }
866
885
  }
867
886
  }
868
887
  }
@@ -115,6 +115,7 @@ export default {
115
115
  &-cont {
116
116
  flex: 1;
117
117
  height: 100%;
118
+ overflow: hidden;
118
119
 
119
120
  & .title {
120
121
  margin-bottom: 10rpx;
@@ -77,7 +77,7 @@
77
77
  :item="item"
78
78
  :color="listItemStyle.mainColor"
79
79
  :border-radius="listItemStyle.imgRradius"
80
- :is-echange="'Y' || listItemStyle.isShowExchange"
80
+ :is-echange="listItemStyle.isShowExchange"
81
81
  @on-shop-jhd="handleShopJhd"
82
82
  @on-shop-detail="handleShopDetail"
83
83
  ></content-shop>
@@ -356,6 +356,10 @@
356
356
  .menu_list{
357
357
  display: flex;
358
358
  box-sizing: border-box;
359
+ overflow: auto;
360
+ .menu_item{
361
+ white-space: nowrap;
362
+ }
359
363
  }
360
364
  }
361
365
  }
@@ -145,6 +145,7 @@ export default {
145
145
  if(item['exts_params']) {
146
146
  url = url + `&exts_params=${item['exts_params']}`
147
147
  }
148
+ url = url + `&xnamespace=${item.business_code}`;
148
149
  console.warn(`handleShopDetail.url:${url}`)
149
150
  this.toLink(url)
150
151
  });