jufubao-base 1.0.232-beta3 → 1.0.232-beta4

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 (40) hide show
  1. package/package.json +1 -1
  2. package/src/components/JfbBaseBalance/Api.js +58 -0
  3. package/src/components/JfbBaseBalance/Attr.js +48 -0
  4. package/src/components/JfbBaseBalance/JfbBaseBalance.vue +111 -0
  5. package/src/components/JfbBaseBalance/JfbBaseBalanceLess.less +79 -0
  6. package/src/components/JfbBaseBalance/JfbBaseBalanceMixin.js +30 -0
  7. package/src/components/JfbBaseBalance/Mock.js +13 -0
  8. package/src/components/JfbBaseCardDelay/JfbBaseCardDelay.vue +30 -29
  9. package/src/components/JfbBaseCodeOpenVip/Attr.js +229 -27
  10. package/src/components/JfbBaseCodeOpenVip/JfbBaseCodeOpenVip.vue +111 -9
  11. package/src/components/JfbBaseConsumpCode/Attr.js +22 -22
  12. package/src/components/JfbBaseConsumpCode/JfbBaseConsumpCode.vue +580 -34
  13. package/src/components/JfbBaseLogin/JfbBaseLogin.vue +16 -7
  14. package/src/components/JfbBaseOpenVip/Attr.js +229 -27
  15. package/src/components/JfbBaseOpenVip/JfbBaseOpenVip.vue +259 -7
  16. package/src/components/JfbBaseOpenVip/XdVipList.vue +81 -0
  17. package/src/components/JfbBaseOpenVipDetail/JfbBaseOpenVipDetail.vue +33 -4
  18. package/src/components/JfbBasePointsCard/Attr.js +199 -24
  19. package/src/components/JfbBasePointsCard/JfbBasePointsCard.vue +209 -29
  20. package/src/components/JfbBasePointsDetail/Api.js +8 -43
  21. package/src/components/JfbBasePointsDetail/Attr.js +282 -26
  22. package/src/components/JfbBasePointsDetail/JfbBasePointsDetail.vue +139 -29
  23. package/src/components/JfbBaseRechargeOrder/Api.js +3 -13
  24. package/src/components/JfbBaseRechargeOrder/JfbBaseRechargeOrder.vue +16 -34
  25. package/src/components/JfbBaseShare/JfbBaseShare.vue +108 -2
  26. package/src/components/JfbBaseTfkSearch/Attr.js +8 -82
  27. package/src/components/JfbBaseUserInfo/Attr.js +102 -10
  28. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +301 -114
  29. package/src/components/JfbBaseWithDrawAgain/Api.js +58 -0
  30. package/src/components/JfbBaseWithDrawAgain/Attr.js +48 -0
  31. package/src/components/JfbBaseWithDrawAgain/JfbBaseWithDrawAgain.vue +111 -0
  32. package/src/components/JfbBaseWithDrawAgain/JfbBaseWithDrawAgainLess.less +79 -0
  33. package/src/components/JfbBaseWithDrawAgain/JfbBaseWithDrawAgainMixin.js +30 -0
  34. package/src/components/JfbBaseWithDrawAgain/Mock.js +13 -0
  35. package/src/components/JfbBaseWithDrawRecord/Api.js +58 -0
  36. package/src/components/JfbBaseWithDrawRecord/Attr.js +48 -0
  37. package/src/components/JfbBaseWithDrawRecord/JfbBaseWithDrawRecord.vue +111 -0
  38. package/src/components/JfbBaseWithDrawRecord/JfbBaseWithDrawRecordLess.less +79 -0
  39. package/src/components/JfbBaseWithDrawRecord/JfbBaseWithDrawRecordMixin.js +30 -0
  40. package/src/components/JfbBaseWithDrawRecord/Mock.js +13 -0
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <view class="xd_vip_wrap">
3
+ <view class="vip_list">
4
+ <view class="vip_item" :class="{active: i==1}" v-for="i in 6" :key="i">
5
+ <view class="vip_name">1日体验</view>
6
+ <view class="vip_price">10.00</view>
7
+ </view>
8
+ </view>
9
+ <view class="vip_pay">
10
+ <xd-button type="primary" width="600rpx">立即支付¥148/年</xd-button>
11
+ <view class="vip_tip">开通视为同意<text @click.stop="handlePrivacy('privacy_service')">《共享PLUS会员用户协议》</text></view>
12
+ </view>
13
+ </view>
14
+ </template>
15
+
16
+ <script>
17
+ import XdButton from "@/components/XdButton/XdButton.vue"
18
+ export default {
19
+ components: {
20
+ XdButton
21
+ },
22
+ data(){
23
+ return {
24
+
25
+ }
26
+ },
27
+ methods: {
28
+ handlePrivacy(type){
29
+ this.$emit('handlePrivacy', type)
30
+ }
31
+ }
32
+ }
33
+ </script>
34
+
35
+ <style lang="less" scoped>
36
+ .xd_vip_wrap{
37
+ background: #FFFFFF;
38
+ .vip_list{
39
+ width: 100%;
40
+ overflow: auto;
41
+ white-space: nowrap;
42
+ padding: 32rpx 16rpx;
43
+ .vip_item{
44
+ display: inline-block;
45
+ width: 160rpx;
46
+ height: 112rpx;
47
+ border-radius: 24rpx;
48
+ text-align: center;
49
+ color: #999999;
50
+ border: 4rpx solid #EEEEEE;
51
+ background-color: #EEEEEE;
52
+ box-sizing: border-box;
53
+ margin: 0 16rpx;
54
+ padding: 20rpx 0;
55
+ line-height: 1;
56
+ font-weight: 500;
57
+ &.active{
58
+ border-color: #AB6900;
59
+ background-color: #FFF2DE;
60
+ color: #AB6900;
61
+ }
62
+ .vip_name{
63
+ font-size: 24rpx;
64
+ margin-bottom: 12rpx;
65
+ }
66
+ .vip_price{
67
+ font-size: 36rpx;
68
+ }
69
+ }
70
+ }
71
+ .vip_pay{
72
+ padding: 24rpx 0 50rpx;
73
+ }
74
+ .vip_tip{
75
+ text-align: center;
76
+ font-size: 22rpx;
77
+ color: #999999;
78
+ margin-top: 24rpx;
79
+ }
80
+ }
81
+ </style>
@@ -14,13 +14,24 @@
14
14
  </view>
