jufubao-movie 1.0.39-beta2 → 1.0.39-beta4
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/JfbMovieLineLineSeat/Attr.js +11 -0
- package/src/components/JfbMovieLineLineSeat/JfbMovieLineLineSeat.vue +74 -11
- package/src/components/JfbMovieLineLineSeat/XdOnlineSeat.vue +37 -27
- package/src/components/JfbMovieLineLineSeat/XdOnlineSeatMove.vue +7 -8
package/package.json
CHANGED
|
@@ -4,6 +4,17 @@ export default {
|
|
|
4
4
|
style: [],
|
|
5
5
|
advanced: [],
|
|
6
6
|
content: [
|
|
7
|
+
{
|
|
8
|
+
label: '是否显示影院名称:',
|
|
9
|
+
ele: 'xd-radio',
|
|
10
|
+
valueKey: 'isShowTitle',
|
|
11
|
+
value: 'Y',
|
|
12
|
+
groupKey:'content',
|
|
13
|
+
list: [
|
|
14
|
+
{label: '是', value: 'Y'},
|
|
15
|
+
{label: '否', value: 'N'},
|
|
16
|
+
]
|
|
17
|
+
},
|
|
7
18
|
{
|
|
8
19
|
label: '订单确认路径:',
|
|
9
20
|
ele: 'xd-select-pages-path',
|
|
@@ -18,14 +18,23 @@
|
|
|
18
18
|
<!-- #endif -->
|
|
19
19
|
<view class="jfb-movie-line-line-seat__body">
|
|
20
20
|
<view v-if="loadingList" class="skeleton-wrap">
|
|
21
|
-
<view class="seat_head">
|
|
21
|
+
<view class="seat_head" v-if="isShowTitle === 'Y'">
|
|
22
22
|
<view></view>
|
|
23
23
|
<view></view>
|
|
24
24
|
</view>
|
|
25
|
-
<view class="
|
|
26
|
-
<view
|
|
27
|
-
|
|
25
|
+
<view class="seat_tips">
|
|
26
|
+
<view></view>
|
|
27
|
+
<view></view>
|
|
28
|
+
<view></view>
|
|
29
|
+
<view></view>
|
|
30
|
+
<view></view>
|
|
31
|
+
</view>
|
|
32
|
+
<view class="seat_body" :class="{Y:this.isShowTitle ==='Y', 'N': isShowTitle ==='N'}">
|
|
33
|
+
<view class="seat_line" v-for="i in yItem" :key="i">
|
|
34
|
+
<view class="seat_item" v-for="ii in xItem" :key="ii"></view>
|
|
28
35
|
</view>
|
|
36
|
+
<view v-if="isShowTitle === 'Y'" class="line-Y"></view>
|
|
37
|
+
<view v-else class="line-N"></view>
|
|
29
38
|
</view>
|
|
30
39
|
<view class="seat_notice"></view>
|
|
31
40
|
<view class="seat_foot">
|
|
@@ -37,6 +46,7 @@
|
|
|
37
46
|
<xd-online-seat
|
|
38
47
|
v-if="filmId"
|
|
39
48
|
ref="xdOnlineSeat"
|
|
49
|
+
:is-show-title="isShowTitle"
|
|
40
50
|
:key="cinemaSeatKey"
|
|
41
51
|
:is-old="false"
|
|
42
52
|
:film-id="filmId"
|
|
@@ -84,8 +94,11 @@
|
|
|
84
94
|
//面板
|
|
85
95
|
payPath: "", //三方支付路径
|
|
86
96
|
moviePayPath: "", //订单确认路径
|
|
97
|
+
isShowTitle:'Y',//是否显示影院名称
|
|
87
98
|
timer: null,
|
|
88
99
|
time: 0,
|
|
100
|
+
xItem: 10,
|
|
101
|
+
yItem: 7,
|
|
89
102
|
}
|
|
90
103
|
},
|
|
91
104
|
watch: {
|
|
@@ -98,6 +111,7 @@
|
|
|
98
111
|
this.init(this.container);
|
|
99
112
|
let systemInfo = uni.getSystemInfoSync();
|
|
100
113
|
getApp().globalData.$systemInfo = systemInfo;
|
|
114
|
+
|
|
101
115
|
},
|
|
102
116
|
methods: {
|
|
103
117
|
onJfbLoad(options) {
|
|
@@ -152,7 +166,10 @@
|
|
|
152
166
|
*/
|
|
153
167
|
init(container) {
|
|
154
168
|
this.moviePayPath = getContainerPropsValue(container, 'content.movie_pay_path', {value: ""}).value;
|
|
155
|
-
this.payPath = getContainerPropsValue(container, "content.payPath", {value: "
|
|
169
|
+
this.payPath = getContainerPropsValue(container, "content.payPath", {value: ""}).value;
|
|
170
|
+
this.isShowTitle = getContainerPropsValue(container, "content.isShowTitle", 'Y');
|
|
171
|
+
if(this.isShowTitle === 'Y') this.yItem = 7;
|
|
172
|
+
else this.yItem = 10;
|
|
156
173
|
},
|
|
157
174
|
handleGetFilm(resolve) {
|
|
158
175
|
// console.log('11111', paiqi.result);
|
|
@@ -326,29 +343,75 @@
|
|
|
326
343
|
|
|
327
344
|
.jfb-movie-line-line-seat {
|
|
328
345
|
&__body {
|
|
346
|
+
background-color: #f8f8f8;
|
|
329
347
|
.skeleton-wrap{
|
|
330
348
|
height: 100vh;
|
|
349
|
+
|
|
331
350
|
.seat_head{
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
margin
|
|
351
|
+
border-radius: 24rpx;
|
|
352
|
+
overflow: hidden;
|
|
353
|
+
margin: 20rpx 20rpx 5rpx;
|
|
354
|
+
box-shadow: 0 4rpx 40rpx rgba(0, 0, 0, 0.2);
|
|
355
|
+
position: relative;
|
|
356
|
+
padding: unit(20, rpx) unit(30, rpx);
|
|
357
|
+
|
|
335
358
|
& > view:first-child{
|
|
336
|
-
.skeleton-item(
|
|
359
|
+
.skeleton-item(80%, 36rpx);
|
|
360
|
+
padding-bottom: 15rpx;
|
|
337
361
|
}
|
|
338
362
|
& > view:last-child{
|
|
339
363
|
.skeleton-item(100%, 30rpx);
|
|
340
364
|
margin-top: 10rpx;
|
|
341
365
|
}
|
|
342
366
|
}
|
|
367
|
+
.seat_tips {
|
|
368
|
+
display: flex;
|
|
369
|
+
justify-content: center;
|
|
370
|
+
align-items: center;
|
|
371
|
+
padding-top: 50rpx;
|
|
372
|
+
& > view {
|
|
373
|
+
.skeleton-item(80rpx, 40rpx);
|
|
374
|
+
|
|
375
|
+
margin-right: 20rpx;
|
|
376
|
+
& >view:last-child{
|
|
377
|
+
margin-right: 0;
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
}
|
|
343
381
|
.seat_body{
|
|
344
|
-
|
|
382
|
+
position: relative;
|
|
383
|
+
|
|
384
|
+
& .line-N {
|
|
385
|
+
position: absolute;
|
|
386
|
+
left:20rpx;
|
|
387
|
+
top:40rpx;
|
|
388
|
+
.skeleton-item(25rpx, 580rpx);
|
|
389
|
+
}
|
|
390
|
+
& .line-Y {
|
|
391
|
+
position: absolute;
|
|
392
|
+
left:20rpx;
|
|
393
|
+
top:40rpx;
|
|
394
|
+
.skeleton-item(25rpx, 400rpx);
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
&.Y {
|
|
398
|
+
.skeleton-item(100%, 500rpx, 0, #FEFEFE);
|
|
399
|
+
}
|
|
400
|
+
&.N {
|
|
401
|
+
.skeleton-item(100%, 700rpx, 0, #FEFEFE);
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
|
|
345
406
|
padding: 20rpx 100rpx;
|
|
346
407
|
box-sizing: border-box;
|
|
347
408
|
.seat_line{
|
|
348
409
|
display: flex;
|
|
349
410
|
margin: 20rpx;
|
|
350
411
|
.seat_item{
|
|
351
|
-
|
|
412
|
+
margin: 0 6rpx;
|
|
413
|
+
.skeleton-item(40rpx, 40rpx);
|
|
414
|
+
border-radius: 10rpx;
|
|
352
415
|
}
|
|
353
416
|
}
|
|
354
417
|
}
|
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<view class="xd-seat" v-if="paiqiStatus">
|
|
3
|
+
<view class="float"></view>
|
|
3
4
|
<view
|
|
4
5
|
class="xd-seat__title"
|
|
5
|
-
v-if="filmInfo"
|
|
6
|
+
v-if="isShowTitle === 'Y' && filmInfo"
|
|
6
7
|
id="xd-seat__title"
|
|
7
8
|
:style="{ borderTopColor: styleMainColor }"
|
|
8
9
|
>
|
|
9
|
-
<view class="xd-seat__title-name">{{ filmInfo["
|
|
10
|
-
<view class="xd-seat__title-address">{{cinemaInfo["
|
|
11
|
-
<view class="xd-seat__title-back" v-if="show" @click.stop="back">
|
|
12
|
-
<xd-font-icon
|
|
13
|
-
icon="iconzhiyuanfanhui12"
|
|
14
|
-
width="50"
|
|
15
|
-
height="50"
|
|
16
|
-
size="50"
|
|
17
|
-
></xd-font-icon>
|
|
18
|
-
</view>
|
|
10
|
+
<view class="xd-seat__title-name" :style="{marginBottom:cinemaInfo['cinema_address']?'15rpx':0 }">{{ filmInfo["cinema_name"] }}</view>
|
|
11
|
+
<view class="xd-seat__title-address" v-if="cinemaInfo['cinema_address']">{{cinemaInfo["cinema_address"] }}</view>
|
|
19
12
|
</view>
|
|
20
13
|
<view class="xd-seat__content" v-if="height !== null" :style="getHeight">
|
|
21
14
|
<xd-online-seat-move
|
|
@@ -38,9 +31,7 @@
|
|
|
38
31
|
showIcon
|
|
39
32
|
>
|
|
40
33
|
<view
|
|
41
|
-
style="
|
|
42
|
-
padding: 10rpx 0rpx 10rpx 20rpx;
|
|
43
|
-
"
|
|
34
|
+
style="padding: 10rpx 0rpx 10rpx 20rpx;"
|
|
44
35
|
v-for="(item, index) in noticeList"
|
|
45
36
|
:key="index"
|
|
46
37
|
>{{ item }}</view>
|
|
@@ -225,6 +216,10 @@ export default {
|
|
|
225
216
|
XdNoticeBar,
|
|
226
217
|
},
|
|
227
218
|
props: {
|
|
219
|
+
isShowTitle: {
|
|
220
|
+
type: String,
|
|
221
|
+
default:'Y'
|
|
222
|
+
},
|
|
228
223
|
isOld: {
|
|
229
224
|
type: Boolean,
|
|
230
225
|
default: true,
|
|
@@ -361,7 +356,7 @@ export default {
|
|
|
361
356
|
this.show = false;
|
|
362
357
|
// #endif
|
|
363
358
|
// #ifdef H5
|
|
364
|
-
this.show =
|
|
359
|
+
this.show = false;
|
|
365
360
|
// #endif
|
|
366
361
|
|
|
367
362
|
this.getFilm();
|
|
@@ -477,6 +472,7 @@ export default {
|
|
|
477
472
|
this.$emit("onGetFilm", (film) => {
|
|
478
473
|
this.cinemaInfo = film["cinema_data"];
|
|
479
474
|
this.filmInfo = this.getFilmInfo(film["film_data"]);
|
|
475
|
+
debugger
|
|
480
476
|
this.getScheduleList(film["paiqi_data"]);
|
|
481
477
|
console.log("getFilm", film);
|
|
482
478
|
this.paiqiStatus = true;
|
|
@@ -491,10 +487,16 @@ export default {
|
|
|
491
487
|
*/
|
|
492
488
|
setContent() {
|
|
493
489
|
this.$nextTick(() => {
|
|
490
|
+
let elxs = [];
|
|
491
|
+
if(this.isShowTitle === 'Y') elxs.push('#xd-seat__title');
|
|
492
|
+
elxs.push('#xd-seat__footer');
|
|
494
493
|
this.$xdUniHelper
|
|
495
|
-
.getWindowHeight(
|
|
494
|
+
.getWindowHeight(elxs, this)
|
|
496
495
|
.then((res) => {
|
|
497
|
-
let top =
|
|
496
|
+
let top = 0;
|
|
497
|
+
if(this.isShowTitle === 'Y') {
|
|
498
|
+
top = res["#xd-seat__title"]["height"] ;
|
|
499
|
+
}
|
|
498
500
|
let footer = res["#xd-seat__footer"]["height"];
|
|
499
501
|
console.log("getFilm", top, footer);
|
|
500
502
|
this.height = `calc(100vh - ${
|
|
@@ -648,6 +650,10 @@ export default {
|
|
|
648
650
|
</script>
|
|
649
651
|
|
|
650
652
|
<style scoped lang="less">
|
|
653
|
+
.float {
|
|
654
|
+
height: 1px;
|
|
655
|
+
width: 100%;
|
|
656
|
+
}
|
|
651
657
|
.xd-seat {
|
|
652
658
|
height: 100%;
|
|
653
659
|
overflow-y: hidden;
|
|
@@ -702,22 +708,26 @@ export default {
|
|
|
702
708
|
}
|
|
703
709
|
|
|
704
710
|
&__title {
|
|
705
|
-
border-
|
|
706
|
-
|
|
707
|
-
|
|
711
|
+
border-radius: 24rpx;
|
|
712
|
+
overflow: hidden;
|
|
713
|
+
margin: 20rpx 20rpx 5rpx;
|
|
714
|
+
box-shadow: 0 4rpx 40rpx rgba(0, 0, 0, 0.2);
|
|
708
715
|
position: relative;
|
|
709
|
-
padding: unit(20, rpx) unit(
|
|
716
|
+
padding: unit(20, rpx) unit(30, rpx);
|
|
710
717
|
z-index: 100;
|
|
711
718
|
|
|
712
719
|
&-name {
|
|
713
|
-
font-size:
|
|
720
|
+
font-size: 36rpx;
|
|
714
721
|
line-height: unit(40, rpx);
|
|
715
|
-
|
|
722
|
+
.uni-max-cut(1,40);
|
|
723
|
+
margin-bottom: 10rpx;
|
|
716
724
|
}
|
|
717
725
|
|
|
718
726
|
&-address {
|
|
719
|
-
font-size:
|
|
720
|
-
|
|
727
|
+
font-size: 28rpx;
|
|
728
|
+
line-height: unit(36, rpx);
|
|
729
|
+
.uni-max-cut(1,36);
|
|
730
|
+
color: #A6A6A6;
|
|
721
731
|
}
|
|
722
732
|
|
|
723
733
|
&-back {
|
|
@@ -847,11 +857,11 @@ export default {
|
|
|
847
857
|
&-input {
|
|
848
858
|
font-size: @xd-font-size-base;
|
|
849
859
|
background: #fff;
|
|
850
|
-
border-radius: unit(
|
|
860
|
+
border-radius: unit(30, rpx);
|
|
851
861
|
flex: 1;
|
|
852
862
|
height: unit(50, rpx);
|
|
853
863
|
line-height: unit(50, rpx);
|
|
854
|
-
padding: unit(
|
|
864
|
+
padding: unit(10,rpx) unit(25, rpx);
|
|
855
865
|
background: #f8f8f8;
|
|
856
866
|
|
|
857
867
|
// &:hover {
|
|
@@ -407,7 +407,6 @@
|
|
|
407
407
|
:style="{
|
|
408
408
|
top : seatOffsetTop + 'px',
|
|
409
409
|
width: 30 * scale + 'rpx',
|
|
410
|
-
background: styleMainColor
|
|
411
410
|
}"
|
|
412
411
|
>
|
|
413
412
|
<view
|
|
@@ -1244,21 +1243,21 @@
|
|
|
1244
1243
|
}
|
|
1245
1244
|
|
|
1246
1245
|
&__stage {
|
|
1247
|
-
background-image: url(
|
|
1246
|
+
background-image: url('https://img.jufubao.cn/common/stage.png?v1');
|
|
1248
1247
|
background-size: 100%;
|
|
1249
1248
|
background-position: top left;
|
|
1250
1249
|
background-repeat: no-repeat;
|
|
1251
|
-
color:
|
|
1250
|
+
color: #999;
|
|
1252
1251
|
width: unit(533, rpx);
|
|
1253
1252
|
height: unit(50, rpx);
|
|
1254
|
-
font-size:
|
|
1253
|
+
font-size: 20rpx;
|
|
1255
1254
|
text-align: center;
|
|
1256
1255
|
margin: unit(20, rpx) auto unit(40, rpx);
|
|
1257
1256
|
box-sizing: border-box;
|
|
1258
1257
|
|
|
1259
|
-
|
|
1258
|
+
& > text {
|
|
1260
1259
|
display: inline-block;
|
|
1261
|
-
padding: unit(
|
|
1260
|
+
padding: unit(40, rpx) 0 0;
|
|
1262
1261
|
}
|
|
1263
1262
|
}
|
|
1264
1263
|
|
|
@@ -1280,7 +1279,7 @@
|
|
|
1280
1279
|
justify-content: center;
|
|
1281
1280
|
align-content: center;
|
|
1282
1281
|
height: unit(50, rpx);
|
|
1283
|
-
padding: unit(
|
|
1282
|
+
padding: unit(20, rpx) 0 10rpx;
|
|
1284
1283
|
|
|
1285
1284
|
&-item {
|
|
1286
1285
|
font-size: @xd-font-size-base;
|
|
@@ -1344,7 +1343,7 @@
|
|
|
1344
1343
|
&__left-bar {
|
|
1345
1344
|
position: fixed;
|
|
1346
1345
|
left: unit(10, rpx);
|
|
1347
|
-
background-color:
|
|
1346
|
+
background-color: #ACADAF;
|
|
1348
1347
|
border-radius: unit(14, rpx);
|
|
1349
1348
|
overflow: hidden;
|
|
1350
1349
|
font-size: unit(20, rpx);
|