jufubao-base 1.0.237-beta4 → 1.0.237-beta5

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 (25) hide show
  1. package/package.json +1 -1
  2. package/src/components/JfbBaseConsumpCode/JfbBaseConsumpCode.vue +14 -2
  3. package/src/components/JfbBaseFastLink/Attr.js +12 -1
  4. package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +63 -0
  5. package/src/components/JfbBaseNoticeDialog/JfbBaseNoticeDialog.vue +2 -2
  6. package/src/components/JfbBaseOpenVip/Attr.js +29 -0
  7. package/src/components/JfbBaseOpenVip/JfbBaseOpenVip.vue +21 -2
  8. package/src/components/JfbBaseOpenVip/Mock.js +1 -1
  9. package/src/components/JfbBaseOpenVip/XdVipList.vue +4 -1
  10. package/src/components/JfbBaseOpenVipDetail/JfbBaseOpenVipDetail.vue +2 -1
  11. package/src/components/JfbBaseOpenVipDetail/Mock.js +13 -11
  12. package/src/components/JfbBasePay/Attr.js +40 -0
  13. package/src/components/JfbBasePay/JfbBasePay.vue +12 -4
  14. package/src/components/JfbBasePay/Mock.js +0 -9
  15. package/src/components/JfbBasePersonalData/JfbBasePersonalData.vue +1 -1
  16. package/src/components/JfbBasePoster/Attr.js +1 -1
  17. package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +2 -2
  18. package/src/components/JfbBasePosterGroup/JfbBasePosterGroup.vue +2 -1
  19. package/src/components/JfbBaseShare/JfbBaseShare.vue +3 -1
  20. package/src/components/JfbBaseTfkSearch/ContentProduct.vue +1 -0
  21. package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +4 -0
  22. package/src/components/JfbBaseTfkSearch/listMixins.js +2 -1
  23. package/src/components/JfbBaseUserOrder/Attr.js +16 -0
  24. package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +11 -2
  25. package/src/components/JfbBaseWithdraw/JfbBaseWithdraw.vue +15 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-base",
3
- "version": "1.0.237-beta4",
3
+ "version": "1.0.237-beta5",
4
4
  "private": false,
5
5
  "description": "聚福宝业务组件基础插件包",
6
6
  "main": "index.js",
@@ -79,7 +79,7 @@
79
79
 
80
80
  </view>
81
81
  </view>
82
- <XdDialog :show.sync="showDialog" :showClose="false" :showTitle="false">
82
+ <XdDialog :show.sync="showDialog" :showClose="false" :showTitle="true">
83
83
  <view class="dialog-title" slot="title">门店确认</view>
84
84
  <view class="dialog-content">
85
85
  <view>当前门店:<span :style="{color:mainColor}">{{shopName}}</span></view>
@@ -192,6 +192,8 @@
192
192
  }
193
193
  },
194
194
  created() {
195
+ console.log(this.siteInfo,'configProject');
196
+
195
197
  this.init(this.container);
196
198
  },
