Browse Source

更新下

master
yvette 5 years ago
parent
commit
41269dce95
  1. 7
      app.json
  2. 134
      pages/activity/suyear/index.js
  3. 5
      pages/activity/suyear/index.json
  4. 18
      pages/activity/suyear/index.wxml
  5. 93
      pages/activity/suyear/index.wxss
  6. 167
      pages/activity/year2020/index.js
  7. 5
      pages/activity/year2020/index.json
  8. 49
      pages/activity/year2020/index.wxml
  9. 122
      pages/activity/year2020/index.wxss
  10. 10
      pages/index/index.wxml
  11. 4
      pages/info/hotelProductInfo/index.js
  12. 2
      pages/info/hotelProductInfo/index.wxml
  13. 4
      pages/info/roadInfo/index.wxml
  14. 332
      pages/list/activitynew/index.js
  15. 6
      pages/list/activitynew/index.json
  16. 93
      pages/list/activitynew/index.wxml
  17. 207
      pages/list/activitynew/index.wxss
  18. 128
      pages/list/minitrip/index.js
  19. 5
      pages/list/minitrip/index.json
  20. 39
      pages/list/minitrip/index.wxml
  21. 127
      pages/list/minitrip/index.wxss
  22. 2
      pages/list/movieticket/index.wxml
  23. 9
      pages/list/movieticket/list/info/index.js
  24. 4
      pages/list/movieticket/list/info/index.wxml
  25. 128
      pages/list/oneday/index.js
  26. 5
      pages/list/oneday/index.json
  27. 39
      pages/list/oneday/index.wxml
  28. 127
      pages/list/oneday/index.wxss
  29. 1
      pages/list/sale/index.wxss
  30. 2
      pages/map/index.js
  31. 6
      pages/map/index.wxml
  32. 4
      pages/map/index.wxss
  33. 11
      pages/order/hotel/index.js
  34. 6
      pages/pbService/index.wxml
  35. 2
      pages/pbService/library/index.wxml
  36. 2
      pages/pbService/wwcx/index.js
  37. 2
      pages/pbService/wwcx/index.wxml
  38. 2
      pages/pbService/wwcx/index.wxss
  39. 179
      project.config.json
  40. 51
      project.private.config.json

7
app.json

