Browse Source

文件导出功能

master
453530270@qq.com 3 years ago
parent
commit
8d068ec6b4
  1. 14
      src/api/index.js
  2. 191
      src/components/page/order/closed.vue
  3. 23
      src/components/page/order/completed.vue
  4. 24
      src/components/page/order/index.vue
  5. 19
      src/components/page/order/pendingPayment.vue
  6. 19
      src/components/page/order/toBeDelivered.vue
  7. 19
      src/components/page/order/toBeSettled.vue

14
src/api/index.js

@ -128,6 +128,20 @@ export const rankingSort = query => {
data: query
});
};
// 导出订单xls
export const xlsdc =query => {
return request({
url: '/admin/order.Order/export',
method: 'post',
data: query,
//
responseType:'blob',
//请求头
headers:{
"Content-Type":"application/json;charset=UTF-8;"
}
});
};
//订单详情
export const orderInfo = query => {
return request({

191
src/components/page/order/closed.vue

@ -8,22 +8,22 @@
</div>
<div class="body">
<div class="query">
<a-row type="flex" justify="space-between" >
<a-row type="flex" justify="space-between">
<a-col :lg="12" :xl="8" :xxl="6" class="query_item">
<span>订单编号</span>
<a-input v-model="query.batchcode"/>
<a-input v-model="query.batchcode" />
</a-col>
<a-col :lg="12" :xl="8" :xxl="6" class="query_item query_item3">
<span>委托方/授权方</span>
<a-input v-model="query.entrust_name" placeholder="名称/交易主体唯一标志码"/>
<a-input v-model="query.entrust_name" placeholder="名称/交易主体唯一标志码" />
</a-col>
<a-col :lg="12" :xl="8" :xxl="6" class="query_item query_item3">
<span>购买方/被授权方</span>
<a-input v-model="query.buy_name" placeholder="名称/交易主体唯一标志码"/>
<a-input v-model="query.buy_name" placeholder="名称/交易主体唯一标志码" />
</a-col>
<a-col :lg="12" :xl="8" :xxl="6" class="query_item">
<span>交易标的</span>
<a-input v-model="query.goods_name" placeholder="名称/标的ISLI标志码"/>
<a-input v-model="query.goods_name" placeholder="名称/标的ISLI标志码" />
</a-col>
<!-- <a-col :span="5" class="query_item" >
@ -53,28 +53,29 @@
</a-col>
<a-col :lg="12" :xl="8" :xxl="12" class="query_item query_item2">
<span>创建时间</span>
<a-range-picker v-model="query.createtime" valueFormat="YYYY-MM-DD"/>
<a-range-picker v-model="query.createtime" valueFormat="YYYY-MM-DD" />
</a-col>
<a-col :lg="12" :xl="8" :xxl="12" class="query_item query_item3">
<span>标的金额</span>
<a-input v-model="query.biaodi_start" placeholder="最小值"/>
<el-col :span="10" v-html="'\u00a0'"/>
<a-input v-model="query.biaodi_start" placeholder="最小值" />
<el-col :span="10" v-html="'\u00a0'" />
<el-col style="color:#d9d9d9;">-</el-col>
<el-col :span="10" v-html="'\u00a0'"/>
<a-input v-model="query.biaodi_end" placeholder="最大值"/>
<el-col :span="10" v-html="'\u00a0'" />
<a-input v-model="query.biaodi_end" placeholder="最大值" />
</a-col>
<a-col :lg="12" :xl="8" :xxl="12" class="query_item query_item3">
<span>订单金额</span>
<a-input v-model="query.dingdan_start" placeholder="最小值"/>
<el-col :span="10" v-html="'\u00a0'"/>
<a-input v-model="query.dingdan_start" placeholder="最小值" />
<el-col :span="10" v-html="'\u00a0'" />
<el-col style="color:#d9d9d9;">-</el-col>
<el-col :span="10" v-html="'\u00a0'"/>
<a-input v-model="query.dingdan_end" placeholder="最大值"/>
<el-col :span="10" v-html="'\u00a0'" />
<a-input v-model="query.dingdan_end" placeholder="最大值" />
</a-col>
<a-col :lg="12" :xl="16" :xxl="24" class="query_item query_item1">
<a-space :size="21">
<a-button type="primary" class="query_button" @click="getList(1)"> </a-button>
<a-button class="query_button" @click="resetQurey"> </a-button>
<a-button type="default" class="query_button" @click="xlsdc"> </a-button>
</a-space>
</a-col>
</a-row>
@ -82,12 +83,11 @@
<div class="table">
<div class="table_title">
<span>查询结果</span>
<a-button type="primary" class="query_button"> </a-button>
<!-- <a-button type="primary" class="query_button"> </a-button> -->
</div>
<a-table :columns="columns" :data-source="data" bordered :pagination="false">
<template slot="type" slot-scope="type">
<span>{{type==1?'委托订单':type==2?'认证订单':'服务订单'}}</span>
<span>{{ type == 1 ? '委托订单' : type == 2 ? '认证订单' : '服务订单' }}</span>
</template>
<template slot="operation" slot-scope="item">
<a-space :size="24">
@ -96,19 +96,11 @@
</a-space>
</template>
</a-table>
<a-pagination
class="pagination"
size="small"
:total="total"
v-model="page"
:page-size="limit"
:show-total="total => `第 ${startTotal} - ${endTotal} 条 / 总共 ${total} 条`"
:page-size-options="pageSizeOptions"
@showSizeChange="onShowSizeChange"
@change="changePage"
show-size-changer >
<a-pagination class="pagination" size="small" :total="total" v-model="page" :page-size="limit"
:show-total="total => `第 ${startTotal} - ${endTotal} 条 / 总共 ${total} 条`" :page-size-options="pageSizeOptions"
@showSizeChange="onShowSizeChange" @change="changePage" show-size-changer>
<template slot="buildOptionText" slot-scope="props">
<span >{{ props.value }}/</span>
<span>{{ props.value }}/</span>
</template>
</a-pagination>
</div>
@ -119,38 +111,38 @@
</template>
<script>
import Operation from '../../Operation.vue'
import {getOrderList} from '../../../api/index'
import { getOrderList,xlsdc } from '../../../api/index'
export default {
data() {
return{
query:{
batchcode:'',
entrust_name:'',
buy_name:'',
goods_name:'',
order_type:'',
entrust_type:'',
transaction_status:'5',
createtime:[],
goods_isli:'',
charges_type:'',
biaodi_start:'',
biaodi_end:'',
dingdan_start:'',
dingdan_end:'',
return {
query: {
batchcode: '',
entrust_name: '',
buy_name: '',
goods_name: '',
order_type: '',
entrust_type: '',
transaction_status: '5',
createtime: [],
goods_isli: '',
charges_type: '',
biaodi_start: '',
biaodi_end: '',
dingdan_start: '',
dingdan_end: '',
},
visible:false,
visible2:false,
visible: false,
visible2: false,
pageSizeOptions: ['10', '20', '30', '40', '50'],
total:0,
total: 0,
//
startTotal:1,
endTotal:10,
limit:10,
startTotal: 1,
endTotal: 10,
limit: 10,
//
page:1,
data:[],
columns:[
page: 1,
data: [],
columns: [
// {
// title: '',
// dataIndex: 'id',
@ -160,7 +152,7 @@ export default {
{
title: '订单创建时间',
dataIndex: 'createtime',
width:'120px',
width: '120px',
// align:'center'
},
{
@ -171,7 +163,7 @@ export default {
{
title: '委托方/授权方',
dataIndex: 'entrust_name',
width:'125px',
width: '125px',
// align:'center'
},
{
@ -182,7 +174,7 @@ export default {
{
title: '购买方/被授权方',
dataIndex: 'buy_username',
width:'135px',
width: '135px',
// width:'130px',
// align:'center'
},
@ -196,90 +188,103 @@ export default {
{
title: '交易方式',
dataIndex: 'entrust_type',
width:'90px',
width: '90px',
// align:'center'
},
{
title: '标的金额',
dataIndex: 'goods_price',
width:'90px',
width: '90px',
// align:'center'
},
{
title: '交易佣金',
dataIndex: 'total_service_charge',
width:'90px',
width: '90px',
// align:'center'
},
{
title: '订单金额',
dataIndex: 'total_money',
width:'90px',
width: '90px',
// align:'center'
},
{
title: '操作',
width:'170px',
width: '170px',
scopedSlots: { customRender: 'operation' },
align:'center'
align: 'center'
},
]
}
},
components:{
components: {
Operation,
orderDataSelect: () => import('../../dateSelect/order.vue'),
orderDetails: () => import('../../orderDetails/index.vue'),
},
created(){
created() {
this.getList()
},
methods:{
methods: {
// query
resetQurey(){
resetQurey() {
Object.assign(this.query, this.$options.data().query)
this.getList()
},
getList(type){
let data=this.query
data.limit=this.limit
if(type==1){
this.page=1
xlsdc() {
xlsdc(this.query).then(res => {
const fname = '关闭订单'+new Date().getTime() + ".xlsx"
let bloburl = window.URL.createObjectURL(new Blob([res]))
const a = document.createElement('a')
a.download = fname
a.href = bloburl
// add click
a.click()
window.URL.revokeObjectURL(bloburl)
})
.catch(err => {
console.error(err)
});
},
getList(type) {
let data = this.query
data.limit = this.limit
if (type == 1) {
this.page = 1
}
data.page=this.page
getOrderList(data).then(res=>{
if(res.code==200){
this.data=res.data.data
this.startTotal=res.data.start
this.endTotal=res.data.end
this.total=res.data.total
}else{
data.page = this.page
getOrderList(data).then(res => {
if (res.code == 200) {
this.data = res.data.data
this.startTotal = res.data.start
this.endTotal = res.data.end
this.total = res.data.total
} else {
this.$message.error(res.msg);
}
})
},
SelectOrder(val){
this.batchcode=val
this.visible2=true
SelectOrder(val) {
this.batchcode = val
this.visible2 = true
},
SelectDate(val){
this.visible=true
this.batchcode=val
SelectDate(val) {
this.visible = true
this.batchcode = val
},
//
onShowSizeChange(current, pageSize){
this.page=1
onShowSizeChange(current, pageSize) {
this.page = 1
this.limit = pageSize;
this.getList()
},
//
changePage(page){
this.page=page
changePage(page) {
this.page = page
this.getList()
},
}
}
</script>
<style scoped>
</style>
<style scoped></style>

23
src/components/page/order/completed.vue

@ -75,6 +75,7 @@
<a-space :size="21">
<a-button type="primary" class="query_button" @click="getList(1)"> </a-button>
<a-button class="query_button" @click="resetQurey"> </a-button>
<a-button type="default" class="query_button" @click="xlsdc"> </a-button>
</a-space>
</a-col>
</a-row>
@ -82,7 +83,6 @@
<div class="table">
<div class="table_title">
<span>查询结果</span>
<a-button type="primary" class="query_button"> </a-button>
<!-- <a-button type="primary" class="query_button"> </a-button> -->
</div>
<a-table :columns="columns" :data-source="data" bordered :pagination="false">
@ -119,7 +119,7 @@
</template>
<script>
import Operation from '../../Operation.vue'
import {getOrderList} from '../../../api/index'
import {getOrderList,xlsdc} from '../../../api/index'
export default {
data() {
return{
@ -238,6 +238,25 @@ export default {
resetQurey(){
Object.assign(this.query, this.$options.data().query)
this.getList()
},
// xls
xlsdc(){
xlsdc(this.query).then(res=>{
// console.log(res)
const fname = new Date().getTime()+".xlsx"
// let bloburl = window.URL.createObjectURL(res)
let bloburl = window.URL.createObjectURL(new Blob([res]))
const a = document.createElement('a')
a.download = fname
a.href = bloburl
// add click
a.click()
window.URL.revokeObjectURL(bloburl)
console.log(a)
})
.catch(err=>{
console.error(err)
});
},
getList(type){
let data=this.query

24
src/components/page/order/index.vue

@ -90,6 +90,7 @@
<a-space :size="21">
<a-button type="primary" class="query_button" @click="getList(1)"> </a-button>
<a-button class="query_button" @click="resetQurey"> </a-button>
<a-button type="default" class="query_button" @click="xlsdc"> </a-button>
</a-space>
</a-col>
</a-row>
@ -97,7 +98,7 @@
<div class="table">
<div class="table_title">
<span>查询结果</span>
<a-button type="primary" class="query_button"> </a-button>
<!-- <a-button type="primary" class="query_button"> </a-button> -->
</div>
<a-table :columns="columns" :data-source="data" bordered :pagination="false" rowKey="id">
@ -129,7 +130,7 @@
</template>
<script>
import Operation from '../../Operation.vue'
import { getOrderList } from '../../../api/index'
import { getOrderList,xlsdc } from '../../../api/index'
export default {
data() {
return {
@ -259,6 +260,25 @@ export default {
Object.assign(this.query, this.$options.data().query)
this.getList()
},
// xls
xlsdc(){
xlsdc(this.query).then(res=>{
// console.log(res)
const fname = new Date().getTime()+".xlsx"
// let bloburl = window.URL.createObjectURL(res)
let bloburl = window.URL.createObjectURL(new Blob([res]))
const a = document.createElement('a')
a.download = fname
a.href = bloburl
// add click
a.click()
window.URL.revokeObjectURL(bloburl)
console.log(a)
})
.catch(err=>{
console.error(err)
});
},
getList(type) {
let data = this.query
data.limit = this.limit

19
src/components/page/order/pendingPayment.vue

@ -75,6 +75,7 @@
<a-space :size="21">
<a-button type="primary" class="query_button" @click="getList(1)"> </a-button>
<a-button class="query_button" @click="resetQurey"> </a-button>
<a-button type="default" class="query_button" @click="xlsdc"> </a-button>
</a-space>
</a-col>
</a-row>
@ -82,7 +83,7 @@
<div class="table">
<div class="table_title">
<span>查询结果</span>
<a-button type="primary" class="query_button"> </a-button>
<!-- <a-button type="primary" class="query_button"> </a-button> -->
</div>
<a-table :columns="columns" :data-source="data" bordered :pagination="false">
<template slot="type" slot-scope="type">
@ -237,6 +238,22 @@ export default {
resetQurey(){
Object.assign(this.query, this.$options.data().query)
this.getList()
},
// xls
xlsdc(){
xlsdc(this.query).then(res=>{
const fname = new Date().getTime()+".xlsx"
let bloburl = window.URL.createObjectURL(new Blob([res]))
const a = document.createElement('a')
a.download = fname
a.href = bloburl
// add click
a.click()
window.URL.revokeObjectURL(bloburl)
})
.catch(err=>{
console.error(err)
});
},
getList(type){
let data=this.query

19
src/components/page/order/toBeDelivered.vue

@ -75,6 +75,7 @@
<a-space :size="21">
<a-button type="primary" class="query_button" @click="getList(1)"> </a-button>
<a-button class="query_button" @click="resetQurey"> </a-button>
<a-button type="default" class="query_button" @click="xlsdc"> </a-button>
</a-space>
</a-col>
</a-row>
@ -82,7 +83,7 @@
<div class="table">
<div class="table_title">
<span>查询结果</span>
<a-button type="primary" class="query_button"> </a-button>
<!-- <a-button type="primary" class="query_button"> </a-button> -->
</div>
<a-table :columns="columns" :data-source="data" bordered :pagination="false">
<template slot="type" slot-scope="type">
@ -236,6 +237,22 @@ export default {
resetQurey(){
Object.assign(this.query, this.$options.data().query)
this.getList()
},
// xls
xlsdc(){
xlsdc(this.query).then(res=>{
const fname = new Date().getTime()+".xlsx"
let bloburl = window.URL.createObjectURL(new Blob([res]))
const a = document.createElement('a')
a.download = fname
a.href = bloburl
// add click
a.click()
window.URL.revokeObjectURL(bloburl)
})
.catch(err=>{
console.error(err)
});
},
getList(type){
let data=this.query

19
src/components/page/order/toBeSettled.vue

@ -75,6 +75,7 @@
<a-space :size="21">
<a-button type="primary" class="query_button" @click="getList(1)"> </a-button>
<a-button class="query_button" @click="resetQurey"> </a-button>
<a-button type="default" class="query_button" @click="xlsdc"> </a-button>
</a-space>
</a-col>
</a-row>
@ -82,7 +83,7 @@
<div class="table">
<div class="table_title">
<span>查询结果</span>
<a-button type="primary" class="query_button">导出</a-button>
<!-- <a-button type="primary" class="query_button">导出</a-button> -->
</div>
<a-table :columns="columns" :data-source="data" bordered :pagination="false">
<template slot="type" slot-scope="type">
@ -237,6 +238,22 @@ export default {
Object.assign(this.query, this.$options.data().query)
this.getList()
},
// xls
xlsdc(){
xlsdc(this.query).then(res=>{
const fname = new Date().getTime()+".xlsx"
let bloburl = window.URL.createObjectURL(new Blob([res]))
const a = document.createElement('a')
a.download = fname
a.href = bloburl
// add click
a.click()
window.URL.revokeObjectURL(bloburl)
})
.catch(err=>{
console.error(err)
});
},
getList(type){
let data=this.query
data.limit=this.limit

Loading…
Cancel
Save