15
15
  <!-- #endif -->
16
16
  <view class="jfb-base-open-vip-detail__body">
17
- <view>测试插件( {{containerId}} )</view>
17
+ <view class="combo_section">
18
+ <view class="combo_section-title">套餐名称:年卡会员</view>
19
+ <xd-list-item label="套餐金额" paddingLR="40rpx">¥125.00</xd-list-item>
20
+ <xd-list-item label="套餐期限" paddingLR="40rpx">30天</xd-list-item>
21
+ </view>
22
+
23
+ <view class="combo_section">
24
+ <xd-list-item label="套餐金额" paddingLR="40rpx">¥125.00</xd-list-item>
25
+ <xd-list-item label="平台优惠" paddingLR="40rpx">-¥125.00</xd-list-item>
26
+ </view>
27
+
18
28
  </view>
19
29
  </view>
20
30
  </template>
21
31
 
22
32
  <script>
23
33
  import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
34
+ import XdListItem from "@/components/XdListItem/XdListItem"
24
35
  import { jfbRootExec } from "@/utils/xd.event";
25
36
  import JfbBaseOpenVipDetailMixin from "./JfbBaseOpenVipDetailMixin";
26
37
  import { getContainerPropsValue } from "@/utils/xd.base";
@@ -29,14 +40,15 @@
29
40
  export default {
30
41
  name: "JfbBaseOpenVipDetail",
31
42
  components: {
32
- XdFontIcon
43
+ XdFontIcon,
44
+ XdListItem
33
45
  },
34
46
  mixins: [
35
47
  componentsMixins, extsMixins, JfbBaseOpenVipDetailMixin
36
48
  ],
37
49
  data() {
38
50
  return {
39
-
51
+ //hideMask: true,
40
52
  //todo
41
53
  }
42
54
  },
@@ -105,7 +117,24 @@
105
117
 
106
118
  .jfb-base-open-vip-detail {
107
119
  &__body{
108
-
120
+ .combo_section{
121
+ border-radius: 24rpx;
122
+ overflow: hidden;
123
+ margin: 20rpx;
124
+ background-color: #FFFFFF;
125
+ &-title{
126
+ height: 72rpx;
127
+ line-height: 72rpx;
128
+ text-align: center;
129
+ background: linear-gradient(90deg, #FCD083 0%, #FFDEAD 100%);
130
+ font-size: 28rpx;
131
+ color: #915714;
132
+ font-weight: 500;
133
+ }
134
+ ::v-deep .my-list_value{
135
+ color: #999999;
136
+ }
137
+ }
109
138
  }
110
139
  }
111
140
  </style>
@@ -8,41 +8,216 @@ export default {
8
8
  content: (data) => {
9
9
  return [
10
10
  {
11
- label: '背景颜色:',
12
- ele: 'xd-color',
13
- valueKey: 'bgColor',
14
- value: data.bgColor || '',
15
- placeholder: '请输入占位框背景颜色',
16
- groupKey:'content',
11
+ label: '预览plus样式:',
12
+ ele: 'xd-radio',
13
+ valueKey: 'is_plus_preview',
14
+ value: data['is_plus_preview'] || 'Y',
15
+ groupKey: 'content',
16
+ placeholder: '请选择预览plus样式',
17
+ multiple: false,
18
+ className: 'input80',
19
+ list: [
20
+ { label: 'plus用户样式', value: 'Y' },
21
+ { label: '普通用户样式', value: 'N' },
22
+ ]
17
23
  },
18
24
  {
19
- label: '选中路径:',
20
- groupKey:'advanced',
21
- className: 'input100',
22
- ele: 'xd-select-pages-path',
23
- valueKey: 'select-pages-path',
24
- value: data['select-pages-path'] || null,
25
+ label: '是否展示积分入口:',
26
+ labelInline: true,
27
+ ele: 'xd-radio',
28
+ valueKey: 'isPoints',
29
+ groupKey: 'content',
30
+ value: data['isPoints'] || 'Y',
31
+ list: [
32
+ { "label": "展示", "value": 'Y' },
33
+ { "label": "隐藏", "value": 'N' },
34
+ ]
35
+ },
36
+ {
37
+ label: '是否展示余额入口:',
38
+ labelInline: true,
39
+ ele: 'xd-radio',
40
+ valueKey: 'isYue',
41
+ groupKey: 'content',
42
+ value: data['isYue'] || 'Y',
43
+ list: [
44
+ { "label": "展示", "value": 'Y' },
45
+ { "label": "隐藏", "value": 'N' },
46
+ ]
47
+ },
48
+ {
49
+ label: '是否展示优惠券入口:',
50
+ labelInline: true,
51
+ ele: 'xd-radio',
52
+ valueKey: 'isConpon',
53
+ groupKey: 'content',
54
+ value: data['isConpon'] || 'Y',
55
+ list: [
56
+ { "label": "展示", "value": 'Y' },
57
+ { "label": "隐藏", "value": 'N' },
58
+ ]
59
+ },
60
+ {
61
+ label: '外边距:',
62
+ ele: 'xd-margin-padding',
63
+ valueKey: 'bodyMargin',
64
+ groupKey: 'style',
65
+ value: data['bodyMargin'] || null,
66
+ setting: {
67
+ type: 'margin',
68
+ },
69
+ placeholder: '请设置外边距',
70
+ inline: false,
71
+ notice: '设置外边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">0</span>像素',
72
+ },
73
+ {
74
+ label: '外填充:',
75
+ ele: 'xd-margin-padding',
76
+ valueKey: 'bodyPadding',
77
+ groupKey: 'style',
78
+ value: data['bodyPadding'] || null,
25
79
  setting: {
26
- router: XdBus.getParentApi('getPagesTree')
80
+ type: 'padding',
27
81
  },
82
+ placeholder: '请设置外填充',
83
+ inline: false,
84
+ notice: '设置填充值,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
28
85
  },
29
- data.bgColor && {
30
- label: '高度:',
86
+ {
87
+ ele: 'title',
88
+ label: '主体设置',
89
+ size: 'small',
90
+ groupKey: 'style',
91
+ },
92
+ {
93
+ label: '主体圆角设置:',
94
+ ele: 'xd-site-select-list',
95
+ valueKey: 'radius',
96
+ value: data['radius'] || '20',
97
+ labelInline: true,
98
+ groupKey: 'style',
99
+ placeholder: '请选择圆角设置',
100
+ multiple: false,
101
+ className: 'input60',
102
+ handleCustom({ action, data }) {
103
+ XdBus.getParentApi('getOptionsSettingList')({
104
+ setting_id: 'edtix_style_radius',
105
+ key: Date.now()
106
+ })
107
+ .then(res => {
108
+ data.cb(res.list)
109
+ })
110
+ .catch(error => {
111
+ console.error(error);
112
+ });
113
+ },
114
+ },
115
+ {
116
+ label: 'plus用户主体背景颜色:',
117
+ ele: 'el-input',
118
+ valueKey: 'plusBodyBgColor',
119
+ groupKey: 'style',
120
+ value: data['plusBodyBgColor'] || null,
121
+ placeholder: '请选择背景颜色',
122
+ labelInline: true,
123
+ classNmae: 'input80',
124
+ },
125
+ {
126
+ label: '普通用户主体背景颜色:',
31
127
  ele: 'el-input',
32
- groupKey:'style',
33
- type: 'number',
34
- valueKey: 'height',
35
- value: data.height || 100,
36
- placeholder: '请输入占位框高度,单位像素,默认:10px',
128
+ valueKey: 'normalBodyBgColor',
129
+ groupKey: 'style',
130
+ value: data['normalBodyBgColor'] || null,
131
+ placeholder: '请选择背景颜色',
132
+ labelInline: true,
133
+ classNmae: 'input80',
134
+ },
135
+ {
136
+ ele: 'title',
137
+ label: '入口设置',
138
+ size: 'small',
139
+ groupKey: 'style',
140
+ },
141
+ {
142
+ label: '入口圆角设置:',
143
+ ele: 'xd-site-select-list',
144
+ valueKey: 'itemRadius',
145
+ value: data['itemRadius'] || '16',
146
+ labelInline: true,
147
+ groupKey: 'style',
148
+ placeholder: '请选择圆角设置',
149
+ multiple: false,
37
150
  className: 'input60',
151
+ handleCustom({ action, data }) {
152
+ XdBus.getParentApi('getOptionsSettingList')({
153
+ setting_id: 'edtix_style_radius',
154
+ key: Date.now()
155
+ })
156
+ .then(res => {
157
+ data.cb(res.list)
158
+ })
159
+ .catch(error => {
160
+ console.error(error);
161
+ });
162
+ },
163
+ },
164
+ {
165
+ label: 'plus用户入口背景颜色:',
166
+ ele: 'el-input',
167
+ valueKey: 'plusItemBgColor',
168
+ groupKey: 'style',
169
+ value: data['plusItemBgColor'] || null,
170
+ placeholder: '请选择背景颜色',
171
+ labelInline: true,
172
+ classNmae: 'input80',
173
+ },
174
+ {
175
+ label: '普通用户入口背景颜色:',
176
+ ele: 'el-input',
177
+ valueKey: 'normalItemBgColor',
178
+ groupKey: 'style',
179
+ value: data['normalItemBgColor'] || null,
180
+ placeholder: '请选择背景颜色',
181
+ labelInline: true,
182
+ classNmae: 'input80',
183
+ },
184
+ {
185
+ label: '积分兑换地址路径:',
186
+ ele: 'xd-select-pages-path',
187
+ valueKey: 'pointsPath',
188
+ groupKey:'advanced',
189
+ placeholder: '请选择积分兑换地址路径',
190
+ value: data['addressUrl'] || null,
191
+ setting: {
192
+ router: XdBus.getParentApi('getPagesTree'),
193
+ },
194
+ inline: false,
195
+ },
196
+ {
197
+ label: '余额提现路径:',
198
+ ele: 'xd-select-pages-path',
199
+ valueKey: 'withdrawPath',
200
+ groupKey:'advanced',
201
+ placeholder: '请选择余额提现路径',
202
+ value: data['withdrawPath'] || null,
203
+ setting: {
204
+ router: XdBus.getParentApi('getPagesTree'),
205
+ },
206
+ inline: false,
38
207
  },
39
208
  {
40
- label: '', //label
209
+ label: '优惠券路径:',
210
+ ele: 'xd-select-pages-path',
211
+ valueKey: 'couponPath',
41
212
  groupKey:'advanced',
42
- ele: 'slot', //package 名称
43
- slot: 'is_reference',
213
+ placeholder: '请选择余额提现路径',
214
+ value: data['couponPath'] || null,
215
+ setting: {
216
+ router: XdBus.getParentApi('getPagesTree'),
217
+ },
218
+ inline: false,
44
219
  },
45
- ].filter(i=>i)
220
+ ].filter(i => i)
46
221
  },
47
222
  advanced: [],
48
223
  };
@@ -1,20 +1,20 @@
1
1
  <template>
2
- <view
3
- class="jfb-base-points-card"
4
- @click="handleEditxSelect"
5
- :class="{ editx : isEditx && active }"
6
- >
2
+ <view class="jfb-base-points-card" @click="handleEditxSelect" :class="{ editx : isEditx && active }">
7
3
  <!--#ifdef H5-->
8
- <view
9
- class="jfb-base-points-card__edit"
10
- :class="{ editx : isEditx && active }"
11
- v-if="isEditx && active"
12
- >
4
+ <view class="jfb-base-points-card__edit" :class="{ editx : isEditx && active }" v-if="isEditx && active">
13
5
  <view class="jfb-base-points-card__edit-icon" @click="delEdit">删除</view>
14
6
  </view>
15
7
  <!-- #endif -->
16
8
  <view class="jfb-base-points-card__body">
17
- <view>测试插件( {{containerId}} )</view>
9
+ <view :style="[bodyStyleComp]" class="jfb-base-points-card__body-list">
10
+ <view :style="[itemStyleComp]" @click="handleTo(item)" v-for="(item,index) in typeList" :key="index" class="jfb-base-points-card__body-list-item">
11
+ <view class="jfb-base-points-card__body-list-item-label">
12
+ {{item.label}}
13
+ <view :style="{background:is_vip==='N'?mainColor:'',color:is_vip==='N'?'#fff':''}" class="jfb-base-points-card__body-list-item-operate" v-if="item.operate">{{item.operate}}</view>
14
+ </view>
15
+ <view class="jfb-base-points-card__body-list-item-value">{{item.value}}</view>
16
+ </view>
17
+ </view>
18
18
  </view>
19
19
  </view>
20
20
  </template>
@@ -34,10 +34,59 @@
34
34
  mixins: [
35
35
  componentsMixins, extsMixins, JfbBasePointsCardMixin
36
36
  ],
37
+ computed: {
38
+ bodyStyleComp() {
39
+ return {
40
+ background: this.is_vip === 'Y' ? this.plusBodyBgColor : this.normalBodyBgColor,
41
+ borderRadius: `${this.radius}rpx`,
42
+ margin: this.getMarginAndPadding(this.margin, 20),
43
+ padding: this.getMarginAndPadding(this.padding, 32),
44
+ }
45
+ },
46
+ itemStyleComp() {
47
+ return {
48
+ background: this.is_vip === 'Y' ? this.plusItemBgColor : this.normalItemBgColor,
49
+ borderRadius: `${this.itemRadius}rpx`,
50
+ }
51
+ }
52
+ },
37
53
  data() {
38
54
  return {
39
-
40
- //todo
55
+ isPoints: '',
56
+ isYue: '',
57
+ isConpon: '',
58
+ typeList: [
59
+ {
60
+ label: "积分",
61
+ key: "points",
62
+ value: 0
63
+ },
64
+ {
65
+ label: "余额",
66
+ key: "yue",
67
+ operate: '提现',
68
+ value: 0
69
+ },
70
+ {
71
+ label: "优惠券",
72
+ key: "conpon",
73
+ value: 0
74
+ },
75
+ ],
76
+ is_vip: 'N',
77
+ plusBodyBgColor: '',
78
+ plusItemBgColor: '',
79
+ normalBodyBgColor: '',
80
+ normalItemBgColor: '',
81
+ is_plus_preview: 'N',
82
+ radius: 0,
83
+ itemRadius: 0,
84
+ margin: {},
85
+ padding: {},
86
+ is_vip: 'N',
87
+ pointsPath: '',
88
+ withdrawPath: '',
89
+ couponPath: '',
41
90
  }
42
91
  },
43
92
  watch: {
@@ -45,6 +94,67 @@
45
94
  if (JSON.stringify(value) === JSON.stringify(oldValue)) return;
46
95
  if (this.$configProject['isPreview']) this.init(value)
47
96
  },
97
+ isPoints(n, o) {
98
+ if (n === "Y") {
99
+ let flag = this.typeList.find((item) => item.key === "points");
100
+ if (!flag) {
101
+ this.typeList.splice(0, 0, {
102
+ label: "积分",
103
+ key: "points",
104
+ operate: '兑换'
105
+ });
106
+ }
107
+ } else {
108
+ let flagIndex = this.typeList.findIndex(
109
+ (item) => item.key === "points"
110
+ );
111
+ if (flagIndex !== -1) {
112
+ this.typeList.splice(flagIndex, 1);
113
+ }
114
+ }
115
+ },
116
+ isYue(n, o) {
117
+ if (n === "Y") {
118
+ let flag = this.typeList.find((item) => item.key === "yue");
119
+ if (!flag) {
120
+ this.typeList.splice(1, 0, {
121
+ label: "余额",
122
+ key: "yue",
123
+ operate: '提现'
124
+ });
125
+ }
126
+ } else {
127
+ let flagIndex = this.typeList.findIndex(
128
+ (item) => item.key === "yue"
129
+ );
130
+ if (flagIndex !== -1) {
131
+ this.typeList.splice(flagIndex, 1);
132
+ }
133
+ }
134
+ },
135
+ isConpon(n, o) {
136
+ if (n === "Y") {
137
+ let flag = this.typeList.find((item) => item.key === "conpon");
138
+ if (!flag) {
139
+ this.typeList.splice(2, 0, {
140
+ label: "优惠券",
141
+ key: "conpon",
142
+ });
143
+ }
144
+ } else {
145
+ let flagIndex = this.typeList.findIndex(
146
+ (item) => item.key === "conpon"
147
+ );
148
+ if (flagIndex !== -1) {
149
+ this.typeList.splice(flagIndex, 1);
150
+ }
151
+ }
152
+ },
153
+ is_plus_preview() {
154
+ if (this.$configProject['isPreview']) {
155
+ this.is_vip = this.is_plus_preview
156
+ }
157
+ }
48
158
  },
49
159
  created() {
50
160
  this.init(this.container);
@@ -53,26 +163,53 @@
53
163
  },
54
164
  methods: {
55
165
  onJfbLoad(options) {
56
-
57
- // jfbRootExec('baiduUserLogin', {
58
-
59
- // vm: this,// data: {
60
-
61
- // account: 'gaoshiyong',// password: '123456789',// type: 3,// ...options
62
-
63
- // }
64
-
65
- // }).then().catch()
166
+ this.typeList = this.typeList.map(item => {
167
+ if (item.key === 'points') {
168
+ // item.value = 'score_amount'
169
+ item.value = 89144
170
+ }
171
+ if (item.key === 'yue') {
172
+ // item.value = 'total_amount'
173
+ item.value = 4545
174
+ }
175
+ if (item.key === 'conpon') {
176
+ // item.value = 'coupon_count'
177
+ item.value = 3
178
+ }
179
+ return item
180
+ })
66
181
  },
67
182
  /**
68
183
  * @description 监听事件变化
69
184
  * @param container {object} 业务组件对象自己
70
185
  */
71
186
  init(container) {
72
-
73
- //this.bgcolor = getContainerPropsValue(container, 'content.bgcolor', '#fff');
74
-
75
- //this.height = getContainerPropsValue(container, 'content.height', 10);
187
+ this.isPoints = getContainerPropsValue(container, "content.isPoints", "Y");
188
+ this.isYue = getContainerPropsValue(container, "content.isYue", "Y");
189
+ this.isConpon = getContainerPropsValue(container, "content.isConpon", "Y");
190
+ this.plusBodyBgColor = getContainerPropsValue(container, 'content.plusBodyBgColor', 'linear-gradient(180deg, #FFFCF8 0%, #FFF3E2 100%)');
191
+ this.plusItemBgColor = getContainerPropsValue(container, 'content.plusItemBgColor', 'linear-gradient(136.55deg, #FFECD1 0%, #F6D6AB 100%)');
192
+ this.normalBodyBgColor = getContainerPropsValue(container, 'content.normalBodyBgColor', '#fff');
193
+ this.normalItemBgColor = getContainerPropsValue(container, 'content.normalItemBgColor', '#F7F7F7');
194
+ this.is_plus_preview = getContainerPropsValue(container, 'content.is_plus_preview', 'N');
195
+ this.radius = getContainerPropsValue(container, 'content.radius', '20');
196
+ this.itemRadius = getContainerPropsValue(container, 'content.itemRadius', '16');
197
+ this.margin = getContainerPropsValue(container, 'content.bodyMargin', {});
198
+ this.padding = getContainerPropsValue(container, 'content.bodyPadding', {});
199
+ this.pointsPath = getContainerPropsValue(container, 'content.pointsPath', { value: "" }).value;
200
+ this.withdrawPath = getContainerPropsValue(container, 'content.withdrawPath', { value: "" }).value;
201
+ this.couponPath = getContainerPropsValue(container, 'content.couponPath', { value: "" }).value;
202
+ },
203
+ handleTo(item) {
204
+ if (item.key === 'points') {
205
+ this.$router.push(this.pointsPath)
206
+ }
207
+ if (item.key === 'yue') {
208
+ this.$router.push(this.withdrawPath)
209
+ }
210
+ if (item.key === 'conpon') {
211
+ this.$router.push(this.couponPath)
212
+ }
76
213
  },
77
214
  onJfbScroll(options) {
78
215
  console.log('event.onJfbScroll', options)
@@ -104,8 +241,51 @@
104
241
  @import "./JfbBasePointsCardLess.less";
105
242
 
106
243
  .jfb-base-points-card {
107
- &__body{
244
+ &__body {
245
+ &-list {
246
+ display: flex;
247
+ justify-content: center;
248
+ align-items: center;
249
+ background: linear-gradient(180deg, #FFFCF8 0%, #FFF3E2 100%);
108
250
 
251
+ &-item:last-child {
252
+ margin-right: 0;
253
+ }
254
+
255
+ &-item {
256
+ flex: 1;
257
+ display: flex;
258
+ flex-direction: column;
259
+ justify-content: center;
260
+ align-items: center;
261
+ padding: 20rpx 0;
262
+ margin-right: 32rpx;
263
+ background: linear-gradient(136.55deg, #FFECD1 0%, #F6D6AB 100%);
264
+ border-radius: 16rpx;
265
+ font-size: 24rpx;
266
+
267
+ &-label {
268
+ display: flex;
269
+ margin-bottom: 8rpx;
270
+ }
271
+
272
+ &-operate {
273
+ background: linear-gradient(90deg, #333231 0%, #6C5A46 100%);
274
+ border-radius: 24rpx;
275
+ padding: 4rpx 8rpx;
276
+ color: #F8DCB4;
277
+ font-size: 20rpx;
278
+ margin-left: 8rpx;
279
+ text-align: center;
280
+ vertical-align: middle;
281
+ }
282
+
283
+ &-value {
284
+ color: #333332;
285
+ font-weight: 700;
286
+ }
287
+ }
288
+ }
109
289
  }
110
290
  }
111
- </style>
291
+ </style>