@@ -619,20 +619,6 @@ Page({ | |||||
this.setData({ | this.setData({ | ||||
mallList: mallList | mallList: mallList | ||||
}) | }) | ||||
// if (res.data && res.data.length) { | |||||
// let merchantVoList = res.data | |||||
// let idList = [] | |||||
// merchantVoList.map(item => { | |||||
// idList.push(item.id) | |||||
// }) | |||||
// this.setData({ | |||||
// idList: idList | |||||
// }) | |||||
// this.getCouponList(idList) //获取推荐列表 | |||||
// } | |||||
// this.setData({ | |||||
// merchantVoList: res.data | |||||
// }) | |||||
}) | }) | ||||
}, | }, | ||||
@@ -6,94 +6,111 @@ const util = require("../../../utils/util"); | |||||
Page({ | Page({ | ||||
data: { | data: { | ||||
navigationBarHeight, | navigationBarHeight, | ||||
boatLsit:[ | |||||
{ | |||||
name:"未使用", | |||||
value:"0" | |||||
boatLsit: [{ | |||||
name: "未使用", | |||||
value: "0" | |||||
}, | }, | ||||
{ | { | ||||
name:"已使用", | |||||
value:"1" | |||||
name: "已使用", | |||||
value: "1" | |||||
}, | }, | ||||
{ | { | ||||
name:"已过期", | |||||
value:"2" | |||||
name: "已过期", | |||||
value: "2" | |||||
}, | }, | ||||
{ | { | ||||
name:"已退款", | |||||
value:"3" | |||||
name: "已退款", | |||||
value: "3" | |||||
}, | }, | ||||
], | ], | ||||
boatFlag:"0", | |||||
content:"", | |||||
boatFlag: "0", | |||||
content: "", | |||||
loading: false, //"上拉加载"的变量,默认false,隐藏 | loading: false, //"上拉加载"的变量,默认false,隐藏 | ||||
pageNum:1, | |||||
pageNum: 1, | |||||
allow_load: true, | allow_load: true, | ||||
list:[], | |||||
list: [], | |||||
shopList: [], | |||||
index: 0, | |||||
mallTenantId: '' | |||||
}, | }, | ||||
setBoatFlag(e){ | |||||
setBoatFlag(e) { | |||||
let index = e.currentTarget.dataset.index | let index = e.currentTarget.dataset.index | ||||
console.log(index); | console.log(index); | ||||
this.setData({ | this.setData({ | ||||
boatFlag:index, | |||||
pageNum:1, | |||||
list:[], | |||||
boatFlag: index, | |||||
pageNum: 1, | |||||
list: [], | |||||
allow_load: true, | allow_load: true, | ||||
loading: false, //"上拉加载"的变量,默认false,隐藏 | loading: false, //"上拉加载"的变量,默认false,隐藏 | ||||
}) | }) | ||||
this.getList() | this.getList() | ||||
}, | }, | ||||
getList(){ | |||||
bindPickerChange(e) { | |||||
const index = e.detail.value | |||||
const mallTenantId = this.data.shopList[index].tenantId | |||||
tt.setStorageSync('mallTenantId', mallTenantId) | |||||
tt.setStorageSync('mallIndex', index) | |||||
this.setData({ | |||||
index: index, | |||||
mallTenantId: mallTenantId, | |||||
allow_load: true | |||||
}); | |||||
console.log(this.data.mallTenantId); | |||||
this.getList(this.data.boatFlag, 1); | |||||
}, | |||||
getList() { | |||||
let that = this | let that = this | ||||
if (that.data.allow_load) { | if (that.data.allow_load) { | ||||
that.setData({ | that.setData({ | ||||
loading: true, | loading: true, | ||||
content: '小主,我在玩命加载中...' | content: '小主,我在玩命加载中...' | ||||
}) | }) | ||||
const mallTenantId = tt.getStorageSync('mallTenantId') | |||||
Http.get({ | Http.get({ | ||||
url:config.api.couponOrderList, | |||||
data:{ | |||||
pageNum:that.data.pageNum, | |||||
url: config.api.couponOrderList, | |||||
data: { | |||||
pageNum: that.data.pageNum, | |||||
pageSize: 10, | pageSize: 10, | ||||
couponOrderStatus:that.data.boatFlag=="all"?"":that.data.boatFlag, | |||||
couponOrderStatus: that.data.boatFlag == "all" ? "" : that.data.boatFlag, | |||||
mallTenantId: mallTenantId || that.data.mallTenantId | |||||
} | } | ||||
}).then(res=>{ | |||||
if(that.data.pageNum==1){ | |||||
}).then(res => { | |||||
if (that.data.pageNum == 1) { | |||||
that.setData({ | that.setData({ | ||||
list: [] | list: [] | ||||
}) | }) | ||||
} | } | ||||
let tempArr= that.data.list | |||||
if(tempArr.length>0){ | |||||
tempArr.map(item=>{ | |||||
let tempArr = that.data.list | |||||
if (tempArr.length > 0) { | |||||
tempArr.map(item => { | |||||
item.expiredTime = util.formatTime(item.expiredTime, "yyyy-MM-dd "); | item.expiredTime = util.formatTime(item.expiredTime, "yyyy-MM-dd "); | ||||
}) | }) | ||||
} | } | ||||
if(that.data.pageNum>=res.data.pages){ | |||||
if (that.data.pageNum >= res.data.pages) { | |||||
that.setData({ | that.setData({ | ||||
allow_load: false | allow_load: false | ||||
}) | }) | ||||
} | } | ||||
if(that.data.pageNum>1){//分页 | |||||
if (that.data.pageNum > 1) { //分页 | |||||
that.setData({ | that.setData({ | ||||
list: res.data.list?[...tempArr ,...res.data.list]:tempArr, | |||||
loading:false | |||||
list: res.data.list ? [...tempArr, ...res.data.list] : tempArr, | |||||
loading: false | |||||
}) | }) | ||||
}else{ | |||||
let tempLsit = res.data.list?res.data.list:[] | |||||
if(tempLsit.length>0){ | |||||
tempLsit.map(item=>{ | |||||
} else { | |||||
let tempLsit = res.data.list ? res.data.list : [] | |||||
if (tempLsit.length > 0) { | |||||
tempLsit.map(item => { | |||||
item.expiredTime = util.formatTime(item.expiredTime, "yyyy-MM-dd"); | item.expiredTime = util.formatTime(item.expiredTime, "yyyy-MM-dd"); | ||||
}) | }) | ||||
} | } | ||||
that.setData({ | that.setData({ | ||||
list: tempLsit, | list: tempLsit, | ||||
loading:false | |||||
loading: false | |||||
}) | }) | ||||
} | } | ||||
}).catch(err => { | }).catch(err => { | ||||
@@ -102,7 +119,7 @@ Page({ | |||||
icon: "none" | icon: "none" | ||||
}); | }); | ||||
}) | }) | ||||
}else { | |||||
} else { | |||||
that.setData({ | that.setData({ | ||||
loading: true, | loading: true, | ||||
content: "——— 再拉裤子就掉了啦 ———" | content: "——— 再拉裤子就掉了啦 ———" | ||||
@@ -113,21 +130,31 @@ Page({ | |||||
}) | }) | ||||
}, 1400) | }, 1400) | ||||
} | } | ||||
}, | }, | ||||
onLoad: function (options) { | onLoad: function (options) { | ||||
Http.get({ | |||||
url: '/mall/subMall?isAll=1', | |||||
}).then(res => { | |||||
this.setData({ | |||||
shopList: res.data, | |||||
mallTenantId: tt.getStorageSync('mallTenantId') || res.data[0].tenantId | |||||
}); | |||||
console.log(this.data.shopList, 'list'); | |||||
}).catch(err => { | |||||
console.log(err, 'err'); | |||||
}) | |||||
}, | }, | ||||
onReachBottom(){//触底 | |||||
onReachBottom() { //触底 | |||||
console.log(111); | console.log(111); | ||||
this.setData({ | this.setData({ | ||||
pageNum:this.data.pageNum+1 | |||||
pageNum: this.data.pageNum + 1 | |||||
}) | }) | ||||
this.getList() | this.getList() | ||||
}, | |||||
onShow:function(){ | |||||
}, | |||||
onShow: function () { | |||||
this.getList() | this.getList() | ||||
} | |||||
} | |||||
}) | }) |
@@ -2,7 +2,7 @@ | |||||
<!-- <navbar back home text="我的券包" background='#fff' color="#000"></navbar> | <!-- <navbar back home text="我的券包" background='#fff' color="#000"></navbar> | ||||
<view style="height:{{navigationBarHeight}} "></view> --> | <view style="height:{{navigationBarHeight}} "></view> --> | ||||
<view class="boatBoxf" > | |||||
<view class="boatBoxf"> | |||||
<view class="boatBox"> | <view class="boatBox"> | ||||
<view class="boatItemBox" tt:for="{{boatLsit}}" tt:key="index" bindtap="setBoatFlag" data-index="{{index}}"> | <view class="boatItemBox" tt:for="{{boatLsit}}" tt:key="index" bindtap="setBoatFlag" data-index="{{index}}"> | ||||
<view class="{{boatFlag==item.value? 'boatTitleA':'boatTitle'}}">{{item.name}}</view> | <view class="{{boatFlag==item.value? 'boatTitleA':'boatTitle'}}">{{item.name}}</view> | ||||
@@ -12,6 +12,18 @@ | |||||
</view> | </view> | ||||
<view style="height:90rpx "></view> | <view style="height:90rpx "></view> | ||||
<view class="picker" tt:if="{{shopList.length>1}}"> | |||||
<picker mode="selector" bindchange="bindPickerChange" value="{{index}}" range="{{shopList}}" range-key="name" | |||||
disabled="{{false}}"> | |||||
<view class="inside"> | |||||
<view class="picker_item"> | |||||
{{shopList[index].name}} | |||||
</view> | |||||
<image class="img" src="/assets/itemImg/chevron.png"></image> | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<view class="ticketList" tt:for="{{list}}" tt:key="{{index}}"> | <view class="ticketList" tt:for="{{list}}" tt:key="{{index}}"> | ||||
<view class="ticketItem"> | <view class="ticketItem"> | ||||
<view class="shopImg"> | <view class="shopImg"> | ||||
@@ -42,4 +54,4 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
<tabbar tt:if="{{ifshowtab}}"/> | |||||
<tabbar tt:if="{{ifshowtab}}" /> |
@@ -1,66 +1,91 @@ | |||||
.boatBoxf{ | |||||
.boatBoxf { | |||||
width: 100%; | width: 100%; | ||||
height: 90rpx; | height: 90rpx; | ||||
position: fixed; | position: fixed; | ||||
top: 0; | top: 0; | ||||
left: 0; | left: 0; | ||||
} | } | ||||
.boatBox{ | |||||
width: 100%; | |||||
height: 90rpx; | |||||
display: flex; | |||||
justify-content: space-around; | |||||
background-color: #fff; | |||||
} | |||||
.boatTitle{ | |||||
font-size: 30rpx; | |||||
text-align: center; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
color: #999; | |||||
} | |||||
.boatTitleA{ | |||||
font-size: 32rpx; | |||||
text-align: center; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
font-weight: 500; | |||||
} | |||||
.boatA{ | |||||
width: 80rpx; | |||||
height: 6rpx; | |||||
background-color: #fb3e5c; | |||||
margin: 0 auto; | |||||
border-radius: 20rpx; | |||||
} | |||||
.ticketList{ | |||||
width: 90%; | |||||
margin: 20rpx auto ; | |||||
overflow: hidden; | |||||
} | |||||
.ticketItem{ | |||||
float: left; | |||||
background-color: #fff; | |||||
border-radius: 20rpx; | |||||
width: 80%; | |||||
height: 140rpx; | |||||
overflow: hidden; | |||||
} | |||||
.useBtn{ | |||||
float: left; | |||||
border-radius: 20rpx; | |||||
width: 20%; | |||||
height: 140rpx; | |||||
line-height: 140rpx; | |||||
text-align: center; | |||||
color: #FFFFFF; | |||||
font-size: 30rpx; | |||||
background: linear-gradient(127deg,rgba(252,177,74,1) 0%,rgba(254,70,20,1) 100%) | |||||
} | |||||
.nouseBtn{ | |||||
.boatBox { | |||||
width: 100%; | |||||
height: 90rpx; | |||||
display: flex; | |||||
justify-content: space-around; | |||||
background-color: #fff; | |||||
} | |||||
.boatTitle { | |||||
font-size: 30rpx; | |||||
text-align: center; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
color: #999; | |||||
} | |||||
.boatTitleA { | |||||
font-size: 32rpx; | |||||
text-align: center; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
font-weight: 500; | |||||
} | |||||
.picker { | |||||
margin-top: 25rpx; | |||||
padding: 25rpx 45rpx; | |||||
margin-bottom: 15rpx; | |||||
background-color: #fff; | |||||
} | |||||
.picker .inside { | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
.picker .inside .img { | |||||
width: 20rpx; | |||||
height: 40rpx; | |||||
} | |||||
.boatA { | |||||
width: 80rpx; | |||||
height: 6rpx; | |||||
background-color: #fb3e5c; | |||||
margin: 0 auto; | |||||
border-radius: 20rpx; | |||||
} | |||||
.ticketList { | |||||
width: 90%; | |||||
margin: 20rpx auto; | |||||
overflow: hidden; | |||||
} | |||||
.ticketItem { | |||||
float: left; | |||||
background-color: #fff; | |||||
border-radius: 20rpx; | |||||
width: 80%; | |||||
height: 140rpx; | |||||
overflow: hidden; | |||||
} | |||||
.useBtn { | |||||
float: left; | |||||
border-radius: 20rpx; | |||||
width: 20%; | |||||
height: 140rpx; | |||||
line-height: 140rpx; | |||||
text-align: center; | |||||
color: #FFFFFF; | |||||
font-size: 30rpx; | |||||
background: linear-gradient(127deg, rgba(252, 177, 74, 1) 0%, rgba(254, 70, 20, 1) 100%) | |||||
} | |||||
.nouseBtn { | |||||
float: left; | float: left; | ||||
border-radius: 20rpx; | border-radius: 20rpx; | ||||
width: 20%; | width: 20%; | ||||
@@ -72,122 +97,129 @@ | |||||
background: #CECECE; | background: #CECECE; | ||||
} | } | ||||
.shopImg{ | |||||
width: 88rpx; | |||||
height: 88rpx; | |||||
border: 1px solid #f8f8f8; | |||||
border-radius: 50rpx; | |||||
margin-left: 20rpx; | |||||
margin-top: 30rpx; | |||||
float: left; | |||||
.shopImg { | |||||
width: 88rpx; | |||||
height: 88rpx; | |||||
border: 1px solid #f8f8f8; | |||||
border-radius: 50rpx; | |||||
margin-left: 20rpx; | |||||
margin-top: 30rpx; | |||||
float: left; | |||||
} | } | ||||
.shopImg image{ | |||||
.shopImg image { | |||||
width: 100%; | width: 100%; | ||||
height: 100%; | height: 100%; | ||||
border: 1px solid #f8f8f8; | border: 1px solid #f8f8f8; | ||||
border-radius: 50rpx; | border-radius: 50rpx; | ||||
} | } | ||||
.ticketData{ | |||||
margin-left: 20rpx; | |||||
overflow: hidden; | |||||
float: left; | |||||
.ticketData { | |||||
margin-left: 20rpx; | |||||
overflow: hidden; | |||||
float: left; | |||||
} | } | ||||
.ticketTitle{ | |||||
font-size: 32rpx; | |||||
margin-top: 30rpx; | |||||
white-space: nowrap; | |||||
text-overflow: ellipsis; | |||||
overflow: hidden; | |||||
width: 270rpx; | |||||
.ticketTitle { | |||||
font-size: 32rpx; | |||||
margin-top: 30rpx; | |||||
white-space: nowrap; | |||||
text-overflow: ellipsis; | |||||
overflow: hidden; | |||||
width: 270rpx; | |||||
} | } | ||||
.date{ | |||||
font-size: 22rpx; | |||||
margin-top: 10rpx; | |||||
.date { | |||||
font-size: 22rpx; | |||||
margin-top: 10rpx; | |||||
} | } | ||||
.date::before{ | |||||
content: "有效期至:"; | |||||
font-size: 26rpx; | |||||
.date::before { | |||||
content: "有效期至:"; | |||||
font-size: 26rpx; | |||||
} | } | ||||
.loading { | .loading { | ||||
text-align: center; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
font-size: 26rpx; | |||||
color: #999; | |||||
} | |||||
.loading image { | |||||
width: 60rpx; | |||||
height: 60rpx; | |||||
vertical-align: middle; | |||||
margin-right: 10rpx; | |||||
} | |||||
.dingdan { | |||||
margin-top: 33rpx; | |||||
} | |||||
.dingdan text:nth-of-type(1) { | |||||
display: block; | |||||
font-size: 34rpx; | |||||
color: #333; | |||||
letter-spacing: 0; | |||||
text-align: center; | |||||
} | |||||
.dingdan text:nth-of-type(2) { | |||||
display: block; | |||||
font-size: 28rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
text-align: center; | |||||
} | |||||
.dingdan image { | |||||
display: block; | |||||
width: 300rpx; | |||||
height: 300rpx; | |||||
margin: 0 auto 16rpx; | |||||
} | |||||
.wait{ | |||||
display: inline-block; | |||||
width: 123rpx !important; | |||||
overflow: visible!important; | |||||
font-size: 28rpx; | |||||
color: #FD832D; | |||||
letter-spacing: 0; | |||||
text-align: right; | |||||
line-height: 28rpx!important; | |||||
float: right; | |||||
margin: 20rpx; | |||||
} | |||||
.sucess { | |||||
display: inline-block; | |||||
width: 123rpx !important; | |||||
/* overflow: hidden; */ | |||||
font-family:PingFangSC-Regular; | |||||
font-size: 28rpx; | |||||
font-weight:400; | |||||
color: #2C8DFF; | |||||
letter-spacing: 0; | |||||
text-align: right; | |||||
line-height: 26px; | |||||
float: right; | |||||
margin: 20rpx; | |||||
} | |||||
.close { | |||||
display: inline-block; | |||||
width: 123rpx !important; | |||||
overflow: hidden; | |||||
font-size: 28rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
text-align: right; | |||||
line-height: 28rpx; | |||||
float: right; | |||||
margin: 20rpx; | |||||
} | |||||
text-align: center; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
font-size: 26rpx; | |||||
color: #999; | |||||
} | |||||
.loading image { | |||||
width: 60rpx; | |||||
height: 60rpx; | |||||
vertical-align: middle; | |||||
margin-right: 10rpx; | |||||
} | |||||
.dingdan { | |||||
margin-top: 33rpx; | |||||
} | |||||
.dingdan text:nth-of-type(1) { | |||||
display: block; | |||||
font-size: 34rpx; | |||||
color: #333; | |||||
letter-spacing: 0; | |||||
text-align: center; | |||||
} | |||||
.dingdan text:nth-of-type(2) { | |||||
display: block; | |||||
font-size: 28rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
text-align: center; | |||||
} | |||||
.dingdan image { | |||||
display: block; | |||||
width: 300rpx; | |||||
height: 300rpx; | |||||
margin: 0 auto 16rpx; | |||||
} | |||||
.wait { | |||||
display: inline-block; | |||||
width: 123rpx !important; | |||||
overflow: visible !important; | |||||
font-size: 28rpx; | |||||
color: #FD832D; | |||||
letter-spacing: 0; | |||||
text-align: right; | |||||
line-height: 28rpx !important; | |||||
float: right; | |||||
margin: 20rpx; | |||||
} | |||||
.sucess { | |||||
display: inline-block; | |||||
width: 123rpx !important; | |||||
/* overflow: hidden; */ | |||||
font-family: PingFangSC-Regular; | |||||
font-size: 28rpx; | |||||
font-weight: 400; | |||||
color: #2C8DFF; | |||||
letter-spacing: 0; | |||||
text-align: right; | |||||
line-height: 26px; | |||||
float: right; | |||||
margin: 20rpx; | |||||
} | |||||
.close { | |||||
display: inline-block; | |||||
width: 123rpx !important; | |||||
overflow: hidden; | |||||
font-size: 28rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
text-align: right; | |||||
line-height: 28rpx; | |||||
float: right; | |||||
margin: 20rpx; | |||||
} |
@@ -21,11 +21,9 @@ | |||||
</view> | </view> | ||||
<image class="img" src="/assets/itemImg/chevron.png"></image> | <image class="img" src="/assets/itemImg/chevron.png"></image> | ||||
</view> | </view> | ||||
</picker> | </picker> | ||||
</view> | </view> | ||||
<view> | <view> | ||||
<view tt:for='{{list}}' tt:if="{{list.length!=0}}" class='section' tt:key='index'> | <view tt:for='{{list}}' tt:if="{{list.length!=0}}" class='section' tt:key='index'> | ||||
<view class='detail_top'> | <view class='detail_top'> | ||||