jufubao-base 1.0.169-beta2 → 1.0.169-beta21
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/JfbBaseHeader/JfbBaseHeader.vue +2 -2
- package/src/components/JfbBaseLogin/Attr.js +54 -16
- package/src/components/JfbBaseLogin/JfbBaseLogin.vue +3 -1
- package/src/components/JfbBaseMapSearch/MapSearchMp.vue +1 -1
- package/src/components/JfbBaseNotice/JfbBaseNotice.vue +2 -2
- package/src/components/JfbBaseOrderDetail/Api.js +12 -7
- package/src/components/JfbBaseOrderDetail/Attr.js +28 -14
- package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +68 -18
- package/src/components/JfbBaseOrderDetail/Mock.js +3 -1
- package/src/components/JfbBaseTfkCardBind/Api.js +49 -30
- package/src/components/JfbBaseTfkCardBind/Attr.js +139 -15
- package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBind.vue +234 -20
- package/src/components/JfbBaseTfkCardBind/Mock.js +19 -9
- package/src/components/JfbBaseTfkCardDetail/Api.js +11 -0
- package/src/components/JfbBaseTfkCardDetail/Attr.js +158 -7
- package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetail.vue +159 -17
- package/src/components/JfbBaseTfkCardLogin/Attr.js +490 -4
- package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLogin.vue +394 -107
- package/src/components/JfbBaseTfkCardLogin/Mock.js +6 -536
- package/src/components/JfbBaseTfkCardLogin/XdCouponItem.vue +75 -19
- package/src/components/JfbBaseTfkCardLogin/XdNotice.vue +550 -0
- package/src/components/JfbBaseTfkSearch/AllList.vue +337 -0
- package/src/components/JfbBaseTfkSearch/Api.js +11 -42
- package/src/components/JfbBaseTfkSearch/Attr.js +344 -32
- package/src/components/JfbBaseTfkSearch/ContentCinema.vue +157 -0
- package/src/components/JfbBaseTfkSearch/ContentFilm.vue +218 -0
- package/src/components/JfbBaseTfkSearch/ContentProduct.vue +317 -0
- package/src/components/JfbBaseTfkSearch/ContentShop.vue +186 -0
- package/src/components/JfbBaseTfkSearch/CusAttr.js +213 -0
- package/src/components/JfbBaseTfkSearch/CustomList.vue +453 -0
- package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +286 -35
- package/src/components/JfbBaseTfkSearch/Mock.js +242 -11
- package/src/components/JfbBaseTfkSearch/SkeletonCinema.vue +45 -0
- package/src/components/JfbBaseTfkSearch/SkeletonFilm.vue +109 -0
- package/src/components/JfbBaseTfkSearch/SkeletonProduct.vue +246 -0
- package/src/components/JfbBaseTfkSearch/SkeletonShop.vue +81 -0
- package/src/components/JfbBaseTfkSearch/handleKeyword.js +24 -0
- package/src/components/JfbBaseTfkSearch/listMixins.js +187 -0
- package/src/mixins/colorCardMixins.js +71 -9
- package/src/mixins/componentsMixins.js +376 -23
- package/src/mixins/posterMixins.js +122 -0
|
@@ -1,33 +1,61 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<view class="xd-coupon_item" :style="couponItemBoxStyle"
|
|
2
|
+
<view class="xd-coupon_item" :style="couponItemBoxStyle"
|
|
3
|
+
@click="toDetail">
|
|
3
4
|
<view class="coupon_left" :style="{
|
|
4
5
|
background: couponLeftBgColor
|
|
5
6
|
}">
|
|
6
|
-
<view class="_point">
|
|
7
|
-
|
|
7
|
+
<view class="_point">
|
|
8
|
+
<xd-unit
|
|
9
|
+
:unitFontSize="24"
|
|
10
|
+
:fontSize="48"
|
|
11
|
+
:price="item.card_point"
|
|
12
|
+
:isOld="false"
|
|
13
|
+
:unit="item.unit || ''"
|
|
14
|
+
:colorNew="'#ffffff'"
|
|
15
|
+
></xd-unit>
|
|
16
|
+
<!-- <text style="font-size: 24rpx;">{{ item.unit }}</text> -->
|
|
17
|
+
</view>
|
|
18
|
+
<view class="_rule">{{ item.show_name }}</view>
|
|
8
19
|
</view>
|
|
9
20
|
<view class="coupon_right" :style="couponRightItemBoxStyle">
|
|
10
21
|
<view class="cont_top" :style="{
|
|
11
22
|
background: couponTitleBgColor
|
|
12
|
-
}"
|
|
23
|
+
}">{{ item.card_type_name }}</view>
|
|
13
24
|
<view class="cont_main">
|
|
14
|
-
<view class="cou_number">券号:
|
|
15
|
-
<view class="cou_time">有效期:
|
|
16
|
-
<view class="cou_point"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
25
|
+
<view class="cou_number">券号:{{ item.card_number }}</view>
|
|
26
|
+
<view class="cou_time">有效期:{{ item.end_time }}</view>
|
|
27
|
+
<view class="cou_point">
|
|
28
|
+
余额:
|
|
29
|
+
<xd-unit
|
|
30
|
+
:unitFontSize="24"
|
|
31
|
+
:fontSize="28"
|
|
32
|
+
:price="item.card_point"
|
|
33
|
+
:isOld="false"
|
|
34
|
+
:unit="item.unit || ''"
|
|
35
|
+
:colorNew="'#333333'"
|
|
36
|
+
></xd-unit>
|
|
37
|
+
</view>
|
|
38
|
+
<view class="cou_btn"
|
|
39
|
+
:style="[
|
|
40
|
+
item.is_login === 'Y' ? couponBtnActiveStyle : couponBtnStyle,
|
|
41
|
+
{
|
|
42
|
+
padding: couponBtnPadding,
|
|
43
|
+
borderRadius: couponBtnRadius + 'rpx'
|
|
44
|
+
}
|
|
45
|
+
]"
|
|
46
|
+
@click.stop="goToUseCoupon"
|
|
47
|
+
>{{item.is_login === 'Y' ? '已登录' : '去使用'}}</view>
|
|
21
48
|
</view>
|
|
22
49
|
<view class="cont_bottom">
|
|
23
|
-
<view class="switch_rule">
|
|
50
|
+
<view class="switch_rule" @click.stop="switchRule">
|
|
24
51
|
<view>使用规则</view>
|
|
25
52
|
<view>
|
|
26
|
-
<xd-font-icon icon="iconxia_down" size="24"></xd-font-icon>
|
|
53
|
+
<xd-font-icon v-if="!expand" icon="iconxia_down" size="24"></xd-font-icon>
|
|
54
|
+
<xd-font-icon v-else icon="iconshang_up" size="24"></xd-font-icon>
|
|
27
55
|
</view>
|
|
28
56
|
</view>
|
|
29
|
-
<view class="expand_rule">
|
|
30
|
-
|
|
57
|
+
<view v-if="expand" class="expand_rule">
|
|
58
|
+
{{ item.card_use_rule }}
|
|
31
59
|
</view>
|
|
32
60
|
</view>
|
|
33
61
|
</view>
|
|
@@ -35,13 +63,18 @@
|
|
|
35
63
|
</template>
|
|
36
64
|
<script>
|
|
37
65
|
import getServiceUrl from '@/common/getServiceUrl'
|
|
66
|
+
import XdUnit from "@/components/XdUnit/XdUnit";
|
|
38
67
|
import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
|
|
39
68
|
export default{
|
|
40
69
|
name: "XdCouponItem",
|
|
41
70
|
components: {
|
|
42
|
-
XdFontIcon
|
|
71
|
+
XdFontIcon,
|
|
72
|
+
XdUnit
|
|
43
73
|
},
|
|
44
74
|
props: {
|
|
75
|
+
item:{
|
|
76
|
+
type: Object,
|
|
77
|
+
},
|
|
45
78
|
couponRadius: {
|
|
46
79
|
type: String,
|
|
47
80
|
default: "16"
|
|
@@ -86,7 +119,7 @@
|
|
|
86
119
|
},
|
|
87
120
|
data() {
|
|
88
121
|
return {
|
|
89
|
-
|
|
122
|
+
expand: false,
|
|
90
123
|
}
|
|
91
124
|
},
|
|
92
125
|
computed: {
|
|
@@ -111,11 +144,19 @@
|
|
|
111
144
|
}
|
|
112
145
|
return this.styleObjectToString(styleObj)
|
|
113
146
|
},
|
|
147
|
+
couponBtnActiveStyle(){
|
|
148
|
+
return this.styleObjectToString({
|
|
149
|
+
color: this.couponBtnTextStyle['actColor'] || '#fff',
|
|
150
|
+
background: this.couponBtnTextStyle['actBgColor'] || '#ff5722',
|
|
151
|
+
fontSize: this.couponBtnTextStyle['actFontSize'] || '30rpx',
|
|
152
|
+
fontWeight: this.couponBtnTextStyle['actFontWeight'] || 'normal',
|
|
153
|
+
})
|
|
154
|
+
},
|
|
114
155
|
couponRightItemBoxStyle(){
|
|
115
156
|
let image = {};
|
|
116
|
-
if(this.
|
|
157
|
+
if(this.couponImageUrl) image = {
|
|
117
158
|
backgroundImage: `url(${this.getCouponBgImage})`,
|
|
118
|
-
backgroundSize: '
|
|
159
|
+
backgroundSize: 'cover',
|
|
119
160
|
backgroundRepeat: 'no-repeat',
|
|
120
161
|
}
|
|
121
162
|
return this.styleObjectToString(image)
|
|
@@ -133,6 +174,15 @@
|
|
|
133
174
|
},
|
|
134
175
|
},
|
|
135
176
|
methods: {
|
|
177
|
+
switchRule(){
|
|
178
|
+
this.expand = !this.expand;
|
|
179
|
+
},
|
|
180
|
+
toDetail(){
|
|
181
|
+
this.$emit('toDetail', this.item);
|
|
182
|
+
},
|
|
183
|
+
goToUseCoupon(){
|
|
184
|
+
this.$emit('useCoupon', this.item);
|
|
185
|
+
},
|
|
136
186
|
checkValue(value, dValue = 0){
|
|
137
187
|
if(value === undefined || value === '' || value === null) return dValue;
|
|
138
188
|
return Number(value || 0);
|
|
@@ -177,6 +227,7 @@
|
|
|
177
227
|
.cont_main{
|
|
178
228
|
position: relative;
|
|
179
229
|
padding: 28rpx 20rpx 28rpx 40rpx;
|
|
230
|
+
color: #333333;
|
|
180
231
|
.cou_number{
|
|
181
232
|
font-size: 32rpx;
|
|
182
233
|
font-weight: bold;
|
|
@@ -187,6 +238,8 @@
|
|
|
187
238
|
}
|
|
188
239
|
.cou_point{
|
|
189
240
|
font-size: 28rpx;
|
|
241
|
+
display: flex;
|
|
242
|
+
align-items: center;
|
|
190
243
|
}
|
|
191
244
|
.cou_btn{
|
|
192
245
|
position: absolute;
|
|
@@ -204,10 +257,13 @@
|
|
|
204
257
|
align-items: center;
|
|
205
258
|
justify-content: space-between;
|
|
206
259
|
padding: 12rpx 40rpx;
|
|
260
|
+
font-size: 24rpx;
|
|
261
|
+
color: #666666;
|
|
207
262
|
}
|
|
208
263
|
.expand_rule{
|
|
209
264
|
padding: 12rpx 40rpx;
|
|
210
265
|
font-size: 20rpx;
|
|
266
|
+
color: #333333;
|
|
211
267
|
overflow: hidden;
|
|
212
268
|
white-space: nowrap;
|
|
213
269
|
text-overflow: ellipsis;
|