parent
c3839f37ef
commit
432f7667f5
@ -0,0 +1,436 @@ |
||||
<template> |
||||
<view> |
||||
|
||||
<view class="headsearch width94 mart15 paddtop5 paddbotm10 fotct"> |
||||
|
||||
<view class="mart10 width90 alijusstart"> |
||||
<view class="fcorfff font14 margleri10 width60 fotlt">开始时间 :</view> |
||||
<picker mode="date" :value="startdate" :start="startDate" :end="endDate" @change="bindDateChange"> |
||||
<view class="datetim fcorfff">{{startdate}}<i class="down"></i></view> |
||||
</picker> |
||||
</view> |
||||
<view class="mart10 width90 alijusstart"> |
||||
<view class="fcorfff font14 margleri10 width60 fotlt">结束时间 :</view> |
||||
<picker mode="date" :value="enddate" :start="startDate" :end="endDate" @change="bindDateChange1"> |
||||
<view class="datetim fcorfff">{{enddate}}<i class="down"></i></view> |
||||
</picker> |
||||
</view> |
||||
|
||||
<view class="mart15 width90 alijusstart" v-if="userInfo.secUser.objectType == 2"> |
||||
<view class="fcorfff font14 margleri10 width25 fotlt">业务员 :</view> |
||||
<picker mode="selector" class="width75" :range="salesmanList" range-key="name" |
||||
@change="bindDateChange4"> |
||||
<view class="fcorfff fotrt font14" v-if="salesmanname">{{salesmanname}}<i class="down"></i></view> |
||||
<view class="fcorfff fotrt font14" v-else>请选择<i class="down"></i></view> |
||||
</picker> |
||||
</view> |
||||
|
||||
<view class="mart15 width90 alijusstart" |
||||
v-if="userInfo.secUser.objectType == 2 || userInfo.secUser.objectType == 3"> |
||||
<view class="fcorfff font14 margleri10 width25 fotlt">商户 :</view> |
||||
<picker mode="selector" class="width75" :range="merList" range-key="merName" @change="bindDateChange2"> |
||||
<view class="fcorfff fotrt font14" v-if="merName">{{merName}}<i class="down"></i></view> |
||||
<view class="fcorfff fotrt font14" v-else>请选择<i class="down"></i></view> |
||||
</picker> |
||||
</view> |
||||
|
||||
<view class="mart15 width90 alijusstart" |
||||
v-if="userInfo.secUser.objectType == 2 || userInfo.secUser.objectType == 3 || userInfo.secUser.objectType == 4"> |
||||
<view class="fcorfff font14 margleri10 width25 fotlt">门店 :</view> |
||||
<picker mode="selector" class="width75" :range="storeListByMer" range-key="name" |
||||
@change="bindDateChange3"> |
||||
<view class="fcorfff fotrt font14" v-if="storename">{{storename}}<i class="down"></i></view> |
||||
<view class="fcorfff fotrt font14" v-else>请选择<i class="down"></i></view> |
||||
</picker> |
||||
</view> |
||||
|
||||
<view class="input-box"> |
||||
<view class="icon search"></view> |
||||
<input placeholder="请输入订单编号" v-model="orderNo" placeholder-style="color:#c0c0c0;" @input="toSearch()" /> |
||||
</view> |
||||
</view> |
||||
|
||||
|
||||
<view class="width100 height90 backcorfff marb5 mart15" style="border-radius: 22px 0 22px 0;"> |
||||
<view class="width100 fotct height40p alijus font20 fcor333"> |
||||
<view class="width50"> |
||||
{{totalPrice}} 元 |
||||
</view> |
||||
<view class="width50 "> |
||||
{{totalNum}} 笔 |
||||
</view> |
||||
<!-- <view style="width: 1px;" class="height80 backcor6"></view> --> |
||||
</view> |
||||
<view class="width100 fotct height40p alijus font14 fcor333"> |
||||
<view class="width50 "> |
||||
交易金额 |
||||
</view> |
||||
<view class="width50"> |
||||
交易笔数 |
||||
</view> |
||||
</view> |
||||
</view> |
||||
<view v-if="notesList == ''" class="mart60 fotct font14 fcor666"> |
||||
<image mode="widthFix" style="width: 70vw;" src="/static/img/noorder.png"></image> |
||||
</view> |
||||
<view class="width100 backcorfff" v-for="(item,index) in notesList" :key="index" |
||||
@click="jumpOderdetails(item.outTradeNo)"> |
||||
<view class="width94 paddtop10 paddbotm10 alijusstart bor-botm1"> |
||||
<view class="width15"> |
||||
<image src="/static/img/wechat.png" mode="widthFix" class="iconw40" |
||||
v-if="item.payMode == 'WECHAT'"></image> |
||||
<image src="/static/img/alipay.png" mode="widthFix" class="iconw40" |
||||
v-if="item.payMode == 'ALIPAY'"></image> |
||||
</view> |
||||
|
||||
<view class="width85"> |
||||
<view class="font15 fcor666 width100">{{item.outTradeNo}}</view> |
||||
<view class="alijusstart font14 fcor999"> |
||||
<view class="width50 text1">扫一扫</view> |
||||
<view class="width50 fotrt">{{statusList[item.status]}}</view> |
||||
</view> |
||||
<view class="alijusstart font14 paddtop5 fcor999"> |
||||
<view class="width15 text1" v-if="userInfo.secUser.objectType == 2">{{item.salesmanName}}</view> |
||||
<view class="width85 text1" v-if="userInfo.secUser.objectType != 2">{{item.storeName}}</view> |
||||
<view class="width85 fotrt" v-if="userInfo.secUser.objectType == 2">{{item.storeName}}</view> |
||||
</view> |
||||
<view class="alijusstart font14 paddtop5 fcor999"> |
||||
<view class="width70">{{item.createTime | timeFormat('yyyy-mm-dd hh:mm:ss')}} |
||||
</view> |
||||
<view class="width30 fotrt">¥ {{item.tradeAmount}}</view> |
||||
</view> |
||||
|
||||
</view> |
||||
</view> |
||||
|
||||
</view> |
||||
|
||||
<!-- <view @click="scanCode()"> |
||||
扫码核销 |
||||
</view> --> |
||||
</view> |
||||
</template> |
||||
|
||||
<script> |
||||
import { |
||||
getTradeOrderList, |
||||
getMerList, |
||||
getStoreListByMer, |
||||
querySalesmanList |
||||
} from '@/Utils/Api.js'; |
||||
let app = getApp(); |
||||
export default { |
||||
data() { |
||||
const currentDate = this.getDate({ |
||||
format: true |
||||
}) |
||||
return { |
||||
startdate: currentDate, |
||||
enddate: currentDate, |
||||
notesList: [], |
||||
statusList: { |
||||
1: "待支付", |
||||
2: "支付中", |
||||
3: "支付成功", |
||||
4: "支付失败", |
||||
5: "已取消", |
||||
6: "已退款" |
||||
}, |
||||
pageNum: 1, |
||||
pageSize: 10, |
||||
isNoMoreData: false, //是否加载中 |
||||
orderNo: '', //订单编号 |
||||
totalPrice: 0, //总价格 |
||||
totalNum: 0, //总笔数 |
||||
userInfo: app.globalData.userInfo, //登录信息 |
||||
merList: [], // 商户列表 |
||||
merno: '', //商户编号 |
||||
merName: '', //商户名称 |
||||
storeListByMer: [], //门店列表 |
||||
storeno: '', //门店编号 |
||||
storename: '', //门店名称, |
||||
salesmanList: [], //业务员列表 |
||||
salesmanid: '', //业务员id |
||||
salesmanname: '', //业务员名称 |
||||
} |
||||
}, |
||||
computed: { |
||||
startDate() { |
||||
return this.getDate('start'); |
||||
}, |
||||
endDate() { |
||||
return this.getDate('end'); |
||||
} |
||||
}, |
||||
onLoad() { |
||||
//代理商 |
||||
if (this.userInfo.secUser.objectType == 2) { |
||||
this.querySalesmanList(); |
||||
} |
||||
//业务员 |
||||
if (this.userInfo.secUser.objectType == 3) { |
||||
this.getMerList(this.userInfo.salesman.id); |
||||
} |
||||
//商户 |
||||
if (this.userInfo.secUser.objectType == 4) { |
||||
this.getStoreListByMer(this.userInfo.mer.id); |
||||
} |
||||
this.getTradeOrderList(); |
||||
}, |
||||
onReachBottom() { |
||||
this.getTradeOrderList(); |
||||
}, |
||||
|
||||
methods: { |
||||
scanCode(){ |
||||
// wx.scanQRCode({ |
||||
// needResult: 0, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果, |
||||
// scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有 |
||||
// success: function (res) { |
||||
// var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果 |
||||
// } |
||||
// }); |
||||
}, |
||||
//代理商查询业务员 |
||||
querySalesmanList() { |
||||
let datas = { |
||||
pageNum: 1, |
||||
pageSize: 9999, |
||||
agentId: this.userInfo.agent.id |
||||
} |
||||
querySalesmanList(datas).then(res => { |
||||
if (res.return_code == '000000' && res.return_data.list != '') { |
||||
this.salesmanList = res.return_data.list; |
||||
// this.salesmanid = res.return_data.list[0].id; |
||||
// this.getStoreListByMer(res.return_data.list[0].id); |
||||
// this.salesmanname = res.return_data.list[0].name; |
||||
} |
||||
}) |
||||
}, |
||||
//业务员查询商户 |
||||
getMerList(item) { |
||||
let datas = { |
||||
pageNum: 1, |
||||
pageSize: 9999, |
||||
merStatus:1, |
||||
salesmanId: item |
||||
} |
||||
getMerList(datas).then(res => { |
||||
if (res.return_code == '000000' && res.return_data.list != '') { |
||||
this.merList = res.return_data.list; |
||||
// this.merno = res.return_data.list[0].id; |
||||
// this.getStoreListByMer(res.return_data.list[0].id); |
||||
// this.merName = res.return_data.list[0].merName; |
||||
} |
||||
}) |
||||
}, |
||||
//商户查询门店 |
||||
getStoreListByMer(item) { |
||||
let datas = { |
||||
pageNum: 1, |
||||
pageSize: 9999, |
||||
merId: item |
||||
} |
||||
getStoreListByMer(datas).then(res => { |
||||
if (res.return_code == '000000' && res.return_data.list != '') { |
||||
this.storeListByMer = res.return_data.list; |
||||
// this.storeno = res.return_data.list[0].id; |
||||
// this.storename = res.return_data.list[0].name; |
||||
} |
||||
}) |
||||
}, |
||||
//时间修改 |
||||
getDate(type) { |
||||
const date = new Date(); |
||||
let year = date.getFullYear(); |
||||
let month = date.getMonth() + 1; |
||||
let day = date.getDate(); |
||||
|
||||
if (type === 'start') { |
||||
year = year - 60; |
||||
} else if (type === 'end') { |
||||
year = year + 2; |
||||
} |
||||
month = month > 9 ? month : '0' + month;; |
||||
day = day > 9 ? day : '0' + day; |
||||
return `${year}-${month}-${day}`; |
||||
}, |
||||
//选择时间 |
||||
bindDateChange(e) { |
||||
this.startdate = e.target.value; |
||||
this.pageNum = 1; |
||||
this.notesList = []; |
||||
this.isNoMoreData = false; |
||||
this.getTradeOrderList(); |
||||
}, |
||||
bindDateChange1(e) { |
||||
this.enddate = e.target.value; |
||||
this.pageNum = 1; |
||||
this.notesList = []; |
||||
this.isNoMoreData = false; |
||||
this.getTradeOrderList(); |
||||
}, |
||||
//业务员 |
||||
bindDateChange4(e) { |
||||
this.salesmanid = this.salesmanList[e.target.value].id; |
||||
this.salesmanname = this.salesmanList[e.target.value].name; |
||||
this.getMerList(this.salesmanList[e.target.value].id); |
||||
this.pageNum = 1; |
||||
this.notesList = []; |
||||
this.isNoMoreData = false; |
||||
this.getTradeOrderList(); |
||||
}, |
||||
//商户 |
||||
bindDateChange2(e) { |
||||
this.merno = this.merList[e.target.value].id; |
||||
this.merName = this.merList[e.target.value].merName; |
||||
this.getStoreListByMer(this.merList[e.target.value].id); |
||||
this.pageNum = 1; |
||||
this.notesList = []; |
||||
this.isNoMoreData = false; |
||||
this.getTradeOrderList(); |
||||
}, |
||||
//门店 |
||||
bindDateChange3(e) { |
||||
this.storeno = this.storeListByMer[e.target.value].id; |
||||
this.storename = this.storeListByMer[e.target.value].name; |
||||
this.pageNum = 1; |
||||
this.notesList = []; |
||||
this.isNoMoreData = false; |
||||
this.getTradeOrderList(); |
||||
}, |
||||
|
||||
toSearch() { |
||||
this.pageNum = 1; |
||||
this.notesList = []; |
||||
this.isNoMoreData = false; |
||||
this.getTradeOrderList(); |
||||
}, |
||||
//查询列表 |
||||
getTradeOrderList() { |
||||
uni.showLoading({ |
||||
title: '加载中...' |
||||
}) |
||||
if (this.isNoMoreData) { |
||||
uni.hideLoading() |
||||
return false; |
||||
} |
||||
let a = new Date(this.startdate).getTime(); |
||||
let b = new Date(this.enddate).getTime(); |
||||
let startTime = a - 28800000; |
||||
let endTime = b + 57599000; |
||||
let pagenum = this.pageNum; |
||||
let datas = { |
||||
status: 3, |
||||
payTimeS: startTime, |
||||
payTimeE: endTime, |
||||
outTradeNo: this.orderNo, |
||||
pageNum: pagenum, |
||||
salesmanId:this.salesmanid, |
||||
merId: this.merno, |
||||
storeId: this.storeno, |
||||
pageSize: this.pageSize |
||||
} |
||||
getTradeOrderList(datas).then(res => { |
||||
uni.hideLoading(); |
||||
if (res.return_code == '000000' && res.return_data.pageInfo.list) { |
||||
this.totalPrice = res.return_data.totalPrice; |
||||
this.totalNum = res.return_data.totalNum; |
||||
this.isNoMoreData = res.return_data.pageInfo.list.length == this.pageSize ? false : true; |
||||
this.notesList = this.notesList.concat(res.return_data.pageInfo.list); |
||||
if (res.return_data.pageInfo.total == (this.pageNum * this.pageSize)) { |
||||
this.isNoMoreData = true; |
||||
} |
||||
this.pageNum = res.return_data.pageInfo.list.length == this.pageSize ? ++pagenum : pagenum; |
||||
} else { |
||||
this.notesList = []; |
||||
uni.showToast({ |
||||
title: res.return_msg, |
||||
duration: 2000, |
||||
icon: 'none' |
||||
}) |
||||
} |
||||
}) |
||||
}, |
||||
//跳转详情 |
||||
jumpOderdetails(item) { |
||||
uni.navigateTo({ |
||||
url: '/pages/index/order-list-details/order-list-details?orderid=' + item |
||||
}) |
||||
} |
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style lang="scss"> |
||||
page { |
||||
background-color: #f8f9f9; |
||||
} |
||||
|
||||
.input-box { |
||||
width: 90%; |
||||
margin-left: 5%; |
||||
margin-top: 15px; |
||||
margin-bottom: 15px; |
||||
height: 70rpx; |
||||
background-color: #f5f5f5; |
||||
border-radius: 10rpx; |
||||
position: relative; |
||||
display: flex; |
||||
align-items: center; |
||||
|
||||
.icon { |
||||
display: flex; |
||||
align-items: center; |
||||
position: absolute; |
||||
top: 2px; |
||||
left: 5px; |
||||
width: 60upx; |
||||
height: 60upx; |
||||
font-size: 34upx; |
||||
color: #c0c0c0; |
||||
} |
||||
|
||||
input { |
||||
padding-left: 50upx; |
||||
height: 28upx; |
||||
font-size: 28upx; |
||||
width: 100%; |
||||
} |
||||
} |
||||
|
||||
i { |
||||
border: solid #ffffff; |
||||
border-width: 0 2px 2px 0; |
||||
display: inline-block; |
||||
padding: 4px; |
||||
margin-left: 10px; |
||||
vertical-align: 3px; |
||||
} |
||||
|
||||
.down { |
||||
-webkit-transform: rotate(45deg); |
||||
} |
||||
|
||||
.font306adb { |
||||
color: #306adb; |
||||
} |
||||
|
||||
.stus { |
||||
float: right; |
||||
margin-right: 20px; |
||||
} |
||||
|
||||
.headsearch { |
||||
border-radius: 8px; |
||||
background-color: #4c7fe6; |
||||
} |
||||
|
||||
.datetim { |
||||
width: 130px; |
||||
height: 30px; |
||||
line-height: 30px; |
||||
text-align: right; |
||||
border-radius: 15px; |
||||
} |
||||
</style> |
Loading…
Reference in new issue