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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-movie",
3
- "version": "1.0.39-beta2",
3
+ "version": "1.0.39-beta4",
4
4
  "private": false,
5
5
  "description": "聚福宝在线选座业务组件插件包",
6
6
  "main": "index.js",
@@ -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="seat_body">
26
- <view class="seat_line" v-for="i in 7" :key="i">
27
- <view class="seat_item" v-for="ii in 10" :key="ii"></view>
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: "/system/system/pay"}).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
- box-shadow: 0 0 7px rgba(0, 0, 0, 0.2);
333
- padding: 20rpx 40rpx;
334
- margin-bottom: 20rpx;
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(300rpx);
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
- .skeleton-item(100%, 700rpx, 0, #FEFEFE);
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
- .skeleton-item(50rpx, 50rpx);
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["film_name"] }}</view>
10
- <view class="xd-seat__title-address">{{cinemaInfo["cinema_name"] }}</view>
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 = true;
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(["#xd-seat__title", "#xd-seat__footer"], this)
494
+ .getWindowHeight(elxs, this)
496
495
  .then((res) => {
497
- let top = res["#xd-seat__title"]["height"];
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-top-width: unit(4, rpx);
706
- border-top-style: solid;
707
- box-shadow: 0 0 unit(15, rpx) rgba(0, 0, 0, 0.2);
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(20, rpx);
716
+ padding: unit(20, rpx) unit(30, rpx);
710
717
  z-index: 100;
711
718
 
712
719
  &-name {
713
- font-size: @xd-font-size-lg;
720
+ font-size: 36rpx;
714
721
  line-height: unit(40, rpx);
715
- padding-bottom: unit(10, rpx);
722
+ .uni-max-cut(1,40);
723
+ margin-bottom: 10rpx;
716
724
  }
717
725
 
718
726
  &-address {
719
- font-size: @xd-font-size-sm;
720
- color: #999;
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(25, rpx);
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(20,rpx) unit(25, rpx);
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(@xd-bg-filmBg);
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: @xd-text-color;
1250
+ color: #999;
1252
1251
  width: unit(533, rpx);
1253
1252
  height: unit(50, rpx);
1254
- font-size: @xd-font-size-base;
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
- *, text {
1258
+ & > text {
1260
1259
  display: inline-block;
1261
- padding: unit(30, rpx) 0 0;
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(30, rpx) 0;
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: rgba(0, 0, 0, 0.3);
1346
+ background-color: #ACADAF;
1348
1347
  border-radius: unit(14, rpx);
1349
1348
  overflow: hidden;
1350
1349
  font-size: unit(20, rpx);