jufubao-base 1.0.169-beta9 → 1.0.170

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 (29) hide show
  1. package/package.json +1 -1
  2. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +2 -2
  3. package/src/components/JfbBaseLogin/Attr.js +10 -0
  4. package/src/components/JfbBaseLogin/JfbBaseLogin.vue +6 -1
  5. package/src/components/JfbBaseNotice/JfbBaseNotice.vue +2 -2
  6. package/src/components/JfbBaseTfkCardBind/Attr.js +80 -7
  7. package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBind.vue +112 -13
  8. package/src/components/JfbBaseTfkCardDetail/Attr.js +49 -1
  9. package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetail.vue +18 -9
  10. package/src/components/JfbBaseTfkCardLogin/Attr.js +223 -13
  11. package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLogin.vue +118 -73
  12. package/src/components/JfbBaseTfkCardLogin/Mock.js +5 -535
  13. package/src/components/JfbBaseTfkCardLogin/XdCouponItem.vue +10 -6
  14. package/src/components/JfbBaseTfkCardLogin/XdNotice.vue +550 -0
  15. package/src/components/JfbBaseTfkSearch/AllList.vue +241 -135
  16. package/src/components/JfbBaseTfkSearch/Api.js +1 -1
  17. package/src/components/JfbBaseTfkSearch/Attr.js +203 -1
  18. package/src/components/JfbBaseTfkSearch/ContentFilm.vue +127 -88
  19. package/src/components/JfbBaseTfkSearch/ContentProduct.vue +14 -5
  20. package/src/components/JfbBaseTfkSearch/ContentShop.vue +2 -0
  21. package/src/components/JfbBaseTfkSearch/CusAttr.js +10 -0
  22. package/src/components/JfbBaseTfkSearch/CustomList.vue +130 -78
  23. package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +164 -62
  24. package/src/components/JfbBaseTfkSearch/Mock.js +184 -32
  25. package/src/components/JfbBaseTfkSearch/listMixins.js +111 -75
  26. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +2 -1
  27. package/src/mixins/componentsMixins.js +33 -3
  28. package/src/mixins/posterMixins.js +122 -0
  29. package/src/components/JfbBaseTfkSearch/search.js +0 -293
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-base",
3
- "version": "1.0.169-beta9",
3
+ "version": "1.0.170",
4
4
  "private": false,
5
5
  "description": "聚福宝业务组件基础插件包",
6
6
  "main": "index.js",
@@ -110,7 +110,7 @@
110
110
  partnerName: "",
111
111
  useSearch: "N", //Y:用于搜索; N:用于跳转搜索页面
112
112
  searchPagePath: "",
113
- placeholder: "搜索商品名称",
113
+ placeholder: "请输入关键词",
114
114
  choseCityPath: "", //选择城市i
115
115
 
116
116
 
@@ -166,7 +166,7 @@
166
166
  this.showBack = getContainerPropsValue(container, "content.showBack", "Y");
167
167
  this.showPartner = getContainerPropsValue(container, "content.showPartner", "N")
168
168
  this.showPartnerName = getContainerPropsValue(container, "content.showPartnerName", "N");
169
- this.placeholder = getContainerPropsValue(container, "content.placeholder");
169
+ this.placeholder = getContainerPropsValue(container, "content.placeholder",'请输入关键词');
170
170
  this.useSearch = getContainerPropsValue(container, "content.useSearch", "Y");
171
171
  this.searchPagePath = getContainerPropsValue(container, "content.searchPagePath", {value:""}).value;
172
172
  this.choseCityPath = getContainerPropsValue(container, "content.choseCityPath", {value:""}).value;
@@ -775,6 +775,16 @@ export default {
775
775
  className: "input70",
776
776
  hidden: data.previewCurrent !== "account",
777
777
  },
