jufubao-base 1.0.169-beta11 → 1.0.169-beta13
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/JfbBaseTfkCardDetail/Attr.js +1 -1
- package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetail.vue +3 -2
- package/src/components/JfbBaseTfkSearch/AllList.vue +77 -6
- package/src/components/JfbBaseTfkSearch/Attr.js +124 -4
- package/src/components/JfbBaseTfkSearch/ContentFilm.vue +2 -4
- package/src/components/JfbBaseTfkSearch/ContentProduct.vue +3 -1
- package/src/components/JfbBaseTfkSearch/CustomList.vue +16 -16
- package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +24 -10
- package/src/components/JfbBaseTfkSearch/Mock.js +182 -30
- package/src/components/JfbBaseTfkSearch/listMixins.js +72 -44
- package/src/components/JfbBaseTfkSearch/search.js +0 -293
package/package.json
CHANGED
|
@@ -147,7 +147,7 @@
|
|
|
147
147
|
cardInfoMargin: {},
|
|
148
148
|
cardInfoPadding: {},
|
|
149
149
|
cardImageUrl: "",
|
|
150
|
-
cardHeight:
|
|
150
|
+
cardHeight: 340,
|
|
151
151
|
cardRadius: 10,
|
|
152
152
|
bussPadding: {},
|
|
153
153
|
bussMargin: {},
|
|
@@ -346,7 +346,7 @@
|
|
|
346
346
|
this.cardInfoMargin = getContainerPropsValue(value, 'content.cardInfoMargin', {top: 20, left: 20, right: 20, bottom: 20});
|
|
347
347
|
this.cardInfoPadding = getContainerPropsValue(value, 'content.cardInfoPadding', {top: 20, left: 20, right: 20, bottom: 20});
|
|
348
348
|
this.cardImageUrl = getContainerPropsValue(value, 'content.cardImageUrl', '');
|
|
349
|
-
this.cardHeight = getContainerPropsValue(value, 'content.cardHeight',
|
|
349
|
+
this.cardHeight = getContainerPropsValue(value, 'content.cardHeight', 340);
|
|
350
350
|
this.cardRadius = getContainerPropsValue(value, 'content.cardRadius', 16);
|
|
351
351
|
this.bussPadding = getContainerPropsValue(value, 'content.bussPadding', {top: 20, left: 20, right: 20, bottom: 20});
|
|
352
352
|
this.bussMargin = getContainerPropsValue(value, 'content.bussMargin', {top: 20, left: 20, right: 20, bottom: 20});
|
|
@@ -572,6 +572,7 @@
|
|
|
572
572
|
flex-direction: column;
|
|
573
573
|
justify-content: space-between;
|
|
574
574
|
font-size: 26rpx;
|
|
575
|
+
box-sizing: border-box;
|
|
575
576
|
.card_top{
|
|
576
577
|
display: flex;
|
|
577
578
|
flex-direction: column;
|
|
@@ -4,8 +4,11 @@
|
|
|
4
4
|
:style="moduleItemStyle"
|
|
5
5
|
>
|
|
6
6
|
<view class="module_title" :style="moduleItemTitleStyle">{{ parent.name }}</view>
|
|
7
|
-
<view class="module_cont">
|
|
8
|
-
<view v-for="(item, i) in parent.items" :key="
|
|
7
|
+
<view v-if="parent.type !== 'product'" class="module_cont">
|
|
8
|
+
<view v-for="(item, i) in parent.items" :key="item.key"
|
|
9
|
+
class="module_cont_inner"
|
|
10
|
+
:style="moduleItemContStyle"
|
|
11
|
+
>
|
|
9
12
|
<content-cinema v-if="parent.type === 'cinema'"
|
|
10
13
|
style="width: 100%; height: 100%"
|
|
11
14
|
:keyword="keyword"
|
|
@@ -45,16 +48,26 @@
|
|
|
45
48
|
@on-shop-detail="(shop)=>{$parentVm.handleShopDetail(shop,parent)}"
|
|
46
49
|
></content-shop>
|
|
47
50
|
|
|
51
|
+
</view>
|
|
52
|
+
</view>
|
|
53
|
+
<view v-else class="module_cont product_wrap">
|
|
54
|
+
<view v-for="(item, i) in parent.items" :key="item.key"
|
|
55
|
+
class="module_cont_inner"
|
|
56
|
+
:style="[moduleItemContStyle, {
|
|
57
|
+
width: getProductCell(parent.tab) == 2 ? `calc(50% - ${$parentVm.allModuleItemContMargin/2}rpx)`: '100%',
|
|
58
|
+
}]"
|
|
59
|
+
>
|
|
48
60
|
<content-product v-if="parent.type === 'product'"
|
|
49
61
|
style="width: 100%; height: 100%"
|
|
50
62
|
:keyword="keyword"
|
|
51
63
|
:item="item"
|
|
64
|
+
:height="outItemProduct"
|
|
52
65
|
:product-config="$parentVm.productConfig"
|
|
53
66
|
:out-spacing="$parentVm.outSpacing"
|
|
54
67
|
:color="$parentVm.mainColor"
|
|
55
68
|
:brand-color="$parentVm.brandColor"
|
|
56
69
|
:border-radius="$parentVm.imgRradius"
|
|
57
|
-
:cell="
|
|
70
|
+
:cell="getProductCell(parent.tab)"
|
|
58
71
|
@on-product-detail="(product)=>{$parentVm.handleProductDetail(product,parent)}"
|
|
59
72
|
></content-product>
|
|
60
73
|
</view>
|
|
@@ -99,6 +112,7 @@
|
|
|
99
112
|
return str
|
|
100
113
|
},
|
|
101
114
|
moduleItemStyle(){
|
|
115
|
+
const { allModuleRadius } = this.$parentVm;
|
|
102
116
|
let padding = `${this.$parentVm.checkValue(this.$parentVm.allModulePadding.top, 20)}rpx`;
|
|
103
117
|
padding = `${padding} ${this.$parentVm.checkValue(this.$parentVm.allModulePadding.right, 20)}rpx`;
|
|
104
118
|
padding = `${padding} ${this.$parentVm.checkValue(this.$parentVm.allModulePadding.bottom, 20)}rpx`;
|
|
@@ -107,7 +121,8 @@
|
|
|
107
121
|
return this.styleObjectToString({
|
|
108
122
|
background: this.$parentVm.allListBgColor,
|
|
109
123
|
padding: padding,
|
|
110
|
-
marginBottom: this.$parentVm.allModuleMargin + 'rpx'
|
|
124
|
+
marginBottom: this.$parentVm.allModuleMargin + 'rpx',
|
|
125
|
+
borderRadius: allModuleRadius + 'rpx',
|
|
111
126
|
})
|
|
112
127
|
},
|
|
113
128
|
moduleItemTitleStyle(){
|
|
@@ -126,6 +141,35 @@
|
|
|
126
141
|
|
|
127
142
|
return this.styleObjectToString(style);
|
|
128
143
|
},
|
|
144
|
+
moduleItemContStyle(){
|
|
145
|
+
let {
|
|
146
|
+
allModuleItemContBorder, allModuleItemContShadow, allModuleItemContPadding, allModuleItemContMargin,
|
|
147
|
+
allModuleItemContRadius, allModuleItemContBgColor
|
|
148
|
+
} = this.$parentVm;
|
|
149
|
+
let border = "none";
|
|
150
|
+
let boxShadow = "none";
|
|
151
|
+
if(allModuleItemContBorder && allModuleItemContBorder.type === 'Y'){
|
|
152
|
+
let { width, color } = allModuleItemContBorder.value;
|
|
153
|
+
border = `${width}rpx solid ${color}`;
|
|
154
|
+
}
|
|
155
|
+
if(allModuleItemContShadow && allModuleItemContShadow.type === 'Y'){
|
|
156
|
+
let { width, color } = allModuleItemContShadow.value;
|
|
157
|
+
boxShadow = `0 0 ${width}rpx ${color}`;
|
|
158
|
+
}
|
|
159
|
+
let padding = `${this.$parentVm.checkValue(allModuleItemContPadding.top, 20)}rpx`;
|
|
160
|
+
padding = `${padding} ${this.$parentVm.checkValue(allModuleItemContPadding.right, 20)}rpx`;
|
|
161
|
+
padding = `${padding} ${this.$parentVm.checkValue(allModuleItemContPadding.bottom, 20)}rpx`;
|
|
162
|
+
padding = `${padding} ${this.$parentVm.checkValue(allModuleItemContPadding.left, 20)}rpx`;
|
|
163
|
+
console.log("allModuleItemContShadow", allModuleItemContShadow)
|
|
164
|
+
return this.styleObjectToString({
|
|
165
|
+
padding: padding,
|
|
166
|
+
border: border,
|
|
167
|
+
borderRadius: allModuleItemContRadius + 'rpx',
|
|
168
|
+
boxShadow: boxShadow,
|
|
169
|
+
marginBottom: allModuleItemContMargin + 'rpx',
|
|
170
|
+
background: allModuleItemContBgColor,
|
|
171
|
+
})
|
|
172
|
+
},
|
|
129
173
|
moduleMoreStyle(){
|
|
130
174
|
let allModuleMoreStyle = this.$parentVm.allModuleMoreStyle;
|
|
131
175
|
let style = {};
|
|
@@ -138,6 +182,13 @@
|
|
|
138
182
|
}
|
|
139
183
|
return this.styleObjectToString(style);
|
|
140
184
|
},
|
|
185
|
+
outItemProduct(){
|
|
186
|
+
//获取每列元素最大宽度
|
|
187
|
+
// return 300;
|
|
188
|
+
let num = (750 - 3 * Number(this.$parentVm.outSpacing))/2;
|
|
189
|
+
num = num - this.$parentVm.checkValue(this.$parentVm.contMargin.right, 20) - this.$parentVm.checkValue(this.$parentVm.contMargin.left, 20);
|
|
190
|
+
return num - this.$parentVm.contBorderWidth * 2
|
|
191
|
+
},
|
|
141
192
|
},
|
|
142
193
|
watch: {
|
|
143
194
|
keyword(){
|
|
@@ -162,6 +213,10 @@
|
|
|
162
213
|
this.getList();
|
|
163
214
|
},
|
|
164
215
|
methods: {
|
|
216
|
+
getProductCell(str = ''){
|
|
217
|
+
let cellNum = str.split("@")[3] || 1;
|
|
218
|
+
return Number(cellNum);
|
|
219
|
+
},
|
|
165
220
|
getParentMV(){
|
|
166
221
|
this.$emit('on-parent-vm', ($vm)=>{
|
|
167
222
|
this.$parentVm = $vm;
|
|
@@ -187,7 +242,13 @@
|
|
|
187
242
|
this.$emit('on-list', {
|
|
188
243
|
params: params,
|
|
189
244
|
cb:(list)=>{
|
|
190
|
-
this.list = list
|
|
245
|
+
this.list = (list || []).map(parent => {
|
|
246
|
+
parent.items = parent.items.map(item => {
|
|
247
|
+
item['key'] = item.product_id || item.resource_shop_id || item.cinema_id || item.film_id;
|
|
248
|
+
return item;
|
|
249
|
+
})
|
|
250
|
+
return parent;
|
|
251
|
+
});
|
|
191
252
|
this.$xdHideLoading();
|
|
192
253
|
}
|
|
193
254
|
})
|
|
@@ -211,6 +272,16 @@
|
|
|
211
272
|
}
|
|
212
273
|
.module_cont{
|
|
213
274
|
padding: 20rpx 0;
|
|
275
|
+
|
|
276
|
+
&.product_wrap{
|
|
277
|
+
display: flex;
|
|
278
|
+
justify-content: space-between;
|
|
279
|
+
flex-wrap: wrap;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
.module_cont_inner{
|
|
283
|
+
box-sizing: border-box;
|
|
284
|
+
}
|
|
214
285
|
}
|
|
215
286
|
.module_more{
|
|
216
287
|
display: flex;
|
|
@@ -223,7 +294,7 @@
|
|
|
223
294
|
display: flex;
|
|
224
295
|
justify-content: center;
|
|
225
296
|
align-items: center;
|
|
226
|
-
height:
|
|
297
|
+
height: 70rpx;
|
|
227
298
|
width: 200rpx;
|
|
228
299
|
border-radius: 80rpx;
|
|
229
300
|
}
|
|
@@ -141,13 +141,13 @@ export default {
|
|
|
141
141
|
notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
|
|
142
142
|
},
|
|
143
143
|
{
|
|
144
|
-
label: "
|
|
144
|
+
label: "全部-业务板块样式配置",
|
|
145
145
|
ele: "title",
|
|
146
146
|
groupKey:'style',
|
|
147
147
|
size: "small",
|
|
148
148
|
},
|
|
149
149
|
{
|
|
150
|
-
label: "
|
|
150
|
+
label: "业务板块背景色",
|
|
151
151
|
ele: "xd-color",
|
|
152
152
|
valueKey: 'allListBgColor',
|
|
153
153
|
value: data['allListBgColor'] || '#FFFFFF',
|
|
@@ -167,6 +167,25 @@ export default {
|
|
|
167
167
|
inline: false,
|
|
168
168
|
notice: '设置内边距,<span style="color: red">单位:像素</span>。',
|
|
169
169
|
},
|
|
170
|
+
{
|
|
171
|
+
label: "业务板块圆角",
|
|
172
|
+
ele: 'xd-site-select-list',
|
|
173
|
+
valueKey: 'allModuleRadius',
|
|
174
|
+
value: data['allModuleRadius'] || 0,
|
|
175
|
+
groupKey:'style',
|
|
176
|
+
placeholder: '请选择内容圆角设置',
|
|
177
|
+
multiple: false,
|
|
178
|
+
className: 'input80',
|
|
179
|
+
handleCustom({ action, data }) {
|
|
180
|
+
XdBus.getParentApi('getOptionsSettingList')({ setting_id: 'edtix_style_radius' })
|
|
181
|
+
.then(res => {
|
|
182
|
+
data.cb(res.list)
|
|
183
|
+
})
|
|
184
|
+
.catch(error => {
|
|
185
|
+
console.error(error);
|
|
186
|
+
});
|
|
187
|
+
},
|
|
188
|
+
},
|
|
170
189
|
{
|
|
171
190
|
label: "业务板块标题样式",
|
|
172
191
|
ele: "xd-radio",
|
|
@@ -220,9 +239,107 @@ export default {
|
|
|
220
239
|
groupKey: "style",
|
|
221
240
|
type: "number",
|
|
222
241
|
},
|
|
223
|
-
|
|
242
|
+
{
|
|
243
|
+
label: "全部 - 列表单个样式配置",
|
|
244
|
+
ele: "title",
|
|
245
|
+
groupKey:'style',
|
|
246
|
+
size: "small",
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
label: "业务板块列表单个背景色",
|
|
250
|
+
ele: "xd-color",
|
|
251
|
+
valueKey: 'allModuleItemContBgColor',
|
|
252
|
+
value: data['allModuleItemContBgColor'] || '#FFFFFF',
|
|
253
|
+
groupKey:'style',
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
label: "业务板块列表单个间距",
|
|
257
|
+
ele: "el-input",
|
|
258
|
+
valueKey: "allModuleItemContMargin",
|
|
259
|
+
value: data.allModuleItemContMargin || 20,
|
|
260
|
+
groupKey:'style',
|
|
261
|
+
type: "number",
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
label: "业务板块列表单个边框",
|
|
265
|
+
ele: "xd-border",
|
|
266
|
+
valueKey: 'allModuleItemContBorder',
|
|
267
|
+
value: data['allModuleItemContBorder'] || null,
|
|
268
|
+
groupKey:'style',
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
label: "业务板块列表单个阴影",
|
|
272
|
+
ele: "xd-shadow",
|
|
273
|
+
groupKey:'style',
|
|
274
|
+
valueKey: 'allModuleItemContShadow',
|
|
275
|
+
value: data['allModuleItemContShadow'] || null,
|
|
276
|
+
handleCustom({action, data}) {
|
|
277
|
+
XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
|
|
278
|
+
.then(res => {
|
|
279
|
+
data.cb(res.list)
|
|
280
|
+
})
|
|
281
|
+
.catch(error => {
|
|
282
|
+
console.error(error);
|
|
283
|
+
data.cb([])
|
|
284
|
+
});
|
|
285
|
+
},
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
label: "业务板块列表单个内边距",
|
|
289
|
+
ele: "xd-margin-padding",
|
|
290
|
+
valueKey: "allModuleItemContPadding",
|
|
291
|
+
value: data['allModuleItemContPadding'] || null,
|
|
292
|
+
groupKey:'style',
|
|
293
|
+
setting: {
|
|
294
|
+
type: 'padding',
|
|
295
|
+
},
|
|
296
|
+
placeholder: '请设置内边距',
|
|
297
|
+
inline: false,
|
|
298
|
+
notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
label: "业务板块列表单个圆角",
|
|
302
|
+
ele: 'xd-site-select-list',
|
|
303
|
+
valueKey: 'allModuleItemContRadius',
|
|
304
|
+
value: data.allModuleItemContRadius || 16,
|
|
305
|
+
groupKey:'style',
|
|
306
|
+
placeholder: '请选择内容圆角设置',
|
|
307
|
+
multiple: false,
|
|
308
|
+
className: 'input80',
|
|
309
|
+
handleCustom({ action, data }) {
|
|
310
|
+
XdBus.getParentApi('getOptionsSettingList')({ setting_id: 'edtix_style_radius' })
|
|
311
|
+
.then(res => {
|
|
312
|
+
data.cb(res.list)
|
|
313
|
+
})
|
|
314
|
+
.catch(error => {
|
|
315
|
+
console.error(error);
|
|
316
|
+
});
|
|
317
|
+
},
|
|
318
|
+
},
|
|
224
319
|
|
|
225
320
|
{
|
|
321
|
+
label: '选择综合入口类型:',
|
|
322
|
+
ele: 'xd-site-select-list',
|
|
323
|
+
valueKey: 'entryGroupId',
|
|
324
|
+
value: data.entryGroupId || 'default',
|
|
325
|
+
placeholder: '请选择综合入口类型',
|
|
326
|
+
multiple: false,
|
|
327
|
+
groupKey:'content',
|
|
328
|
+
className: 'input50',
|
|
329
|
+
rules: [
|
|
330
|
+
{required: true, message: '请选择综合入口类型', trigger: ['blur', 'change']}
|
|
331
|
+
],
|
|
332
|
+
handleCustom({action, data}) {
|
|
333
|
+
XdBus.getParentApi('getEntryGroupOption')({key: Date.now()})
|
|
334
|
+
.then(res => {
|
|
335
|
+
data.cb(res.list)
|
|
336
|
+
})
|
|
337
|
+
.catch(error => {
|
|
338
|
+
console.error(error);
|
|
339
|
+
});
|
|
340
|
+
},
|
|
341
|
+
},
|
|
342
|
+
data.entryGroupId && {
|
|
226
343
|
label: "搜索范围",
|
|
227
344
|
ele: "xd-search-setting-options",
|
|
228
345
|
valueKey: 'searchScope',
|
|
@@ -231,8 +348,11 @@ export default {
|
|
|
231
348
|
placeholder: '请选择内容圆角设置',
|
|
232
349
|
multiple: false,
|
|
233
350
|
className: 'input80',
|
|
351
|
+
setting: {
|
|
352
|
+
group_id: data.entryGroupId || 'default',
|
|
353
|
+
},
|
|
234
354
|
handleCustom({ action, data }) {
|
|
235
|
-
XdBus.getParentApi('getSearchSettingOptions')()
|
|
355
|
+
XdBus.getParentApi('getSearchSettingOptions')({group_id: 'default', ...data.params})
|
|
236
356
|
.then(res => {
|
|
237
357
|
data.cb(res.list)
|
|
238
358
|
})
|
|
@@ -100,12 +100,10 @@
|
|
|
100
100
|
},
|
|
101
101
|
methods:{
|
|
102
102
|
handleDetail(item){
|
|
103
|
-
|
|
104
|
-
this.$emit('on-film-detail',item.id);
|
|
103
|
+
this.$emit('on-film-detail',item);
|
|
105
104
|
},
|
|
106
105
|
handleBuy(item){
|
|
107
|
-
|
|
108
|
-
this.$emit('on-buy',item.id);
|
|
106
|
+
this.$emit('on-buy',item);
|
|
109
107
|
}
|
|
110
108
|
}
|
|
111
109
|
}
|
|
@@ -34,15 +34,15 @@
|
|
|
34
34
|
v-for="item in dataList"
|
|
35
35
|
:key="item.id"
|
|
36
36
|
:style="{
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
37
|
+
marginBottom:$parentVm.outSpacing + 'rpx',
|
|
38
|
+
padding:contMarginComp,
|
|
39
|
+
borderRadius:$parentVm.contRradius+ 'rpx',
|
|
40
|
+
border: $parentVm.contBorder,
|
|
41
|
+
boxShadow:$parentVm.contShadow,
|
|
42
|
+
width: (type_code === 'product' && type_other === 2) ? (outItemProduct + 'rpx'): 'auto',
|
|
43
|
+
height: heightRpx,
|
|
44
|
+
backgroundColor: $parentVm.contBgColor
|
|
45
|
+
}">
|
|
46
46
|
<content-film
|
|
47
47
|
type="hot"
|
|
48
48
|
v-if="type_code === 'film'"
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
:out-spacing="$parentVm.outSpacing"
|
|
53
53
|
:color="$parentVm.mainColor"
|
|
54
54
|
:border-radius="$parentVm.imgRradius"
|
|
55
|
-
@on-film-detail="(
|
|
56
|
-
@on-buy="(
|
|
55
|
+
@on-film-detail="(film)=>{$parentVm.handleFilmDetail(film, dataConfig)}"
|
|
56
|
+
@on-buy="(film)=>{$parentVm.handleBuy(film, dataConfig)}"
|
|
57
57
|
></content-film>
|
|
58
58
|
<content-cinema
|
|
59
59
|
v-if="type_code === 'cinema'"
|
|
@@ -225,7 +225,7 @@ export default {
|
|
|
225
225
|
hasNoData: false,
|
|
226
226
|
|
|
227
227
|
page_token:'1',
|
|
228
|
-
page_size:
|
|
228
|
+
page_size: 100,
|
|
229
229
|
|
|
230
230
|
//参数
|
|
231
231
|
type_code:'',
|
|
@@ -325,20 +325,20 @@ export default {
|
|
|
325
325
|
|
|
326
326
|
|
|
327
327
|
getList(){
|
|
328
|
+
|
|
328
329
|
//无关键字不搜索
|
|
329
330
|
if(this.keyword === '') {
|
|
330
331
|
return;
|
|
331
332
|
}
|
|
332
|
-
|
|
333
|
+
this.$xdShowLoading({});
|
|
333
334
|
this.$emit('on-list', {
|
|
334
335
|
params:this.getParams,
|
|
335
336
|
cb:(res)=>{
|
|
336
|
-
|
|
337
337
|
//无数据处理
|
|
338
338
|
if(res === null){
|
|
339
339
|
this.hasNoData = true;
|
|
340
340
|
this.dataList = [];
|
|
341
|
-
this.page_token = ''
|
|
341
|
+
this.page_token = '1'
|
|
342
342
|
this.$xdHideLoading();
|
|
343
343
|
return
|
|
344
344
|
}
|
|
@@ -349,7 +349,7 @@ export default {
|
|
|
349
349
|
//整理为统一ID
|
|
350
350
|
res.items = res.items.map((item,index)=>{
|
|
351
351
|
if(!item.id){
|
|
352
|
-
item.id = item.product_id || item.resource_shop_id || item.cinema_id
|
|
352
|
+
item.id = item.product_id || item.resource_shop_id || item.cinema_id || item.film_id
|
|
353
353
|
}
|
|
354
354
|
//item.list_title = `${index} - ${ item.list_title}`
|
|
355
355
|
return item;
|
|
@@ -43,7 +43,7 @@
|
|
|
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="
|
|
46
|
+
<all-list v-if="tabId === 'all'"
|
|
47
47
|
:keyword="keyword"
|
|
48
48
|
@on-parent-vm="handleParentVm"
|
|
49
49
|
@on-list="handleList"
|
|
@@ -74,7 +74,6 @@
|
|
|
74
74
|
import extsMixins from "@/mixins/extsMixins";
|
|
75
75
|
import listMixins from "./listMixins";
|
|
76
76
|
import CustomList from "./CustomList.vue";
|
|
77
|
-
import search from './search';
|
|
78
77
|
import AllList from "./AllList.vue";
|
|
79
78
|
|
|
80
79
|
export default {
|
|
@@ -91,7 +90,7 @@
|
|
|
91
90
|
data() {
|
|
92
91
|
return {
|
|
93
92
|
hideMask: true,
|
|
94
|
-
tabId: '', //cinema/film/shop/product
|
|
93
|
+
tabId: 'all', //cinema/film/shop/product
|
|
95
94
|
keyword: '',
|
|
96
95
|
options:{},
|
|
97
96
|
menuList: [],
|
|
@@ -110,11 +109,19 @@
|
|
|
110
109
|
searchScope: [],
|
|
111
110
|
allListBgColor: "",
|
|
112
111
|
allModulePadding: {},
|
|
112
|
+
allModuleRadius: 0,
|
|
113
113
|
allModuleTitleBgColor: {},
|
|
114
114
|
allModuleTitlePadding: {},
|
|
115
115
|
allModuleMoreStyle: "",
|
|
116
116
|
allModuleMargin: 20,
|
|
117
117
|
allModuleTitleStyle: "",
|
|
118
|
+
allModuleItemContBorder: {},
|
|
119
|
+
allModuleItemContMargin: 20,
|
|
120
|
+
allModuleItemContShadow: {},
|
|
121
|
+
allModuleItemContPadding: {},
|
|
122
|
+
allModuleItemContRadius: 16,
|
|
123
|
+
allModuleItemContBgColor: "#FFFFFF",
|
|
124
|
+
|
|
118
125
|
}
|
|
119
126
|
},
|
|
120
127
|
computed: {
|
|
@@ -198,7 +205,7 @@
|
|
|
198
205
|
*/
|
|
199
206
|
handleList({params, cb}){
|
|
200
207
|
let data = {...params};
|
|
201
|
-
if(this.tabId === ''){
|
|
208
|
+
if(this.tabId === 'all'){
|
|
202
209
|
data['search_range'] = this.searchScope.map(item => item.value.split("@")[0]).join(',');
|
|
203
210
|
}
|
|
204
211
|
|
|
@@ -206,20 +213,20 @@
|
|
|
206
213
|
vm: this,
|
|
207
214
|
data: data
|
|
208
215
|
}).then(res => {
|
|
209
|
-
if(this.tabId === ''){
|
|
216
|
+
if(this.tabId === 'all'){
|
|
210
217
|
if(!this.$configProject['isPreview']){
|
|
211
218
|
this.menuList = res.tabs;
|
|
212
219
|
}
|
|
213
220
|
cb(res.list)
|
|
214
221
|
}else{
|
|
222
|
+
if(this.isPreview){
|
|
223
|
+
return cb(res.list.find(item => item.type === this.tabId.split("@")[1]))
|
|
224
|
+
}
|
|
215
225
|
if(res.list.length > 0) cb(res.list[0])
|
|
216
226
|
else cb(null)
|
|
217
227
|
}
|
|
218
228
|
}).catch((e)=>{
|
|
219
|
-
|
|
220
|
-
//todo
|
|
221
|
-
}
|
|
222
|
-
else cb(null)
|
|
229
|
+
cb(null);
|
|
223
230
|
})
|
|
224
231
|
},
|
|
225
232
|
|
|
@@ -242,11 +249,18 @@
|
|
|
242
249
|
this.searchScope = getContainerPropsValue(container, 'content.searchScope', []);
|
|
243
250
|
this.allListBgColor = getContainerPropsValue(container, 'content.allListBgColor', '');
|
|
244
251
|
this.allModulePadding = getContainerPropsValue(container, 'content.allModulePadding', {});
|
|
252
|
+
this.allModuleRadius = getContainerPropsValue(container, 'content.allModuleRadius', 0);
|
|
245
253
|
this.allModuleTitleBgColor = getContainerPropsValue(container, 'content.allModuleTitleBgColor', '');
|
|
246
254
|
this.allModuleTitlePadding = getContainerPropsValue(container, 'content.allModuleTitlePadding', {});
|
|
247
255
|
this.allModuleMoreStyle = getContainerPropsValue(container, 'content.allModuleMoreStyle', "");
|
|
248
256
|
this.allModuleMargin = getContainerPropsValue(container, 'content.allModuleMargin', 20);
|
|
249
257
|
this.allModuleTitleStyle = getContainerPropsValue(container, 'content.allModuleTitleStyle', "");
|
|
258
|
+
this.allModuleItemContBorder = getContainerPropsValue(container, 'content.allModuleItemContBorder', {});
|
|
259
|
+
this.allModuleItemContMargin = getContainerPropsValue(container, 'content.allModuleItemContMargin', 20);
|
|
260
|
+
this.allModuleItemContShadow = getContainerPropsValue(container, 'content.allModuleItemContShadow', {});
|
|
261
|
+
this.allModuleItemContPadding = getContainerPropsValue(container, 'content.allModuleItemContPadding', {});
|
|
262
|
+
this.allModuleItemContRadius = getContainerPropsValue(container, 'content.allModuleItemContRadius', 16);
|
|
263
|
+
this.allModuleItemContBgColor = getContainerPropsValue(container, 'content.allModuleItemContBgColor', '#FFFFFF');
|
|
250
264
|
|
|
251
265
|
if(this.$configProject['isPreview']){
|
|
252
266
|
this.menuList = this.searchScope;
|
|
@@ -283,7 +297,7 @@
|
|
|
283
297
|
duration: 0
|
|
284
298
|
});
|
|
285
299
|
this.keyword = data;
|
|
286
|
-
this.tabId = '';
|
|
300
|
+
this.tabId = 'all';
|
|
287
301
|
this.$refs.searchHistory.addHistory(data);
|
|
288
302
|
}
|
|
289
303
|
},
|