星油云站

This commit is contained in:
caolc
2022-08-08 09:15:09 +08:00
commit f145737091
383 changed files with 67123 additions and 0 deletions

View File

@@ -0,0 +1,451 @@
<template>
<view class="content my-bg">
<cu-custom class="main-totextbar bg-main-oil" :isBack="true" bgColor="bg-main-oil">
<block slot="backText">返回</block>
<block slot="content">加油记录</block>
</cu-custom>
<view class="fixed-t">
<view class="flex bg-main-oil padding solid-bottom">
<!-- <view class="flex-sub">
订单来源
</view> -->
<!-- <view class="flex-treble text-right">
<picker @change="pickSource" mode="selector" :value="indexSource" :range="sources">
<view class="picker">
{{activeSource}}
<text class="cuIcon-right"></text>
</view>
</picker>
</view> -->
</view>
<scroll-view scroll-x class="bg-white nav">
<view class="flex text-center">
<view class="cu-item flex-sub" :class="index==TabCur?'text-orange cur':''"
v-for="(item,index) in tabList" :key="index" @tap="tabSelect" :data-id="index">{{item}}</view>
</view>
</scroll-view>
</view>
<!-- <view class="placeholder-hidden">
<view class="flex bg-main-oil padding solid-bottom">
<view class="flex-sub">
订单来源
</view>
<view class="flex-treble text-right">
<picker @change="pickSource" mode="selector" :value="indexSource" :range="sources">
<view class="picker">
{{sources[indexSource]}}
<text class="cuIcon-right"></text>
</view>
</picker>
</view>
</view>
<scroll-view scroll-x class="bg-white nav">
<view class="flex text-center">
<view class="cu-item flex-sub" :class="index==TabCur?'text-orange cur':''"
v-for="(item,index) in tabList" :key="index" @tap="" :data-id="index">{{item}}</view>
</view>
</scroll-view>
</view> -->
<view class="padding  padding-bottom-0" style="padding-top: 200upx;">
<!-- 0 全部 1 待支付 2 已支付 3退款 -->
<view v-show="TabCur==2" class="order-list">
<view  v-for="(item,index) in allOrder" v-if="allOrder.length" :key='index'>
<OrderItem :indexSource="indexSource" class="cu-list order-item menu-avatar comment" :item="item" />
</view>
<view v-if="allOrder.length<1">
<Empty />
</view>
<view v-show="load.isLoadMore1">
<uni-load-more :status="load.loadStatus1"></uni-load-more>
</view>
</view>
<view v-show="TabCur==1" class="order-list">
<view v-for="(item,index) in payingOrder" v-if="payingOrder.length" :key='index'>
<OrderItem :indexSource="indexSource" class="cu-list order-item menu-avatar comment" :item="item" />
</view>
<view v-if="payingOrder.length<1">
<Empty />
</view>
<view v-show="load.isLoadMore2">
<uni-load-more :status="load.loadStatus2"></uni-load-more>
</view>
</view>
<view v-show="TabCur==0" class="order-list">
<view   v-for="(item,index) in finishedOrder" v-if="finishedOrder.length" :key='index'>
<OrderItem :indexSource="indexSource" class="cu-list order-item menu-avatar comment" :item="item" />
</view>
<view v-if="finishedOrder.length<1">
<Empty />
</view>
<view v-show="load.isLoadMore3">
<uni-load-more :status="load.loadStatus3"></uni-load-more>
</view>
</view>
<view v-show="TabCur==3" class="order-list">
<view   v-for="(item,index) in refundOrder" v-if="refundOrder.length" :key='index'>
<OrderItem :indexSource="indexSource" class="cu-list order-item menu-avatar comment" :item="item" />
</view>
<view v-if="refundOrder.length<1">
<Empty />
</view>
<view v-show="load.isLoadMore4">
<uni-load-more :status="load.loadStatus4"></uni-load-more>
</view>
</view>
</view>
</view>
</template>
<script>
import cloudSiteApi from '@/api/cloud-site.js'
import oliSiteApi from '@/api/oli-site.js'
import OrderItem from '@/packageOrders/components/order-item.vue'
import UniLoadMore from '@/components/uni-load-more/uni-load-more.vue'
export default {
components: {
OrderItem,
UniLoadMore
},
data() {
return {
startTime:'',
endTime:"",
activeSource: '小程序',
indexSource: 1,
sources: ['网页版', '小程序'],
tabList: [
'全部','待支付', '已支付 ', '退款'
],
TabCur: 0,
pageNumber: 1,
istate: -3,
scrollLeft: 0,
order: {
istate: 0,
vol: 3,
oilName: '0#',
orderID: '15979997825872',
oilCode: '12396989',
oilSiteName: '疯疯疯加油站',
carNo: '皖A12354',
sourceType: 3,
realamount: 4.66,
credateDatetime: '2020-10-12 12:30:10'
},
allOrder: [],
finishedOrder: [],
refundOrder: [],
payingOrder: [],
loadStatus: 'loading', //加载样式more-加载前样式loading-加载中样式nomore-没有数据样式
isLoadMore: false, //是否加载中
pageNumber1: 0,
pageNumber2: 0,
pageNumber3: 0,
pageNumber4: 0,
load: {
isLoadMore1: false,
loadStatus1: 'loading',
isLoadMore2: false,
loadStatus2: 'loading',
isLoadMore3: false,
loadStatus3: 'loading',
isLoadMore4: false,
loadStatus4: 'loading',
}
}
},
created() {
this.getTime()
this.loadList(-3, this.pageNumber1, 'created')
this.loadList(0, this.pageNumber2, 'created')
this.loadList(1, this.pageNumber3, 'created')
this.loadList(-2, this.pageNumber4, 'created')
},
onLoad() {
uni.setStorageSync('orderType', 1)
},
onReachBottom() { //上拉触底函数
// console.log('触底函数')
this.loadMoreOrder('onReachBottom')
},
methods: {
getTime(){
let nowDate = new Date();
let year = nowDate.getFullYear();
let month = nowDate.getMonth() + 1 < 10 ? "0" + (nowDate.getMonth() + 1) : nowDate.getMonth() + 1;
let day = nowDate.getDate() < 10 ? "0" + nowDate.getDate() : nowDate.getDate();
let hr = nowDate.getHours()
let mf = nowDate.getMinutes() < 10 ? '0' + nowDate.getMinutes() : nowDate.getMinutes()
let ss =nowDate.getSeconds() < 10 ? '0' + nowDate.getSeconds() :nowDate.getSeconds()
this.startTime = year + "-" + month + "-" + day+" " + '00:00:00';
this.endTime = year + "-" + month + "-" + day+" " +hr+':'+mf+':'+ss
},
loadMoreOrder(from) {
// console.log(from,'loadMoreOrder时间')
// <!-- 0 全部 1 待支付 2 已支付 3退款 -->
if (this.TabCur === 0) {
console.log('这里是0')
if (this.load.loadStatus3 != 'nomore') { //此处判断,上锁,防止重复请求
this.load.isLoadMore3 = true
this.calcIstate(this.TabCur)
}
} else if (this.TabCur === 1) {
console.log('这里是1')
if (this.load.loadStatus2 != 'nomore') { //此处判断,上锁,防止重复请求
this.load.isLoadMore2 = true
this.calcIstate(this.TabCur)
}
} else if (this.TabCur === 2) {
console.log('这里是2')
if (this.load.loadStatus1 != 'nomore') { //此处判断,上锁,防止重复请求
this.load.isLoadMore1 = true
this.calcIstate(this.TabCur)
}
} else if (this.TabCur === 3) {
console.log('这里是3')
if (this.load.loadStatus4 != 'nomore') { //此处判断,上锁,防止重复请求
this.load.isLoadMore4 = true
this.calcIstate(this.TabCur)
}
}
},
tabSelect(e) {
this.TabCur = e.currentTarget.dataset.id;
this.scrollLeft = (e.currentTarget.dataset.id - 1) * 60
// console.log('tabSelect时间')
this.loadMoreOrder('tabSelect')
},
pickSource(e) {
console.log(e)
this.indexSource = parseInt( e.detail.value)
console.log(this.indexSource)
this.activeSource = this.sources[this.indexSource]
console.log(this.activeSource )
uni.setStorageSync('orderType', this.indexSource)
this.pageNumber1 = 0
this.pageNumber2 = 0
this.pageNumber3 = 0
this.pageNumber4 = 0
this.load.isLoadMore1 = false
this.load.loadStatus1 = 'load'
this.load.isLoadMore1 = false
this.load.loadStatus1 = 'load'
this.load.isLoadMore1 = false
this.load.loadStatus1 = 'load'
this.load.isLoadMore1 = false
this.load.loadStatus1 = 'load'
this.allOrder = []
this.refundOrder = []
this.finishedOrder = []
this.payingOrder = []
this.calcIstate(this.TabCur)
},
calcIstate(id) {
switch (id) {
case 0:
this.istate = -3
this.loadList(this.istate, this.pageNumber3, 'calcIstate全部')
break
case 1:
this.istate = 0
this.loadList(this.istate, this.pageNumber2, 'calcIstate待支付')
break
case 2:
this.istate = 1
this.loadList(this.istate, this.pageNumber1, 'calcIstate已支付')
break
case 3:
this.istate = -2
this.loadList(this.istate, this.pageNumber4, 'calcIstate退款')
break
}
},
loadList(istate, pageNumber, from) {
// console.log(istate)
// console.log(pageNumber)
// console.log(from)
console.log( this.startTime)
console.log( this.endTime)
let that = this
const data2 = {
istate: istate, //类型Number 必有字段 备注:订单状态 0待支付 1支付成功 查所有传 ''
pageIndex: pageNumber ,//类型Number 必有字段 备注:查询第几页,默认一页10条
startTime: that.startTime,
endTime: that.endTime
}
console.log('这里是this.indexSource',this.indexSource)
if (this.indexSource == 0) {
// 网页版
if (data2.istate == -3) {
data2.istate = ''
} else if (data2.istate == -2) {
data2.istate = 3
}
console.log(data2)
oliSiteApi.getNewItemSiteOrder(data2).then(res => {
console.log(res)
console.log('-----------------------------------------')
// console.log('参数', data2.istate, '页码', data2.pageIndex, '来源', from)
if (res.code === 20000) {
switch (istate) {
case -3:
console.log('获取全部')
console.log(res.data)
console.log(this.allOrder)
this.allOrder = this.allOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore1 = true
this.load.loadStatus1 = 'nomore'
} else if (res.data.length == 10) {
this.pageNumber1++
this.load.isLoadMore1 = false
}
break
case -2:
console.log('退款')
console.log(res.data)
console.log(this.allOrder)
this.refundOrder = this.refundOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore4 = true
this.load.loadStatus4 = 'nomore'
} else {
this.pageNumber4++
this.load.isLoadMore4 = false
}
break
case 0:
console.log('待支付')
console.log(res.data)
console.log(this.allOrder)
this.payingOrder = this.payingOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore2 = true
this.load.loadStatus2 = 'nomore'
} else {
this.pageNumber2++
this.load.isLoadMore2 = false
}
break
case 1:
console.log('已支付')
console.log(res.data)
console.log(this.allOrder)
this.finishedOrder = this.finishedOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore3 = true
this.load.loadStatus3 = 'nomore'
} else {
this.pageNumber3++
this.load.isLoadMore3 = false
}
break
}
}
})
} else if (this.indexSource == 1) {
// 0待支付 1已支付 -1支付失败 2已取消3已退款
// 小程序
if (data2.istate == -3) {
data2.istate = ''
} else if (data2.istate == -2) {
data2.istate = 3
}
console.log(data2)
oliSiteApi.getNewItemSiteOrder(data2).then(res => {
console.log(res)
console.log('+++++++++++++++++++++++++++++++++++++++++')
// console.log(data2.istate, data2.pageIndex)
if (res.code === 20000) {
switch (istate) {
case 1:
console.log('获取全部')
console.log(res.data)
console.log(this.allOrder)
this.allOrder = this.allOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore1 = true
this.load.loadStatus1 = 'nomore'
} else {
this.pageNumber1++
this.load.isLoadMore1 = false
}
break
case -2:
console.log('退款')
console.log(res.data)
console.log(this.allOrder)
this.refundOrder = this.refundOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore4 = true
this.load.loadStatus4 = 'nomore'
} else {
this.pageNumber4++
this.load.isLoadMore4 = false
}
break
case 0:
console.log('待支付')
console.log(res.data)
console.log(this.allOrder)
this.payingOrder = this.payingOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore2 = true
this.load.loadStatus2 = 'nomore'
} else {
this.pageNumber2++
this.load.isLoadMore2 = false
}
break
case -3:
console.log('全部')
console.log(res.data)
console.log(this.allOrder)
this.finishedOrder = this.finishedOrder.concat(res.data)
if (res.data.length < 10) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
this.load.isLoadMore3 = true
this.load.loadStatus3 = 'nomore'
} else if (res.data.length == 10) {
this.pageNumber3++
this.load.isLoadMore3 = false
}
break
}
}
})
}
}
}
}
</script>
<style scoped>
.content {
min-height: 100%;
}
.order-list .order-item:last-of-type {
margin-bottom: 0;
}
.placeholder-hidden {
opacity: 0;
}
.fixed-t {
position: fixed;
width: 750upx;
z-index: 3;
}
</style>