Browse Source

电影

master
nige 3 years ago
parent
commit
940c39d6a4
  1. 2
      app.js
  2. 1
      app.json
  3. 1
      pages/list/activitynew/index.js
  4. 19
      pages/list/activitynew/index.wxml
  5. 49
      pages/list/movieticket/list/cinema/index.js
  6. 6
      pages/list/movieticket/list/cinema/index.wxml
  7. 28
      pages/list/movieticket/list/seats/index.js
  8. 79
      pages/list/movieticket/list/web/index.js
  9. 3
      pages/list/movieticket/list/web/index.json
  10. 4
      pages/list/movieticket/list/web/index.wxml
  11. 1
      pages/list/movieticket/list/web/index.wxss
  12. 2
      pages/list/techan/index.wxml
  13. 2
      pages/order/coupon/index.js
  14. 2
      pages/order/hotel/index.wxml
  15. 45
      pages/order/movie/index.js
  16. 3
      pages/order/orderList/index.js
  17. 50
      pages/order/pay/index.js
  18. 20
      pages/order/pay/index.wxml
  19. 2
      pages/order/scene/index.js
  20. 1
      pages/pbService/web/index.js

2
app.js

@ -21,7 +21,7 @@ App({
unique_key: "wechatxcx"
}).then(res => {
let data = JSON.parse(res.data);
data.isTest = data.isTest72? true : false;
data.isTest = data.isTest73? true : false;
this.globalData.configJson = data
}).then(() => {
// 获取ui配置文件

1
app.json

@ -104,6 +104,7 @@
"pages/list/movieticket/list/seats/index",
"pages/list/movieticket/list/cinema/index",
"pages/list/movieticket/list/ticket/index",
"pages/list/movieticket/list/web/index",
"pages/list/movieticket/list/info/index",
"pages/list/theatre/index",
"pages/list/card/index",

1
pages/list/activitynew/index.js

@ -335,6 +335,7 @@ Page({
url: '/pages/list/movieticket/list/info/index?id=' + item.third_id
})
} else if (this.data.type == 4) {
return
wx.navigateTo({
url: '/pages/list/movieticket/list/cinema/index?id=' + item.third_id
})

19
pages/list/activitynew/index.wxml

@ -19,10 +19,6 @@
<image src="https://static.ticket.sz-trip.com/uploads/20230208/{{type==9?'b44d3101973581c7efe097df2119504d':'4bf0b55112e6607e62a6b3498757b86f'}}.png" mode="widthFix"></image>
<view style="{{type==9?'color: #0B898E':''}}">全部</view>
</view>
<view class="type-item" bindtap="changeType" data-type="2">
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon2{{type==2?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==2?'color:#C155E9':''}}">展览</view>
</view>
<view class="type-item" bindtap="changeType" data-type="3">
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon3{{type==3?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==3?'color:#358FE4':''}}">景区</view>
@ -31,14 +27,19 @@
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon1{{type==1?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==1?'color:#FFB423':''}}">演出</view>
</view>
<!-- <view class="type-item" bindtap="changeType" data-type="5">
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon5{{type==5?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==5?'color:#0B898E':''}}">讲座</view>
</view> -->
<view class="type-item" bindtap="changeType" data-type="4">
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon4{{type==4?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==4?'color:#63B71F':''}}">电影</view>
</view>
<view class="type-item" bindtap="changeType" data-type="2">
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon2{{type==2?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==2?'color:#C155E9':''}}">展览</view>
</view>
<!-- <view class="type-item" bindtap="changeType" data-type="5">
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon5{{type==5?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==5?'color:#0B898E':''}}">讲座</view>
</view> -->
<view class="type-item" bindtap="changeType" data-type="6" style="margin-right:30rpx">
<image src="https://static.ticket.sz-trip.com/xcxImages/activitynew/icon6{{type==6?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==6?'color:#54b9ed':''}}">其他</view>
@ -106,7 +107,7 @@
</view>
</view>
<view wx:if="{{list.length>0 && type==4 && movieType==2}}">
<view data-item="{{item}}" class="activity-item activity-item-out" style="margin-top:0;padding:10rpx 20rpx" wx:for="{{list}}">
<view bindtap="gotoDetail" data-item="{{item}}" class="activity-item activity-item-out" style="margin-top:0;padding:10rpx 20rpx" wx:for="{{list}}">
<view class="activity-info" style="height:160rpx;width:500rpx">
<view class="activity-title textOver2">{{item.title}}</view>
<view class="textOver" wx:if="{{item.address}}">{{item.address}}</view>

49
pages/list/movieticket/list/cinema/index.js

@ -1,4 +1,5 @@
// pages/list/movieticket/list/cinema/index.js
let app = getApp()
import commonApi from "../../../../../utils/https/common"
import util from "../../../../../utils/util"
Page({
@ -13,7 +14,8 @@ Page({
dates:[],
dateIndex:0,
list:[],
name:""
name:"",
invoiceId:null,
},
/**
@ -97,6 +99,49 @@ Page({
console.log(res)
})
},
selectMovieSeat(e){
let info = e.currentTarget.dataset.info
const areaInfo = JSON.parse(info.schedule_area).map(item => ({...item, price:item.areaPrice,areaId:item.seatAreaId}));
let planData = {
areaInfo,
fee:info.service_fee,
movieName: this.data.movie[this.data.currentNum].title,
planId : info.schedule_id,
planTime : info.show_time,
type:'WECHATXCX',
remake : ''
}
let show_id = info.show_id
let cinema_id = info.cinema_id
// let schedule_id = info.schedule_id
commonApi._post('Cinema/getProductAndSku',{
show_id,
cinema_id,
}).then(res=>{
this.setData({
productInfo:res.data
})
app.globalData.product ={
product:this.data.productInfo,
info:{
hallName:this.data.name,
show_date:info.show_date,
start_end_time:info.show_time,
movieName:this.data.movie[this.data.currentNum].title,
show_version:info.show_version,
selectSeatInfo:null,
schedule_id:info.schedule_id
}
}
wx.navigateTo({
url:"/pages/list/movieticket/list/web/index?planData="+ JSON.stringify(planData),
})
})
// wx.navigateTo({
// url: '/pages/list/movieticket/list/seats/index?show_id='+show_id+'&cinema_id='+cinema_id+'&schedule_id='+schedule_id+'&planData='+JSON.stringify(planData),
// })
},
onChange:function(e){
console.log(e)
this.setData({
@ -140,7 +185,7 @@ Page({
* 生命周期函数--监听页面显示
*/
onShow: function () {
console.log(123123123213);
},
/**

6
pages/list/movieticket/list/cinema/index.wxml

@ -16,7 +16,7 @@
<view class="dates-list">
<view class="date-item{{index==dateIndex?' active':''}}" bindtap="changeDate" data-index="{{index}}" wx:for="{{dates}}">{{item.name}}</view>
</view>
<navigator url="../seats/index?show_id={{movie[currentNum].show_id}}&cinema_id={{id}}&schedule_id={{item.schedule_id}}" class="movie-item" wx:for="{{list}}">
<div class="movie-item" wx:for="{{list}}" data-info="{{item}}" bindtap="selectMovieSeat">
<view style="width:167rpx;flex-shrink:0">
<view class="time">{{item.show_time}}</view>
<view>{{item.close_time}}散场</view>
@ -25,11 +25,11 @@
<view class="type">{{item.show_version}}</view>
<view>{{item.hall_name}}</view>
</view>
<view class="price"><text>¥</text>{{item.price/100}}</view>
<view class="price"><text>¥</text>{{item.price}}</view>
<view class="btn">
购票
</view>
</navigator>
</div>
<view wx:if="{{list.length==0}}" class="common-empty" style="z-index:-1">
<image mode="widthFix" src="https://static.ticket.sz-trip.com/xcxImages/other/nodata.png"></image>
<view>暂无内容</view>

28
pages/list/movieticket/list/seats/index.js

@ -137,6 +137,7 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
console.log(options);
this.setData({
options:options
})
@ -147,13 +148,16 @@ Page({
this.setData({
productInfo:res.data
})
wx.navigateTo({
url:"/pages/list/movieticket/list/web/index?planData="+options.planData,
})
})
let that = this;
let sys = wx.getSystemInfoSync()
that.setData({
seatArea: sys.screenHeight - sys.statusBarHeight - (500 * sys.screenWidth / 750),
rpxToPx: sys.screenWidth / 750
});
// let that = this;
// let sys = wx.getSystemInfoSync()
// that.setData({
// seatArea: sys.screenHeight - sys.statusBarHeight - (500 * sys.screenWidth / 750),
// rpxToPx: sys.screenWidth / 750
// });
},
/**
@ -167,12 +171,12 @@ Page({
* 生命周期函数--监听页面显示
*/
onShow: function () {
commonApi.user_post("Cinema/getLockSeatInfo",{
schedule_id:this.data.options.schedule_id
}).then(res=>{
console.log(res)
this.getInfo();
})
// commonApi.user_post("Cinema/getLockSeatInfo",{
// schedule_id:this.data.options.schedule_id
// }).then(res=>{
// console.log(res)
// this.getInfo();
// })
//---这此替换成自己的接口请求成功后--end--

79
pages/list/movieticket/list/web/index.js

@ -0,0 +1,79 @@
// pages/pbService/web/index.js
let app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
webUrl:""
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.setData({
webUrl:'https://online.suiyuaninfo.com/?planData='+options.planData
})
console.log(this.data.webUrl);
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
handleGetMessage: function(e) {
console.log(e.target.data)
console.log(app.globalData.product);
return
app.globalData.product ={
product:this.data.productInfo,
info:{
hallName:this.data.hallName,
show_date:this.data.show_date,
start_end_time:this.data.start_end_time,
cinema_title:this.data.cinema_title,
movieName:this.data.movieName,
show_version:this.data.show_version,
selectSeatInfo:selectSeatInfo,
schedule_id:this.data.schedule_id
}
}
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
}
})

3
pages/list/movieticket/list/web/index.json

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

4
pages/list/movieticket/list/web/index.wxml

@ -0,0 +1,4 @@
<!--pages/pbService/web/index.wxml-->
<view wx:if="{{webUrl}}">
<web-view bindmessage="handleGetMessage" src="{{webUrl}}"></web-view>
</view>

1
pages/list/movieticket/list/web/index.wxss

@ -0,0 +1 @@
/* pages/pbService/web/index.wxss */

2
pages/list/techan/index.wxml

@ -17,7 +17,7 @@
<view class="supplier-tags">
<view class="supplier-tag textOver" wx:for="{{item.display_tags}}">{{item}}</view>
</view>
<view class="supplier-address supplier-tags"><text class="iconfont icon-location"></text>{{item.address}}</view>
<view class="supplier-address supplier-tags"><text class="iconfont icon-location"></text><text class="textOver">{{item.address}}</text></view>
</view>
<view class="supplier-price"><text>¥</text><text>{{(item.start_price/100)}}</text><text>起</text></view>
</view>

2
pages/order/coupon/index.js

@ -71,7 +71,7 @@ Page({
* 生命周期函数--监听页面显示
*/
onShow: function () {
app.globalData.couponInfo = null;
},
/**

2
pages/order/hotel/index.wxml

@ -68,7 +68,7 @@
</view>
</view>
</view>
<!-- <coupon id="coupon" money="{{CtripHotelCart.price_sum * (numberIndex+1)}}" sku="{{CtripHotelCart.id}}"></coupon> -->
<coupon id="coupon" money="{{CtripHotelCart.price_sum * (numberIndex+1)}}" sku="{{CtripHotelCart.id}}"></coupon>
<!-- 支付按钮 -->
<view style="height:{{100 }}rpx"></view>
<view class="fixed-bottom">

45
pages/order/movie/index.js

@ -21,22 +21,19 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
let key = options.key;
if(!key){
util.back()
return;
}
console.log(options.selectSeatInfo);
this.setData({
prizeId:wx.getStorageSync('prizeId')
})
let product = app.globalData.product,price=0;
product.info.selectSeatInfo.map(item=>{
price = Number(item.price) + Number(price)
product.info.selectSeatInfo = JSON.parse(options.selectSeatInfo)
product.info.selectSeatInfo.seatPriceInfo.map(item=>{
price =price + Number(item.split('-')[1])
})
console.log(price);
this.setData({
product:product,
key:key,
price:price
price:price*100
})
userApi.user_post("user/getMyInfo").then(res=>{
this.setData({
@ -63,30 +60,30 @@ Page({
})
return;
}
let product = this.data.product,seats_list=[],seats_ids=[];
product.info.selectSeatInfo.map(item=>{
seats_list.push(item.name);
seats_ids.push({
ext_id:item.ext_id,
area:item.area || "",
flag:Number(item.flag)
})
})
let product = this.data.product
// product.info.selectSeatInfo.map(item=>{
// seats_list.push(item.name);
// seats_ids.push({
// ext_id:item.ext_id,
// area:item.area || "",
// flag:Number(item.flag)
// })
// })
let product_list = [{
"type" : "movie",//电影,必填
"product_id": product.product.id,
"sku_id": product.product.sku_info.id,
"product_num": product.info.selectSeatInfo.length,//也就是锁定的座位数,必填
"product_num": product.info.selectSeatInfo.seatInfo.length,//也就是锁定的座位数,必填
"reserve_mobile": this.data.tel,
"use_date": product.info.show_date,//使用日期,Y-m-d日期格式字符串,必填
"use_time": product.info.start_end_time,//场次时间,直接传字符串,必填
"show_version": product.info.show_version,//场次版本,必填
"scene_id": product.product.scene_id,//场景id,我方系统的场景id,必填
"schedules_name": product.info.hallName,//放映厅名称,必填
"seats_list": seats_list.join(","),//座位中文名称,多个座位逗号分隔,必填
"key": this.data.key,//锁座返回的key,必填
"seats_list": product.info.selectSeatInfo.seatInfo.join(","),//座位中文名称,多个座位逗号分隔,必填
// "key": this.data.key,//锁座返回的key,必填
"schedules_id": product.info.schedule_id,//淘票票场次id,必填
"seats_ids": seats_ids
"seats_ids": product.info.selectSeatInfo.seatPriceInfo
}];
let data = {
product_list:product_list,
@ -110,6 +107,7 @@ Page({
data:JSON.stringify(data)
}).then(res=>{
console.log(res)
})
},
@ -120,13 +118,14 @@ Page({
this.setData({
coupon:app.globalData.couponInfo
})
console.log(this.coupon);
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
app.globalData.couponInfo = null
},
/**

3
pages/order/orderList/index.js

@ -21,6 +21,7 @@ Page({
select_allowance: false,
allowance_data: null,
allowance_price: 0,
flag:null
},
/**
@ -32,7 +33,9 @@ Page({
ticketList: app.globalData.list,
kjId: app.globalData.kjId,
gp_id: app.globalData.gp_id || app.globalData.team_id,
flag:options.flag
})
console.log(this.data.flag);
console.log(app.globalData);
let price = 0, sku_id = [] ,postFee= 0;
app.globalData.postProduct.map(item => {

50
pages/order/pay/index.js

@ -13,8 +13,11 @@ Page({
second:"00",
minute:"00",
payIndex:-1,
numIndex: 0,
showNumMask: false
numIndex:0,
showNumMask: false,
activePay:false,//是否活动支付
SUBWALLET:false,
wxPay:false
},
/**
@ -85,9 +88,24 @@ Page({
else {
util.back()
}
this.setData({
info:res.data
})
if (Object.keys(res.data.coupon_activity).length != 0) {
this.setData({
info:res.data,
activePay: Object.keys(res.data.coupon_activity).length === 0 ?false:true,
SUBWALLET:res.data.coupon_activity.pay_type.includes('SUBWALLET') || !res.data.coupon_activity.pay_type,
wxPay:res.data.coupon_activity.pay_type.includes('WEIXIN') || !res.data.coupon_activity.pay_type,
payIndex:Object.keys(res.data.coupon_activity).length === 0 ?-1:0,
})
console.log(this.data.wxPay);
}else{
this.setData({
info:res.data,
})
}
console.log(this.data.ERMB);
})
this.checkPay();
@ -111,6 +129,28 @@ Page({
})
},
pay:function(){
if (this.data.activePay) {
let flag = false
if (this.data.payList.length!=0 && !this.data.info.coupon_activity.pay_type.includes('SUBWALLET')) {
flag = true
}
if (this.data.activePay && flag && !this.data.wxPay) {
wx.showToast({
title: '暂无支付方式请前往其它端付款',
icon:'none'
})
return
}
console.log(this.data.payIndex);
if (this.data.payIndex===0) {
wx.showToast({
title: '请选择支付方式',
icon:'none'
})
return
}
}
let _this = this;
if(this.data.payIndex==1) {
this.setData({

20
pages/order/pay/index.wxml

@ -8,7 +8,25 @@
<view class="price">¥{{info.paid_money/100}}</view>
</view>
</view>
<view class="pay-methods-box">
<view class="pay-methods-box" wx:if="{{activePay}}">
<view>支付方式:</view>
<view class="pay-method" bindtap="changePayMethod" data-index="-1" wx:if="{{wxPay}}">
<view class="iconfont icon-weixin1"></view>
<view class="method-name">微信支付</view>
<view class="iconfont {{payIndex==-1?'icon-iconfontoptionbutton':'icon-quan'}}"></view>
</view>
<view class="pay-method" wx:if="{{payList.length>0 && SUBWALLET}}" style="border-top:1rpx solid #ccc" bindtap="changePayMethod" data-index="1">
<image src="https://test.m.cloud.sz-trip.com/static/images/numLogo.png" mode="aspectFill"></image>
<view class="method-name">数字人民币</view>
<view class="iconfont {{payIndex==1?'icon-iconfontoptionbutton':'icon-quan'}}"></view>
</view>
<view class="pay-method" wx:else style="border-top:1rpx solid #ccc" data-index="1">
<image src="https://static.ticket.sz-trip.com/xcxImages/numLogo.png" mode="aspectFill"></image>
<view class="red-num">君到苏州现已支持数字人民币支付,请至数字人民币app中绑定授权</view>
</view>
</view>
<view class="pay-methods-box" wx:if="{{!activePay}}">
<view>支付方式:</view>
<view class="pay-method" bindtap="changePayMethod" data-index="-1">
<view class="iconfont icon-weixin1"></view>

2
pages/order/scene/index.js

@ -292,7 +292,7 @@ Page({
app.globalData.createDate.product_list.push(data.product_list[0])
}
wx.redirectTo({
url: '/pages/order/orderList/index'
url: '/pages/order/orderList/index?flag='+ this.data.flag
})
}else{
commonApi.user_post(service, postData).then(res => {

1
pages/pbService/web/index.js

@ -51,7 +51,6 @@ Page({
})
}
},
/**
* 生命周期函数--监听页面初次渲染完成
*/

Loading…
Cancel
Save