jufubao-base 1.0.169-beta13 → 1.0.169-beta15
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 +1 -1
- package/src/components/JfbBaseTfkCardBind/Attr.js +78 -5
- package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBind.vue +41 -10
- package/src/components/JfbBaseTfkCardDetail/Attr.js +48 -0
- package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetail.vue +9 -0
- package/src/components/JfbBaseTfkCardLogin/Attr.js +210 -13
- package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLogin.vue +99 -65
- package/src/components/JfbBaseTfkCardLogin/JfbNotice.vue +550 -0
- package/src/components/JfbBaseTfkCardLogin/Mock.js +4 -490
- package/src/components/JfbBaseTfkCardLogin/XdCouponItem.vue +2 -2
- package/src/components/JfbBaseTfkSearch/AllList.vue +46 -16
- package/src/components/JfbBaseTfkSearch/Api.js +1 -1
- package/src/components/JfbBaseTfkSearch/CustomList.vue +91 -54
- package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +8 -9
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
<template v-if="type_other !== 2">
|
|
33
33
|
<view
|
|
34
34
|
v-for="item in dataList"
|
|
35
|
-
:key="item.
|
|
35
|
+
:key="item.cuid"
|
|
36
36
|
:style="{
|
|
37
37
|
marginBottom:$parentVm.outSpacing + 'rpx',
|
|
38
38
|
padding:contMarginComp,
|
|
@@ -43,43 +43,43 @@
|
|
|
43
43
|
height: heightRpx,
|
|
44
44
|
backgroundColor: $parentVm.contBgColor
|
|
45
45
|
}">
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
46
|
+
<content-film
|
|
47
|
+
type="hot"
|
|
48
|
+
v-if="type_code === 'film'"
|
|
49
|
+
style="width: 100%; height: 100%"
|
|
50
|
+
:keyword="keyword"
|
|
51
|
+
:item="item"
|
|
52
|
+
:out-spacing="$parentVm.outSpacing"
|
|
53
|
+
:color="$parentVm.mainColor"
|
|
54
|
+
:border-radius="$parentVm.imgRradius"
|
|
55
|
+
@on-film-detail="handleFilmDetail"
|
|
56
|
+
@on-buy="handleBuy"
|
|
57
|
+
></content-film>
|
|
58
|
+
<content-cinema
|
|
59
|
+
v-if="type_code === 'cinema'"
|
|
60
|
+
style="width: 100%;height: 100%"
|
|
61
|
+
type="list"
|
|
62
|
+
:keyword="keyword"
|
|
63
|
+
:item="item"
|
|
64
|
+
:out-spacing="$parentVm.outSpacing"
|
|
65
|
+
:color="{SEAT:$parentVm.mainColor,CODE:$parentVm.subMainColor,SELL:$parentVm.successColor}"
|
|
66
|
+
:border-radius="$parentVm.imgRradius"
|
|
67
|
+
@on-schedule="handleSchedule"
|
|
68
|
+
@on-cashier-detail="handleCashierDetail"
|
|
69
|
+
@on-code-detail="handleCodeDetail"
|
|
70
|
+
></content-cinema>
|
|
71
|
+
<content-shop
|
|
72
|
+
v-if="type_code === 'shop'"
|
|
73
|
+
style="width: 100%; height: 100%"
|
|
74
|
+
:keyword="keyword"
|
|
75
|
+
:out-spacing="$parentVm.outSpacing"
|
|
76
|
+
:item="item"
|
|
77
|
+
:color="$parentVm.mainColor"
|
|
78
|
+
:border-radius="$parentVm.imgRradius"
|
|
79
|
+
:is-echange="'Y' || $parentVm.isShowExchange"
|
|
80
|
+
@on-shop-jhd="handleShopJhd"
|
|
81
|
+
@on-shop-detail="handleShopDetail"
|
|
82
|
+
></content-shop>
|
|
83
83
|
<content-product
|
|
84
84
|
v-if="$parentVm.productConfig !== null && type_code === 'product'"
|
|
85
85
|
style="width: 100%; height: 100%"
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
:color="$parentVm.mainColor"
|
|
91
91
|
:border-radius="$parentVm.imgRradius"
|
|
92
92
|
:cell="type_other"
|
|
93
|
-
@on-product-detail="
|
|
93
|
+
@on-product-detail="handleProductDetail"
|
|
94
94
|
></content-product>
|
|
95
95
|
</view>
|
|
96
96
|
</template>
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
<view
|
|
100
100
|
v-if="productTowList[listKey] !== null"
|
|
101
101
|
v-for="item in productTowList[listKey]"
|
|
102
|
-
:key="item.
|
|
102
|
+
:key="item.cuid"
|
|
103
103
|
:style="{
|
|
104
104
|
marginBottom:$parentVm.outSpacing + 'rpx',
|
|
105
105
|
padding:contMarginComp,
|
|
@@ -122,12 +122,11 @@
|
|
|
122
122
|
:brand-color="$parentVm.brandColor"
|
|
123
123
|
:border-radius="$parentVm.imgRradius"
|
|
124
124
|
:cell="type_other"
|
|
125
|
-
@on-product-detail="
|
|
125
|
+
@on-product-detail="handleProductDetail"
|
|
126
126
|
></content-product>
|
|
127
127
|
</view>
|
|
128
128
|
</view>
|
|
129
129
|
</view>
|
|
130
|
-
|
|
131
130
|
</view>
|
|
132
131
|
</view>
|
|
133
132
|
</template>
|
|
@@ -219,7 +218,7 @@ export default {
|
|
|
219
218
|
},
|
|
220
219
|
data(){
|
|
221
220
|
return {
|
|
222
|
-
$parentVm:
|
|
221
|
+
$parentVm:{},
|
|
223
222
|
parentStatus: false,
|
|
224
223
|
skeletonCount: 6,
|
|
225
224
|
hasNoData: false,
|
|
@@ -258,7 +257,9 @@ export default {
|
|
|
258
257
|
this.onCusReloadList();
|
|
259
258
|
},500)
|
|
260
259
|
},
|
|
260
|
+
|
|
261
261
|
tabId(){
|
|
262
|
+
this.handleClear();
|
|
262
263
|
this.parseTab()
|
|
263
264
|
this.onCusReloadList();
|
|
264
265
|
},
|
|
@@ -281,8 +282,6 @@ export default {
|
|
|
281
282
|
parseTab(){
|
|
282
283
|
let tabs = this.tabId.split('@');
|
|
283
284
|
this.type_code = tabs[1];
|
|
284
|
-
this.search_range = tabs[0]
|
|
285
|
-
this.is_open_city = tabs[2];
|
|
286
285
|
if(this.type_code === 'product'){
|
|
287
286
|
this.type_other = Number(tabs[3]);
|
|
288
287
|
if(this.type_other === 2) this.skeletonCount = 12
|
|
@@ -292,13 +291,15 @@ export default {
|
|
|
292
291
|
this.skeletonCount = 6;
|
|
293
292
|
this.type_other = null
|
|
294
293
|
}
|
|
294
|
+
this.search_range = tabs[0]
|
|
295
|
+
this.is_open_city = tabs[2];
|
|
295
296
|
},
|
|
296
297
|
|
|
297
298
|
handleClear(){
|
|
298
299
|
this.is_open_city = 'N';
|
|
299
300
|
this.dataConfig = null;
|
|
300
301
|
this.page_token = '1';
|
|
301
|
-
this.dataList =
|
|
302
|
+
this.dataList = [];
|
|
302
303
|
this.productTowList = {
|
|
303
304
|
left:null,
|
|
304
305
|
right:null,
|
|
@@ -307,7 +308,7 @@ export default {
|
|
|
307
308
|
|
|
308
309
|
getParentMV(){
|
|
309
310
|
this.$emit('on-parent-vm', ($vm)=>{
|
|
310
|
-
this.$parentVm = $vm;
|
|
311
|
+
//this.$parentVm = $vm;
|
|
311
312
|
this.parentStatus = true;
|
|
312
313
|
})
|
|
313
314
|
},
|
|
@@ -323,17 +324,19 @@ export default {
|
|
|
323
324
|
this.getList();
|
|
324
325
|
},
|
|
325
326
|
|
|
326
|
-
|
|
327
327
|
getList(){
|
|
328
|
+
let time = new Date().getTime();
|
|
328
329
|
|
|
329
330
|
//无关键字不搜索
|
|
330
331
|
if(this.keyword === '') {
|
|
331
332
|
return;
|
|
332
333
|
}
|
|
333
334
|
this.$xdShowLoading({});
|
|
335
|
+
console.log(new Date().getTime()-time)
|
|
334
336
|
this.$emit('on-list', {
|
|
335
337
|
params:this.getParams,
|
|
336
338
|
cb:(res)=>{
|
|
339
|
+
console.log(new Date().getTime()-time)
|
|
337
340
|
//无数据处理
|
|
338
341
|
if(res === null){
|
|
339
342
|
this.hasNoData = true;
|
|
@@ -348,10 +351,7 @@ export default {
|
|
|
348
351
|
|
|
349
352
|
//整理为统一ID
|
|
350
353
|
res.items = res.items.map((item,index)=>{
|
|
351
|
-
|
|
352
|
-
item.id = item.product_id || item.resource_shop_id || item.cinema_id || item.film_id
|
|
353
|
-
}
|
|
354
|
-
//item.list_title = `${index} - ${ item.list_title}`
|
|
354
|
+
item.cuid = `${this.$xdUniHelper.randomChar(5)}_${item.product_id || item.resource_shop_id || item.cinema_id || item.film_id}`
|
|
355
355
|
return item;
|
|
356
356
|
})
|
|
357
357
|
|
|
@@ -371,10 +371,47 @@ export default {
|
|
|
371
371
|
this.dataList = (this.dataList||[]).concat(res.items);
|
|
372
372
|
this.page_token = res.next_page_token
|
|
373
373
|
this.hasNoData = false;
|
|
374
|
-
this.$
|
|
374
|
+
this.$nextTick(()=>{
|
|
375
|
+
setTimeout(()=>{
|
|
376
|
+
this.$xdHideLoading();
|
|
377
|
+
},300)
|
|
378
|
+
})
|
|
375
379
|
}
|
|
376
380
|
})
|
|
377
|
-
}
|
|
381
|
+
},
|
|
382
|
+
|
|
383
|
+
//影片
|
|
384
|
+
handleFilmDetail(film){
|
|
385
|
+
this.$parentVm.handleFilmDetail(film, this.dataConfig)
|
|
386
|
+
},
|
|
387
|
+
handleBuy(film){
|
|
388
|
+
this.$parentVm.handleBuy(film, this.dataConfig)
|
|
389
|
+
},
|
|
390
|
+
|
|
391
|
+
//影院
|
|
392
|
+
handleSchedule(cinema){
|
|
393
|
+
this.$parentVm.handleSchedule(cinema, this.dataConfig)
|
|
394
|
+
},
|
|
395
|
+
handleCashierDetail(cinema){
|
|
396
|
+
this.$parentVm.handleCashierDetail(cinema, this.dataConfig)
|
|
397
|
+
},
|
|
398
|
+
handleCodeDetail(cinema){
|
|
399
|
+
this.$parentVm.handleCodeDetail(cinema, this.dataConfig)
|
|
400
|
+
},
|
|
401
|
+
|
|
402
|
+
//门店
|
|
403
|
+
handleShopJhd(shop){
|
|
404
|
+
this.$parentVm.handleShopJhd(shop, this.dataConfig)
|
|
405
|
+
},
|
|
406
|
+
handleShopDetail(shop){
|
|
407
|
+
this.$parentVm.handleShopDetail(shop, this.dataConfig)
|
|
408
|
+
},
|
|
409
|
+
|
|
410
|
+
//商品
|
|
411
|
+
handleProductDetail(product){
|
|
412
|
+
this.$parentVm.handleProductDetail(product, this.dataConfig)
|
|
413
|
+
},
|
|
414
|
+
|
|
378
415
|
}
|
|
379
416
|
}
|
|
380
417
|
</script>
|
|
@@ -43,14 +43,13 @@
|
|
|
43
43
|
<view v-if="!isPreview" style="height: 100rpx;"></view>
|
|
44
44
|
|
|
45
45
|
<view class="tfk-search" :style="{padding: outSpacing + 'rpx'}">
|
|
46
|
-
<all-list v-if="tabId === 'all'"
|
|
47
|
-
:keyword="keyword"
|
|
48
|
-
@on-parent-vm="handleParentVm"
|
|
49
|
-
@on-list="handleList"
|
|
50
|
-
@on-switch="handleSwitchMenu"
|
|
51
|
-
></all-list
|
|
46
|
+
<!-- <all-list v-if="tabId === 'all'"-->
|
|
47
|
+
<!-- :keyword="keyword"-->
|
|
48
|
+
<!-- @on-parent-vm="handleParentVm"-->
|
|
49
|
+
<!-- @on-list="handleList"-->
|
|
50
|
+
<!-- @on-switch="handleSwitchMenu"-->
|
|
51
|
+
<!-- ></all-list>-->
|
|
52
52
|
<custom-list
|
|
53
|
-
v-else
|
|
54
53
|
:tab-id="tabId"
|
|
55
54
|
:keyword="keyword"
|
|
56
55
|
ref="customList"
|
|
@@ -74,14 +73,14 @@
|
|
|
74
73
|
import extsMixins from "@/mixins/extsMixins";
|
|
75
74
|
import listMixins from "./listMixins";
|
|
76
75
|
import CustomList from "./CustomList.vue";
|
|
77
|
-
import AllList from "./AllList.vue";
|
|
76
|
+
//import AllList from "./AllList.vue";
|
|
78
77
|
|
|
79
78
|
export default {
|
|
80
79
|
name: "JfbBaseTfkSearch",
|
|
81
80
|
components: {
|
|
82
81
|
CustomList,
|
|
83
82
|
XdFontIcon,
|
|
84
|
-
AllList,
|
|
83
|
+
//AllList,
|
|
85
84
|
XdSearchHistory
|
|
86
85
|
},
|
|
87
86
|
mixins: [
|