778
+ {
779
+ label: '密码图标:',
780
+ ele: "el-input",
781
+ valueKey: "passwordIcon",
782
+ value: data.passwordIcon || "",
783
+ groupKey:'style',
784
+ placeholder: "请输入密码图标",
785
+ className: "input70",
786
+ hidden: data.previewCurrent !== "account",
787
+ },
778
788
  {
779
789
  label: "标签字体样式设置:",
780
790
  ele: "xd-font",
@@ -175,6 +175,7 @@
175
175
  class="form-item"
176
176
  :class="[inputStyle]"
177
177
  label="密码"
178
+ :leftIcon="passwordIcon"
178
179
  :labelWidth="labelWidth"
179
180
  content-align="left"
180
181
  >
@@ -398,6 +399,7 @@ export default {
398
399
  },
399
400
  phoneIcon: "", //手机号登录输入框图标
400
401
  codeIcon: "", //验证码登录输入框图标
402
+ passwordIcon: "", //密码登录输入框图标
401
403
  inputStyle: "linear", //输入框样式 linear:线性 face: 面性
402
404
  formBorderColor: "#F9F9F9", //
403
405
  formBorderWidth: 1, //表单边框宽度
@@ -651,13 +653,14 @@ export default {
651
653
  this.formBgColor = getContainerPropsValue(value, "content.formBgColor", '#FFFFFF');
652
654
  this.labelAlign = getContainerPropsValue(value, "content.labelAlign", 'left');
653
655
  this.labelWidth = getContainerPropsValue(value, "content.labelWidth", '180');
654
- this.labelPosition = getContainerPropsValue(value, "content.labelPosition", 'top');
656
+ this.labelPosition = getContainerPropsValue(value, "content.labelPosition", 'left');
655
657
  this.formPadding = getContainerPropsValue(value, "content.formPadding", {top: 20, left: 20, right: 20, bottom: 20});
656
658
  this.agreePadding = getContainerPropsValue(value, "content.agreePadding", {});
657
659
  this.authAgreePadding = getContainerPropsValue(value, "content.authAgreePadding", {top: 20, left: 20, right: 20, bottom: 20});
658
660
  this.authBtnPadding = getContainerPropsValue(value, "content.authBtnPadding", {top: 20, left: 20, right: 20, bottom: 20});
659
661
  this.phoneIcon = getContainerPropsValue(value, "content.phoneIcon", '');
660
662
  this.codeIcon = getContainerPropsValue(value, "content.codeIcon", '');
663
+ this.passwordIcon = getContainerPropsValue(value, "content.passwordIcon", '');
661
664
  this.inputStyle = getContainerPropsValue(value, "content.inputStyle", 'linear');
662
665
  this.formBorderColor = getContainerPropsValue(value, "content.formBorderColor", '#F9F9F9');
663
666
  this.formBorderWidth = getContainerPropsValue(value, "content.formBorderWidth", '1');
@@ -799,6 +802,8 @@ export default {
799
802
 
800
803
  let { redirect_url, callback_url } = this;
801
804
 
805
+ redirect_url = redirect_url || callback_url || this.$settings.index;
806
+
802
807
  //不同项目直接域名替换
803
808
  if (/^(@site_domain@).+$/.test(redirect_url)) {
804
809
  redirect_url = redirect_url.replace(/@site_domain@/, location.origin)
@@ -14,7 +14,7 @@
14
14
  </view>
15
15
  <!-- #endif -->
16
16
  <view class="jfb-base-notice__body">
17
- <view class="jfb-base-notice__body-line"></view>
17
+ <view class="jfb-base-notice__body-line" v-if="contentList.length > 0"></view>
18
18
  <view>
19
19
  <template v-if="style === '3' && isPreview">
20
20
  <view class="jfb-base-notice__body-pop" :style="{backgroundColor:backgroundColor, color:warningColor}">弹窗模式方便编辑(占位),在线上此模块不显</view>
@@ -23,7 +23,7 @@
23
23
  <template v-if="contentList.length === 0 && isPreview">
24
24
  <view class="jfb-base-notice__body-pop" :style="{backgroundColor:backgroundColor, color:warningColor}">接口无数返回,请检查是否配置成功!</view>
25
25
  </template>
26
- <view v-else class="jfb-base-notice__body-scroll">
26
+ <view v-if="contentList.length > 0" class="jfb-base-notice__body-scroll">
27
27
  <view
28
28
  class="upAndDown"
29
29
  :style="{
@@ -188,7 +188,7 @@ export default {
188
188
  ],
189
189
  hidden: data.previewCurrent !== 'ticket',
190
190
  },
191
- data.inputStyle === 'linear' && {
191
+ {
192
192
  label: "标签文字对齐方式:",
193
193
  ele: 'xd-radio',
194
194
  valueKey: 'labelAlign',
@@ -215,6 +215,26 @@ export default {
215
215
  className: 'input60',
216
216
  hidden: data.previewCurrent !== 'ticket',
217
217
  },
218
+ data.inputStyle === 'face' && {
219
+ label: '面性输入框圆角设置:',
220
+ ele: 'xd-site-select-list',
221
+ valueKey: 'formBorderRadius',
222
+ value: data.formBorderRadius ||'',
223
+ groupKey:'style',
224
+ placeholder: '请选择边框圆角设置',
225
+ multiple: false,
226
+ className: 'input80',
227
+ handleCustom({ action, data }) {
228
+ XdBus.getParentApi('getOptionsSettingList')({ setting_id: 'edtix_style_radius' })
229
+ .then(res => {
230
+ data.cb(res.list)
231
+ })
232
+ .catch(error => {
233
+ console.error(error);
234
+ });
235
+ },
236
+ hidden: data.previewCurrent !== 'ticket',
237
+ },
218
238
  {
219
239
  label: "标签文字是否显示:",
220
240
  ele: 'xd-radio',
@@ -306,6 +326,7 @@ export default {
306
326
  notice: '填充设置,单位:<span style="color: red">像素</span>。默认值:<span style="color: red">20</span> 像素',
307
327
  hidden: data.previewCurrent !== 'ticket',
308
328
  },
329
+
309
330
  {
310
331
  label: "票券号码图标:",
311
332
  ele: "xd-font",
@@ -557,6 +578,58 @@ export default {
557
578
  notice: '填充设置,单位:<span style="color: red">像素</span>。默认值:<span style="color: red">20</span> 像素',
558
579
  hidden: data.previewCurrent !== 'code',
559
580
  },
581
+ {
582
+ label: "输入框样式设置",
583
+ ele: "xd-radio",
584
+ valueKey: "digitalInputStyle",
585
+ value: data.digitalInputStyle || 'linear',
586
+ groupKey:'style',
587
+ list: [
588
+ { label: "线性", value: "linear" },
589
+ { label: "面性", value: "face"}
590
+ ],
591
+ hidden: data.previewCurrent !== 'code',
592
+ },
593
+ data.digitalInputStyle === 'linear' && {
594
+ label: "标签位置:",
595
+ ele: "xd-radio",
596
+ valueKey: "digitalLabelPosition",
597
+ value: data.digitalLabelPosition || "left",
598
+ groupKey:'style',
599
+ placeholder: "请选择标签对齐方式",
600
+ multiple: false,
601
+ className: 'input80',
602
+ list: [
603
+ {label: '居左', value: "left"},
604
+ {label: '居上', value: "top"},
605
+ ],
606
+ hidden: data.previewCurrent !== 'code',
607
+ },
608
+ {
609
+ label: "标签文字对齐方式:",
610
+ ele: 'xd-radio',
611
+ valueKey: 'digitalLabelAlign',
612
+ value: data.digitalLabelAlign || "right",
613
+ groupKey:'style',
614
+ placeholder: "请选择标签对齐方式",
615
+ multiple: false,
616
+ className: 'input80',
617
+ list: [
618
+ {label: '左对齐', value: "left"},
619
+ {label: '右对齐', value: "right"},
620
+ {label: '居中', value: "center"},
621
+ ],
622
+ hidden: data.previewCurrent !== 'code',
623
+ },
624
+ // {
625
+ // label: "电子码标签文案",
626
+ // ele: "el-input",
627
+ // valueKey: "digitalCodeLabel",
628
+ // value: data.digitalCodeLabel || '',
629
+ // groupKey:'style',
630
+ // type: "string",
631
+ // hidden: data.previewCurrent !== 'code',
632
+ // },
560
633
  {
561
634
  label: "电子码标签宽度设置",
562
635
  ele: "el-input",
@@ -566,15 +639,15 @@ export default {
566
639
  type: "number",
567
640
  hidden: data.previewCurrent !== 'code',
568
641
  },
569
- {
570
- label: "电子码输入框颜色设置",
642
+ data.digitalInputStyle === 'linear' && {
643
+ label: "电子码输入框边框颜色设置",
571
644
  ele: "xd-color",
572
645
  valueKey: "digitalCodeColor",
573
- value: data.digitalCodeColor || "#dddddd",
646
+ value: data.digitalCodeColor || "#F9F9F9",
574
647
  groupKey:'style',
575
648
  hidden: data.previewCurrent !== 'code',
576
649
  },
577
- {
650
+ data.digitalInputStyle === 'face' && {
578
651
  label: '电子码输入框圆角设置:',
579
652
  ele: 'xd-site-select-list',
580
653
  valueKey: 'digitalCodeRadius',
@@ -631,7 +704,7 @@ export default {
631
704
  valueKey: 'my_card_url',
632
705
  groupKey: 'advanced',
633
706
  placeholder: '请选择我的票券跳转地址',
634
- value: null,
707
+ value: data.my_card_url || null,
635
708
  setting: {
636
709
  router: XdBus.getParentApi('getPagesTree'),
637
710
  },
@@ -643,7 +716,7 @@ export default {
643
716
  valueKey: 'back_url',
644
717
  groupKey: 'advanced',
645
718
  placeholder: '请选择卡绑定成功回跳地址',
646
- value: null,
719
+ value: data.back_url || null,
647
720
  setting: {
648
721
  router: XdBus.getParentApi('getPagesTree'),
649
722
  },
@@ -16,6 +16,7 @@
16
16
  <view class="jfb-base-tfk-card-bind__body" :style="{
17
17
  '--form-border-color': formBorderColor,
18
18
  '--form-border-width': formBorderWidth + 'px',
19
+ '--form-border-radius': ($rpxNum * Number(formBorderRadius)) + 'px',
19
20
  '--form-input-padding': inputPadding + 'px',
20
21
  '--label-font-size': ($rpxNum * parseInt(labelFont.fontSize)) + 'px',
21
22
  '--label-font-color': labelFont.color,
@@ -67,7 +68,7 @@
67
68
  v-model="form.card_number"
68
69
  placeholder="请输入票券号"
69
70
  />
70
- <view>
71
+ <view @click="doScanCode">
71
72
  <xd-font-icon :icon="scanIcon.icon || 'iconsaoma'"
72
73
  :color="scanIcon.color"
73
74
  :style="{fontSize: scanIcon.fontSize}"
@@ -128,13 +129,14 @@
128
129
  </view>
129
130
  <view v-else class="form_wrap" :style="digitalFormStyle">
130
131
  <xd-form :key="formRenderKey"
131
- label-align="left"
132
- labelPosition="left"
132
+ :label-align="digitalLabelAlign"
133
+ :labelPosition="digitalLabelPosition"
133
134
  :border="true"
134
135
  paddingBetween="0"
135
136
  >
136
137
  <xd-form-item class="form-item digital_item"
137
- label=""
138
+ :class="[digitalInputStyle]"
139
+ :label="digitalCodeLabel"
138
140
  :labelWidth="digitalCodeLabelWidth"
139
141
  :leftIcon="digitalCodeIcon.icon"
140
142
  :iconColor="digitalCodeIcon.color"
@@ -201,7 +203,9 @@
201
203
  tips: "",
202
204
  labelWidth: 180,
203
205
  labelAlign: "left",
206
+ digitalLabelAlign: "left",
204
207
  labelPosition: "left",
208
+ digitalLabelPosition: "left",
205
209
  inputStyle: "linear", //输入框样式 linear:线性 face: 面性
206
210
  formBorderColor: "#F9F9F9", //
207
211
  formBorderWidth: 1, //表单边框宽度
@@ -257,11 +261,15 @@
257
261
  digitalCodeColor: "",
258
262
  my_card_url: "",
259
263
  backUrl: "",
264
+ digitalInputStyle: "",
265
+ digitalCodeLabel: "",
266
+ formBorderRadius: 16,
260
267
  }
261
268
  },
262
269
  computed: {
263
270
  ...mapState({
264
- brandInfo: state => state.brandInfo
271
+ brandInfo: state => state.brandInfo,
272
+ jwxSDK: (state) => state.jwxSDK,
265
273
  }),
266
274
  cardFormStyle(){
267
275
  let padding = `${this.checkValue(this.formPadding.top, 20)}rpx`;
@@ -369,6 +377,22 @@
369
377
  this.validImageAPIUrl = this.brandInfo['api_host'] + '/common/v1/valid_code/image/show'
370
378
  this.valid_token = this.$xdUniHelper.randomChar(20);
371
379
  //todo
380
+ //#ifdef H5
381
+ if (!this.$configProject.isPreview) {
382
+ jfbRootExec("getH5WxAuthorize", {
383
+ vm: this,
384
+ data: {site_id: "wx_pub"},
385
+ })
386
+ .then(res => {
387
+ console.log(0)
388
+ })
389
+ .catch(error=>{
390
+ this.$xdAlert({
391
+ content: error,
392
+ });
393
+ })
394
+ }
395
+ // #endif
372
396
  },
373
397
  methods: {
374
398
  onJfbLoad(options) {
@@ -413,14 +437,23 @@
413
437
  this.digitalCodeLabelWidth = getContainerPropsValue(value, "content.digitalCodeLabelWidth", '100');
414
438
  this.digitalCodeRadius = getContainerPropsValue(value, "content.digitalCodeRadius", '0');
415
439
  this.digitalCodeColor = getContainerPropsValue(value, "content.digitalCodeColor", '#dddddd');
440
+ this.digitalInputStyle = getContainerPropsValue(value, "content.digitalInputStyle", 'linear');
416
441
  this.my_card_url = getContainerPropsValue(this.container, 'content.my_card_url', { value: "" }).value;
417
442
  this.backUrl = getContainerPropsValue(this.container, 'content.back_url', { value: "" }).value;
443
+ this.digitalLabelPosition = getContainerPropsValue(value, "content.digitalLabelPosition", 'left');
444
+ this.digitalLabelAlign = getContainerPropsValue(value, "content.digitalLabelAlign", 'left');
445
+ this.digitalCodeLabel = getContainerPropsValue(value, "content.digitalCodeLabel", '');
446
+ this.formBorderRadius = getContainerPropsValue(value, "content.formBorderRadius", 16);
418
447
 
419
448
  console.log(this.digitalCodeRadius, "digitalCodeRadius");
420
449
 
421
450
  if(this.inputStyle === 'face'){
422
451
  this.labelPosition = 'left';
423
- this.labelAlign = 'left';
452
+ // this.labelAlign = 'left';
453
+ }
454
+ if(this.digitalInputStyle === 'face'){
455
+ this.digitalLabelPosition = 'left';
456
+ // this.digitalLabelAlign = 'left';
424
457
  }
425
458
  if(this.$configProject.isPreview){
426
459
  this.menuType = this.previewCurrent;
@@ -434,6 +467,7 @@
434
467
  },
435
468
  switchShowType(type){
436
469
  this.menuType = type;
470
+ this.formRenderKey = Date.now();
437
471
  },
438
472
  handlerAfterBindCard(res){
439
473
  //已绑定卡券处理
@@ -509,7 +543,13 @@
509
543
  toBindCardDigital(){
510
544
  const { code } = this.form;
511
545
 
512
- if(!code) return "";
546
+ if(!code) {
547
+ uni.showToast({
548
+ title: '请输入电子码',
549
+ icon: "none"
550
+ });
551
+ return ""
552
+ };
513
553
  jfbRootExec("pwdCardBind", {
514
554
  vm: this,
515
555
  data: {
@@ -549,6 +589,50 @@
549
589
  let valid_token = this.$xdUniHelper.randomChar(20);
550
590
  this.valid_token = valid_token;
551
591
  },
592
+ p_qrCardBind(result){
593
+ jfbRootExec("qrCardBind", {
594
+ vm: this,
595
+ data: {
596
+ card_qrcode: result,
597
+ is_show_pop: "Y"
598
+ }
599
+ }).then(res => {
600
+ console.log(res);
601
+ this.handlerAfterBindCard(res)
602
+ }).catch(err => {
603
+ console.log(err);
604
+ this.$xdLog.catch(err)
605
+ })
606
+ },
607
+ doScanCode(){
608
+ console.log("开始扫码");
609
+ // #ifdef H5
610
+ this.jwxSDK.scanQRCode({
611
+ needResult: 1,
612
+ scanType: ["qrCode"],
613
+ success: res => {
614
+ // this.$set(this.form, 'card_number', res.resultStr)
615
+ this.p_qrCardBind(res.resultStr)
616
+ },
617
+ fail: (error) => {
618
+ if (typeof error === 'string') error = {error: error}
619
+ if (window['jwxJfbSDKParams']) error = Object.assign(error, window['jwxJfbSDKParams'])
620
+ this.$xdLog.setARMSError(error)
621
+ }
622
+ })
623
+ // #endif
624
+ // #ifdef MP
625
+ uni.scanCode({
626
+ success: res => {
627
+ // this.$set(this.form, 'card_number', res.result)
628
+ this.p_qrCardBind(res.result)
629
+ },
630
+ fail: (error) => {
631
+ this.$xdLog.setARMSError(error)
632
+ },
633
+ })
634
+ // #endif
635
+ },
552
636
  onJfbScroll(options) {
553
637
  // console.log('event.onJfbScroll', options)
554
638
  },
@@ -589,6 +673,9 @@
589
673
  &__body{
590
674
  .form-item {
591
675
  ::v-deep &.uni-forms-item {
676
+ .is-required{
677
+ display: none;
678
+ }
592
679
  .uni-input-input{
593
680
  font-size: var(--content-font-size);
594
681
  color: var(--content-font-color);
@@ -610,14 +697,16 @@
610
697
  }
611
698
  &.linear{
612
699
  ::v-deep &.uni-forms-item--border{
613
- border-color: var(--form-border-color) !important;
614
- border-width: var(--form-border-width) !important;
700
+ // border-color: var(--form-border-color) !important;
701
+ // border-width: var(--form-border-width) !important;
702
+ border-top: none !important;
703
+ border-bottom: var(--form-border-width) solid var(--form-border-color) !important;
615
704
  }
616
705
  }
617
706
  &.face{
618
707
  ::v-deep .uni-forms-item__box{
619
708
  background: #F7F7F7;
620
- border-radius: 16rpx;
709
+ border-radius: var(--form-border-radius);
621
710
  padding-right: 20rpx;
622
711
  }
623
712
  ::v-deep &.uni-forms-item--border{
@@ -640,13 +729,23 @@
640
729
  }
641
730
  }
642
731
  &.digital_item{
732
+ &.linear{
733
+ ::v-deep &.uni-forms-item--border{
734
+ border-color: var(--digital-border-color) !important;
735
+ }
736
+ }
737
+ &.face{
738
+ ::v-deep .uni-forms-item__box{
739
+ border-radius: var(--digital-border-radius);
740
+ }
741
+ }
643
742
  ::v-deep .label-icon{
644
743
  font-size: var(--digital-icon-size) !important;
645
744
  }
646
745
  ::v-deep .uni-forms-item__inner{
647
- padding-bottom: 0% !important;
648
- border: 1px solid var(--digital-border-color);
649
- border-radius: var(--digital-border-radius);
746
+ // padding-bottom: 0% !important;
747
+ // border: 1px solid var(--digital-border-color);
748
+ // border-radius: var(--digital-border-radius);
650
749
  }
651
750
  }
652
751
  }
@@ -333,7 +333,7 @@ export default {
333
333
  label: "票券高度",
334
334
  ele: "el-input",
335
335
  valueKey: 'cardHeight',
336
- value: data.cardHeight || 260,
336
+ value: data.cardHeight || 340,
337
337
  type: 'number',
338
338
  groupKey:'style',
339
339
  placeholder: "请输入票券高度",
@@ -412,6 +412,26 @@ export default {
412
412
  value: data.bussTempBgColor || '',
413
413
  hidden: data.previewCurrent !== 'main'
414
414
  },
415
+ {
416
+ label: "业务板块圆角",
417
+ ele: 'xd-site-select-list',
418
+ valueKey: 'bussTempRadius',
419
+ value: data['bussTempRadius'] || 16,
420
+ groupKey:'style',
421
+ placeholder: '请选择内容圆角设置',
422
+ multiple: false,
423
+ className: 'input80',
424
+ handleCustom({ action, data }) {
425
+ XdBus.getParentApi('getOptionsSettingList')({ setting_id: 'edtix_style_radius' })
426
+ .then(res => {
427
+ data.cb(res.list)
428
+ })
429
+ .catch(error => {
430
+ console.error(error);
431
+ });
432
+ },
433
+ hidden: data.previewCurrent !== 'main'
434
+ },
415
435
  {
416
436
  label: "单项业务外边距",
417
437
  groupKey:'style',
@@ -498,6 +518,34 @@ export default {
498
518
  placeholder: "请输入间隔距离",
499
519
  hidden: data.previewCurrent !== 'main'
500
520
  },
521
+ {
522
+ label: "单项背景色",
523
+ groupKey:'style',
524
+ ele: 'xd-color',
525
+ valueKey: 'listColBgColor',
526
+ value: data.listColBgColor || '#ffffff',
527
+ hidden: data.previewCurrent !== 'main'
528
+ },
529
+ {
530
+ label: "单项圆角",
531
+ ele: 'xd-site-select-list',
532
+ valueKey: 'listColRadius',
533
+ value: data['listColRadius'] || 16,
534
+ groupKey:'style',
535
+ placeholder: '请选择内容圆角设置',
536
+ multiple: false,
537
+ className: 'input80',
538
+ handleCustom({ action, data }) {
539
+ XdBus.getParentApi('getOptionsSettingList')({ setting_id: 'edtix_style_radius' })
540
+ .then(res => {
541
+ data.cb(res.list)
542
+ })
543
+ .catch(error => {
544
+ console.error(error);
545
+ });
546
+ },
547
+ hidden: data.previewCurrent !== 'main'
548
+ },
501
549
  {
502
550
  label: "提货码详情样式配置",
503
551
  ele: 'title',
@@ -59,7 +59,7 @@
59
59
  </view>
60
60
  </view>
61
61
  <view v-else>
62
- <xd-button type="primary" @click="doCardLogin">立即使用</xd-button>
62
+ <xd-button type="primary" @click="doCardLogin()">立即使用</xd-button>
63
63
  </view>
64
64
  </view>
65
65
  <view class="list_col_wrap" :style="listColWrapBoxStyle">
@@ -147,7 +147,7 @@
147
147
  cardInfoMargin: {},
148
148
  cardInfoPadding: {},
149
149
  cardImageUrl: "",
150
- cardHeight: 260,
150
+ cardHeight: 340,
151
151
  cardRadius: 10,
152
152
  bussPadding: {},
153
153
  bussMargin: {},
@@ -172,6 +172,9 @@
172
172
  codeDetailShadow: {},
173
173
  ruleDetailFontColor: "",
174
174
  ruleDetailRadius: 0,
175
+ bussTempRadius: 16,
176
+ listColBgColor: "",
177
+ listColRadius: 16,
175
178
  }
176
179
  },
177
180
  computed: {
@@ -204,6 +207,7 @@
204
207
  margin: margin,
205
208
  padding: padding,
206
209
  backgroundColor: this.bussTempBgColor,
210
+ borderRadius: this.bussTempRadius + 'rpx',
207
211
  })
208
212
  },
209
213
 
@@ -248,12 +252,12 @@
248
252
  return bg
249
253
  },
250
254
  listColWrapBoxStyle(){
251
- let margin = `${this.checkValue(this.listColMargin.top, 20)}rpx`;
252
- margin = `${margin} ${this.checkValue(this.listColMargin.right, 20)}rpx`;
253
- margin = `${margin} ${this.checkValue(this.listColMargin.bottom, 20)}rpx`;
254
- margin = `${margin} ${this.checkValue(this.listColMargin.left, 20)}rpx`;
255
+ let padding = `${this.checkValue(this.listColMargin.top, 20)}rpx`;
256
+ padding = `${padding} ${this.checkValue(this.listColMargin.right, 20)}rpx`;
257
+ padding = `${padding} ${this.checkValue(this.listColMargin.bottom, 20)}rpx`;
258
+ padding = `${padding} ${this.checkValue(this.listColMargin.left, 20)}rpx`;
255
259
  return this.styleObjectToString({
256
- margin: margin,
260
+ padding: padding,
257
261
  })
258
262
  },
259
263
  listColItemStyle(){
@@ -264,6 +268,8 @@
264
268
  return this.styleObjectToString({
265
269
  padding,
266
270
  marginBottom: this.listColSpace + 'rpx',
271
+ backgroundColor: this.listColBgColor,
272
+ borderRadius: this.listColRadius + 'rpx',
267
273
  })
268
274
  },
269
275
  ruleDetailBoxStyle(){
@@ -346,7 +352,7 @@
346
352
  this.cardInfoMargin = getContainerPropsValue(value, 'content.cardInfoMargin', {top: 20, left: 20, right: 20, bottom: 20});
347
353
  this.cardInfoPadding = getContainerPropsValue(value, 'content.cardInfoPadding', {top: 20, left: 20, right: 20, bottom: 20});
348
354
  this.cardImageUrl = getContainerPropsValue(value, 'content.cardImageUrl', '');
349
- this.cardHeight = getContainerPropsValue(value, 'content.cardHeight', 260);
355
+ this.cardHeight = getContainerPropsValue(value, 'content.cardHeight', 340);
350
356
  this.cardRadius = getContainerPropsValue(value, 'content.cardRadius', 16);
351
357
  this.bussPadding = getContainerPropsValue(value, 'content.bussPadding', {top: 20, left: 20, right: 20, bottom: 20});
352
358
  this.bussMargin = getContainerPropsValue(value, 'content.bussMargin', {top: 20, left: 20, right: 20, bottom: 20});
@@ -371,6 +377,9 @@
371
377
  this.codeDetailShadow = getContainerPropsValue(value, 'content.codeDetailShadow', {});
372
378
  this.ruleDetailFontColor = getContainerPropsValue(value, 'content.ruleDetailFontColor', '');
373
379
  this.ruleDetailRadius = getContainerPropsValue(value, 'content.ruleDetailRadius', 0);
380
+ this.bussTempRadius = getContainerPropsValue(value, 'content.bussTempRadius', 16);
381
+ this.listColBgColor = getContainerPropsValue(value, 'content.listColBgColor', '#fff');
382
+ this.listColRadius = getContainerPropsValue(value, 'content.listColRadius', 16);
374
383
 
375
384
  console.log(this.codeDetailBorder, 'codeDetailBorder')
376
385
 
@@ -572,6 +581,7 @@
572
581
  flex-direction: column;
573
582
  justify-content: space-between;
574
583
  font-size: 26rpx;
584
+ box-sizing: border-box;
575
585
  .card_top{
576
586
  display: flex;
577
587
  flex-direction: column;
@@ -652,7 +662,6 @@
652
662
  }
653
663
  }
654
664
  .list_col_wrap{
655
- margin: 40rpx 0;
656
665
 
657
666
  .list_item{
658
667
  display: flex;