@ -65,6 +65,7 @@
"pages/list/museum/index",
"pages/list/store/index",
"pages/list/activity/index",
"pages/list/activitynew/index",
"pages/list/road/index",
"pages/list/hotel/index",
"pages/list/strategy/index",
@ -81,6 +82,8 @@
"pages/list/scene/index",
"pages/list/comments/index",
"pages/list/message/index",
"pages/list/minitrip/index",
"pages/list/oneday/index",
"pages/pbService/index",
"pages/pbService/sceneComfort/index",
"pages/pbService/gym/index",
@ -106,7 +109,9 @@
"pages/pbService/wwcx/search/index",
"pages/ask/index",
"pages/ask/info/index",
"pages/ask/my/index"
"pages/ask/my/index",
"pages/activity/year2020/index",
"pages/activity/suyear/index"
],
"permission": {
"scope.userLocation": {

134
pages/activity/suyear/index.js

@ -0,0 +1,134 @@
// pages/activity/suyear/index.js
import commonApi from "../../../utils/https/common"
import util from "../../../utils/util"
Page({
/**
* 页面的初始数据
*/
data: {
tabs:[{
areaid:"",
imgname:'all'
},{
areaid:"320508",
imgname:'gs'
},{
areaid:"320506",
imgname:'wz'
},{
areaid:"320507",
imgname:'xc'
},{
areaid:"320509",
imgname:'wj'
},{
areaid:"320510",
imgname:'yq'
},{
areaid:"320582",
imgname:'zjg'
},{
areaid:"320585",
imgname:'tc'
},{
areaid:"320583",
imgname:'ks'
},{
areaid:"320581",
imgname:'cs'
}],
list:[],
total:1,
areas_id:""
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.getList()
},
changeArea:function(e){
let areas_id = e.currentTarget.dataset.area;
this.setData({
total:1,
list:[],
areas_id:areas_id
})
this.getList()
},
getList:function(){
if(this.data.total<=this.data.list.length) return;
commonApi._post('product/get_product_by_tag',{
tag_id:23,
offset:this.data.list.length,
areas_id:this.data.areas_id,
limit:10
}).then(res=>{
this.setData({
list:this.data.list.concat(res.data.list),
total:res.data.total
})
})
},
gotoDetail:function(e){
let item = e.currentTarget.dataset.item;
if(item.title=='沙家浜景区'){
wx.navigateToMiniProgram({
appId: 'wx98a352b4689e46d8',
path:'pages/sightspots/booking?id=24&type=default'
})
return;
}
util.gotoDetail(item)
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
this.getList()
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

5
pages/activity/suyear/index.json

@ -0,0 +1,5 @@
{
"usingComponents": {
"title":"/pages/component/TitleHeader"
}
}

18
pages/activity/suyear/index.wxml

@ -0,0 +1,18 @@
<!--pages/activity/suyear/index.wxml-->
<title title="留苏过大年"></title>
<view style="position:relative">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/suyear/top.png" mode="widthFix" class="main-img"></image>
<view class="area-list">
<image bindtap="changeArea" data-area="{{item.areaid}}" wx:for="{{tabs}}" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/suyear/{{item.imgname}}.png" mode="widthFix" class="area-img"></image>
</view>
</view>
<view class="list">
<view class="item" bindtap="gotoDetail" data-item="{{item}}" wx:for="{{list}}">
<image class="border" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/suyear/border.png" mode="widthFix"></image>
<image src="{{item.headimg}}" class="product-img" mode="aspectFill"></image>
<image wx:if="{{item.area_id}}" mode="widthFix" class="addressimg" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/suyear/{{item.area_id}}.png"></image>
<image class="bgimg" mode="widthFix" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/suyear/bg.png"></image>
<view class="title textOver2">{{item.title}}</view>
<image class="btn" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/suyear/btn.png" mode="widthFix"></image>
</view>
</view>

93
pages/activity/suyear/index.wxss

@ -0,0 +1,93 @@
/* pages/activity/suyear/index.wxss */
page {
background: #FCDDB3;
}
.main-img {
display: block;
width: 100%;
}
.area-list {
display: flex;
align-items: center;
left: 30rpx;
right: 0;
overflow-x: auto;
position: absolute;
top: 700rpx;
}
.area-list image {
display: block;
flex-shrink: 0;
width: 110rpx;
margin-right: 20rpx;
}
.list {
display: flex;
align-items: center;
flex-wrap: wrap;
margin: 0 25rpx;
justify-content: space-between;
padding-top: 34rpx;
}
.item {
width: 345rpx;
height: 435rpx;
position: relative;
margin-bottom: 30rpx;
}
.item .bgimg {
position: absolute;
width: 100%;
}
.item image {
display: block;
}
.item .bgimgin {
position: absolute;
width: 307rpx;
left: 18rpx;
top: 18rpx;
}
.item .border {
position: absolute;
width: 79rpx;
margin-left: -19rpx;
bottom: 10rpx;
}
.item:nth-child(2n) .border {
margin-left: 280rpx;
}
.item .product-img {
position: absolute;
width: 308rpx;
height: 254rpx;
left: 50%;
margin-left: -154rpx;
top: 20rpx;
}
.item .title {
font-size: 32rpx;
font-family: Source Han Sans SC;
font-weight: bold;
color: #FFFFFF;
line-height: 45rpx;
background: linear-gradient(-50deg, #FCDDB2 0%, #F7B765 44.7021484375%, #FCDEB4 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
position: absolute;
top: 280rpx;
left: 30rpx;
right: 30rpx;
}
.item .btn {
position: absolute;
width: 260rpx;
left: 42rpx;
top: 357rpx;
}
.item .addressimg {
width: 110rpx;
left: 40rpx;
top: 15rpx;
position: absolute;
}

167
pages/activity/year2020/index.js

@ -0,0 +1,167 @@
// pages/activity/year2020/index.js
import commonApi from "../../../utils/https/common"
import util from "../../../utils/util"
let device = wx.getSystemInfoSync();
const ratio = device.windowWidth / 750;
Page({
/**
* 页面的初始数据
*/
data: {
zhouzhuang:[],
haofengguang:[],
dongshan:[],
huqiu:[],
jiangnan:[],
list:[],
total:1,
top:0
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
let rect = wx.getMenuButtonBoundingClientRect();
let height = (rect.top - device.statusBarHeight) * 2 + rect.height + device.statusBarHeight;
this.setData({
top:height
})
// 周庄年货专区
commonApi._post("adv/getAdvByKey",{
key:"zhouzhuangnianhuo"
}).then(res=>{
this.setData({
zhouzhuang:res.data.content || []
})
})
// 苏州好风光
commonApi._post("adv/getAdvByKey",{
key:"haofengguangnianhuo"
}).then(res=>{
this.setData({
haofengguang:res.data.content || []
})
})
// 东山爆款好物
commonApi._post("adv/getAdvByKey",{
key:"dongshannianhuo"
}).then(res=>{
this.setData({
dongshan:res.data.content || []
})
})
// 虎丘茶礼
commonApi._post("adv/getAdvByKey",{
key:"huqiunianhuo"
}).then(res=>{
this.setData({
huqiu:res.data.content || []
})
})
// 江南米造局
commonApi._post("adv/getAdvByKey",{
key:"jiangniannianhuo"
}).then(res=>{
this.setData({
jiangnan:res.data.content || []
})
})
this.getList()
},
getList:function(){
let list = this.data.list;
if(list.length>=this.data.total) return;
commonApi._post('product/get_product_by_tag',{
tag_id:22,
offset:list.length,
limit:10
}).then(res=>{
list = list.concat(res.data.list);
this.setData({
list:list,
total:res.data.total
})
})
},
gotoDetail:function(e){
let item = e.currentTarget.dataset.item;
let [type,id] = item.href.split(",");
util.gotoDetail({
type:type,
id:id
})
},
gotoDetail2:function(e){
let item = e.currentTarget.dataset.item;
util.gotoDetail(item)
},
home:function(){
wx.reLaunch({
url: '/pages/index/index',
})
},
gotoScroll:function(e){
let that = this,index = e.currentTarget.dataset.index;
const query=wx.createSelectorQuery(); //创建节点查询器
query.select("#box"+index).boundingClientRect() //选择toViewid获取位置信息
query.selectViewport().scrollOffset() //获取页面查询位置的
query.exec(function(res) {
let scrollTop = res[0].top + res[1].scrollTop - that.data.top;
wx.pageScrollTo({
scrollTop: scrollTop + 4,
duration: 500
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
this.getList()
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

5
pages/activity/year2020/index.json

@ -0,0 +1,5 @@
{
"usingComponents": {
"title":"/pages/component/TitleHeader"
}
}

49
pages/activity/year2020/index.wxml

@ -0,0 +1,49 @@
<!--pages/activity/year2020/index.wxml-->
<title title="年货节"></title>
<view style="position:relative">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/top.jpg" mode="widthFix" class="yearimg" style="margin-top:0"></image>
<view bindtap="gotoScroll" data-index="1" class="block1"></view>
<view bindtap="gotoScroll" data-index="2" class="block2"></view>
</view>
<view class="product-list">
<image bindtap="gotoDetail" data-item="{{item}}" style="{{zhouzhuang.length%2==1 && index==zhouzhuang.length-1?'width:730rpx;height:290rpx;':''}}" src="{{item.img}}" mode="aspectFill" wx:for="{{zhouzhuang}}"></image>
</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/haofengguang.jpg" mode="widthFix" class="yearimg" id="box1"></image>
<view class="product-list">
<image bindtap="gotoDetail" data-item="{{item}}" style="{{haofengguang.length%2==1 && index==haofengguang.length-1?'width:730rpx;height:290rpx;':''}}" src="{{item.img}}" mode="aspectFill" wx:for="{{haofengguang}}"></image>
</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/dongshan.jpg" mode="widthFix" class="yearimg" id="box2"></image>
<view class="product-list">
<image bindtap="gotoDetail" data-item="{{item}}" style="{{dongshan.length%2==1 && index==dongshan.length-1?'width:730rpx;height:290rpx':''}}" src="{{item.img}}" mode="aspectFill" wx:for="{{dongshan}}"></image>
</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/huqiu.jpg" mode="widthFix" class="yearimg"></image>
<view class="product-list">
<image bindtap="gotoDetail" data-item="{{item}}" style="{{huqiu.length%2==1 && index==huqiu.length-1?'width:730rpx;height:290rpx':''}}" src="{{item.img}}" mode="aspectFill" wx:for="{{huqiu}}"></image>
</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/jiangnan.jpg" mode="widthFix" class="yearimg"></image>
<view class="product-list">
<image bindtap="gotoDetail" data-item="{{item}}" style="{{jiangnan.length%2==1 && index==jiangnan.length-1?'width:730rpx;height:290rpx':''}}" src="{{item.img}}" mode="aspectFill" wx:for="{{jiangnan}}"></image>
</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/bixuan.jpg" mode="widthFix" class="yearimg"></image>
<view class="product-list">
<view bindtap="gotoDetail2" data-item="{{item}}" class="product-item" wx:for="{{list}}">
<image class="main-img" src="{{item.headimg}}" mode="aspectFill"></image>
<image class="bg-img" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/bg.png" mode="aspectFill"></image>
<view class="info-box">
<view class="title textOver">{{item.title}}</view>
<view class="subtitle textOver">{{item.subtitle}}</view>
<view class="btn textOver">
<view class="btn-text">
<view>年货价</view>
<view>¥</view>
</view>
<view class="price">{{item.price/100}}</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/btn.png" mode="widthFix"></image>
</view>
</view>
</view>
</view>
<view bindtap="home" class="backhome-box">
<view>返回首页</view>
<view class="iconfont icon-bofang1"></view>
</view>

122
pages/activity/year2020/index.wxss

@ -0,0 +1,122 @@
/* pages/activity/year2020/index.wxss */
page {
background: #c8070a;
}
.yearimg {
display: block;
width: 100%;
margin: 0;
padding: 0;
margin-top: -15rpx;
}
.product-list {
display: flex;
justify-content: space-between;
align-items: center;
margin: 0 10rpx;
flex-wrap: wrap;
position: relative;
z-index: 1;
}
.product-list image {
width: 357rpx;
height: 409rpx;
margin-bottom: 15rpx;
}
.product-item {
width: 357rpx;
height: 409rpx;
overflow: hidden;
margin-bottom: 15rpx;
position: relative;
}
.product-list .main-img {
width: 357rpx;
height: 263rpx;
display: block;
margin-top: 7rpx;
}
.product-list .bg-img {
position: absolute;
left: 0;
top: 0;
width: 357rpx;
height: 409rpx;
z-index: 2;
}
.info-box {
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 140rpx;
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
z-index: 2;
color: #282828;
}
.title {
font-size: 32rpx;
width: 357rpx;
line-height: 37rpx;
font-weight: lighter;
}
.subtitle {
font-size: 18rpx;
line-height: 30rpx;
}
.btn {
display: flex;
align-items: center;
justify-content: space-between;
background: url(https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/nianhuojie/btnbg.png);
background-size: 245rpx 51rpx;
width: 245rpx;
height: 51rpx;
color: #ffc8a8;
}
.btn-text {
font-size: 14rpx;
text-align: right;
margin: 0 15rpx;
margin-right: 7rpx;
}
.price {
font-size: 38rpx;
flex-shrink: 0;
text-align: center;
}
.btn image {
width: 90rpx;
margin: 0;
margin-right: 15rpx;
margin-left: 7rpx;
display: block;
}
.backhome-box {
text-align: center;
color: #fff;
font-size: 32rpx;
overflow: hidden;
margin: 60rpx 0;
line-height: 50rpx;
}
.backhome-box .iconfont {
transform: rotate(-90deg);
color: #ebca16;
}
.block1,.block2 {
position: absolute;
width: 359rpx;
height: 170rpx;
z-index: 1;
top: 645rpx;
left: 12rpx;
}
.block2 {
right: 11rpx;
left: auto;
}

10
pages/index/index.wxml

@ -20,7 +20,7 @@
<image bindtap="gotoPath" data-path="/pages/list/message/index" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/top_msg.png" mode="aspectFill"></image>
</view>
<view class="top-icons">
<view bindtap="gotoPath" data-path="/pages/list/activity/index" class="top-icon-item">
<view bindtap="gotoPath" data-path="/pages/list/activitynew/index" class="top-icon-item">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/icon1.png" mode="widthFix"></image>
<view class="top-icon-text">活动日历</view>
</view>
@ -28,7 +28,7 @@
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/icon3.png" mode="widthFix"></image>
<view class="top-icon-text">景点门票</view>
</view>
<view bindtap="gotoPath" data-path="/pages/list/hotel/index" class="top-icon-item">
<view bindtap="meituan" data-path="/pages/list/hotel/index" class="top-icon-item">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/icon4.png" mode="widthFix"></image>
<view class="top-icon-text">酒店住宿</view>
</view>
@ -173,7 +173,7 @@
</view>
<view bindtap="gotoPath" data-path="/pages/pbService/library/index" class="pbservice-item">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/pb14.png" style="width:53rpx" mode="widthFix"></image>
<view>借书还书</view>
<view>书香借阅</view>
</view>
<view bindtap="gotoPath" data-path="/pages/pbService/feiyi/index" class="pbservice-item">
@ -184,10 +184,10 @@
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/pb15.png" mode="widthFix" style="width:53rpx"></image>
<view>投资导引图</view>
</view>
<view bindtap="gotoPath" data-path="/pages/pbService/wbdw/index" class="pbservice-item">
<!-- <view bindtap="gotoPath" data-path="/pages/pbService/wbdw/index" class="pbservice-item">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/pb6.png" mode="widthFix"></image>
<view>文保单位</view>
</view>
</view> -->
<view bindtap="gotoPath" data-path="/pages/pbService/wwcx/index" class="pbservice-item">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/index/pb7.png" style="width:53rpx" mode="widthFix"></image>
<view>文物查询</view>

4
pages/info/hotelProductInfo/index.js

@ -65,7 +65,6 @@ Page({
this.setData({
products:res.data
})
console.log(res)
})
},
order:function(e){
@ -168,7 +167,7 @@ Page({
})
// 如果开始日期要比结束日期晚的话 那么结束日期自动变成开始日期的下一天
let endDate = new Date(this.data.endDate.replace(/-/g,'/'));
if(endDate.getTime()<date.getTime()){
if(endDate.getTime()<=date.getTime()){
this.setData({
endDate:util.formatDate(tomorrow),
endDateText:util.dateToText(tomorrow)
@ -178,6 +177,7 @@ Page({
},
changeLeaveDate:function(e){
let date = new Date(e.detail.value.replace(/-/g,'/'));
console.log(date)
this.setData({
endDate:util.formatDate(date),
endDateText:util.dateToText(date)

2
pages/info/hotelProductInfo/index.wxml

@ -43,7 +43,7 @@
</view>
</view>
<view class="product-right">
<view class="price">{{item.price_sum/100}}</view>
<view class="price">{{item.price/100}}</view>
<view class="btn" bindtap="order" data-item="{{item}}">预订</view>
</view>
</view>

4
pages/info/roadInfo/index.wxml

@ -21,7 +21,7 @@
<view class="scroll-menu-item{{type==1?' active':''}}" bindtap="changeMenu" data-index="1">费用说明</view>
<view class="scroll-menu-item{{type==2?' active':''}}" bindtap="changeMenu" data-index="2">预定须知</view>
<view class="scroll-menu-item{{type==3?' active':''}}" bindtap="changeMenu" data-index="3">退改说明</view>
<view class="scroll-menu-item{{type==4?' active':''}}" bindtap="changeMenu" data-index="4">线路详情</view>
<view class="scroll-menu-item{{type==4?' active':''}}" bindtap="changeMenu" data-index="4">产品详情</view>
</view>
<view style="height:85rpx" wx:if="{{fixed}}"></view>
<view class="info-box" id="box1" wx:if="{{info}}">
@ -57,7 +57,7 @@
</view> -->
</view>
<view class="info-box" id="box4" wx:if="{{info}}">
<view class="info-title">线路详情</view>
<view class="info-title">产品详情</view>
<rich-text class="details" nodes="{{tool.formateRichText(info.content)}}"></rich-text>
</view>
</view>

332
pages/list/activitynew/index.js

@ -0,0 +1,332 @@
// pages/activity/index.js
var app = getApp()
import util from "../../../utils/util"
import commonApi from "../../../utils/https/common"
Page({
/**
* 页面的初始数据
*/
data: {
selectDay:new Date().getTime(),
days: ['日','一','二','三','四','五','六'],
types:[null,'show','exhibition','scene','movie','lecture'],
weeks:[],
pageNo:1,
sort:"",
list:[],
date:null,
total:1,
areas:['姑苏','吴江','苏州'],
area:0,
type:2,
movieType:1,
moreFlag:true,
lat:"",
lon:"",
keywords:"",
realKeywords:""
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
let d = new Date();
let month = d.getMonth() + 1,day = d.getDate();
month = month>10?month:("0"+month);
day = day>10?day:("0"+day);
this.setData({
selectDay:d.getTime(),
date:d.getFullYear()+"-"+month+"-"+day
})
this.getWeekDay();
commonApi._post("pbservice/Other/getSuzhouAreas").then(res=>{
res.data.unshift({
area_code:"",
area_name:"苏州"
})
this.setData({
areas:res.data
})
this.getList()
})
},
changeType:function(e){
this.setData({
type:e.currentTarget.dataset.type,
list:[],
total:1,
pageNo:1,
moreFlag:true,
keywords:"",
realKeywords:""
})
this.getList();
},
changeArea:function(e){
this.setData({
area:e.detail.value,
list:[],
total:1,
pageNo:1
})
this.getList()
},
// 获取当前选择日期的一周日期范围
getWeekDay:function(){
var myDate = this.data.selectDay, daySecond = 24 * 60 * 60 * 1000,reslist=[];
for (let i = myDate - daySecond * 3; i <= myDate + daySecond * 3; i = i + daySecond){
let day = new Date(i),putDate = day.getDate();
putDate = putDate>=10?putDate:'0'+putDate
let item = {
times:i,
day:this.data.days[day.getDay()],
date:putDate,
isSelect:i==myDate
};
reslist.push(item);
}
this.setData({
weeks: reslist
})
},
// picker修改日期
bindDateChange:function(e){
console.log(e)
this.setData({
selectDay: new Date(e.detail.value).getTime(),
list:[],
pageNo:1,
total:1,
date:e.detail.value,
moreFlag:true
})
this.getWeekDay();
this.getList();
},
// 点击修改日期
changeDate:function(e){
let times = e.currentTarget.dataset.times,d = new Date(times);
let month = d.getMonth()+1,day = d.getDate();
month = month>10?month:('0'+month);
day = day>10?day:('0'+day);
this.setData({
selectDay: times,
date:d.getFullYear()+"-"+month+"-"+day,
list:[],
pageNo:1,
total:1,
moreFlag:true
})
this.getList();
},
getList:function(){
let list = this.data.list;
if(this.data.type==4){
this.getMovie();
return;
}
if(list.length>=this.data.total) return;
commonApi._post('pbservice/Actcalendar/getActList',{
page_no:this.data.pageNo,
date:this.data.date,
category:this.data.types[this.data.type],
keywords:this.data.realKeywords,
// area_key:this.data.areas[this.data.area].area_code,
page_num:10
}).then(res=>{
this.setData({
total:res.data.total,
list:list.concat(res.data.rows),
pageNo:this.data.pageNo+1
})
})
},
getMovie:function(e){
if(!this.data.moreFlag) return;
let service={
1:"getHotMovieList",
2:"getCinemaList",
3:'getSoonShowsList'
};
let data = {
page:this.data.pageNo,
pageSize:10
};
if(this.data.movieType==2){
data.lat = this.data.lat;
data.lon = this.data.lon;
data.is_price_sort = this.data.sort=='price';
data.is_distance_sort = this.data.sort=='distance';
}
// if(this.data.movieType==1){
// data.queryDate = this.data.date
// }
if(this.data.movieType==2 && !this.data.lon){
wx.getLocation({
type: 'gcj02',
success:(res)=>{
this.setData({
lat:res.latitude,
lon:res.longitude
})
data.lat =res.latitude;
data.lon =res.longitude;
commonApi._post('Cinema/'+service[this.data.movieType],data).then(res=>{
res.data.map(item=>{
if(item.distance || item.distance==0){
if(item.distance>=1000){
item.distance = (item.distance/1000).toFixed(2)+'km';
}
else {
item.distance = (item.distance).toFixed(2)+'m';
}
}
})
this.setData({
list:this.data.list.concat(res.data),
pageNo:this.data.pageNo+1,
moreFlag:res.data.length<10?false:true
})
})
},
fail:()=>{
wx.showToast({
title: '请打开位置授权',
icon:'none'
})
commonApi._post('Cinema/'+service[this.data.movieType],data).then(res=>{
this.setData({
list:this.data.list.concat(res.data),
pageNo:this.data.pageNo+1,
moreFlag:res.data.length<10?false:true
})
})
}
})
}
else {
commonApi._post('Cinema/'+service[this.data.movieType],data).then(res=>{
res.data.map(item=>{
if(item.distance || item.distance==0){
if(item.distance>=1000){
item.distance = (item.distance/1000).toFixed(2)+'km';
}
else {
item.distance = (item.distance).toFixed(2)+'m';
}
}
})
this.setData({
list:this.data.list.concat(res.data),
pageNo:this.data.pageNo+1,
moreFlag:res.data.length<10?false:true
})
})
}
},
setSort:function(e){
let sort = e.currentTarget.dataset.sort;
if(this.data.sort==sort) sort="";
this.setData({
sort:sort,
list:[],
total:1,
pageNo:1,
moreFlag:true
})
this.getList();
},
changeMovieType:function(e){
let type = e.currentTarget.dataset.type;
this.setData({
movieType:type,
list:[],
pageNo:1,
total:1,
moreFlag:true
})
this.getList()
},
gotoDetail:function(e){
let item = e.currentTarget.dataset.item;
if(this.data.type==4 && this.data.movieType!=2){
wx.navigateTo({
url: '/pages/list/movieticket/list/info/index?id='+item.third_id
})
}
else if(this.data.type==4){
wx.navigateTo({
url: '/pages/list/movieticket/list/cinema/index?id='+item.third_id
})
}
else {
wx.navigateTo({
url: '/pages/info/activityInfo/index?id='+item.id,
})
}
},
changeKeywords:function(e){
this.setData({
keywords:e.detail.value
})
},
search:function(){
this.setData({
realKeywords:this.data.keywords,
list:[],
pageNo:1,
total:1,
moreFlag:true
})
this.getList();
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
this.getList()
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

6
pages/list/activitynew/index.json

@ -0,0 +1,6 @@
{
"usingComponents": {
"title-header": "/pages/component/TitleHeader",
"common-image":"/pages/component/commonImage/index"
}
}

93
pages/list/activitynew/index.wxml

@ -0,0 +1,93 @@
<!--pages/activity/index.wxml-->
<title-header title="活动日历"></title-header>
<view class="top-fixed-box">
<view class="my-search-box" hidden="{{type==4}}">
<view class="iconfont icon-sousuo"></view>
<input bindinput="changeKeywords" value="{{realKeywords}}" type="text" placeholder="请输入搜索关键字" />
<view class="search-btn" bindtap="search">搜索</view>
</view>
<view class="types">
<view class="type-item" bindtap="changeType" data-type="2">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.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://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activitynew/icon3{{type==3?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==3?'color:#358FE4':''}}">景区</view>
</view>
<view class="type-item" bindtap="changeType" data-type="4">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.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="5">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.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="1">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activitynew/icon1{{type==1?'_active':''}}.png" mode="widthFix"></image>
<view style="{{type==1?'color:#FFB423':''}}">演出</view>
</view>
</view>
<view class="date-box" hidden="{{type==4}}">
<view class="date-item {{item.times==selectDay?'active':''}}" wx:for="{{weeks}}" bindtap="changeDate" data-times="{{item.times}}">
<view>{{item.date}}</view>
<view>周{{item.day}}</view>
</view>
<picker mode="date" value="{{date}}" start="1970-01-01" end="2027-09-01" bindchange="bindDateChange">
<view class="picker calendar-img">
<image class="calendar-img" width="56rpx" height="60rpx" mode="aspectFill" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activity/calendar.png"></image>
</view>
</picker>
</view>
</view>
<view class="activity-list activity-list1">
<view class="movie-types" wx:if="{{type==4}}">
<view bindtap="changeMovieType" data-type='1' class="movie-type {{movieType==1?'active':''}}">热映</view>
<view bindtap="changeMovieType" data-type='2' class="movie-type {{movieType==2?'active':''}}">影院</view>
<view bindtap="changeMovieType" data-type='3' class="movie-type {{movieType==3?'active':''}}">即将上映</view>
</view>
<view class="sort-box" wx:if="{{type==4 && movieType==2}}">
<view class="{{sort=='distance'?'active':''}}" bindtap="setSort" data-sort="distance">离我最近</view>
<view class="{{sort=='price'?'active':''}}" bindtap="setSort" data-sort="price">价格最低</view>
</view>
<view wx:if="{{list.length>0 && type!=4}}" style="background:#0B898E;padding:1rpx 0">
<view wx:for="{{list}}" bindtap="gotoDetail" data-item="{{item}}" class="activity-item">
<view class="activity-info">
<view class="activity-title textOver2">{{item.name || item.title}}</view>
<view>
<view style="margin-bottom:10rpx">{{item.begin_date}}—{{item.end_date}}</view>
<!-- <view style="margin-bottom:10rpx" wx:if="{{type==2}}">{{item.release_date}}</view> -->
<view>{{item.from_platform?item.from_platform:""}}</view>
<!-- <view wx:if="{{type==2}}">{{item.source?item.source:""}}</view> -->
</view>
</view>
<common-image width="320rpx" height='220rpx' src="{{item.post_url || item.cover}}" defaultImage="/images/place3.jpg" mode="aspectFill"></common-image>
</view>
</view>
<view wx:if="{{list.length>0 && type==4 && movieType!=2}}">
<view bindtap="gotoDetail" data-item="{{item}}" class="activity-item" style="margin-top:0" wx:for="{{list}}">
<common-image width="180rpx" height='180rpx' src="{{item.headimg}}" mode="aspectFill"></common-image>
<view style="height:180rpx;margin:0;margin-left:20rpx;display:block" class="activity-info">
<view class="activity-title textOver2" style="margin-bottom:20rpx">{{item.title}}</view>
<view class="textOver" wx:if="{{item.director}}" style="margin-bottom:10rpx">导演:{{item.director}}</view>
<view class="textOver2" wx:if="{{item.leading_role}}">主演:{{item.leading_role}}</view>
</view>
</view>
</view>
<view wx:if="{{list.length>0 && type==4 && movieType==2}}">
<view bindtap="gotoDetail" data-item="{{item}}" class="activity-item" 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>
</view>
<view class="activity-info" style="height:160rpx;text-align:right;margin:0;flex-shrin:0;">
<view><text style="color:#FF5555;font-size:30rpx">¥{{item.price/100}}</text><text style="color:#333">起</text></view>
<view wx:if="{{lat && lon}}">{{item.distance}}</view>
</view>
</view>
</view>
<view wx:if="{{list.length==0}}" class="common-empty" style="z-index:-1;top:430rpx">
<image mode="widthFix" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/other/nodata.png"></image>
<view>暂无内容</view>
</view>
</view>

207
pages/list/activitynew/index.wxss

@ -0,0 +1,207 @@
/* pages/activity/index.wxss */
page {
background: #fff;
}
.types {
display: flex;
justify-content: space-between;
align-items: center;
background: #fff;
font-size: 28rpx;
color: #666;
padding: 30rpx 40rpx;
border-bottom: 1rpx solid #d8d8d8;
}
.type-item {
width: 100rpx;
text-align: center;
line-height: 27rpx;
color: #333;
}
.type-item image {
display: block;
margin-bottom: 23rpx;
width: 100rpx;
height: 100rpx;
}
.date-box {
height: 140rpx;
background: rgba(255, 255, 255, 1);
display: flex;
padding: 0 30rpx;
justify-content: space-between;
align-items: center;
}
.date-item {
font-size: 26rpx;
color: #999;
text-align: center;
display: flex;
flex-direction: column;
justify-content: center;
}
.date-item.active {
font-weight:500;
color: #0B898E;
font-size: 30rpx;
}
.calendar-img {
width: 56rpx;
height: 60rpx;
display: block;
}
.top-fixed-activity {
background: #f7f7f7;
z-index: 1;
}
.top-fixed-box {
background: #FFF;
}
.activity-list {
margin: 0 24rpx;
background: #0B898E;
}
.acitivity-search-box {
display: flex;
margin: 30rpx 24rpx;
justify-content: space-between;
align-items: center;
}
.acitivity-search-box .picker {
width: 203rpx;
height: 54rpx;
display: flex;
align-items: center;
border: 1rpx solid #ccc;
border-radius: 4rpx;
}
.areatext {
border-right: 1rpx solid #ccc;
flex: 1;
margin-left: 17rpx;
line-height: 54rpx;
}
.acitivity-search-box .picker image {
margin: 0 22rpx;
display: block;
width: 16rpx;
flex-shrink: 0;
}
.activity-search-bg {
width: 422rpx;
height: 56rpx;
border-radius: 28rpx;
background: #f6f6f6;
display: flex;
align-items: center;
}
.activity-search-bg .iconfont {
color: #B6B6B6;
font-size: 28rpx;
flex-shrink: 0;
margin: 0 20rpx;
}
.activity-search-bg input {
flex: 1;
font-size: 27rpx;
}
.activity-item {
margin: 27rpx 16rpx;
background: white;
display: flex;
align-items: center;
justify-content: space-between;
box-shadow: -1rpx 1rpx 16rpx 0px rgba(6, 0, 1, 0.1);
border-radius: 10rpx;
padding: 27rpx 22rpx;
}
.activity-item image {
width: 320rpx;
height: 220rpx;
border-radius: 10rpx;
flex-shrink: 0;
overflow: hidden;
}
.activity-info {
display: flex;
flex-direction: column;
justify-content: space-between;
font-size: 23rpx;
color: #999;
flex: 1;
height: 220rpx;
margin-right: 28rpx;
}
.activity-title {
font-weight: 500;
font-size: 31rpx;
line-height: 45rpx;
color: #333;
}
.movie-types {
display: flex;
justify-content: space-between;
padding: 30rpx;
background: #0B898E;
}
.movie-type {
width: 180rpx;
height: 60rpx;
display: flex;
align-items: center;
justify-content: center;
border-radius: 10rpx;
color: #fff;
border: 2rpx solid;
box-sizing: border-box;
text-align: center;
font-size: 30rpx;
}
.movie-type.active {
background: #fff;
color: #0B898E;
}
.sort-box {
display: flex;
justify-content: flex-end;
padding: 30rpx;
padding-top: 0;
background: #0B898E;
color: #D8D8D8;
font-size: 26rpx;
}
.sort-box view:nth-child(1){
margin-right: 50rpx;
}
.sort-box view.active {
color: #fff;
}
.my-search-box {
display: flex;
margin: 20rpx 30rpx;
align-items: center;
border-radius: 30rpx;
height: 60rpx;
background: #ededed;
margin-bottom: 0;
font-size: 26rpx;
}
.my-search-box .iconfont {
width: 65rpx;
text-align: center;
font-size: 32rpx;
flex-shrink: 0;
}
.my-search-box input {
flex: 1;
}
.my-search-box .search-btn {
text-align: center;
width: 110rpx;
flex-shrink: 0;
line-height: 40rpx;
border-left: 1rpx solid #ccc;
color: #0B898E;
}

128
pages/list/minitrip/index.js

@ -0,0 +1,128 @@
// pages/list/road/index.js
import commonApi from "../../../utils/https/common"
import util from "../../../utils/util"
Page({
/**
* 页面的初始数据
*/
data: {
types:[],
type:0,
list:[],
sort:"weight",
order:"desc",
total:1,
keywords:""
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.getList()
},
search:function(e){
this.setData(e.detail);
this.setData({
list:[],
total:1
})
this.getList();
},
changeType:function(e){
this.setData({
type:e.detail.value,
list:[],
total:1
})
this.getList()
},
changeSort:function(e){
console.log(e)
let data = e.currentTarget.dataset;
if(data.sort == this.data.sort && data.order==this.data.order) return;
this.setData({
sort:data.sort,
order:data.order,
list:[],
total:1
})
this.getList()
},
gotoDetail:function(e){
let item = e.currentTarget.dataset.item;
util.gotoDetail(item);
},
getList:function(){
let list = this.data.list;
if(list.length>=this.data.total) return;
commonApi._post('product/get_product_by_tag',{
type_id:24,
tag_id:17,
offset:list.length,
limit:10,
sort:this.data.sort,
order:this.data.order,
title:this.data.keywords
}).then(res=>{
res.data.list.map(item=>{
item.display_tags = (item.display_tags?item.display_tags.split(","):[]).splice(0,2)
})
this.setData({
list:list.concat(res.data.list),
total:res.data.total
})
console.log(res)
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
this.getList()
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

5
pages/list/minitrip/index.json

@ -0,0 +1,5 @@
{
"usingComponents": {
"search":"/pages/component/SearchHeader"
}
}

39
pages/list/minitrip/index.wxml

@ -0,0 +1,39 @@
<!--pages/list/road/index.wxml-->
<search bind:onload="search"></search>
<image class="topimg" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/listtop/minitrip.png" mode="widthFix"></image>
<view class="top-box">
<!-- <picker mode="selector" value="{{type}}" range="{{types}}" range-key="type_name" bindchange="changeType">
<view class="picker">
<view class="typetext {{type==null?'disable':''}}">{{type==null?'选择类型':types[type].type_name}}</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activity/arrow.png" mode="widthFix"></image>
</view>
</picker> -->
<view class="{{sort=='weight'?'active':''}}" bindtap="changeSort" data-sort="weight" data-order="desc">综合</view>
<view class="price-box{{sort=='price'?' active':''}}" bindtap="changeSort" data-sort="price" data-order="{{sort=='price' && order=='asc'?'desc':'asc'}}">
<view>价格</view>
<view style="margin-left:4rpx">
<image class="{{sort=='price' && order=='asc'?'active':''}}" catchtap="changeSort" data-sort="price" data-order="asc" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activity/arrow.png" mode="widthFix"></image>
<image class="{{sort=='price' && order=='desc'?'active':''}}" catchtap="changeSort" data-sort="price" data-order="desc" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activity/arrow.png" mode="widthFix"></image>
</view>
</view>
<view class="{{sort=='sales_number'?'active':''}}" bindtap="changeSort" data-sort="sales_number" data-order="desc">销量</view>
<view class="{{sort=='rate'?'active':''}}" bindtap="changeSort" data-sort="rate" data-order="desc">好评</view>
</view>
<view bindtap="gotoDetail" data-item="{{item}}" wx:for="{{list}}" url="/pages/info/roadInfo/index" class="item">
<image src="{{item.headimg}}" mode="aspectFill"></image>
<view class="info">
<view class="textOver2">{{item.title}}</view>
<view><text class="score" wx:if="{{item.rate}}">{{item.rate}}分</text><text class="sales" wx:if="{{item.sales_number}}">月销{{item.sales_number}}份</text></view>
<view class="tags textOver">
<view class="tag textOver" wx:for="{{item.display_tags}}">{{item}}</view>
</view>
<view class="price-out">
<text>{{item.supplier_name}}</text>
<view class="price"><text style="color:#D62828">¥</text><text style="color:#D62828;font-weight:500;font-size:33rpx">{{item.price/100}}</text><text style="font-size:20rpx"> 起</text></view>
</view>
</view>
</view>
<view wx:if="{{list.length==0}}" class="common-empty" style="z-index:-1;top:400rpx">
<image mode="widthFix" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/other/nodata.png"></image>
<view>暂无内容</view>
</view>

127
pages/list/minitrip/index.wxss

@ -0,0 +1,127 @@
/* pages/list/road/index.wxss */
pages {
background: white;
}
.topimg {
width: 100%;
display: block;
}
.top-box {
display: flex;
align-items: center;
height: 110rpx;
padding: 0 25rpx;
border: 1rpx solid #CCCCCC;
font-size: 27rpx;
color: #999;
justify-content: space-between;
font-weight: 500;
}
.picker {
width: 198rpx;
height: 54rpx;
display: flex;
align-items: center;
border: 1rpx solid #ccc;
border-radius: 4rpx;
}
.typetext {
white-space: nowrap;
border-right: 1rpx solid #ccc;
flex: 1;
margin-left: 17rpx;
line-height: 54rpx;
color: #000;
}
.typetext.disable {
color: #999;
}
.picker image {
margin: 0 22rpx;
display: block;
width: 16rpx;
flex-shrink: 0;
}
.top-box .active {
color: #000;
}
.top-box .price-box {
display: flex;
align-items: center;
}
.top-box .price-box image {
width: 15rpx;
opacity: 0.6;
display: block;
}
.top-box .price-box image.active {
opacity: 1;
}
.top-box .price-box image:nth-child(1){
transform: rotate(180deg);
margin-bottom: 5rpx;
}
.item {
margin: 0 25rpx;
padding: 30rpx 0;
border-bottom: 1rpx solid #ccc;
display: flex;
font-size: 24rpx;
justify-content: space-between;
}
.item image {
display: block;
width: 233rpx;
height: 233rpx;
border-radius: 10rpx;
flex-shrink: 0;
margin-right: 22rpx;
}
.info {
width: 400rpx;
flex: 1;
}
.info .textOver2 {
font-size: 33rpx;
line-height: 44rpx;
color: #2F2F2F;
font-weight: 500;
margin-bottom: 20rpx;
}
.score {
color: #D62828;
margin-right: 17rpx;
}
.sales {
color: #666;
}
.tags {
display: flex;
align-items: center;
margin: 20rpx 0;
}
.tags .tag {
color: #0B898E;
font-size: 20rpx;
position: relative;
margin-right: 25rpx;
line-height: 22rpx;
}
.tags .tag::after {
position: absolute;
content: "1";
font-size: 0;
left: 0;
right: 0;
height: 8rpx;
top: 17rpx;
z-index: -1;
background: #DAF3E9;
}
.price-out {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 23rpx;
color: #A3A3A3;
}

2
pages/list/movieticket/index.wxml

@ -28,7 +28,7 @@
<view class="subtitle textOver">导演:{{item.director}}</view>
<view class="actor textOver">主演:{{item.leading_role}}</view>
</view>
<view class="btn" catchtap="gotoDetail1" data-item="{{item}}">购票</view>
<view class="btn" catchtap="gotoDetail1" data-item="{{item}}">查看</view>
</navigator>
</view>
<!-- 影院 -->

9
pages/list/movieticket/list/info/index.js

@ -6,7 +6,8 @@ Page({
* 页面的初始数据
*/
data: {
info:null
info:null,
showFlag:false
},
/**
@ -16,11 +17,13 @@ Page({
commonApi._post("Cinema/getMovieDetail",{
show_id:options.id
}).then(res=>{
let showFlag = new Date(res.data.open_day.replace(/-/,'/')).getTime()<=new Date().getTime();
res.data.listimg = res.data.listimg.split(",") || []
this.setData({
info:res.data
info:res.data,
showFlag:showFlag
})
console.log(res)
console.log(showFlag)
})
},

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

@ -23,7 +23,7 @@
</view>
<!-- <view class="line"></view> -->
</view>
<view style="height:104rpx"></view>
<navigator wx:if="{{info}}" url="../ticket/index?id={{info.third_id}}&title={{info.title}}" class="fixed-bottom">
<view style="height:104rpx" wx:if="{{showFlag}}"></view>
<navigator wx:if="{{info && showFlag}}" url="../ticket/index?id={{info.third_id}}&title={{info.title}}" class="fixed-bottom">
<view class="order-btn">立即购票</view>
</navigator>

128
pages/list/oneday/index.js

@ -0,0 +1,128 @@
// pages/list/road/index.js
import commonApi from "../../../utils/https/common"
import util from "../../../utils/util"
Page({
/**
* 页面的初始数据
*/
data: {
types:[],
type:0,
list:[],
sort:"weight",
order:"desc",
total:1,
keywords:""
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.getList()
},
search:function(e){
this.setData(e.detail);
this.setData({
list:[],
total:1
})
this.getList();
},
changeType:function(e){
this.setData({
type:e.detail.value,
list:[],
total:1
})
this.getList()
},
changeSort:function(e){
console.log(e)
let data = e.currentTarget.dataset;
if(data.sort == this.data.sort && data.order==this.data.order) return;
this.setData({
sort:data.sort,
order:data.order,
list:[],
total:1
})
this.getList()
},
gotoDetail:function(e){
let item = e.currentTarget.dataset.item;
util.gotoDetail(item);
},
getList:function(){
let list = this.data.list;
if(list.length>=this.data.total) return;
commonApi._post('product/get_product_by_tag',{
type_id:23,
tag_id:17,
offset:list.length,
limit:10,
sort:this.data.sort,
order:this.data.order,
title:this.data.keywords
}).then(res=>{
res.data.list.map(item=>{
item.display_tags = (item.display_tags?item.display_tags.split(","):[]).splice(0,2)
})
this.setData({
list:list.concat(res.data.list),
total:res.data.total
})
console.log(res)
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
this.getList()
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

5
pages/list/oneday/index.json

@ -0,0 +1,5 @@
{
"usingComponents": {
"search":"/pages/component/SearchHeader"
}
}

39
pages/list/oneday/index.wxml

@ -0,0 +1,39 @@
<!--pages/list/road/index.wxml-->
<search bind:onload="search"></search>
<image class="topimg" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/listtop/oneday.jpg" mode="widthFix"></image>
<view class="top-box">
<!-- <picker mode="selector" value="{{type}}" range="{{types}}" range-key="type_name" bindchange="changeType">
<view class="picker">
<view class="typetext {{type==null?'disable':''}}">{{type==null?'选择类型':types[type].type_name}}</view>
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activity/arrow.png" mode="widthFix"></image>
</view>
</picker> -->
<view class="{{sort=='weight'?'active':''}}" bindtap="changeSort" data-sort="weight" data-order="desc">综合</view>
<view class="price-box{{sort=='price'?' active':''}}" bindtap="changeSort" data-sort="price" data-order="{{sort=='price' && order=='asc'?'desc':'asc'}}">
<view>价格</view>
<view style="margin-left:4rpx">
<image class="{{sort=='price' && order=='asc'?'active':''}}" catchtap="changeSort" data-sort="price" data-order="asc" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activity/arrow.png" mode="widthFix"></image>
<image class="{{sort=='price' && order=='desc'?'active':''}}" catchtap="changeSort" data-sort="price" data-order="desc" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/activity/arrow.png" mode="widthFix"></image>
</view>
</view>
<view class="{{sort=='sales_number'?'active':''}}" bindtap="changeSort" data-sort="sales_number" data-order="desc">销量</view>
<view class="{{sort=='rate'?'active':''}}" bindtap="changeSort" data-sort="rate" data-order="desc">好评</view>
</view>
<view bindtap="gotoDetail" data-item="{{item}}" wx:for="{{list}}" url="/pages/info/roadInfo/index" class="item">
<image src="{{item.headimg}}" mode="aspectFill"></image>
<view class="info">
<view class="textOver2">{{item.title}}</view>
<view><text class="score" wx:if="{{item.rate}}">{{item.rate}}分</text><text class="sales" wx:if="{{item.sales_number}}">月销{{item.sales_number}}份</text></view>
<view class="tags textOver">
<view class="tag textOver" wx:for="{{item.display_tags}}">{{item}}</view>
</view>
<view class="price-out">
<text>{{item.supplier_name}}</text>
<view class="price"><text style="color:#D62828">¥</text><text style="color:#D62828;font-weight:500;font-size:33rpx">{{item.price/100}}</text><text style="font-size:20rpx"> 起</text></view>
</view>
</view>
</view>
<view wx:if="{{list.length==0}}" class="common-empty" style="z-index:-1;top:400rpx">
<image mode="widthFix" src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/other/nodata.png"></image>
<view>暂无内容</view>
</view>

127
pages/list/oneday/index.wxss

@ -0,0 +1,127 @@
/* pages/list/road/index.wxss */
pages {
background: white;
}
.topimg {
width: 100%;
display: block;
}
.top-box {
display: flex;
align-items: center;
height: 110rpx;
padding: 0 25rpx;
border: 1rpx solid #CCCCCC;
font-size: 27rpx;
color: #999;
justify-content: space-between;
font-weight: 500;
}
.picker {
width: 198rpx;
height: 54rpx;
display: flex;
align-items: center;
border: 1rpx solid #ccc;
border-radius: 4rpx;
}
.typetext {
white-space: nowrap;
border-right: 1rpx solid #ccc;
flex: 1;
margin-left: 17rpx;
line-height: 54rpx;
color: #000;
}
.typetext.disable {
color: #999;
}
.picker image {
margin: 0 22rpx;
display: block;
width: 16rpx;
flex-shrink: 0;
}
.top-box .active {
color: #000;
}
.top-box .price-box {
display: flex;
align-items: center;
}
.top-box .price-box image {
width: 15rpx;
opacity: 0.6;
display: block;
}
.top-box .price-box image.active {
opacity: 1;
}
.top-box .price-box image:nth-child(1){
transform: rotate(180deg);
margin-bottom: 5rpx;
}
.item {
margin: 0 25rpx;
padding: 30rpx 0;
border-bottom: 1rpx solid #ccc;
display: flex;
font-size: 24rpx;
justify-content: space-between;
}
.item image {
display: block;
width: 233rpx;
height: 233rpx;
border-radius: 10rpx;
flex-shrink: 0;
margin-right: 22rpx;
}
.info {
width: 400rpx;
flex: 1;
}
.info .textOver2 {
font-size: 33rpx;
line-height: 44rpx;
color: #2F2F2F;
font-weight: 500;
margin-bottom: 20rpx;
}
.score {
color: #D62828;
margin-right: 17rpx;
}
.sales {
color: #666;
}
.tags {
display: flex;
align-items: center;
margin: 20rpx 0;
}
.tags .tag {
color: #0B898E;
font-size: 20rpx;
position: relative;
margin-right: 25rpx;
line-height: 22rpx;
}
.tags .tag::after {
position: absolute;
content: "1";
font-size: 0;
left: 0;
right: 0;
height: 8rpx;
top: 17rpx;
z-index: -1;
background: #DAF3E9;
}
.price-out {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 23rpx;
color: #A3A3A3;
}

1
pages/list/sale/index.wxss

@ -11,6 +11,7 @@
font-size: 29rpx;
color: #333;
background: white;
z-index: 2;
}
.sale-type {
position: relative;

2
pages/map/index.js

@ -116,7 +116,7 @@ Page({
},
getList:function(){
this.mapCtx = wx.createMapContext("map");
let types = ['','scenic','venue','post','restaurant','relic','tenscenic','cinema'],that = this;
let types = ['','scenic','venue','post','restaurant','relic','tenscenic','cinema','academes'],that = this;
this.mapCtx.getRegion({
type: 'gcj02',
success: function(res) {

6
pages/map/index.wxml

@ -38,6 +38,10 @@
<text style="color:#EB3C70" class="iconfont icon-location"></text>
<text>运河十景</text>
</view>
<view class="right-menu-item{{type==8?' active':''}}" bindtap="changeType" data-type="8">
<text style="color:#9d6b00" class="iconfont icon-location"></text>
<text>江南小书场</text>
</view>
</view>
<view class="map-item" wx:if="{{showInfo && info}}">
<view class="iconfont icon-ic_searchclosed" bindtap="hideInfo"></view>
@ -45,6 +49,6 @@
<view class="info" style="{{info.info.headimg?'':'width:100%'}}">
<view class="title textOver">{{info.info.title}}</view>
<view class="subtitle textOver2">地址:{{info.info.address}}</view>
<view bindtap="gotoDetail" class="info-btn">查看详情</view>
<view wx:if="{{item.type!='academes'}}" bindtap="gotoDetail" class="info-btn">查看详情</view>
</view>
</view>

4
pages/map/index.wxss

@ -81,6 +81,10 @@
background: #9342CB;
border-color: #9342CB;
}
.right-menus .right-menu-item:nth-child(8).active {
background: #9d6b00;
border-color: #9d6b00;
}
.right-menu-item.active .iconfont {
color: #fff !important;
}

11
pages/order/hotel/index.js

@ -54,8 +54,7 @@ Page({
roomNumbers.push(i+1)
}
this.setData({
roomNumbers:roomNumbers,
CtripHotelCart:CtripHotelCart
roomNumbers:roomNumbers
})
commonApi.user_post("product/product_date_price",{
sku_id:CtripHotelCart.id,
@ -63,8 +62,14 @@ Page({
start_date:CtripHotelCart.startDate
}).then(res=>{
res.data.splice(1,1);
let price_sum = 0;
res.data.map(item=>{
price_sum = price_sum + Number(item.price)
})
CtripHotelCart.price_sum = price_sum;
this.setData({
priceInfo:res.data
priceInfo:res.data,
CtripHotelCart:CtripHotelCart
})
})
},

6
pages/pbService/index.wxml

@ -53,10 +53,10 @@
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/pbservice/pb9.png" mode="widthFix"></image>
<view>非遗传承</view>
</view>
<view class="pb-item" bindtap="gotoPath" data-path="/pages/pbService/wbdw/index">
<!-- <view class="pb-item" bindtap="gotoPath" data-path="/pages/pbService/wbdw/index">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/pbservice/pb10.png" mode="widthFix"></image>
<view>文保单位</view>
</view>
</view> -->
<view class="pb-item" bindtap="gotoPath" data-path="/pages/pbService/wwcx/index">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/pbservice/pb11.png" mode="widthFix"></image>
<view>文物查询</view>
@ -67,7 +67,7 @@
</view>
<view class="pb-item" bindtap="gotoPath" data-path="/pages/pbService/library/index">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/pbservice/pb13.png" mode="widthFix"></image>
<view>借书还书</view>
<view>书香借阅</view>
</view>
<view class="pb-item" bindtap="gotoPath" data-path="/pages/pbService/gym/index">
<image src="https://fastadmin.oss-cn-shenzhen.aliyuncs.com/xcxImages/pbservice/pb14.png" mode="widthFix"></image>

2
pages/pbService/library/index.wxml

@ -1,5 +1,5 @@
<!--pages/pbService/library/index.wxml-->
<title title="借书还书"></title>
<title title="书香借阅"></title>
<view class="top-menus">
<view class="search-top">
<view class="iconfont icon-sousuo"></view>

2
pages/pbService/wwcx/index.js

@ -6,7 +6,7 @@ Page({
* 页面的初始数据
*/
data: {
type:1,
type:2,
relicType:[],
relicTypeIndex:0,
levels:[],

2
pages/pbService/wwcx/index.wxml

@ -3,8 +3,8 @@
<view class="types-fixed">
<navigator url="search/index" class="iconfont icon-sousuo"></navigator>
<view class="types">
<view class="type-item{{type==1?' active':''}}" bindtap="changeType" data-type="1">可移动文物</view>
<view class="type-item{{type==2?' active':''}}" bindtap="changeType" data-type="2">不可移动文物</view>
<view class="type-item{{type==1?' active':''}}" bindtap="changeType" data-type="1">可移动文物</view>
</view>
<view class="pickers" wx:if="{{type==1}}">
<picker mode="selector" range="{{relicType}}" bindchange="changeRelicType">

2
pages/pbService/wwcx/index.wxss

@ -22,7 +22,7 @@ page {
background: #EDEDED;
border-radius: 30rpx;
text-align: center;
font-size: 26rox;
font-size: 26rpx;
color: #333;
font-weight: bold;
}

179
project.config.json

@ -1,79 +1,104 @@
{
"description": "项目配置文件",
"packOptions": {
"ignore": []
},
"setting": {
"urlCheck": false,
"es6": true,
"postcss": true,
"preloadBackgroundData": false,
"minified": true,
"newFeature": true,
"coverView": true,
"autoAudits": false,
"showShadowRootInWxmlPanel": true,
"scopeDataCheck": false,
"checkInvalidKey": true,
"checkSiteMap": true,
"uploadWithSourceMap": true,
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
},
"useCompilerModule": false,
"userConfirmedUseCompilerModuleSwitch": false
},
"compileType": "miniprogram",
"libVersion": "2.14.0",
"appid": "wx4bb7b6050831f585",
"projectname": "%E8%8B%8F%E5%B7%9E%E6%96%87%E6%97%85",
"debugOptions": {
"hidedInDevtools": []
},
"isGameTourist": false,
"simulatorType": "wechat",
"simulatorPluginLibVersion": {},
"condition": {
"search": {
"current": -1,
"list": []
},
"conversation": {
"current": -1,
"list": []
},
"plugin": {
"current": -1,
"list": []
},
"game": {
"currentL": -1,
"list": []
},
"gamePlugin": {
"current": -1,
"list": []
},
"miniprogram": {
"current": -1,
"list": [
{
"id": 0,
"name": "pages/user/bindtel/index",
"pathName": "pages/user/bindtel/index",
"query": "id=0000000000LINELINEINFO18082257199008",
"scene": null
},
{
"id": 1,
"name": "好行",
"pathName": "pages/list/haoxing/index",
"query": "",
"scene": null
}
]
}
}
"description": "项目配置文件",
"packOptions": {
"ignore": []
},
"setting": {
"urlCheck": false,
"es6": true,
"postcss": true,
"preloadBackgroundData": false,
"minified": true,
"newFeature": true,
"coverView": true,
"autoAudits": false,
"showShadowRootInWxmlPanel": true,
"scopeDataCheck": false,
"checkInvalidKey": true,
"checkSiteMap": true,
"uploadWithSourceMap": true,
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
},
"useIsolateContext": true,
"useCompilerModule": false,
"userConfirmedUseCompilerModuleSwitch": false,
"userConfirmedBundleSwitch": false,
"packNpmManually": false,
"packNpmRelationList": [],
"minifyWXSS": true,
"useMultiFrameRuntime": true,
"bundle": false,
"useApiHook": true,
"useApiHostProcess": false
},
"compileType": "miniprogram",
"libVersion": "2.14.0",
"appid": "wx4bb7b6050831f585",
"projectname": "%E8%8B%8F%E5%B7%9E%E6%96%87%E6%97%85",
"debugOptions": {
"hidedInDevtools": []
},
"isGameTourist": false,
"simulatorType": "wechat",
"simulatorPluginLibVersion": {},
"condition": {
"search": {
"list": []
},
"conversation": {
"list": []
},
"plugin": {
"list": []
},
"game": {
"currentL": -1,
"list": []
},
"gamePlugin": {
"list": []
},
"miniprogram": {
"list": [
{
"id": 0,
"name": "pages/user/bindtel/index",
"pathName": "pages/user/bindtel/index",
"query": "id=0000000000LINELINEINFO18082257199008",
"scene": null
},
{
"id": 1,
"name": "好行",
"pathName": "pages/list/haoxing/index",
"query": "",
"scene": null
},
{
"id": 2,
"name": "pages/list/activitynew/index",
"pathName": "pages/list/activitynew/index",
"query": "id=0000000000LINELINEINFO18082257199008",
"scene": null
},
{
"id": -1,
"name": "微旅行",
"pathName": "pages/list/minitrip/index",
"query": "",
"scene": null
},
{
"id": -1,
"name": "一日游",
"pathName": "pages/list/oneday/index",
"query": "",
"scene": null
}
]
}
}
}

51
project.private.config.json

@ -0,0 +1,51 @@
{
"setting": {},
"condition": {
"plugin": {
"list": []
},
"game": {
"list": []
},
"gamePlugin": {
"list": []
},
"miniprogram": {
"list": [
{
"id": 0,
"name": "pages/user/bindtel/index",
"pathName": "pages/user/bindtel/index",
"query": "id=0000000000LINELINEINFO18082257199008",
"scene": null
},
{
"id": 1,
"name": "好行",
"pathName": "pages/list/haoxing/index",
"query": "",
"scene": null
},
{
"name": "pages/activity/suyear/index",
"pathName": "pages/activity/suyear/index",
"query": "id=0000000000LINELINEINFO18082257199008",
"scene": null
},
{
"name": "pages/list/techan/index",
"pathName": "pages/list/techan/index",
"query": "",
"scene": null
},
{
"id": -1,
"name": "一日游",
"pathName": "pages/list/oneday/index",
"query": "",
"scene": null
}
]
}
}
}
Loading…
Cancel
Save