@@ -46,6 +46,13 @@
< / view >
< / scroll -view >
< / view > -- >
< view v-if = "exportShow==true" >
< view style = "padding: 30upx;" > < / view >
< view style = "position: fixed;width: 750upx;z-index: 5;text-align: right;top:315upx;right: 30upx;" >
< button class = "cu-btn bg-white" @click ="orderExport" > 订单导出 < / button >
< / view >
< / view >
< view class = "padding padding-bottom-0" style = "padding-top: 200upx;" >
<!-- 0 全部 1 待支付 2 已支付 3 退款 -- >
< view v-show = "TabCur==2" class="order-list" >
@@ -93,12 +100,44 @@
< / view >
< / view >
< / view >
< uni-popup ref = "popup" >
< view class = "popup_card" >
< view class = "popup_card_from" >
< view class = "popup_card_from_item" >
< view class = "popup_card_from_item_left_text" > 邮箱 : < / view >
< input v-model = "params.email" class="card_item_input" placeholder="请输入邮箱" / >
< / view >
< view class = "popup_card_from_item" >
< view class = "popup_card_from_item_left_text" > 开始时间 : < / view >
< view class = "uni-list-cell-db" >
< picker mode = "date" :value = "startDate" @change ="startDateChange" class = "uni-picker" >
< view class = "uni-input" > { { startDate } } < / view >
< / picker >
< / view >
< / view >
< view class = "popup_card_from_item" >
< view class = "popup_card_from_item_left_text" > 结束时间 : < / view >
< view class = "uni-list-cell-db" >
< picker mode = "date" :value = "endDate" @change ="endDateChange" :start = "endStartDate" :end = "endEndDate" class = "uni-picker" >
< view class = "uni-input" > { { endDate } } < / view >
< / picker >
< / view >
< / view >
< / view >
< view class = "popup_card_bottom" >
< button @click ="$refs.popup.close()" class = "popup_card_bottom_close" > 取消 < / button >
< button @click ="report" class = "popup_card_bottom_submit" > 导出 < / button >
< / view >
< / view >
< / uni-popup >
< / view >
< / template >
< script >
import cloudSiteApi from '@/api/cloud-site.js'
import oliSiteApi from '@/api/oli-site.js'
import oliFinanceApi from '@/api/oil-finance.js'
import OrderItem from '@/packageOrders/components/order-item.vue'
import UniLoadMore from '@/components/uni-load-more/uni-load-more.vue'
@@ -154,7 +193,20 @@
loadStatus3 : 'loading' ,
isLoadMore4 : false ,
loadStatus4 : 'loading' ,
}
} ,
params : {
siteId : uni . getStorageSync ( 'oilSitePriceId' ) ,
siteName : uni . getStorageSync ( 'oilSitePriceName' ) ,
email : '' ,
startTime : '' ,
endTime : ''
} ,
startDate : '' ,
endDate : '' ,
endStartDate : '' ,
endEndDate : '' ,
exportShow : false
}
} ,
@@ -164,6 +216,23 @@
this . loadList ( 0 , this . pageNumber2 , 'created' )
this . loadList ( 1 , this . pageNumber3 , 'created' )
this . loadList ( - 2 , this . pageNumber4 , 'created' )
let exportList = [
'1689181519096909824' ,
'1689182438357262336' ,
'1689183144276463616' ,
'1689183774927818752' ,
'1689184331812888576' ,
'1689185023261741056'
]
var exportFields = exportList . filter ( ( item ) => {
return item == uni . getStorageSync ( 'oilSitePriceId' ) ;
} )
if ( exportFields . length > 0 ) {
this . exportShow = true
} else {
this . exportShow = false
}
} ,
onLoad ( ) {
uni . setStorageSync ( 'orderType' , 1 )
@@ -188,25 +257,21 @@
// 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 )
@@ -216,15 +281,11 @@
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
@@ -265,11 +326,6 @@
}
} ,
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支付成功 查所有传 ''
@@ -277,7 +333,6 @@
// startTime: that.startTime,
// endTime: that.endTime
}
console . log ( '这里是this.indexSource' , this . indexSource )
if ( this . indexSource == 0 ) {
// 网页版
if ( data2 . istate == - 3 ) {
@@ -285,17 +340,11 @@
} 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
@@ -306,9 +355,6 @@
}
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 ) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
@@ -320,9 +366,6 @@
}
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 ) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
@@ -334,9 +377,6 @@
}
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
@@ -359,17 +399,10 @@
} 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 ) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
@@ -382,9 +415,6 @@
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
@@ -395,9 +425,6 @@
}
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
@@ -408,9 +435,6 @@
}
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 ) { //判断接口返回数据量小于请求数据量,则表示此为最后一页
@@ -425,6 +449,90 @@
}
} )
}
} ,
startDateChange : function ( e ) {
this . startDate = e . detail . value
let data = this . startDate
this . endStartDate = data
this . endEndDate = this . getEndDate ( Date . parse ( data ) + 3600 * 1000 * 24 * 30 )
this . params . startTime = this . startDate
} ,
endDateChange : function ( e ) {
if ( this . startDate == '' ) {
uni . showToast ( {
title : '请先选择开始时间' ,
icon : 'none'
} ) ;
} else {
this . endDate = e . detail . value
this . params . endTime = this . endDate
}
} ,
getEndDate ( val ) {
let nowDate = new Date ( val )
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 ( ) ;
return year + "-" + month + "-" + day
} ,
orderExport ( ) {
this . startDate = ''
this . endDate = ''
this . params . email = ''
this . params . startTime = ''
this . params . endTime = ''
this . $refs . popup . open ( 'center' )
} ,
report ( ) {
if ( this . params . email == '' ) {
uni . showToast ( {
title : '电子邮箱不能为空' ,
icon : 'none'
} ) ;
return false
} else if ( this . params . email != '' ) {
const emailRegex = /^([0-9A-Za-z\-_\.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/g
if ( ! emailRegex . test ( this . params . email ) ) {
uni . showToast ( {
title : '电子邮箱格式不准确' ,
icon : 'none'
} ) ;
return false
}
}
if ( this . params . startTime == '' ) {
uni . showToast ( {
title : '请选择开始时间' ,
icon : 'none'
} ) ;
return false
}
if ( this . params . endTime == '' ) {
uni . showToast ( {
title : '请选择结束时间' ,
icon : 'none'
} ) ;
return false
}
uni . showModal ( {
content : '请确认邮箱 \n' + this . params . email ,
success : ( res ) => {
if ( res . confirm ) {
oliFinanceApi . getOrderInfoExport ( this . params ) . then ( res => {
if ( res . code == 20000 ) {
uni . showToast ( {
title : res . msg ,
icon : 'none'
} ) ;
this . $refs . popup . close ( ) ;
}
} )
}
}
} ) ;
}
}
}
@@ -448,4 +556,73 @@
width : 750 upx ;
z - index : 3 ;
}
. uni - input {
height : 25 rpx ;
}
. uni - picker {
height : 25 rpx ;
}
. uni - list - cell - db {
width : 100 % ;
height : 30 rpx ;
}
. popup _card _bottom {
display : flex ;
justify - content : center ;
margin - top : 68 rpx ;
}
. popup _card _bottom _submit {
background : # FE0505 ;
color : # ffffff ;
font - size : 25 rpx ;
width : 240 rpx ;
}
. popup _card _bottom _close {
background : # FFFFFF ;
font - size : 25 rpx ;
width : 240 rpx ;
}
. popup _card _from _item _right _text {
font - size : 24 rpx ;
color : # 000000 ;
max - width : 50 % ;
overflow : hidden ;
text - overflow : ellipsis ;
white - space : nowrap ;
margin - right : 25 rpx ;
}
. popup _card _from _item _left _text {
width : 150 rpx ;
font - size : 24 rpx ;
color : # 666666 ;
}
. popup _card _from _item {
display : flex ;
align - items : center ;
margin - bottom : 40 rpx ;
}
. popup _card _title {
text - align : center ;
font - weight : 500 ;
color : # 000000 ;
font - size : 36 rpx ;
margin - bottom : 80 rpx ;
}
. popup _card {
width : 681 rpx ;
height : 528 rpx ;
background : # FFFFFF ;
border - radius : 15 px ;
padding : 64 rpx ;
}
< / style >