jufubao-base 1.0.174-beta1 → 1.0.174-beta3
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/JfbBaseLogin/Attr.js +5 -4
- package/src/components/JfbBaseLogin/JfbBaseLogin.vue +61 -20
- package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBind.vue +87 -13
- package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetail.vue +1 -1
- package/src/components/JfbBaseTfkCardDetail/Mock.js +2 -0
- package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLogin.vue +26 -16
- package/src/components/JfbBaseTfkSearch/AllList.vue +97 -89
- package/src/components/JfbBaseTfkSearch/ContentCinema.vue +2 -0
- package/src/components/JfbBaseTfkSearch/ContentFilm.vue +13 -1
- package/src/components/JfbBaseTfkSearch/ContentProduct.vue +16 -4
- package/src/components/JfbBaseTfkSearch/ContentShop.vue +2 -0
- package/src/components/JfbBaseTfkSearch/CustomList.vue +25 -5
- package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +15 -13
- package/src/components/JfbBaseTfkSearch/Mock.js +28 -47
package/package.json
CHANGED
|
@@ -635,7 +635,7 @@ export default {
|
|
|
635
635
|
label: 'logo样式配置',
|
|
636
636
|
size: 'small',
|
|
637
637
|
groupKey: 'style',
|
|
638
|
-
hidden: data.
|
|
638
|
+
hidden: data.showLogo !== "Y",
|
|
639
639
|
},
|
|
640
640
|
{
|
|
641
641
|
label: "logo区域高度:",
|
|
@@ -646,7 +646,7 @@ export default {
|
|
|
646
646
|
groupKey:'style',
|
|
647
647
|
placeholder: "请输入logo区域高度",
|
|
648
648
|
className: 'input60',
|
|
649
|
-
hidden: data.
|
|
649
|
+
hidden: data.showLogo !== "Y",
|
|
650
650
|
},
|
|
651
651
|
{
|
|
652
652
|
label: "logo图片高度:",
|
|
@@ -657,7 +657,7 @@ export default {
|
|
|
657
657
|
groupKey:'style',
|
|
658
658
|
placeholder: "请输入logo图片高度",
|
|
659
659
|
className: 'input60',
|
|
660
|
-
hidden: data.
|
|
660
|
+
hidden: data.showLogo !== "Y",
|
|
661
661
|
},
|
|
662
662
|
{
|
|
663
663
|
label: 'logo圆角设置:',
|
|
@@ -677,7 +677,7 @@ export default {
|
|
|
677
677
|
console.error(error);
|
|
678
678
|
});
|
|
679
679
|
},
|
|
680
|
-
hidden: data.
|
|
680
|
+
hidden: data.showLogo !== "Y",
|
|
681
681
|
},
|
|
682
682
|
{
|
|
683
683
|
ele: "title",
|
|
@@ -699,6 +699,7 @@ export default {
|
|
|
699
699
|
setting: {
|
|
700
700
|
type: 'margin',
|
|
701
701
|
},
|
|
702
|
+
groupKey:'style',
|
|
702
703
|
placeholder: '请设置边距',
|
|
703
704
|
inline: false,
|
|
704
705
|
notice: '设置外边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
|
|
@@ -174,7 +174,7 @@
|
|
|
174
174
|
</xd-form-item>
|
|
175
175
|
<xd-form-item
|
|
176
176
|
v-if="accountLoginType === 'pwd'"
|
|
177
|
-
class="form-item"
|
|
177
|
+
class="form-item password-form-item"
|
|
178
178
|
:class="[inputStyle]"
|
|
179
179
|
label="密码"
|
|
180
180
|
:leftIcon="passwordIcon"
|
|
@@ -190,6 +190,23 @@
|
|
|
190
190
|
</xd-form>
|
|
191
191
|
</view>
|
|
192
192
|
|
|
193
|
+
<view class="form-group" :style="btnWrapStyle">
|
|
194
|
+
<xd-button
|
|
195
|
+
style="flex: 1"
|
|
196
|
+
type="primary"
|
|
197
|
+
:radius="btnRadius + 'rpx'"
|
|
198
|
+
:bg-color="btnColor"
|
|
199
|
+
:disabled="!panelTwoIsChecked"
|
|
200
|
+
@click="doLoginForm"
|
|
201
|
+
>
|
|
202
|
+
<xd-font-icon v-if="phoneLoginBtnIcon"
|
|
203
|
+
style="display: inline-flex;margin-right: 12rpx;"
|
|
204
|
+
:icon="phoneLoginBtnIcon"
|
|
205
|
+
></xd-font-icon>
|
|
206
|
+
{{ phoneLoginBtnText }}
|
|
207
|
+
</xd-button
|
|
208
|
+
>
|
|
209
|
+
</view>
|
|
193
210
|
<view class="form-group" :style="agreementBoxStyle">
|
|
194
211
|
<xd-form-checkbox
|
|
195
212
|
class="xd-form-checkbox"
|
|
@@ -213,23 +230,6 @@
|
|
|
213
230
|
</template>
|
|
214
231
|
</xd-form-checkbox>
|
|
215
232
|
</view>
|
|
216
|
-
<view class="form-group" :style="btnWrapStyle">
|
|
217
|
-
<xd-button
|
|
218
|
-
style="flex: 1"
|
|
219
|
-
type="primary"
|
|
220
|
-
:radius="btnRadius + 'rpx'"
|
|
221
|
-
:bg-color="btnColor"
|
|
222
|
-
:disabled="!panelTwoIsChecked"
|
|
223
|
-
@click="doLoginForm"
|
|
224
|
-
>
|
|
225
|
-
<xd-font-icon v-if="phoneLoginBtnIcon"
|
|
226
|
-
style="display: inline-flex;margin-right: 12rpx;"
|
|
227
|
-
:icon="phoneLoginBtnIcon"
|
|
228
|
-
></xd-font-icon>
|
|
229
|
-
{{ phoneLoginBtnText }}
|
|
230
|
-
</xd-button
|
|
231
|
-
>
|
|
232
|
-
</view>
|
|
233
233
|
<view
|
|
234
234
|
v-if="accountLoginType === 'pwd'"
|
|
235
235
|
class="forget_password"
|
|
@@ -1098,6 +1098,7 @@ export default {
|
|
|
1098
1098
|
box-sizing: border-box;
|
|
1099
1099
|
|
|
1100
1100
|
&__body {
|
|
1101
|
+
padding-bottom: 160rpx;
|
|
1101
1102
|
.xd-form-checkbox {
|
|
1102
1103
|
::v-deep .checklist-content .checklist-text {
|
|
1103
1104
|
font-size: 26rpx !important;
|
|
@@ -1123,9 +1124,10 @@ export default {
|
|
|
1123
1124
|
.form-group {
|
|
1124
1125
|
padding: 40rpx 70rpx;
|
|
1125
1126
|
}
|
|
1127
|
+
// #ifdef H5
|
|
1126
1128
|
.form-item {
|
|
1127
1129
|
::v-deep &.uni-forms-item {
|
|
1128
|
-
padding-left: unit(
|
|
1130
|
+
// padding-left: unit(30,rpx) !important;
|
|
1129
1131
|
.uni-input-input{
|
|
1130
1132
|
font-size: var(--content-font-size);
|
|
1131
1133
|
color: var(--content-font-color);
|
|
@@ -1159,6 +1161,44 @@ export default {
|
|
|
1159
1161
|
|
|
1160
1162
|
}
|
|
1161
1163
|
}
|
|
1164
|
+
// #endif
|
|
1165
|
+
|
|
1166
|
+
// #ifdef MP
|
|
1167
|
+
::v-deep .uni-forms-item {
|
|
1168
|
+
// padding-left: 30rpx !important;
|
|
1169
|
+
.uni-input-input{
|
|
1170
|
+
font-size: var(--content-font-size);
|
|
1171
|
+
color: var(--content-font-color);
|
|
1172
|
+
font-weight: var(--content-font-weight);
|
|
1173
|
+
}
|
|
1174
|
+
.label-text {
|
|
1175
|
+
font-size: var(--label-font-size);
|
|
1176
|
+
color: var(--label-font-color);
|
|
1177
|
+
font-weight: var(--label-font-weight);
|
|
1178
|
+
}
|
|
1179
|
+
.uni-easyinput__placeholder-class{
|
|
1180
|
+
font-size: var(--placeholder-font-size);
|
|
1181
|
+
color: var(--placeholder-font-color);
|
|
1182
|
+
font-weight: var(--placeholder-font-weight);
|
|
1183
|
+
}
|
|
1184
|
+
}
|
|
1185
|
+
.linear{
|
|
1186
|
+
::v-deep .uni-forms-item--border{
|
|
1187
|
+
border-top: none !important;
|
|
1188
|
+
border-bottom: var(--form-border-width) solid var(--form-border-color) !important;
|
|
1189
|
+
}
|
|
1190
|
+
}
|
|
1191
|
+
.face{
|
|
1192
|
+
::v-deep .uni-forms-item__content{
|
|
1193
|
+
background: #F7F7F7;
|
|
1194
|
+
border-radius: 16rpx;
|
|
1195
|
+
}
|
|
1196
|
+
::v-deep .uni-forms-item--border{
|
|
1197
|
+
border: none;
|
|
1198
|
+
}
|
|
1199
|
+
}
|
|
1200
|
+
// #endif
|
|
1201
|
+
|
|
1162
1202
|
.get_code {
|
|
1163
1203
|
color: @xd-base-color;
|
|
1164
1204
|
font-size: 24rpx;
|
|
@@ -1166,6 +1206,7 @@ export default {
|
|
|
1166
1206
|
padding: 10rpx 24rpx;
|
|
1167
1207
|
border: 1px solid @xd-base-color;
|
|
1168
1208
|
border-radius: 40rpx;
|
|
1209
|
+
white-space: nowrap;
|
|
1169
1210
|
}
|
|
1170
1211
|
.logo-wrap {
|
|
1171
1212
|
display: flex;
|
|
@@ -1175,11 +1216,11 @@ export default {
|
|
|
1175
1216
|
image {
|
|
1176
1217
|
width: 180rpx;
|
|
1177
1218
|
height: 180rpx;
|
|
1178
|
-
margin-bottom: unit(12,rpx);
|
|
1179
1219
|
}
|
|
1180
1220
|
& > view {
|
|
1181
1221
|
font-size: unit(36,rpx);
|
|
1182
1222
|
font-weight: 600;
|
|
1223
|
+
margin-top: 12rpx;
|
|
1183
1224
|
}
|
|
1184
1225
|
}
|
|
1185
1226
|
.panel-login-auth {
|
|
@@ -38,11 +38,11 @@
|
|
|
38
38
|
<view class="menu_list">
|
|
39
39
|
<view class="menu_item" @click="switchShowType('ticket')">
|
|
40
40
|
<view class="menu_inner" :class="menuShowType"
|
|
41
|
-
:style="
|
|
41
|
+
:style="menuType == 'ticket' ? menuItemActiveStyle : menuItemStyle">实体券</view>
|
|
42
42
|
</view>
|
|
43
43
|
<view class="menu_item" @click="switchShowType('code')">
|
|
44
44
|
<view class="menu_inner" :class="menuShowType"
|
|
45
|
-
:style="
|
|
45
|
+
:style="menuType == 'code' ? menuItemActiveStyle : menuItemStyle">电子码</view>
|
|
46
46
|
</view>
|
|
47
47
|
</view>
|
|
48
48
|
</view>
|
|
@@ -67,8 +67,9 @@
|
|
|
67
67
|
<xd-form-input
|
|
68
68
|
v-model="form.card_number"
|
|
69
69
|
placeholder="请输入票券号"
|
|
70
|
+
style="width: 100%;"
|
|
70
71
|
/>
|
|
71
|
-
<view @click="doScanCode">
|
|
72
|
+
<view @click.stop="doScanCode" style="margin-left: 20rpx;">
|
|
72
73
|
<xd-font-icon :icon="scanIcon.icon || 'iconsaoma'"
|
|
73
74
|
:color="scanIcon.color"
|
|
74
75
|
:style="{fontSize: scanIcon.fontSize}"
|
|
@@ -102,6 +103,7 @@
|
|
|
102
103
|
<xd-form-input
|
|
103
104
|
v-model="form.valid_code"
|
|
104
105
|
placeholder="请输入验证码"
|
|
106
|
+
style="width: 100%;"
|
|
105
107
|
/>
|
|
106
108
|
<view class="form_valid_code" @click="switchValidToken">
|
|
107
109
|
<image
|
|
@@ -178,6 +180,9 @@
|
|
|
178
180
|
import extsMixins from "@/mixins/extsMixins";
|
|
179
181
|
import { mapState } from "vuex";
|
|
180
182
|
export default {
|
|
183
|
+
// #ifdef MP-WEIXIN
|
|
184
|
+
options: { styleIsolation: 'shared' },
|
|
185
|
+
// #endif
|
|
181
186
|
name: "JfbBaseTfkCardBind",
|
|
182
187
|
components: {
|
|
183
188
|
XdFontIcon,
|
|
@@ -332,14 +337,12 @@
|
|
|
332
337
|
fontSize: '24rpx',
|
|
333
338
|
})
|
|
334
339
|
},
|
|
335
|
-
|
|
340
|
+
menuItemBoxPadding(){
|
|
336
341
|
let padding = `${this.checkValue(this.menuBtnPadding.top, 20)}rpx`;
|
|
337
342
|
padding = `${padding} ${this.checkValue(this.menuBtnPadding.right, 20)}rpx`;
|
|
338
343
|
padding = `${padding} ${this.checkValue(this.menuBtnPadding.bottom, 20)}rpx`;
|
|
339
344
|
padding = `${padding} ${this.checkValue(this.menuBtnPadding.left, 20)}rpx`;
|
|
340
|
-
return
|
|
341
|
-
padding
|
|
342
|
-
})
|
|
345
|
+
return padding;
|
|
343
346
|
},
|
|
344
347
|
menuItemStyle(){
|
|
345
348
|
let styleObj = {
|
|
@@ -347,6 +350,7 @@
|
|
|
347
350
|
background: this.menuTabColor['bgColor'] || '#fff',
|
|
348
351
|
fontSize: this.menuTabColor['fontSize'] || '30rpx',
|
|
349
352
|
fontWeight: this.menuTabColor['fontWeight'] || 'normal',
|
|
353
|
+
padding: this.menuItemBoxPadding,
|
|
350
354
|
}
|
|
351
355
|
|
|
352
356
|
return this.styleObjectToString(styleObj)
|
|
@@ -358,6 +362,7 @@
|
|
|
358
362
|
background: this.menuTabColor['actBgColor'] || '#fff',
|
|
359
363
|
fontSize: this.menuTabColor['actFontSize'] || '30rpx',
|
|
360
364
|
fontWeight: this.menuTabColor['actFontWeight'] || 'normal',
|
|
365
|
+
padding: this.menuItemBoxPadding,
|
|
361
366
|
}
|
|
362
367
|
if(this.menuShowType === 'text'){
|
|
363
368
|
styleActiveObj['borderBottom'] = `${this.menuBorderWidth}px solid ${this.menuTabColor['actColor'] || defaultTextColor}`;
|
|
@@ -678,6 +683,7 @@
|
|
|
678
683
|
|
|
679
684
|
.jfb-base-tfk-card-bind {
|
|
680
685
|
&__body{
|
|
686
|
+
// #ifdef H5
|
|
681
687
|
.form-item {
|
|
682
688
|
::v-deep &.uni-forms-item {
|
|
683
689
|
.is-required{
|
|
@@ -704,8 +710,6 @@
|
|
|
704
710
|
}
|
|
705
711
|
&.linear{
|
|
706
712
|
::v-deep &.uni-forms-item--border{
|
|
707
|
-
// border-color: var(--form-border-color) !important;
|
|
708
|
-
// border-width: var(--form-border-width) !important;
|
|
709
713
|
border-top: none !important;
|
|
710
714
|
border-bottom: var(--form-border-width) solid var(--form-border-color) !important;
|
|
711
715
|
}
|
|
@@ -749,13 +753,83 @@
|
|
|
749
753
|
::v-deep .label-icon{
|
|
750
754
|
font-size: var(--digital-icon-size) !important;
|
|
751
755
|
}
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
+
}
|
|
757
|
+
}
|
|
758
|
+
// #endif
|
|
759
|
+
|
|
760
|
+
// #ifdef MP
|
|
761
|
+
::v-deep .uni-forms-item {
|
|
762
|
+
.is-required{
|
|
763
|
+
display: none;
|
|
764
|
+
}
|
|
765
|
+
.uni-input-input{
|
|
766
|
+
font-size: var(--content-font-size);
|
|
767
|
+
color: var(--content-font-color);
|
|
768
|
+
font-weight: var(--content-font-weight);
|
|
769
|
+
}
|
|
770
|
+
.label-text {
|
|
771
|
+
font-size: var(--label-font-size);
|
|
772
|
+
color: var(--label-font-color);
|
|
773
|
+
font-weight: var(--label-font-weight);
|
|
774
|
+
}
|
|
775
|
+
.uni-easyinput__placeholder-class{
|
|
776
|
+
font-size: var(--placeholder-font-size);
|
|
777
|
+
color: var(--placeholder-font-color);
|
|
778
|
+
font-weight: var(--placeholder-font-weight);
|
|
779
|
+
}
|
|
780
|
+
}
|
|
781
|
+
::v-deep .uni-forms-item--border{
|
|
782
|
+
padding: var(--form-input-padding) 0;
|
|
783
|
+
}
|
|
784
|
+
.linear{
|
|
785
|
+
::v-deep .uni-forms-item--border{
|
|
786
|
+
border-top: none !important;
|
|
787
|
+
border-bottom: var(--form-border-width) solid var(--form-border-color) !important;
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
.face{
|
|
791
|
+
::v-deep .uni-forms-item__box{
|
|
792
|
+
background: #F7F7F7;
|
|
793
|
+
border-radius: var(--form-border-radius);
|
|
794
|
+
padding-right: 20rpx;
|
|
795
|
+
}
|
|
796
|
+
::v-deep .uni-forms-item--border{
|
|
797
|
+
border: none;
|
|
798
|
+
}
|
|
799
|
+
}
|
|
800
|
+
.ticket_item{
|
|
801
|
+
::v-deep .label-icon{
|
|
802
|
+
font-size: var(--ticket-icon-size) !important;
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
.password_item{
|
|
806
|
+
::v-deep .label-icon{
|
|
807
|
+
font-size: var(--password-icon-size) !important;
|
|
808
|
+
}
|
|
809
|
+
}
|
|
810
|
+
.valid_item{
|
|
811
|
+
::v-deep .label-icon{
|
|
812
|
+
font-size: var(--valid-icon-size) !important;
|
|
813
|
+
}
|
|
814
|
+
}
|
|
815
|
+
.digital_item{
|
|
816
|
+
&.linear{
|
|
817
|
+
::v-deep .uni-forms-item--border{
|
|
818
|
+
border-color: var(--digital-border-color) !important;
|
|
819
|
+
}
|
|
820
|
+
}
|
|
821
|
+
&.face{
|
|
822
|
+
::v-deep .uni-forms-item__box{
|
|
823
|
+
border-radius: var(--digital-border-radius);
|
|
756
824
|
}
|
|
757
825
|
}
|
|
826
|
+
::v-deep .label-icon{
|
|
827
|
+
font-size: var(--digital-icon-size) !important;
|
|
828
|
+
}
|
|
758
829
|
}
|
|
830
|
+
// #endif
|
|
831
|
+
|
|
832
|
+
|
|
759
833
|
.menu_wrap{
|
|
760
834
|
.menu_list{
|
|
761
835
|
display: flex;
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
</view>
|
|
79
79
|
</view>
|
|
80
80
|
<view v-if="curModule === 'rule'">
|
|
81
|
-
<view v-if="cardInfo.
|
|
81
|
+
<view v-if="cardInfo.card_rule_info" v-html="cardInfo.card_rule_info" class="rule_wrap" :style="ruleDetailBoxStyle">
|
|
82
82
|
</view>
|
|
83
83
|
<view v-else class="rule_wrap" :style="ruleDetailBoxStyle">
|
|
84
84
|
使用规则暂无
|
|
@@ -23,6 +23,8 @@ module.exports = {
|
|
|
23
23
|
is_show_qrcode_logo: "Y",
|
|
24
24
|
is_can_unbind: "Y",
|
|
25
25
|
is_can_transfer: "Y",
|
|
26
|
+
card_use_rule: "可凭本票券到电影(勿改)、商城(对应百货)(勿改)、蛋糕(勿改",
|
|
27
|
+
card_rule_info: "<p>购买范围:</p> <ul style='padding-left: 20px;'><li>可凭本票券到xxxxx进行提货</li></ul> <br/> <p>券内额度:</p><ul style='padding-left: 20px;'><li>提货额度为xx点/次</li></ul><br/><p>线下提货:</p><ul style='padding-left: 20px;'><li>1</li><li>2</li></ul>",
|
|
26
28
|
site_entry_settings: [
|
|
27
29
|
{
|
|
28
30
|
id: 63,
|
|
@@ -25,11 +25,11 @@
|
|
|
25
25
|
@click="changeMenu('card')"
|
|
26
26
|
>
|
|
27
27
|
<view class="menu_item_inner"
|
|
28
|
-
:style="
|
|
28
|
+
:style="menuType === 'card' ? menuItemActiveStyle : menuItemStyle">我的票券包</view>
|
|
29
29
|
</view>
|
|
30
30
|
<view class="menu_item" @click="changeMenu('coupon')">
|
|
31
31
|
<view class="menu_item_inner"
|
|
32
|
-
:style="
|
|
32
|
+
:style="menuType === 'coupon' ? menuItemActiveStyle : menuItemStyle">我的优惠券</view>
|
|
33
33
|
</view>
|
|
34
34
|
</view>
|
|
35
35
|
<view class="bind_card" :style="bindCardBoxStyle" @click="toBindCard">
|
|
@@ -96,13 +96,7 @@
|
|
|
96
96
|
<view v-if="item.is_exchange === 'Y'">(可转票券)</view>
|
|
97
97
|
</view>
|
|
98
98
|
<view class="bind_btn"
|
|
99
|
-
:style="
|
|
100
|
-
right: cardPadding.right + 'rpx',
|
|
101
|
-
bottom: cardPadding.bottom + 'rpx',
|
|
102
|
-
borderRadius: cardBtnRadius + 'rpx',
|
|
103
|
-
padding: bindCardBtnPadding,
|
|
104
|
-
minWidth: cardBtnMinWidth + 'rpx',
|
|
105
|
-
}, item.is_login === 'Y' ? bindCardActiveStyle : bindCardBtnStyle]"
|
|
99
|
+
:style="item.is_login === 'Y' ? bindCardActiveStyle : bindCardBtnStyle"
|
|
106
100
|
@click.stop="doCardLogin(item)"
|
|
107
101
|
>{{ item.is_login === 'Y' ? '已登录' : '登录'}}</view>
|
|
108
102
|
</view>
|
|
@@ -273,14 +267,12 @@
|
|
|
273
267
|
padding: padding,
|
|
274
268
|
})
|
|
275
269
|
},
|
|
276
|
-
|
|
270
|
+
menuItemBoxPadding(){
|
|
277
271
|
let padding = `${this.checkValue(this.menuBtnPadding.top, 20)}rpx`;
|
|
278
272
|
padding = `${padding} ${this.checkValue(this.menuBtnPadding.right, 20)}rpx`;
|
|
279
273
|
padding = `${padding} ${this.checkValue(this.menuBtnPadding.bottom, 20)}rpx`;
|
|
280
274
|
padding = `${padding} ${this.checkValue(this.menuBtnPadding.left, 20)}rpx`;
|
|
281
|
-
return
|
|
282
|
-
padding
|
|
283
|
-
})
|
|
275
|
+
return padding;
|
|
284
276
|
},
|
|
285
277
|
menuItemStyle(){
|
|
286
278
|
let styleObj = {
|
|
@@ -289,6 +281,7 @@
|
|
|
289
281
|
fontSize: this.menuTabColor['fontSize'] || '30rpx',
|
|
290
282
|
fontWeight: this.menuTabColor['fontWeight'] || 'normal',
|
|
291
283
|
borderWidth: this.menuBorderWidth + 'px',
|
|
284
|
+
padding: this.menuItemBoxPadding,
|
|
292
285
|
}
|
|
293
286
|
|
|
294
287
|
return this.styleObjectToString(styleObj)
|
|
@@ -300,6 +293,7 @@
|
|
|
300
293
|
background: this.menuTabColor['actBgColor'] || '#fff',
|
|
301
294
|
fontSize: this.menuTabColor['actFontSize'] || '30rpx',
|
|
302
295
|
fontWeight: this.menuTabColor['actFontWeight'] || 'normal',
|
|
296
|
+
padding: this.menuItemBoxPadding,
|
|
303
297
|
}
|
|
304
298
|
if(this.menuShowType === 'text'){
|
|
305
299
|
styleActiveObj.borderBottom = `${this.menuBorderWidth}px solid ${this.menuTabColor['actColor'] || defaultTextColor}`
|
|
@@ -316,12 +310,22 @@
|
|
|
316
310
|
padding = `${padding} ${this.checkValue(this.cardBtnPadding.left, 20)}rpx`;
|
|
317
311
|
return padding;
|
|
318
312
|
},
|
|
313
|
+
bindCardBtnOther(){
|
|
314
|
+
return {
|
|
315
|
+
right: this.cardPadding.right + 'rpx',
|
|
316
|
+
bottom: this.cardPadding.bottom + 'rpx',
|
|
317
|
+
borderRadius: this.cardBtnRadius + 'rpx',
|
|
318
|
+
padding: this.bindCardBtnPadding,
|
|
319
|
+
minWidth: this.cardBtnMinWidth + 'rpx',
|
|
320
|
+
}
|
|
321
|
+
},
|
|
319
322
|
bindCardBtnStyle(){
|
|
320
323
|
let styleObj = {
|
|
321
324
|
color: this.cardBtnTextStyle['color'] || '#333',
|
|
322
325
|
background: this.cardBtnTextStyle['bgColor'] || '#fff',
|
|
323
326
|
fontSize: this.cardBtnTextStyle['fontSize'] || '30rpx',
|
|
324
327
|
fontWeight: this.cardBtnTextStyle['fontWeight'] || 'normal',
|
|
328
|
+
...this.bindCardBtnOther
|
|
325
329
|
}
|
|
326
330
|
return this.styleObjectToString(styleObj)
|
|
327
331
|
},
|
|
@@ -332,6 +336,7 @@
|
|
|
332
336
|
background: this.cardBtnTextStyle['actBgColor'] || '#fff',
|
|
333
337
|
fontSize: this.cardBtnTextStyle['actFontSize'] || '30rpx',
|
|
334
338
|
fontWeight: this.cardBtnTextStyle['actFontWeight'] || 'normal',
|
|
339
|
+
...this.bindCardBtnOther
|
|
335
340
|
}
|
|
336
341
|
return this.styleObjectToString(styleActiveObj)
|
|
337
342
|
},
|
|
@@ -686,13 +691,18 @@
|
|
|
686
691
|
})
|
|
687
692
|
},
|
|
688
693
|
apiGetContent(params){
|
|
694
|
+
let _this = this;
|
|
695
|
+
// #ifdef MP-WEIXIN
|
|
696
|
+
_this = this.$parent;
|
|
697
|
+
//#endif
|
|
698
|
+
|
|
689
699
|
return new Promise((resolve, reject) => {
|
|
690
700
|
jfbRootExec("getListBaseNewsContent", {
|
|
691
701
|
vm: this,
|
|
692
702
|
data: {
|
|
693
|
-
page_id:
|
|
694
|
-
container_id:
|
|
695
|
-
page_size:
|
|
703
|
+
page_id: _this.pageAttr["page_id"], //页面ID
|
|
704
|
+
container_id: _this.containerId, //组件ID
|
|
705
|
+
page_size: _this.noticeNum || 1,
|
|
696
706
|
...params
|
|
697
707
|
},
|
|
698
708
|
}).then(res => {
|
|
@@ -1,78 +1,81 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<view class="search_all_list" >
|
|
3
|
-
<
|
|
4
|
-
:
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
<view v-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
3
|
+
<template v-if="!loadingList">
|
|
4
|
+
<view class="module_item" v-for="parent in list" :key="parent.setting_id"
|
|
5
|
+
:style="moduleItemStyle"
|
|
6
|
+
>
|
|
7
|
+
<view class="module_title" :style="moduleItemTitleStyle">{{ parent.name }}</view>
|
|
8
|
+
<view v-if="parent.type !== 'product'" class="module_cont">
|
|
9
|
+
<view v-for="(item, i) in parent.items" :key="item.key"
|
|
10
|
+
class="module_cont_inner"
|
|
11
|
+
:style="[moduleItemContStyle]"
|
|
12
|
+
>
|
|
13
|
+
<content-cinema v-if="parent.type === 'cinema'"
|
|
14
|
+
style="width: 100%; height: 100%"
|
|
15
|
+
:keyword="keyword"
|
|
16
|
+
:item="item"
|
|
17
|
+
:out-spacing="listItemStyle.outSpacing"
|
|
18
|
+
:color="{SEAT:listItemStyle.mainColor,CODE:listItemStyle.subMainColor,SELL:listItemStyle.successColor}"
|
|
19
|
+
:border-radius="listItemStyle.imgRradius"
|
|
20
|
+
:brand-color="listItemStyle.brandColor"
|
|
21
|
+
@on-schedule="data => handleFilmDetail(data, parent)"
|
|
22
|
+
@on-cashier-detail="data => handleCashierDetail(data, parent)"
|
|
23
|
+
@on-code-detail="data => handleCodeDetail(data, parent)"
|
|
24
|
+
></content-cinema>
|
|
25
|
+
<content-film v-if="parent.type === 'film'"
|
|
26
|
+
type="hot"
|
|
27
|
+
style="width: 100%; height: 100%"
|
|
28
|
+
:keyword="keyword"
|
|
29
|
+
:item="item"
|
|
30
|
+
:out-spacing="listItemStyle.outSpacing"
|
|
31
|
+
:color="listItemStyle.mainColor"
|
|
32
|
+
:border-radius="listItemStyle.imgRradius"
|
|
33
|
+
:brand-color="listItemStyle.brandColor"
|
|
34
|
+
@on-film-detail="data => handleFilmDetail(data, parent)"
|
|
35
|
+
@on-buy="data => handleBuy(data, parent)"
|
|
36
|
+
></content-film>
|
|
37
|
+
<content-shop v-if="parent.type === 'shop'"
|
|
38
|
+
style="width: 100%; height: 100%"
|
|
39
|
+
:keyword="keyword"
|
|
40
|
+
:item="item"
|
|
41
|
+
:out-spacing="listItemStyle.outSpacing"
|
|
42
|
+
:color="listItemStyle.mainColor"
|
|
43
|
+
:border-radius="listItemStyle.imgRradius"
|
|
44
|
+
:brand-color="listItemStyle.brandColor"
|
|
45
|
+
:is-echange="listItemStyle.isShowExchange"
|
|
46
|
+
@on-shop-jhd="data => handleShopJhd(data, parent)"
|
|
47
|
+
@on-shop-detail="data => handleShopDetail(data, parent)"
|
|
48
|
+
></content-shop>
|
|
49
|
+
</view>
|
|
48
50
|
</view>
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
51
|
+
<view v-else class="module_cont product_wrap">
|
|
52
|
+
<view v-for="(item, i) in parent.items" :key="item.key"
|
|
53
|
+
class="module_cont_inner"
|
|
54
|
+
:style="[moduleItemContStyle, {
|
|
55
|
+
width: getProductCell(parent.tab) == 2 ? `calc(50% - ${listItemStyle.outSpacing/2}rpx)`: '100%',
|
|
56
|
+
}]"
|
|
57
|
+
>
|
|
58
|
+
<content-product v-if="parent.type === 'product'"
|
|
59
|
+
style="width: 100%; height: 100%"
|
|
60
|
+
:keyword="keyword"
|
|
61
|
+
:item="item"
|
|
62
|
+
:height="outItemProduct"
|
|
63
|
+
:product-config="productConfig"
|
|
64
|
+
:out-spacing="listItemStyle.outSpacing"
|
|
65
|
+
:color="listItemStyle.mainColor"
|
|
66
|
+
:brand-color="listItemStyle.brandColor"
|
|
67
|
+
:border-radius="listItemStyle.imgRradius"
|
|
68
|
+
:cell="getProductCell(parent.tab)"
|
|
69
|
+
@on-product-detail="data => handleProductDetail(data, parent)"
|
|
70
|
+
></content-product>
|
|
71
|
+
</view>
|
|
72
|
+
</view>
|
|
73
|
+
<view class="module_more">
|
|
74
|
+
<view class="more_inner" :style="moduleMoreStyle" @click="switchMenu(parent)">查看全部</view>
|
|
70
75
|
</view>
|
|
71
76
|
</view>
|
|
72
|
-
<
|
|
73
|
-
|
|
74
|
-
</view>
|
|
75
|
-
</view>
|
|
77
|
+
<xd-no-data v-if="list && list.length ===0" height="60vh" icon-type="search">商品正在上架中</xd-no-data>
|
|
78
|
+
</template>
|
|
76
79
|
</view>
|
|
77
80
|
</template>
|
|
78
81
|
|
|
@@ -82,13 +85,15 @@
|
|
|
82
85
|
import ContentShop from "./ContentShop.vue"
|
|
83
86
|
import ContentProduct from "./ContentProduct.vue"
|
|
84
87
|
import {mapState} from "vuex";
|
|
88
|
+
import XdNoData from "@/components/XdNoData/XdNoData"
|
|
85
89
|
export default{
|
|
86
90
|
name: "SearchAllList",
|
|
87
91
|
components: {
|
|
88
92
|
ContentCinema,
|
|
89
93
|
ContentFilm,
|
|
90
94
|
ContentShop,
|
|
91
|
-
ContentProduct
|
|
95
|
+
ContentProduct,
|
|
96
|
+
XdNoData,
|
|
92
97
|
},
|
|
93
98
|
props: {
|
|
94
99
|
keyword:{
|
|
@@ -157,14 +162,14 @@
|
|
|
157
162
|
padding = `${padding} ${this.checkValue(contMargin.right, 20)}rpx`;
|
|
158
163
|
padding = `${padding} ${this.checkValue(contMargin.bottom, 20)}rpx`;
|
|
159
164
|
padding = `${padding} ${this.checkValue(contMargin.left, 20)}rpx`;
|
|
160
|
-
return
|
|
165
|
+
return {
|
|
161
166
|
padding: padding,
|
|
162
167
|
border: contBorder,
|
|
163
168
|
borderRadius: contRradius + 'rpx',
|
|
164
169
|
boxShadow: contShadow,
|
|
165
170
|
marginBottom: outSpacing + 'rpx',
|
|
166
171
|
background: contBgColor,
|
|
167
|
-
}
|
|
172
|
+
}
|
|
168
173
|
},
|
|
169
174
|
moduleMoreStyle(){
|
|
170
175
|
const { allModuleMoreStyle } = this.allStyle;
|
|
@@ -202,11 +207,13 @@
|
|
|
202
207
|
getParent:null,
|
|
203
208
|
$parentVm:null,
|
|
204
209
|
parentStatus: false,
|
|
210
|
+
loadingList: true,
|
|
205
211
|
|
|
206
212
|
list: [],
|
|
207
213
|
}
|
|
208
214
|
},
|
|
209
215
|
created(){
|
|
216
|
+
this.loadingList = true;
|
|
210
217
|
this.getParentMV();
|
|
211
218
|
this.getList();
|
|
212
219
|
},
|
|
@@ -243,6 +250,7 @@
|
|
|
243
250
|
this.$emit('on-list', {
|
|
244
251
|
params: params,
|
|
245
252
|
cb:(list)=>{
|
|
253
|
+
this.loadingList = false;
|
|
246
254
|
this.list = (list || []).map(parent => {
|
|
247
255
|
parent.items = parent.items.map(item => {
|
|
248
256
|
item['key'] = item.product_id || item.resource_shop_id || item.cinema_id || item.film_id;
|
|
@@ -260,35 +268,35 @@
|
|
|
260
268
|
|
|
261
269
|
|
|
262
270
|
//影片
|
|
263
|
-
handleFilmDetail(film){
|
|
264
|
-
this.getParent().handleFilmDetail(film,
|
|
271
|
+
handleFilmDetail(film, dataConfig){
|
|
272
|
+
this.getParent().handleFilmDetail(film, dataConfig)
|
|
265
273
|
},
|
|
266
|
-
handleBuy(film){
|
|
267
|
-
this.getParent().handleBuy(film,
|
|
274
|
+
handleBuy(film, dataConfig){
|
|
275
|
+
this.getParent().handleBuy(film, dataConfig)
|
|
268
276
|
},
|
|
269
277
|
|
|
270
278
|
//影院
|
|
271
|
-
handleSchedule(cinema){
|
|
272
|
-
this.getParent().handleSchedule(cinema,
|
|
279
|
+
handleSchedule(cinema, dataConfig){
|
|
280
|
+
this.getParent().handleSchedule(cinema, dataConfig)
|
|
273
281
|
},
|
|
274
|
-
handleCashierDetail(cinema){
|
|
275
|
-
this.getParent().handleCashierDetail(cinema,
|
|
282
|
+
handleCashierDetail(cinema, dataConfig){
|
|
283
|
+
this.getParent().handleCashierDetail(cinema, dataConfig)
|
|
276
284
|
},
|
|
277
|
-
handleCodeDetail(cinema){
|
|
278
|
-
this.getParent().handleCodeDetail(cinema,
|
|
285
|
+
handleCodeDetail(cinema, dataConfig){
|
|
286
|
+
this.getParent().handleCodeDetail(cinema, dataConfig)
|
|
279
287
|
},
|
|
280
288
|
|
|
281
289
|
//门店
|
|
282
|
-
handleShopJhd(shop){
|
|
283
|
-
this.getParent().handleShopJhd(shop,
|
|
290
|
+
handleShopJhd(shop, dataConfig){
|
|
291
|
+
this.getParent().handleShopJhd(shop, dataConfig)
|
|
284
292
|
},
|
|
285
|
-
handleShopDetail(shop){
|
|
286
|
-
this.getParent().handleShopDetail(shop,
|
|
293
|
+
handleShopDetail(shop, dataConfig){
|
|
294
|
+
this.getParent().handleShopDetail(shop, dataConfig)
|
|
287
295
|
},
|
|
288
296
|
|
|
289
297
|
//商品
|
|
290
|
-
handleProductDetail(product){
|
|
291
|
-
this.getParent().handleProductDetail(product,
|
|
298
|
+
handleProductDetail(product, dataConfig){
|
|
299
|
+
this.getParent().handleProductDetail(product, dataConfig)
|
|
292
300
|
},
|
|
293
301
|
}
|
|
294
302
|
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
</view>
|
|
10
10
|
<view class="middle">
|
|
11
11
|
<view class="top">
|
|
12
|
-
<view class="name"
|
|
12
|
+
<view class="name" v-html="cusName"></view>
|
|
13
13
|
<view class="score">
|
|
14
14
|
<template v-if="item['remark']">
|
|
15
15
|
<text>评分:</text><text :style="{color:color}">{{item['remark']}}</text>
|
|
@@ -61,12 +61,17 @@
|
|
|
61
61
|
|
|
62
62
|
<script>
|
|
63
63
|
import XdButton from "@/components/XdButton/XdButton.vue";
|
|
64
|
+
import handleKeyword from "./handleKeyword";
|
|
64
65
|
export default {
|
|
65
66
|
name:'ContentItem',
|
|
66
67
|
components:{
|
|
67
68
|
XdButton
|
|
68
69
|
},
|
|
69
70
|
props:{
|
|
71
|
+
keyword:{
|
|
72
|
+
type:String,
|
|
73
|
+
default:''
|
|
74
|
+
},
|
|
70
75
|
item:Object,
|
|
71
76
|
outSpacing: {
|
|
72
77
|
type: Number|String,
|
|
@@ -86,6 +91,11 @@
|
|
|
86
91
|
}
|
|
87
92
|
|
|
88
93
|
},
|
|
94
|
+
computed:{
|
|
95
|
+
cusName(){
|
|
96
|
+
return handleKeyword(this, this.item['show_name'], this.keyword)
|
|
97
|
+
},
|
|
98
|
+
},
|
|
89
99
|
data(){
|
|
90
100
|
return {
|
|
91
101
|
errorImage: 'https://img.jufubao.cn/common/error_movie.png?v20',
|
|
@@ -143,6 +153,8 @@
|
|
|
143
153
|
font-weight: 600;
|
|
144
154
|
.uni-max-cut(2, 90);
|
|
145
155
|
line-height: 45rpx;
|
|
156
|
+
word-wrap: break-word;
|
|
157
|
+
word-break: break-all;
|
|
146
158
|
}
|
|
147
159
|
& >view:nth-child(2) {
|
|
148
160
|
flex-shrink: 0;
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
<view class="prodcut-content-info">
|
|
17
17
|
<view class="name" v-html="cusName" :class="{showOne: isOne}"></view>
|
|
18
18
|
<view class="brand" v-if="productConfig.is_show_brand==='Y'" :style="{color:brandColor}">{{item['brand_name']}}</view>
|
|
19
|
-
<view class="tags" v-if="productConfig.isShowTag === 'Y'">
|
|
19
|
+
<view class="tags" :class="{showTwo:!isOne}" v-if="productConfig.isShowTag === 'Y'">
|
|
20
20
|
<view
|
|
21
21
|
v-for="tag in tagsList"
|
|
22
22
|
:key="tag"
|
|
@@ -217,6 +217,7 @@ export default {
|
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
&-content {
|
|
220
|
+
overflow: hidden;
|
|
220
221
|
&-info {
|
|
221
222
|
|
|
222
223
|
}
|
|
@@ -274,6 +275,13 @@ export default {
|
|
|
274
275
|
margin-bottom: 10rpx;
|
|
275
276
|
line-height: 40rpx;
|
|
276
277
|
.uni-max-cut(2,80);
|
|
278
|
+
word-wrap: break-word;
|
|
279
|
+
word-break: break-all;
|
|
280
|
+
|
|
281
|
+
& > text {
|
|
282
|
+
display: inline-block;
|
|
283
|
+
|
|
284
|
+
}
|
|
277
285
|
|
|
278
286
|
&.showOne {
|
|
279
287
|
.uni-max-cut(1,40);
|
|
@@ -295,6 +303,11 @@ export default {
|
|
|
295
303
|
margin-bottom: 10rpx;
|
|
296
304
|
flex-flow: wrap;
|
|
297
305
|
|
|
306
|
+
&.showTwo {
|
|
307
|
+
&:nth-child(4),&:nth-child(5),&:nth-child(6){
|
|
308
|
+
margin-top: 8rpx;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
298
311
|
& > view {
|
|
299
312
|
padding: 0 14rpx;
|
|
300
313
|
height: 32rpx;
|
|
@@ -307,11 +320,10 @@ export default {
|
|
|
307
320
|
&:last-child {
|
|
308
321
|
margin-right: 0;
|
|
309
322
|
}
|
|
310
|
-
|
|
311
|
-
margin-top: 8rpx;
|
|
312
|
-
}
|
|
323
|
+
|
|
313
324
|
}
|
|
314
325
|
}
|
|
326
|
+
|
|
315
327
|
}
|
|
316
328
|
}
|
|
317
329
|
</style>
|
|
@@ -70,14 +70,14 @@
|
|
|
70
70
|
@on-code-detail="handleCodeDetail"
|
|
71
71
|
></content-cinema>
|
|
72
72
|
<content-shop
|
|
73
|
-
v-if="type_code === 'shop'"
|
|
73
|
+
v-if="productConfig !== null && type_code === 'shop'"
|
|
74
74
|
style="width: 100%; height: 100%"
|
|
75
75
|
:keyword="keyword"
|
|
76
76
|
:out-spacing="listItemStyle.outSpacing"
|
|
77
77
|
:item="item"
|
|
78
78
|
:color="listItemStyle.mainColor"
|
|
79
79
|
:border-radius="listItemStyle.imgRradius"
|
|
80
|
-
:is-echange="
|
|
80
|
+
:is-echange="productConfig.isShowExchange"
|
|
81
81
|
@on-shop-jhd="handleShopJhd"
|
|
82
82
|
@on-shop-detail="handleShopDetail"
|
|
83
83
|
></content-shop>
|
|
@@ -94,7 +94,9 @@
|
|
|
94
94
|
:cell="type_other"
|
|
95
95
|
@on-product-detail="handleProductDetail"
|
|
96
96
|
></content-product>
|
|
97
|
+
|
|
97
98
|
</view>
|
|
99
|
+
<view class="hasNoData" v-if="dataList && dataList.length > 0 && page_token === ''">已经到底没有更多数据了</view>
|
|
98
100
|
</template>
|
|
99
101
|
<view v-else class="productBox2">
|
|
100
102
|
<view v-for="(value, listKey) in productTowList" :key="listKey">
|
|
@@ -226,7 +228,7 @@ export default {
|
|
|
226
228
|
let h = 'auto'
|
|
227
229
|
if(this.type_code === 'film') h = '240rpx'
|
|
228
230
|
if(this.type_code === 'cinema') h = 'auto';
|
|
229
|
-
if(this.type_code === 'shop') h = '
|
|
231
|
+
if(this.type_code === 'shop') h = '220rpx';
|
|
230
232
|
return h;
|
|
231
233
|
}
|
|
232
234
|
},
|
|
@@ -239,7 +241,7 @@ export default {
|
|
|
239
241
|
hasNoData: false,
|
|
240
242
|
|
|
241
243
|
page_token:'1',
|
|
242
|
-
page_size:
|
|
244
|
+
page_size: 10,
|
|
243
245
|
|
|
244
246
|
//参数
|
|
245
247
|
type_code:'',
|
|
@@ -360,8 +362,16 @@ export default {
|
|
|
360
362
|
return
|
|
361
363
|
}
|
|
362
364
|
|
|
365
|
+
// res.items = res.items.map(item=>{
|
|
366
|
+
// if(item.market_tags) {
|
|
367
|
+
// item.market_tags = ['flashsale','hot','new', 'rec']
|
|
368
|
+
// }
|
|
369
|
+
// return item
|
|
370
|
+
// });
|
|
371
|
+
|
|
363
372
|
//正常数据处理
|
|
364
|
-
this.dataConfig = res
|
|
373
|
+
this.dataConfig = res
|
|
374
|
+
|
|
365
375
|
|
|
366
376
|
//整理为统一ID
|
|
367
377
|
res.items = res.items.map((item,index)=>{
|
|
@@ -450,4 +460,14 @@ export default {
|
|
|
450
460
|
flex-flow: wrap;
|
|
451
461
|
}
|
|
452
462
|
|
|
463
|
+
.hasNoData {
|
|
464
|
+
height: 80rpx;
|
|
465
|
+
line-height: 80rpx;
|
|
466
|
+
font-size: 24rpx;
|
|
467
|
+
text-align: center;
|
|
468
|
+
color: #ccc;
|
|
469
|
+
background-color: rgba(255, 255, 255, .05);
|
|
470
|
+
margin: 20rpx 0
|
|
471
|
+
}
|
|
472
|
+
|
|
453
473
|
</style>
|
|
@@ -29,13 +29,8 @@
|
|
|
29
29
|
@click="handleSwitchMenu(item)"
|
|
30
30
|
>
|
|
31
31
|
<view class="menu_inner"
|
|
32
|
-
:style="
|
|
33
|
-
|
|
34
|
-
item.value === tabId ? menuItemActiveStyle : menuItemStyle,
|
|
35
|
-
{
|
|
36
|
-
marginRight: i === showMenuList.length - 1 ? '0' : menuItemMargin + 'rpx',
|
|
37
|
-
}
|
|
38
|
-
]"
|
|
32
|
+
:style="item.value === tabId ? menuItemActiveStyle : menuItemStyle"
|
|
33
|
+
:class="{isLast: i === showMenuList.length - 1}"
|
|
39
34
|
>{{ item.label }}</view>
|
|
40
35
|
</view>
|
|
41
36
|
</view>
|
|
@@ -52,6 +47,7 @@
|
|
|
52
47
|
@on-switch="handleSwitchMenu"
|
|
53
48
|
></all-list>
|
|
54
49
|
<custom-list
|
|
50
|
+
v-else
|
|
55
51
|
:tab-id="tabId"
|
|
56
52
|
:keyword="keyword"
|
|
57
53
|
:list-item-style="listItemStyle"
|
|
@@ -97,7 +93,6 @@
|
|
|
97
93
|
],
|
|
98
94
|
data() {
|
|
99
95
|
return {
|
|
100
|
-
hideMask: true,
|
|
101
96
|
tabId: 'all', //cinema/film/shop/product
|
|
102
97
|
keyword: '',
|
|
103
98
|
options:{},
|
|
@@ -159,14 +154,12 @@
|
|
|
159
154
|
backgroundColor: this.menuBgColor,
|
|
160
155
|
})
|
|
161
156
|
},
|
|
162
|
-
|
|
157
|
+
menuItemBoxPadding(){
|
|
163
158
|
let padding = `${this.checkValue(this.menuItemPadding.top, 20)}rpx`;
|
|
164
159
|
padding = `${padding} ${this.checkValue(this.menuItemPadding.right, 20)}rpx`;
|
|
165
160
|
padding = `${padding} ${this.checkValue(this.menuItemPadding.bottom, 20)}rpx`;
|
|
166
161
|
padding = `${padding} ${this.checkValue(this.menuItemPadding.left, 20)}rpx`;
|
|
167
|
-
return
|
|
168
|
-
padding
|
|
169
|
-
})
|
|
162
|
+
return padding;
|
|
170
163
|
},
|
|
171
164
|
menuItemStyle(){
|
|
172
165
|
let styleObj = {
|
|
@@ -175,6 +168,8 @@
|
|
|
175
168
|
fontSize: this.menuTabColor['fontSize'] || '30rpx',
|
|
176
169
|
fontWeight: this.menuTabColor['fontWeight'] || 'normal',
|
|
177
170
|
borderWidth: this.menuBorderWidth + 'px',
|
|
171
|
+
padding: this.menuItemBoxPadding,
|
|
172
|
+
marginRight: this.menuItemMargin + 'rpx',
|
|
178
173
|
}
|
|
179
174
|
|
|
180
175
|
return this.styleObjectToString(styleObj)
|
|
@@ -193,7 +188,9 @@
|
|
|
193
188
|
background: this.menuTabColor['actBgColor'] || 'transparent',
|
|
194
189
|
fontSize: this.menuTabColor['actFontSize'] || '30rpx',
|
|
195
190
|
fontWeight: this.menuTabColor['actFontWeight'] || 'normal',
|
|
196
|
-
borderBottom: `${this.menuBorderWidth}px solid ${this.menuTabColor['actColor'] || defaultTextColor}
|
|
191
|
+
borderBottom: `${this.menuBorderWidth}px solid ${this.menuTabColor['actColor'] || defaultTextColor}`,
|
|
192
|
+
padding: this.menuItemBoxPadding,
|
|
193
|
+
marginRight: this.menuItemMargin + 'rpx',
|
|
197
194
|
}
|
|
198
195
|
return this.styleObjectToString(styleActiveObj)
|
|
199
196
|
},
|
|
@@ -226,6 +223,7 @@
|
|
|
226
223
|
},
|
|
227
224
|
},
|
|
228
225
|
created() {
|
|
226
|
+
if(this.$configProject['isPreview']) this.keyword = '商品'
|
|
229
227
|
this.emitParent = new EmitParent({
|
|
230
228
|
getParent: ()=>{
|
|
231
229
|
return this;
|
|
@@ -359,6 +357,10 @@
|
|
|
359
357
|
overflow: auto;
|
|
360
358
|
.menu_item{
|
|
361
359
|
white-space: nowrap;
|
|
360
|
+
|
|
361
|
+
.isLast{
|
|
362
|
+
margin-right: 0;
|
|
363
|
+
}
|
|
362
364
|
}
|
|
363
365
|
}
|
|
364
366
|
}
|
|
@@ -7,8 +7,7 @@ module.exports = {
|
|
|
7
7
|
tab: "1@product@Y@2",
|
|
8
8
|
type: "product",
|
|
9
9
|
name: "蛋糕",
|
|
10
|
-
detail_redirect_data:
|
|
11
|
-
'{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/mall\\/detail","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/mall\\/detail","frontPath":"\\/market\\/main\\/mall\\/detail","fixed_business_code":""}',
|
|
10
|
+
detail_redirect_data: '{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/mall\\/detail","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/mall\\/detail","frontPath":"\\/market\\/main\\/mall\\/detail","fixed_business_code":""}',
|
|
12
11
|
detail1_redirect_data: "",
|
|
13
12
|
more_redirect_data: "",
|
|
14
13
|
sort: 3,
|
|
@@ -37,7 +36,7 @@ module.exports = {
|
|
|
37
36
|
market_price: 2600,
|
|
38
37
|
market_tags: ['flashsale','hot','new', 'rec'],
|
|
39
38
|
product_id: 60029756,
|
|
40
|
-
product_name: "
|
|
39
|
+
product_name: "清代戏剧文化史论/北京大学明清研究丛书商品",
|
|
41
40
|
product_type: "good",
|
|
42
41
|
promo_price: 0,
|
|
43
42
|
sale_num: 0,
|
|
@@ -49,11 +48,11 @@ module.exports = {
|
|
|
49
48
|
{
|
|
50
49
|
brand_id: 30000,
|
|
51
50
|
brand_name: "其他",
|
|
52
|
-
list_title: "亚洲的崛起(傅骊元文集)
|
|
51
|
+
list_title: "亚洲的崛起(傅骊元文集)/北京大学经济学院教授文库商品",
|
|
53
52
|
market_price: 5000,
|
|
54
53
|
market_tags: [],
|
|
55
54
|
product_id: 60030080,
|
|
56
|
-
product_name: "亚洲的崛起(傅骊元文集)
|
|
55
|
+
product_name: "亚洲的崛起(傅骊元文集)/北京大学经济学院教授文库商品",
|
|
57
56
|
product_type: "good",
|
|
58
57
|
promo_price: 0,
|
|
59
58
|
sale_num: 0,
|
|
@@ -65,13 +64,11 @@ module.exports = {
|
|
|
65
64
|
{
|
|
66
65
|
brand_id: 30000,
|
|
67
66
|
brand_name: "其他",
|
|
68
|
-
list_title:
|
|
69
|
-
"保险.社会保障与经济改革(孙祁祥文集)/北京大学经济学院教授文库",
|
|
67
|
+
list_title: "保险.社会保障与经济改革(孙祁祥文集)/北京大商品学经济学院教授文库",
|
|
70
68
|
market_price: 5200,
|
|
71
69
|
market_tags: [],
|
|
72
70
|
product_id: 60030078,
|
|
73
|
-
product_name:
|
|
74
|
-
"保险.社会保障与经济改革(孙祁祥文集)/北京大学经济学院教授文库",
|
|
71
|
+
product_name: "保险.社会保障与经济改革(孙祁祥文集)/北京大商品学经济学院教授文库",
|
|
75
72
|
product_type: "good",
|
|
76
73
|
promo_price: 0,
|
|
77
74
|
sale_num: 0,
|
|
@@ -86,10 +83,8 @@ module.exports = {
|
|
|
86
83
|
tab: "5@shop@N@1",
|
|
87
84
|
type: "shop",
|
|
88
85
|
name: "门店",
|
|
89
|
-
detail_redirect_data:
|
|
90
|
-
|
|
91
|
-
detail1_redirect_data:
|
|
92
|
-
'{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/cashier\\/index","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/cashier\\/index","frontPath":"\\/market\\/main\\/cashier\\/index","fixed_business_code":""}',
|
|
86
|
+
detail_redirect_data: '{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/cake\\/storedetail","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/cake\\/storedetail","frontPath":"\\/market\\/main\\/cake\\/storedetail","fixed_business_code":""}',
|
|
87
|
+
detail1_redirect_data: '{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/cashier\\/index","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/cashier\\/index","frontPath":"\\/market\\/main\\/cashier\\/index","fixed_business_code":""}',
|
|
93
88
|
more_redirect_data: "",
|
|
94
89
|
sort: 4,
|
|
95
90
|
setting_id: 5,
|
|
@@ -97,7 +92,7 @@ module.exports = {
|
|
|
97
92
|
items: [
|
|
98
93
|
{
|
|
99
94
|
brand_id: 20003,
|
|
100
|
-
brand_name: "
|
|
95
|
+
brand_name: "幸福西饼商品",
|
|
101
96
|
brand_type: "MA",
|
|
102
97
|
business_status: "1",
|
|
103
98
|
consume_mode: ["STOD", "CODE", "SELL", "SELF"],
|
|
@@ -110,11 +105,9 @@ module.exports = {
|
|
|
110
105
|
area_name: "",
|
|
111
106
|
street_name: "",
|
|
112
107
|
phone: "18843854566",
|
|
113
|
-
resource_shop_id:
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
shop_icon:
|
|
117
|
-
"https://jfbcake.oss-cn-beijing.aliyuncs.com/uploads/20220629/dda58a5983eeae3cfdea8bccc7cea714.jpg",
|
|
108
|
+
resource_shop_id: "eyJyZXNvdXJjZV9zaG9wX2lkIjozMTg1NDY4LCJzaG9wX2lkIjo1MjY0OH0",
|
|
109
|
+
resource_shop_name: "福司商品令渠道门店",
|
|
110
|
+
shop_icon: "https://jfbcake.oss-cn-beijing.aliyuncs.com/uploads/20220629/dda58a5983eeae3cfdea8bccc7cea714.jpg",
|
|
118
111
|
shop_id: 52648,
|
|
119
112
|
shop_tags: [],
|
|
120
113
|
stars: 0,
|
|
@@ -138,11 +131,9 @@ module.exports = {
|
|
|
138
131
|
area_name: "",
|
|
139
132
|
street_name: "",
|
|
140
133
|
phone: "18843854566",
|
|
141
|
-
resource_shop_id:
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
shop_icon:
|
|
145
|
-
"https://jfbcake.oss-cn-beijing.aliyuncs.com/uploads/20220629/dda58a5983eeae3cfdea8bccc7cea714.jpg",
|
|
134
|
+
resource_shop_id: "eyJyZXNvdXJjZV9zaG9wX2lkIjozMTg1NDY4LCJzaG9wX2lkqewqweH0",
|
|
135
|
+
resource_shop_name: "福司令商品渠道门店",
|
|
136
|
+
shop_icon: "https://jfbcake.oss-cn-beijing.aliyuncs.com/uploads/20220629/dda58a5983eeae3cfdea8bccc7cea714.jpg",
|
|
146
137
|
shop_id: 526428,
|
|
147
138
|
shop_tags: [],
|
|
148
139
|
stars: 0,
|
|
@@ -157,10 +148,8 @@ module.exports = {
|
|
|
157
148
|
tab: "10@cinema@Y@1",
|
|
158
149
|
type: "cinema",
|
|
159
150
|
name: "影院",
|
|
160
|
-
detail_redirect_data:
|
|
161
|
-
|
|
162
|
-
detail1_redirect_data:
|
|
163
|
-
'{"dir":"apply06","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/movie\\/cdetailnew","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/apply06\\/main\\/movie\\/cdetailnew","frontPath":"\\/apply06\\/main\\/movie\\/cdetailnew","fixed_business_code":""}',
|
|
151
|
+
detail_redirect_data: '{"dir":"apply06","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/movie\\/suhedule","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/apply06\\/main\\/movie\\/suhedule","frontPath":"\\/apply06\\/main\\/movie\\/suhedule","fixed_business_code":""}',
|
|
152
|
+
detail1_redirect_data: '{"dir":"apply06","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/movie\\/cdetailnew","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/apply06\\/main\\/movie\\/cdetailnew","frontPath":"\\/apply06\\/main\\/movie\\/cdetailnew","fixed_business_code":""}',
|
|
164
153
|
more_redirect_data: "",
|
|
165
154
|
sort: 1,
|
|
166
155
|
setting_id: 10,
|
|
@@ -171,7 +160,7 @@ module.exports = {
|
|
|
171
160
|
brand_id: 16,
|
|
172
161
|
brand_name: "万达院线jls",
|
|
173
162
|
cinema_id: 8000121,
|
|
174
|
-
cinema_name: "电影门店jls-20231204
|
|
163
|
+
cinema_name: "电影门店jls-20231204(新建)商品北京",
|
|
175
164
|
cinema_type: ["SELL", "CODE"],
|
|
176
165
|
cinema_type_name: ["线下核销", "电子码"],
|
|
177
166
|
distance: "21.9km",
|
|
@@ -184,14 +173,12 @@ module.exports = {
|
|
|
184
173
|
brand_id: 16,
|
|
185
174
|
brand_name: "万达院线jls",
|
|
186
175
|
cinema_id: 7,
|
|
187
|
-
cinema_name:
|
|
188
|
-
"聚福宝测试影院聚福宝测试影院聚福宝测试影院聚福宝测试影院",
|
|
176
|
+
cinema_name: "聚福宝影院商品",
|
|
189
177
|
cinema_type: ["SEAT", "SELL"],
|
|
190
178
|
cinema_type_name: ["在线选座", "线下核销"],
|
|
191
179
|
distance: "20.8km",
|
|
192
180
|
is_open: "Y",
|
|
193
|
-
shop_icon:
|
|
194
|
-
"https://jfbcake.oss-cn-beijing.aliyuncs.com/uploads/20221018/5c1f49a47055a452ac6c5a3efd9d5174.jpg"
|
|
181
|
+
shop_icon: "https://jfbcake.oss-cn-beijing.aliyuncs.com/uploads/20221018/5c1f49a47055a452ac6c5a3efd9d5174.jpg"
|
|
195
182
|
}
|
|
196
183
|
]
|
|
197
184
|
},
|
|
@@ -199,10 +186,8 @@ module.exports = {
|
|
|
199
186
|
tab: "11@film@Y@1",
|
|
200
187
|
type: "film",
|
|
201
188
|
name: "影片",
|
|
202
|
-
detail_redirect_data:
|
|
203
|
-
|
|
204
|
-
detail1_redirect_data:
|
|
205
|
-
'{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/movie\\/detail","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/movie\\/detail","frontPath":"\\/market\\/main\\/movie\\/detail","fixed_business_code":""}',
|
|
189
|
+
detail_redirect_data: '{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/movie\\/choose","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/movie\\/choose","frontPath":"\\/market\\/main\\/movie\\/choose","fixed_business_code":""}',
|
|
190
|
+
detail1_redirect_data: '{"dir":"market","host":"sandbox-website-05.jufubao.cn","path":"\\/main\\/movie\\/detail","appType":"h5","site_id":"17928cc37788be02","site_url":"https:\\/\\/sandbox-website-05.jufubao.cn\\/market\\/main\\/movie\\/detail","frontPath":"\\/market\\/main\\/movie\\/detail","fixed_business_code":""}',
|
|
206
191
|
more_redirect_data: "",
|
|
207
192
|
sort: 2,
|
|
208
193
|
setting_id: 11,
|
|
@@ -213,13 +198,11 @@ module.exports = {
|
|
|
213
198
|
director: "",
|
|
214
199
|
is_can_buy: false,
|
|
215
200
|
language: "汉语普通话",
|
|
216
|
-
leading_role:
|
|
217
|
-
"费翔,李雪健,黄渤,于适,陈牧驰,娜然,此沙,武亚凡,夏雨,袁泉,王洛勇,侯雯元,黄曦彦,李昀锐,杨玏,陈坤",
|
|
201
|
+
leading_role: "费翔,李雪健,黄渤,于适,陈牧驰,娜然,此沙,武亚凡,夏雨,袁泉,王洛勇,侯雯元,黄曦彦,李昀锐,杨玏,陈坤",
|
|
218
202
|
open_time: 1689782400,
|
|
219
|
-
poster:
|
|
220
|
-
"https://gw.alicdn.com/tfscom/i1/O1CN01w8TjZl1xzSq3CothJ_!!6000000006514-0-alipicbeacon.jpg_320x320.jpg",
|
|
203
|
+
poster: "https://gw.alicdn.com/tfscom/i1/O1CN01w8TjZl1xzSq3CothJ_!!6000000006514-0-alipicbeacon.jpg_320x320.jpg",
|
|
221
204
|
remark: "9.1分",
|
|
222
|
-
show_name: "
|
|
205
|
+
show_name: "封神商品第一部",
|
|
223
206
|
type: "剧情,奇幻"
|
|
224
207
|
},
|
|
225
208
|
{
|
|
@@ -227,13 +210,11 @@ module.exports = {
|
|
|
227
210
|
director: "",
|
|
228
211
|
is_can_buy: false,
|
|
229
212
|
language: "汉语普通话",
|
|
230
|
-
leading_role:
|
|
231
|
-
"费翔,李雪健,黄渤,于适,陈牧驰,娜然,此沙,武亚凡,夏雨,袁泉,王洛勇,侯雯元,黄曦彦,李昀锐,杨玏,陈坤",
|
|
213
|
+
leading_role: "费翔,李雪健,黄渤,于适,陈牧驰,娜然,此沙,武亚凡,夏雨,袁泉,王洛勇,侯雯元,黄曦彦,李昀锐,杨玏,陈坤",
|
|
232
214
|
open_time: 1689782400,
|
|
233
|
-
poster:
|
|
234
|
-
"https://gw.alicdn.com/tfscom/i1/O1CN01w8TjZl1xzSq3CothJ_!!6000000006514-0-alipicbeacon.jpg_320x320.jpg",
|
|
215
|
+
poster: "https://gw.alicdn.com/tfscom/i1/O1CN01w8TjZl1xzSq3CothJ_!!6000000006514-0-alipicbeacon.jpg_320x320.jpg",
|
|
235
216
|
remark: "9.1分",
|
|
236
|
-
show_name: "
|
|
217
|
+
show_name: "封神商品第二部",
|
|
237
218
|
type: "剧情,奇幻"
|
|
238
219
|
}
|
|
239
220
|
]
|