197
199
  methods: {
@@ -725,11 +727,12 @@
725
727
  .jfb-base-consump-code {
726
728
  &__body {
727
729
  .content-box {
728
- margin: 158rpx 30rpx 0 30rpx;
730
+ margin: 0 30rpx 0 30rpx;
729
731
  background-color: #fff;
730
732
  padding: 81rpx 32rpx 32rpx 32rpx;
731
733
  border-radius: 24rpx;
732
734
  position: relative;
735
+ top: 158rpx;
733
736
  display: flex;
734
737
  flex-direction: column;
735
738
  align-items: center;
@@ -886,16 +889,20 @@
886
889
  &-item {
887
890
  display: flex;
888
891
  margin-top: 60rpx;
892
+ align-items: baseline;
889
893
 
890
894
  &-label {
891
895
  color: #999999;
892
896
  font-size: 30rpx;
893
897
  margin-right: 64rpx;
898
+ width: 117rpx;
899
+ flex-shrink: 0;
894
900
  }
895
901
 
896
902
  &-tags {
897
903
  display: flex;
898
904
  align-items: flex-start;
905
+ flex-wrap: wrap;
899
906
 
900
907
  &>view {
901
908
  margin-right: 32rpx;
@@ -904,6 +911,11 @@
904
911
  padding: 16rpx 24rpx;
905
912
  border: 2rpx solid #EEEEEE;
906
913
  color: #CCCCCC;
914
+ margin-bottom: 18rpx;
915
+ }
916
+
917
+ &>view:last-child {
918
+ margin-bottom: 0;
907
919
  }
908
920
 
909
921
  }
@@ -24,7 +24,8 @@ export default {
24
24
  multiple: false,
25
25
  className: 'input80',
26
26
  list: [
27
- {label: '平铺', value: 'noraml'},
27
+ {label: '垂直', value: 'noraml'},
28
+ {label: '水平', value: 'horizontal'},
28
29
  {label: '悬浮', value: 'fixed'},
29
30
  ],
30
31
  inline: false,
@@ -53,6 +54,16 @@ export default {
53
54
  placeholder: '请输入自定义名称',
54
55
  className: 'input80',
55
56
  },
57
+ {
58
+ label: '自定义服务名称:',
59
+ ele: 'el-input',
60
+ type: 'text',
61
+ groupKey:'content',
62
+ valueKey: 'customName',
63
+ value: data['customName']? data['customName']: '我的服务',
64
+ placeholder: '请输入自定义服务名称',
65
+ className: 'input80',
66
+ },
56
67
  {
57
68
  label: '背景颜色:',
58
69
  ele: 'xd-color',
@@ -56,6 +56,22 @@
56
56
  :layoutInfo="layoutInfo"
57
57
  ></xd-fast-nav>
58
58
  </template>
59
+ <template v-if="is_layout === 'horizontal'">
60
+ <view :style="[horizontalStyle]">
61
+ <view class="x-line"></view>
62
+ <view class="fast-link__horizontal-title">{{customName}}</view>
63
+ <view class="fast-link__horizontal" v-if="list.length > 0">
64
+ <view :style="[horizontalItemStyle]" class="fast-link__horizontal-item" v-for="item in list" :key="item.key" @click="handleClick(item)">
65
+ <view class="fast-link__horizontal-item-icon" v-if="item.icon">
66
+ <xd-font-icon :color="iconColor" :size="item.size" :icon="item.icon"></xd-font-icon>
67
+ </view>
68
+ <view class="fast-link__horizontal-item-text" :style="{color: color, fontSize: fontSize + 'rpx'}">
69
+ <view>{{item.name}}</view>
70
+ </view>
71
+ </view>
72
+ </view>
73
+ </view>
74
+ </template>
59
75
  </view>
60
76
  </view>
61
77
  </template>
@@ -107,6 +123,8 @@
107
123
  margin: {},
108
124
  padding:{},
109
125
  rowSpacing: 20, //间距
126
+
127
+ customName: '我的服务'
110
128
  }
111
129
  },
112
130
  watch: {
@@ -117,6 +135,22 @@
117
135
  },
118
136
 
119
137
  computed: {
138
+ horizontalStyle(){
139
+ let border = 0;
140
+ if (this.is_border === 'Y') border = `${this.is_border_w}rpx solid ${this.is_border_c}`;
141
+ return {
142
+ margin: this.getMarginAndPadding(this.margin, 20),
143
+ padding:this.getMarginAndPadding(this.padding, 20),
144
+ border,
145
+ background: this.backgroundColor,
146
+ borderRadius: this.radius + 'rpx',
147
+ }
148
+ },
149
+ horizontalItemStyle(){
150
+ return {
151
+ marginBottom: this.rowSpacing + 'rpx',
152
+ }
153
+ },
120
154
  bodyStyle(){
121
155
  let margin = `${this.checkValue(this.margin.top, 20)}rpx`;
122
156
  margin = `${margin} ${this.checkValue(this.margin.right, 20)}rpx`;
@@ -199,6 +233,7 @@
199
233
  this.subColor = getContainerPropsValue(container, 'content.textSubColor', '#000');
200
234
  this.fontSubSize = getContainerPropsValue(container, 'content.fontSubSize', 24);
201
235
  this.isNotExpand = getContainerPropsValue(container, 'content.isNotExpand', 'Y');
236
+ this.customName = getContainerPropsValue(container, 'content.customName', '我的服务');
202
237
  if(this.is_layout === 'fixed') {
203
238
  this.listNave = this.list.map(item=>{
204
239
  let {appValue,path} = item.path
@@ -228,6 +263,14 @@
228
263
  return index < 3
229
264
  });
230
265
 
266
+ } else if(this.is_layout === 'horizontal'){
267
+ const remainder = this.list.length % 4;
268
+ if (remainder !== 0) {
269
+ const needed = 4 - remainder;
270
+ for (let i = 0; i < needed; i++) {
271
+ this.list.push({}); // 或者你可以插入其他默认值
272
+ }
273
+ }
231
274
  }
232
275
  },
233
276
  }
@@ -285,6 +328,26 @@
285
328
  align-items: center;
286
329
  }
287
330
  }
331
+ &__horizontal {
332
+ display: flex;
333
+ justify-content: space-around;
334
+ &-title {
335
+ color: #000000;
336
+ font-size: 26rpx;
337
+ font-weight: 500;
338
+ margin-bottom: 43rpx;
339
+ padding-left: 36rpx;
340
+ }
341
+ &-item {
342
+ display: flex;
343
+ flex-direction: column;
344
+ justify-content: center;
345
+ align-items: center;
346
+ &-icon {
347
+ margin-bottom: 22rpx;
348
+ }
349
+ }
350
+ }
288
351
  }
289
352
 
290
353
  </style>
@@ -139,7 +139,7 @@ export default {
139
139
  this.contentList = res.list
140
140
  this.currentImage = getServiceUrl(
141
141
  this.contentList[0].image_url,
142
- "size3"
142
+ "size8"
143
143
  );
144
144
  this.currentLinkUrl = this.getLinkUrl(
145
145
  this.contentList[0].redirect_data
@@ -216,7 +216,7 @@ export default {
216
216
  );
217
217
  this.currentImage = getServiceUrl(
218
218
  this.contentList[this.currentIndex].image_url,
219
- "size3"
219
+ "size8"
220
220
  );
221
221
  },
222
222
  handleToLink() {
@@ -7,6 +7,17 @@ export default {
7
7
  style: [],
8
8
  content: (data) => {
9
9
  return [
10
+ {
11
+ label: "是否展示兑换码",
12
+ ele: "xd-radio",
13
+ valueKey: 'showExchangeCode',
14
+ value: data.showExchangeCode || "Y",
15
+ groupKey: "content",
16
+ list: [
17
+ {label: "展示", value: "Y"},
18
+ {label: "不展示", value: "N"},
19
+ ]
20
+ },
10
21
  {
11
22
  label: '共享PLUS会员用户协议:',
12
23
  ele: 'xd-site-news',
@@ -251,6 +262,9 @@ export default {
251
262
  action: 'action',
252
263
  sort: true,
253
264
  maxlen: 100,
265
+ rules: [
266
+ {required: true, message: '请添加背景图', trigger: 'change'},
267
+ ],
254
268
  },
255
269
  {
256
270
  label: '4大特权图片:',
@@ -271,6 +285,9 @@ export default {
271
285
  action: 'action',
272
286
  sort: true,
273
287
  maxlen: 100,
288
+ rules: [
289
+ {required: true, message: '请添加特权图片', trigger: 'change'},
290
+ ],
274
291
  },
275
292
  {
276
293
  label: '会员详情路径:',
@@ -284,6 +301,18 @@ export default {
284
301
  },
285
302
  inline: false,
286
303
  },
304
+ {
305
+ label: '兑换码详情路径:',
306
+ ele: 'xd-select-pages-path',
307
+ valueKey: 'exchangeCodePath',
308
+ groupKey:'advanced',
309
+ placeholder: '请选择兑换码详情路径',
310
+ value: data['exchangeCodePath'] || null,
311
+ setting: {
312
+ router: XdBus.getParentApi('getPagesTree'),
313
+ },
314
+ inline: false,
315
+ },
287
316
  ].filter(i=>i)
288
317
  },
289
318
  advanced: [],
@@ -75,14 +75,14 @@
75
75
  </view> -->
76
76
  </view>
77
77
 
78
- <xd-vip-list v-if="!isVip" :list="vipCardList"
78
+ <xd-vip-list v-if="!isVip" :list="showVipCardList"
79
79
  @handlePrivacy="handlePrivacy"
80
80
  @toVipDetail="toVipDetail"
81
81
  ></xd-vip-list>
82
82
 
83
83
  <xd-down-drawer :show.sync="showDrawer" height="480rpx">
84
84
  <view class="drawer_title">立即续费</view>
85
- <xd-vip-list :list="vipCardList"
85
+ <xd-vip-list :list="showVipCardList"
86
86
  @handlePrivacy="handlePrivacy"
87
87
  @toVipDetail="toVipDetail"
88
88
  ></xd-vip-list>
@@ -126,10 +126,17 @@
126
126
  vip_expire_time: "",
127
127
 
128
128
  siteLogo: "",
129
+ exchangeCodeVip: {
130
+ product_name: "兑换码",
131
+ sale_price: 0,
132
+ vip_card_id: -1
133
+ },
129
134
  //todo
130
135
  vipDetailPath: "",
131
136
  bannerBgImg: "",
132
137
  specialImage: "",
138
+ showExchangeCode: "",
139
+ exchangeCodePath: "",
133
140
  }
134
141
  },
135
142
  computed: {
@@ -141,6 +148,9 @@
141
148
  },
142
149
  isVip(){
143
150
  return this.uInfo.user_level === 'VIP';
151
+ },
152
+ showVipCardList(){
153
+ return this.showExchangeCode === 'Y' ? [this.exchangeCodeVip, ...this.vipCardList] : [...this.vipCardList]
144
154
  }
145
155
  },
146
156
  watch: {
@@ -168,6 +178,8 @@
168
178
  this.vipDetailPath = getContainerPropsValue(container, 'content.vipDetailPath', {value: "/system/system/vipdetail"}).value;
169
179
  this.bannerBgImg = getServiceUrl(getContainerPropsValue(container, 'content.bannerBgImg', {url: ""}).url);
170
180
  this.specialImage = getServiceUrl(getContainerPropsValue(container, 'content.specialImage', {url: ""}).url);
181
+ this.exchangeCodePath = getContainerPropsValue(container, 'content.exchangeCodePath', {value: ""}).value;
182
+ this.showExchangeCode = getContainerPropsValue(container, 'content.showExchangeCode', '');
171
183
  },
172
184
  p_getBaseUserInfo(){
173
185
  jfbRootExec("getOpenBaseUserInfo", {
@@ -202,6 +214,12 @@
202
214
  })
203
215
  },
204
216
  toVipDetail(vip_card_id){
217
+ if(vip_card_id === -1){
218
+ this.$xdUniHelper.navigateTo({
219
+ url: this.exchangeCodePath
220
+ })
221
+ return;
222
+ }
205
223
  this.$xdUniHelper.navigateTo({
206
224
  url: `${this.vipDetailPath}?vip_card_id=${vip_card_id}`
207
225
  })
@@ -300,6 +318,7 @@
300
318
  height: 184rpx;
301
319
  margin: auto;
302
320
  border-radius: 24rpx;
321
+ background-color: #E8A841;
303
322
  // background: linear-gradient(90deg, #E8A841 0%, #FAD48E 100%);
304
323
  background-size: 100% 100%;
305
324
  background-repeat: no-repeat;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  module.exports = {
4
- getOpenBaseUserInfo: {"user_name":"","user_code":"Uf4zx6EPfV","nickname":"未来~","real_name":"","head_url":"https:\/\/thirdwx.qlogo.cn\/mmopen\/vi_32\/Q0j4TwGTfTJsajZzh53IB56crRSdmKvRbjT4V1Ha8v5uCOkASbWS0GibgLeic8OKBzAwUyBa3vZGhjwmd6RfpG9g\/132","province_code":"","city_code":"","province_name":"","city_name":"","sex":"","sex_name":"未知","birthday_date":"","phone_number":"13611111111","show_user_name":"未来~","user_level":"VIP","vip_expire_time":1745026677,"request_id":"250e5709e6c95066"},
4
+ getOpenBaseUserInfo: {"user_name":"","user_code":"Uf4zx6EPfV","nickname":"未来~","real_name":"","head_url":"https:\/\/thirdwx.qlogo.cn\/mmopen\/vi_32\/Q0j4TwGTfTJsajZzh53IB56crRSdmKvRbjT4V1Ha8v5uCOkASbWS0GibgLeic8OKBzAwUyBa3vZGhjwmd6RfpG9g\/132","province_code":"","city_code":"","province_name":"","city_name":"","sex":"","sex_name":"未知","birthday_date":"","phone_number":"13611111111","show_user_name":"未来~","user_level":"","vip_expire_time":1745026677,"request_id":"250e5709e6c95066"},
5
5
  getVipList: {"total_size":3,"next_page_token":"","list":[{"vip_card_id":3,"product_id":60038520,"product_name":"体验卡","sale_price":200,"vip_card_icon":""},{"vip_card_id":2,"product_id":60038519,"product_name":"月卡","sale_price":2678,"vip_card_icon":""},{"vip_card_id":1,"product_id":60038515,"product_name":"测1","sale_price":20085,"vip_card_icon":""}],"request_id":"6b4aef5e06411d8a"},
6
6
  getVipMoneySaving: { "save_amount": 100 , "request_id": "6b4aef5e06411d8a" }
7
7
  }
@@ -10,7 +10,10 @@
10
10
  </view>
11
11
  </view>
12
12
  <view class="vip_pay">
13
- <view class="pay_btn" @click="toVipDetail">立即支付 <xd-unit style="margin-left: 16rpx;" :price="curVipCard.sale_price" :isOld="false" colorNew="#FFFFFF"></xd-unit></view>
13
+ <view class="pay_btn" @click="toVipDetail">
14
+ <template v-if="vip_card_id===-1">0元开通</template>
15
+ <template v-else>立即支付 ¥{{ $xdUniHelper.divisionFloatNumber(curVipCard.sale_price, 100) }}</template>
16
+ </view>
14
17
  <view class="vip_tip">开通视为同意<text @click.stop="handlePrivacy('privacy_service')">《共享PLUS会员用户协议》</text></view>
15
18
  </view>
16
19
  </view>
@@ -20,7 +20,8 @@
20
20
  <xd-list-item label="套餐期限" paddingLR="40rpx">{{ vipInfo.life_cycle_label }}</xd-list-item>
21
21
  </view>
22
22
 
23
- <view class="combo_section">
23
+ <!-- #13418 开通plus会员:此版本没有平台优惠 -->
24
+ <view v-if="0" class="combo_section">
24
25
  <xd-list-item label="套餐金额" paddingLR="40rpx">¥{{ $xdUniHelper.divisionFloatNumber(vipInfo.user_pay_amount, 100) }}</xd-list-item>
25
26
  <xd-list-item label="平台优惠" paddingLR="40rpx">-¥{{ $xdUniHelper.divisionFloatNumber(vipInfo.platform_discount_amount, 100) }}</xd-list-item>
26
27
  </view>
@@ -1,13 +1,15 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
3
  module.exports = {
4
-
5
- getOpenByIdFilmSquate:{},
6
-
7
- updateOpenFilmPaiqiDate:{},
8
-
9
- removeOpenFilmAddress:{},
10
-
11
- addOpenFilmcart:{},
12
-
13
- }
4
+ getVipConfirm: {
5
+ vip_card_id: 1,
6
+ product_id: 60038515,
7
+ product_name: "年卡会员",
8
+ sale_price: 20000,
9
+ platform_discount_amount: 120,
10
+ user_pay_amount: 20000,
11
+ life_cycle_label: "1年",
12
+ request_id: "cc61b6e3a8e0931f"
13
+ },
14
+ createVipOrder: {}
15
+ };
@@ -8,6 +8,46 @@ export default {
8
8
  advanced: [],
9
9
  content: data=>{
10
10
  return [
11
+ {
12
+ label: "【仍需扣点】文案:",
13
+ ele: "el-input",
14
+ valueKey: "text1",
15
+ value: data.text1 || "仍需扣点",
16
+ groupKey: "content",
17
+ inline: false,
18
+ className: "input80",
19
+ },
20
+ {
21
+ label: "【(可使用多张票券点数)】文案:",
22
+ ele: "el-input",
23
+ valueKey: "text2",
24
+ value: data.text2 || '',
25
+ placeholder: '(可使用多张票券点数)',
26
+ groupKey: "content",
27
+ inline: false,
28
+ className: "input80",
29
+ },
30
+ {
31
+ label: "【选择以下补差方式】文案:",
32
+ ele: "el-input",
33
+ valueKey: "text3",
34
+ value: data.text3 || '选择以下补差方式',
35
+ groupKey: "content",
36
+ inline: false,
37
+ className: "input80",
38
+ },
39
+ {
40
+ label: "是否展示继续补差",
41
+ ele: "xd-radio",
42
+ valueKey: "showContinuePay",
43
+ value: data.showContinuePay || 'Y',
44
+ groupKey: "content",
45
+ inline: true,
46
+ list: [
47
+ { label: "展示", value: "Y" },
48
+ { label: "不展示", value: "N" },
49
+ ],
50
+ },
11
51
  ...styleForm.getForm(data),
12
52
  {
13
53
  label: '支付成功跳转路径:', //label
@@ -100,7 +100,7 @@
100
100
  <view class="remain_pay" v-if="payInfo.channel_amount > 0">
101
101
  <view style="border-bottom: 2rpx solid #eee;" class="column-group">
102
102
  <view class="column-item" style="padding: 30rpx 60rpx">
103
- <view class="column_label">仍需扣点<text class="label_sub">(可使用多张票券点数)</text></view>
103
+ <view class="column_label">{{text1}}<text class="label_sub">{{ text2 }}</text></view>
104
104
  <view class="column_value text-primary">
105
105
  <xd-unit
106
106
  :price="payInfo.channel_amount"
@@ -112,8 +112,8 @@
112
112
  </view>
113
113
  </view>
114
114
  <view class="remain_header">
115
- <view>选择以下补差方式</view>
116
- <view class="flex align-center text-primary">
115
+ <view>{{ text3 }}</view>
116
+ <view v-if="showContinuePay==='Y'" class="flex align-center text-primary">
117
117
  <view class="margin-right">继续补差</view>
118
118
  <xd-unit
119
119
  :price="payInfo.channel_amount"
@@ -212,7 +212,11 @@ export default {
212
212
  rechargeSuccessPath: "", //充值成功
213
213
  ...styleForm.getDataItem(),
214
214
  borderColor:'rgba(0,0,0,0)',
215
- options:{}
215
+ options:{},
216
+ text1: "",
217
+ text2: "",
218
+ text3: "",
219
+ showContinuePay: "",
216
220
  };
217
221
  },
218
222
  watch: {
@@ -262,6 +266,10 @@ export default {
262
266
  * @param container {object} 业务组件对象自己
263
267
  */
264
268
  init(container) {
269
+ this.text1 = getContainerPropsValue(container, 'content.text1', "");
270
+ this.text2 = getContainerPropsValue(container, 'content.text2', "");
271
+ this.text3 = getContainerPropsValue(container, 'content.text3', "");
272
+ this.showContinuePay = getContainerPropsValue(container, 'content.showContinuePay', 'Y');
265
273
  this.paySuccessPath = getContainerPropsValue(
266
274
  container,
267
275
  "content.pay_success_path",
@@ -24,15 +24,6 @@ module.exports = {
24
24
  "card_use_price": 10000,
25
25
  "use_card_point": "5000"
26
26
  },
27
- {
28
- "card_number": "101001000005195",
29
- "card_type_name": "聚福宝福卡测试蛋糕",
30
- "end_time": 1679034403,
31
- "card_point": 5000,
32
- "is_bind_card": true,
33
- "card_use_price": 10000,
34
- "use_card_point": "5000"
35
- },
36
27
  ],
37
28
  },
38
29
  getBaseOrderStatus:{},
@@ -125,7 +125,7 @@
125
125
  vm: this,
126
126
  data: {
127
127
  nickname: this.info.nickname,
128
- sex: this.info.sex.value,
128
+ sex: this.info.sex,
129
129
  birthday_date: this.info.birthday_date
130
130
  },
131
131
  }).then(res => {
@@ -264,7 +264,7 @@ export default {
264
264
  size: 'small',
265
265
  groupKey:'content',
266
266
  },
267
- showBg && params.poster && params.poster['type']&& params.poster['type'] !== '1' && {
267
+ showBg && params.poster && params.poster['type'] && {
268
268
  label: '广告背景图:',
269
269
  ele: 'xd-upload',
270
270
  valueKey: 'background',
@@ -112,7 +112,7 @@
112
112
  }"
113
113
  >
114
114
  <view
115
- v-if="topIsCarousel === 1 && topList.lenght > 0"
115
+ v-if="topIsCarousel === 1 "
116
116
  :style="{
117
117
  width: bigWidth + 'rpx',
118
118
  height: smallHeight + 'rpx',
@@ -190,7 +190,7 @@
190
190
  }"
191
191
  >
192
192
  <view
193
- v-if="bottomIsCarousel === 1 && bottomList.lenght > 0"
193
+ v-if="bottomIsCarousel === 1 "
194
194
  :style="{
195
195
  width: bigWidth + 'rpx',
196
196
  height: smallHeight + 'rpx',
@@ -44,6 +44,7 @@
44
44
  import { getContainerPropsValue } from "@/utils/xd.base";
45
45
  import getServiceUrl from "@/common/getServiceUrl";
46
46
  import componentsMixins from "@/mixins/componentsMixins";
47
+ import posterMixins from "@/mixins/posterMixins";
47
48
  import extsMixins from "@/mixins/extsMixins";
48
49
  export default {
49
50
  name: "JfbBasePosterGroup",
@@ -52,7 +53,7 @@
52
53
  XdContentXss
53
54
  },
54
55
  mixins: [
55
- componentsMixins, extsMixins, JfbBasePosterGroupMixin
56
+ componentsMixins, extsMixins, JfbBasePosterGroupMixin, posterMixins
56
57
  ],
57
58
  data() {
58
59
  return {
@@ -115,7 +115,9 @@
115
115
  }
116
116
  }).then(res => {
117
117
  this.shareList = res.list.map(item => {
118
- item.share_image_url = getServiceUrl(item.share_image_url);
118
+ let urlSearch = item.share_image_url.split('?')[1];
119
+ let newImgUrl = getServiceUrl(item.share_image_url);
120
+ item.share_image_url = newImgUrl.split('?')[0] + '?' + urlSearch;
119
121
  return item;
120
122
  });
121
123
  })
@@ -32,6 +32,7 @@
32
32
  v-if="productConfig.isPrice === 'Y'"
33
33
  type="two"
34
34
  :showPrice="item['show_prices']"
35
+ :isShowIcon="productConfig.isShowIcon"
35
36
  :isPlus="productConfig.is_plus_site">
36
37
  </CusPrice>
37
38
  </view>
@@ -73,6 +73,7 @@
73
73
  import listMixins from "./listMixins";
74
74
  import CustomList from "./CustomList.vue";
75
75
  import AllList from "./AllList.vue";
76
+ import { mapState } from 'vuex';
76
77
 
77
78
  class EmitParent {
78
79
  constructor(options) {
@@ -131,6 +132,9 @@
131
132
  }
132
133
  },
133
134
  computed: {
135
+ ...mapState({
136
+ siteInfo: state => state.siteInfo,
137
+ }),
134
138
  showMenuList(){
135
139
  return [{label: "全部", value: "all"}, ...this.menuList]
136
140
  },
@@ -24,7 +24,8 @@ export default {
24
24
  let differ = getContainerPropsValue(container, 'content.differ', 1);
25
25
  let showActivityPrice = getContainerPropsValue(container, 'content.showActivityPrice', 'N');
26
26
  let isShowExchange = getContainerPropsValue(container, 'content.isShowExchange', 'N');
27
- this.productConfig = {is_show_brand, isPrice, isShowTag, isShowDiscount, isAddCart, differ, showActivityPrice, isShowExchange,is_plus_site: this.is_plus_site};
27
+ let isShowIcon = this.siteInfo.mapping.is_show_coin_icon==='Y'
28
+ this.productConfig = {is_show_brand, isPrice, isShowTag, isShowDiscount, isAddCart, differ, showActivityPrice, isShowExchange,is_plus_site: this.is_plus_site,isShowIcon};
28
29
 
29
30
  //内容
30
31
  let brandColor = getContainerPropsValue(container, 'content.brandColor', '#aaa');
@@ -21,6 +21,21 @@ export default {
21
21
  groupKey:'advanced',
22
22
  },
23
23
  {
24
+ label: '是否展示我的订单:',
25
+ ele: 'xd-radio',
26
+ valueKey: 'isShowMyOrder',
27
+ value: data['isShowMyOrder'] || 'Y',
28
+ placeholder: '请选择是否展示我的订单',
29
+ groupKey:'content',
30
+ multiple: false,
31
+ labelInline:true,
32
+ className: 'input80',
33
+ list: [
34
+ {label: '展示', value: 'Y'},
35
+ {label: '隐藏', value: 'N'},
36
+ ]
37
+ },
38
+ data['isShowMyOrder']==='Y'&&{
24
39
  label: '我的订单自定义名称:',
25
40
  ele: 'el-input',
26
41
  type: 'text',
@@ -101,6 +116,7 @@ export default {
101
116
  {"label": "待收货", "value": 'unreceived'},
102
117
  {"label": "已取消", "value": 'cancel'},
103
118
  {"label": "已完成", "value": 'com'},
119
+ {"label": "售后", "value": 'afterSale'},
104
120
  ])
105
121
  }
106
122
  },
@@ -16,8 +16,9 @@
16
16
  <view class="jfb-base-user-order__body">
17
17
  <view class="x-line"></view>
18
18
  <view :style="[bodyStyleComp]" v-if="list.length > 0">
19
- <view class="my-order__add" :style="[titleMarginComp]">
20
- <view :style="[titleStyleComp]">{{myOrderName}}</view>
19
+ <view v-if="isShowMyOrder==='Y'||isShowBtn === 'Y'" class="my-order__add" :style="[titleMarginComp]">
20
+ <view v-if="isShowMyOrder==='Y'" :style="[titleStyleComp]">{{myOrderName}}</view>
21
+ <view v-else></view>
21
22
  <view
22
23
  v-if="isShowBtn === 'Y'"
23
24
  @click="handleToLink(afterUrl)"
@@ -179,6 +180,7 @@
179
180
  cardNameColor: '#333',
180
181
  titleStyle: {},
181
182
  titleMargin:{},
183
+ isShowMyOrder: '',
182
184
 
183
185
  //售后订单
184
186
  isShowBtn:'Y',
@@ -274,6 +276,7 @@
274
276
 
275
277
 
276
278
  //标题
279
+ this.isShowMyOrder = getContainerPropsValue(container, 'content.isShowMyOrder', 'Y');
277
280
  this.myOrderName = getContainerPropsValue(container, 'content.myOrderName', '我的订单')
278
281
  this.titleStyle = getContainerPropsValue(container, 'content.titleStyle', {});
279
282
  this.titleMargin = getContainerPropsValue(container,'content.titleMargin', {})
@@ -333,6 +336,12 @@
333
336
 
334
337
  handleToLink(path, type) {
335
338
  if (this.$configProject['isPreview']) return;
339
+ if(type==='afterSale'){
340
+ this.$xdUniHelper.navigateTo({
341
+ url: this.afterUrl
342
+ })
343
+ return
344
+ }
336
345
  this.$xdUniHelper.navigateTo({
337
346
  url: type ? `${path}?type=${type}` : path
338
347
  })
@@ -11,14 +11,14 @@
11
11
  <view>提现金额</view>
12
12
  <view @click="handleAllWithDraw">全部提现</view>
13
13
  </view>
14
- <input class="jfb-base-withdraw__body-amount" v-model="amount"></input>
14
+ <input @input="handleAmountChange" class="jfb-base-withdraw__body-amount" v-model="amount"></input>
15
15
  <view class="jfb-base-withdraw__body-balance">可提现余额¥{{getAmout(balance)}}</view>
16
16
  </view>
17
17
  <view v-if="notice" :style="[bodyStyleComp]">
18
18
  <XdContentXss v-html="notice"></XdContentXss>
19
19
  </view>
20
20
  <view class="fixe_bottom" :style="prod_bottom">
21
- <XdButton v-if="amount>0" fontSize="32" type="primary" @click="handleWithDraw">提现</XdButton>
21
+ <XdButton v-if="amount>0&&amount<=getAmout(balance)" fontSize="32" type="primary" @click="handleWithDraw">提现</XdButton>
22
22
  <XdButton v-else disabled fontSize="32" type="primary">提现</XdButton>
23
23
  <view @click="handleToWithDrawRecord">提现记录</view>
24
24
  </view>
@@ -56,7 +56,7 @@
56
56
  withDrawRecordPath: '',
57
57
  withDrawPath: '',
58
58
  balance: 0,
59
- amount: 0,
59
+ amount: '',
60
60
  showSuccess: false,
61
61
  method: '',
62
62
  wallet_type: ''
@@ -165,6 +165,18 @@
165
165
  handleWithDrawSuccess() {
166
166
  this.showSuccess = false;
167
167
  },
168
+ handleAmountChange(e) {
169
+ this.$nextTick(() => {
170
+ if(e.detail.value>this.getAmout(this.balance)) {
171
+ uni.showToast(
172
+ {
173
+ title: '输入金额超过可提现余额',
174
+ icon: 'none'
175
+ }
176
+ )
177
+ }
178
+ })
179
+ },
168
180
  onJfbScroll(options) {
169
181
  console.log('event.onJfbScroll', options)
170
182
  },