Browse Source

交易管理

master
ltlzx 4 years ago
parent
commit
b5a9c5a8ef
  1. 28
      src/api/index.js
  2. 36
      src/components/common/Sidebar.vue
  3. 2
      src/components/common/dialog/content.vue
  4. 15
      src/components/common/dialog/insex.vue
  5. 135
      src/components/common/orderDialog/index.vue
  6. 26
      src/components/page/AssetManagement/assetQuery.vue
  7. 11
      src/components/page/AssetManagement/groundingAudit.vue
  8. 216
      src/components/page/TransactionManagement/TobepaidOrder.vue
  9. 232
      src/components/page/TransactionManagement/closed.vue
  10. 232
      src/components/page/TransactionManagement/completed.vue
  11. 284
      src/components/page/TransactionManagement/publicityOrder.vue
  12. 276
      src/components/page/TransactionManagement/refundOrderExamine.vue
  13. 216
      src/components/page/TransactionManagement/settlementOrder.vue
  14. 232
      src/components/page/TransactionManagement/toBeConfirmDelivered.vue
  15. 232
      src/components/page/TransactionManagement/toBeDelivered.vue
  16. 232
      src/components/page/TransactionManagement/toBeSettled.vue
  17. 2
      src/components/page/TransactionManagement/transactionQuery.vue
  18. 33
      src/router/index.js

28
src/api/index.js

@ -177,6 +177,34 @@ export const orderList = query => {
params: query
});
};
//订单详情
export const orderInfo = query => {
return request({
url: 'api/admin.Order/orderInfo',
method: 'get',
params: query
});
};
// 订单审核付款
export const orderCheckPay = query => {
return request({
url: 'api/admin.Order/orderCheckPay',
method: 'post',
data: query
});
};
// 确认签约合同
export const orderConfirmContract = query => {
return request({
url: 'api/admin.Order/orderConfirmContract',
method: 'post',
data: query
});
};
/* 交易管理 --待支付订单*/
//订单列表
/* 运营管理 */
/* 运营管理 --通知公告配置*/

36
src/components/common/Sidebar.vue

@ -117,25 +117,45 @@ export default {
index: '3',
title: '交易管理',
subs:[
{
index: '/transactionQuery',
title: '交易订单查询'
},
// {
// index: '/transactionQuery',
// title: ''
// },
{
index: '/TobepaidOrder',
title: '待付订单'
title: '待付订单'
},
{
index: '/publicityOrder',
title: '待公示订单'
title: '待审核付款订单'
},
{
index: '/settlementOrder',
title: '待结算订单'
title: '待上传签约合同订单'
},
{
index: '/refundOrderExamine',
title: '退款订单审核'
title: '待确认签约合同订单'
},
{
index: '/toBeDelivered',
title: '待交付订单'
},
{
index: '/toBeConfirmDelivered',
title: '待确认交付订单'
},
{
index: '/toBeSettled',
title: '待结算订单'
},
{
index: '/completed',
title: '已完成订单'
},
{
index: '/closed',
title: '已关闭订单'
},
]
},

2
src/components/common/dialog/content.vue

@ -14,7 +14,7 @@
<operatorIDCard v-if="sidebarId== 'operatorIDCard'" :contentDatas="contentDatas"></operatorIDCard>
<elseFile v-if="sidebarId== 'elseFile'" :contentDatas="contentDatas"></elseFile>
</template>
<template v-else-if="dialogType==2">
<template v-else-if="dialogType==2 ||dialogType==3">
<businessInfo v-if="sidebarId== 'businessInfo'" :contentDatas="contentDatas"></businessInfo>
<assetsInfo v-if="sidebarId== 'assetsInfo'" :contentDatas="contentDatas"></assetsInfo>
<dataNumber v-if="sidebarId== 'dataNumber'" :contentDatas="contentDatas"></dataNumber>

15
src/components/common/dialog/insex.vue

@ -36,8 +36,13 @@
</el-input>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="MisShow"> </el-button>
<el-button type="primary" @click="saveEdit"> </el-button>
<template v-if="dialogType==1 || dialogType==2">
<el-button @click="MisShow"> </el-button>
<el-button type="primary" @click="saveEdit"> </el-button>
</template>
<template v-else-if="dialogType==3">
<el-button @click="MisShow"> </el-button>
</template>
</span>
</el-dialog>
</div>
@ -50,7 +55,7 @@ import bus from '../bus'
export default {
name:'whyDialog',
props:{
//12
//12,3
dialogType:{
type:Number,
require: true
@ -108,7 +113,7 @@ export default {
this.query.uid=this.dialogID;
this.query.account_type=this.account_type;
this.getAccountData()
}else if(this.dialogType==2){
}else if(this.dialogType==2 ||this.dialogType==3){
this.query.id=this.dialogID;
this.getAssetInfo()
}
@ -183,7 +188,7 @@ export default {
{title:'经办人身份证(复印件)',type:0,id:'operatorIDCard'},{title:'资产证明文件',type:2,id:'assets'},{title:'其他要求文件',type:0,id:'elseFile'}
]
}
}else if(this.dialogType==2){
}else if(this.dialogType==2 ||this.dialogType==3){
this.dialogData.sidebar=[
{title:'商家概况',type:1,id:'businessInfo'},{title:'资产概况',type:1,id:'assetsInfo'},
{title:'文化大数据标准编号',type:1,id:'dataNumber'}

135
src/components/common/orderDialog/index.vue

@ -0,0 +1,135 @@
<template>
<div>
<el-dialog title="订单详情" :visible.sync="isshow" width="70%" :before-close="MisShow">
<p class="tips">
请在2021/06/19 14:13:12前完成订单支付
</p>
<div class="steps">
<el-steps :active="2" align-center>
<el-step title="下单成功" description=""></el-step>
<el-step title="等待付款" description=""></el-step>
<el-step title="付款成功" description=""></el-step>
<el-step title="等待公示" description=""></el-step>
<el-step title="公示完毕" description=""></el-step>
<el-step title="等待交付" description=""></el-step>
<el-step title="交付成功" description=""></el-step>
<el-step title="等待结算" description=""></el-step>
<el-step title="订单完成" description=""></el-step>
</el-steps>
</div>
<div class="order_title">
<el-tabs v-model="activeName" @tab-click="handleClick" class="order_tabs">
<el-tab-pane label="订单信息" name="first">
<p class="order_info_p">订单编号{{orderInfos.batchcode}} </p>
<p class="order_info_p">标准编号{{orderInfos.asset.serial}} </p>
<p class="order_info_p">流水编号{{orderInfos.order.money_id}} </p>
<p class="order_info_p">快递单号{{orderInfos.order.express_id}} </p>
<br/>
<p class="order_info_p">资产名称{{orderInfos.asset.serial_name}} </p>
<p class="order_info_p">转让单价{{orderInfos.asset.price}} </p>
<p class="order_info_p">交易数量{{orderInfos.order.count}} </p>
<p class="order_info_p">交易金额{{orderInfos.order.price}} </p>
<br/>
<p class="order_info_p">买家名称{{orderInfos.username}} </p>
<p class="order_info_p">收货地址{{orderInfos.order.express_address}} </p>
<p class="order_info_p">收货人名称{{orderInfos.order.express_user}} </p>
<p class="order_info_p">收货人电话{{orderInfos.order.express_userphone}} </p>
<p class="order_info_p">邮政编码{{orderInfos.order.postal_code}} </p>
</el-tab-pane>
<el-tab-pane label="资产交易电子协议" name="second">配置管理</el-tab-pane>
<el-tab-pane label="成交公示" name="third">角色管理</el-tab-pane>
<el-tab-pane label="交易账单" name="fourth">定时任务补偿</el-tab-pane>
</el-tabs>
<div class="order_switch">
<span>订单状态</span>
<el-switch
v-model="value1"
>
</el-switch>
</div>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="MisShow"> </el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { orderInfo } from '../../../api/index'
export default ({
name:'orderDialog',
props:{
batchcode:{
type:Number,
require: true
},
isshow:{
type:Boolean,
default:false,
require: true
},
},
data() {
return{
activeName: 'first',
value1:'',
orderInfos:{}
}
},
created(){
this.getData()
},
methods:{
handleClick(tab, event) {
console.log(tab, event);
},
getData(){
let data={batchcode:this.batchcode}
orderInfo(data).then(res=>{
console.info(res);
if (res.code==100) {
this.orderInfos=res.data
}
})
},
MisShow(){
this.$emit('orderShow')
}
}
})
</script>
<style scoped>
.tips{
font-size: 16px;
}
.steps{
margin-top: 30px;
margin-bottom: 15px;
}
.order_title{
width: 100%;
position: relative;
}
.order_tabs{
width: 100%;
}
.order_switch{
position: absolute;
top: 10px;
right: 0;
}
.order_switch >span{
color: #4E73E4;
display: inline-block;
margin-right: 10px;
}
.order_tabs>>>.el-tab-pane{
min-height: 480px;
border: 2px #AAAAAA dashed;
padding: 10px;
}
.order_info_p{
font-size: 16px;
color: #555555;
}
</style>

26
src/components/page/AssetManagement/assetQuery.vue

@ -65,21 +65,11 @@
<el-table-column prop="surplus_count" label="剩余数量" width="80"></el-table-column>
<el-table-column prop="asset_status" label="资产状态" width="80">
<template slot-scope="scope">
<span v-if="scope.row.asset_status==1">已发布</span>
<span v-else-if="scope.row.asset_status==0">待发布</span>
<span v-else-if="scope.row.asset_status==2">待上架</span>
<span v-else-if="scope.row.asset_status==3">已上架</span>
<span v-else-if="scope.row.asset_status==4">已下架</span>
</template>
</el-table-column>
<el-table-column prop="apply_status" label="审核状态">
<template slot-scope="scope">
<span v-if="scope.row.apply_status==1">发布审核通过</span>
<span v-else-if="scope.row.apply_status==0">待发布审核</span>
<span v-else-if="scope.row.apply_status==2">待上架审核</span>
<span v-else-if="scope.row.apply_status==3">上架审核通过</span>
<span v-else-if="scope.row.apply_status==4">上架审核不通过</span>
<span v-else-if="scope.row.apply_status==5">发布审核不通过</span>
<span v-if="scope.row.asset_status==1">待复核</span>
<span v-else-if="scope.row.asset_status==0">待审核</span>
<span v-else-if="scope.row.asset_status==2">发布中</span>
<span v-else-if="scope.row.asset_status==3">已下架</span>
<span v-else-if="scope.row.asset_status==4">已转让</span>
</template>
</el-table-column>
<el-table-column prop="username" label="审核人员"></el-table-column>
@ -91,7 +81,7 @@
>资料查看</el-button>
<el-button
type="text"
v-if="scope.row.asset_status==3 ||scope.row.asset_status==2"
v-if="scope.row.asset_status==2"
@click="operationRecord(scope.row)"
>{{scope.row | operationStatus}}</el-button>
<el-button
@ -299,9 +289,7 @@ export default {
filters:{
operationStatus(res){
let text='';
if (res.asset_status==3) {
text='上架资产'
}else if(res.asset_status==2){
if(res.asset_status==2){
text='下架资产'
}
return text

11
src/components/page/AssetManagement/groundingAudit.vue

@ -50,12 +50,11 @@
<el-table-column prop="apply_name" label="法人名称"></el-table-column>
<el-table-column label="审核状态">
<template slot-scope="scope">
<span v-if="scope.row.apply_status==1">发布审核通过</span>
<span v-else-if="scope.row.apply_status==0">待发布审核</span>
<span v-else-if="scope.row.apply_status==2">待上架审核</span>
<span v-else-if="scope.row.apply_status==3">上架审核通过</span>
<span v-else-if="scope.row.apply_status==4">上架审核不通过</span>
<span v-else-if="scope.row.apply_status==5">发布审核不通过</span>
<span v-if="scope.row.asset_status==1">待复核</span>
<span v-else-if="scope.row.asset_status==0">待审核</span>
<span v-else-if="scope.row.asset_status==2">发布中</span>
<span v-else-if="scope.row.asset_status==3">已下架</span>
<span v-else-if="scope.row.asset_status==4">已转让</span>
</template>
</el-table-column>
<el-table-column prop="audit_staff_name" label="审核人员"></el-table-column>

216
src/components/page/TransactionManagement/TobepaidOrder.vue

@ -5,33 +5,33 @@
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>付订单</el-breadcrumb-item>
<el-breadcrumb-item>待付订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" class="handle-input mr10"></el-input>
<el-input v-model="query.name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" class="handle-select mr10">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.address" placeholder="审核人员" class="handle-select mr10">
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
@ -42,18 +42,21 @@
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
@selection-change="handleSelectionChange"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="name" label="创建时间"></el-table-column>
<el-table-column label="订单编号" prop="name"></el-table-column>
<el-table-column prop="address" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="name"></el-table-column>
<el-table-column label="买家名称" prop="name"></el-table-column>
<el-table-column prop="address" label="交易方式"></el-table-column>
<el-table-column prop="address" label="交易数量"></el-table-column>
<el-table-column prop="address" label="交易金额"></el-table-column>
<el-table-column prop="date" label="审核人员"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate"></el-table-column>
<el-table-column label="订单编号" prop="batchcode"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="serial_name"></el-table-column>
<el-table-column label="买家名称" prop="firm_name"></el-table-column>
<el-table-column label="交易方式">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量"></el-table-column>
<el-table-column prop="price" label="交易金额"></el-table-column>
<el-table-column prop="auditID_name" label="审核人员"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
@ -62,7 +65,7 @@
>资产查看</el-button>
<el-button
type="text"
@click="handleDelete(scope.$index, scope.row)"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
</template>
</el-table-column>
@ -71,95 +74,107 @@
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.pageIndex"
:page-size="query.pageSize"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<!-- 编辑弹出框 -->
<el-dialog title="编辑" :visible.sync="editVisible" width="30%">
<el-form ref="form" :model="form" label-width="70px">
<el-form-item label="用户名">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="地址">
<el-input v-model="form.address"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="editVisible = false"> </el-button>
<el-button type="primary" @click="saveEdit"> </el-button>
</span>
</el-dialog>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { fetchData } from '../../../api/index';
import { orderList } from '../../../api/index';
import moment from 'moment'
export default {
name: 'basetable',
data() {
return {
orderShowVisible:false,
order_batchcode:'',
query: {
address: '',
name: '',
pageIndex: 1,
pageSize: 10
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:1
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
form: {},
idx: -1,
id: -1,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
fetchData(this.query).then(res => {
// console.log(res);
this.tableData = res.list;
this.pageTotal = res.pageTotal || 50;
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
@ -167,37 +182,18 @@ export default {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleDelete(index, row) {
//
this.$confirm('确定要删除吗?', '提示', {
type: 'warning'
})
.then(() => {
this.$message.success('删除成功');
this.tableData.splice(index, 1);
})
.catch(() => {});
},
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
//
handleEdit(index, row) {
this.idx = index;
this.form = row;
this.dialogID=row.asset_id;
this.editVisible = true;
},
//
saveEdit() {
this.editVisible = false;
this.$message.success(`修改第 ${this.idx + 1} 行成功`);
this.$set(this.tableData, this.idx, this.form);
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'pageIndex', val);
this.$set(this.query, 'page', val);
this.getData();
}
}

232
src/components/page/TransactionManagement/closed.vue

@ -0,0 +1,232 @@
<template>
<div>
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>已关闭订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
</div>
<el-table
:data="tableData"
border
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate"></el-table-column>
<el-table-column label="订单编号" prop="batchcode"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="serial_name"></el-table-column>
<el-table-column label="买家名称" prop="firm_name"></el-table-column>
<el-table-column label="交易方式">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量"></el-table-column>
<el-table-column prop="price" label="交易金额"></el-table-column>
<el-table-column prop="auditID_name" label="审核人员"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
type="text"
@click="handleEdit(scope.$index, scope.row)"
>资产查看</el-button>
<el-button
type="text"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { orderList } from '../../../api/index';
import moment from 'moment'
export default {
data() {
return {
orderShowVisible:false,
order_batchcode:'',
query: {
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:9
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
handleSearch() {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleEdit(index, row) {
this.dialogID=row.asset_id;
this.editVisible = true;
},
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'page', val);
this.getData();
}
}
};
</script>
<style scoped>
.handle-box {
margin-bottom: 20px;
}
.handle-select {
width: 120px;
}
.handle-input {
width: 150px;
display: inline-block;
}
.table {
width: 100%;
font-size: 14px;
}
.red {
color: #ff0000;
}
.mr10 {
margin-right: 10px;
}
.table-td-thumb {
display: block;
margin: auto;
width: 40px;
height: 40px;
}
</style>

232
src/components/page/TransactionManagement/completed.vue

@ -0,0 +1,232 @@
<template>
<div>
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>已完成订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
</div>
<el-table
:data="tableData"
border
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate"></el-table-column>
<el-table-column label="订单编号" prop="batchcode"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="serial_name"></el-table-column>
<el-table-column label="买家名称" prop="firm_name"></el-table-column>
<el-table-column label="交易方式">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量"></el-table-column>
<el-table-column prop="price" label="交易金额"></el-table-column>
<el-table-column prop="auditID_name" label="审核人员"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
type="text"
@click="handleEdit(scope.$index, scope.row)"
>资产查看</el-button>
<el-button
type="text"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { orderList } from '../../../api/index';
import moment from 'moment'
export default {
data() {
return {
orderShowVisible:false,
order_batchcode:'',
query: {
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:8
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
handleSearch() {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleEdit(index, row) {
this.dialogID=row.asset_id;
this.editVisible = true;
},
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'page', val);
this.getData();
}
}
};
</script>
<style scoped>
.handle-box {
margin-bottom: 20px;
}
.handle-select {
width: 120px;
}
.handle-input {
width: 150px;
display: inline-block;
}
.table {
width: 100%;
font-size: 14px;
}
.red {
color: #ff0000;
}
.mr10 {
margin-right: 10px;
}
.table-td-thumb {
display: block;
margin: auto;
width: 40px;
height: 40px;
}
</style>

284
src/components/page/TransactionManagement/publicityOrder.vue

@ -5,33 +5,33 @@
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>公示订单</el-breadcrumb-item>
<el-breadcrumb-item>审核付款订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" class="handle-input mr10"></el-input>
<el-input v-model="query.name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" class="handle-select mr10">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.address" placeholder="审核人员" class="handle-select mr10">
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
@ -42,18 +42,26 @@
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
@selection-change="handleSelectionChange"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="name" label="创建时间"></el-table-column>
<el-table-column label="订单编号" prop="name"></el-table-column>
<el-table-column prop="address" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="name"></el-table-column>
<el-table-column label="买家名称" prop="name"></el-table-column>
<el-table-column prop="address" label="交易方式"></el-table-column>
<el-table-column prop="address" label="交易数量"></el-table-column>
<el-table-column prop="address" label="交易金额"></el-table-column>
<el-table-column prop="date" label="审核人员"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate" align="center"></el-table-column>
<el-table-column label="订单编号" prop="batchcode" align="center"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称" align="center"></el-table-column>
<el-table-column label="资产名称" prop="serial_name" align="center"></el-table-column>
<el-table-column label="买家名称" prop="firm_name" align="center"></el-table-column>
<el-table-column label="交易方式" align="center">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量" align="center"></el-table-column>
<el-table-column prop="price" label="交易金额" align="center"></el-table-column>
<el-table-column label="交易凭证" align="center">
<template slot-scope="scope" >
<img :src="scope.row.pay_record" width="40" height="40" @click="onPreview([scope.row.pay_record])">
</template>
</el-table-column>
<el-table-column prop="auditID_name" label="审核人员" align="center"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
@ -62,8 +70,12 @@
>资产查看</el-button>
<el-button
type="text"
@click="handleDelete(scope.$index, scope.row)"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
<el-button
type="text"
@click="examine(scope.$index, scope.row)"
>付款审核</el-button>
</template>
</el-table-column>
</el-table>
@ -71,95 +83,164 @@
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.pageIndex"
:page-size="query.pageSize"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<!-- 编辑弹出框 -->
<el-dialog title="编辑" :visible.sync="editVisible" width="30%">
<el-form ref="form" :model="form" label-width="70px">
<el-form-item label="用户名">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="地址">
<el-input v-model="form.address"></el-input>
</el-form-item>
</el-form>
<el-dialog
title="付款审核"
:visible.sync="centerDialogVisible"
width="30%"
center>
<span>该订单的付款审核是否通过</span>
<div class="selectExamine">
<el-radio v-model="query1.check_pay_status" :label="1">审核通过</el-radio>
<el-radio v-model="query1.check_pay_status" :label="2">审核不通过</el-radio>
</div>
<div class="messege" v-if="query1.check_pay_status==2">
<span>审核不通过原因</span>
<el-input placeholder="请输入" v-model="query1.content" class="handle-input mr10"></el-input>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="editVisible = false"> </el-button>
<el-button type="primary" @click="saveEdit"> </el-button>
<el-button @click="centerDialogVisible = false"> </el-button>
<el-button type="primary" @click="selectExamine()"> </el-button>
</span>
</el-dialog>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
<el-image-viewer
v-if="showViewer"
:on-close="closeViewer"
:url-list="showBigImgList"
/>
</div>
</template>
<script>
import { fetchData } from '../../../api/index';
import { orderList ,orderCheckPay} from '../../../api/index';
import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
import moment from 'moment'
export default {
name: 'basetable',
data() {
return {
centerDialogVisible:false,
showViewer:false,
showBigImgList:[],
orderShowVisible:false,
order_batchcode:'',
query: {
address: '',
name: '',
pageIndex: 1,
pageSize: 10
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:2
},
query1:{
batchcode:'',
check_pay_status:1,
content:''
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
form: {},
idx: -1,
id: -1,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue'),
ElImageViewer
},
created() {
this.getData();
},
methods: {
selectExamine(){
orderCheckPay(this.query1).then(res=>{
console.info(res)
if (res.code==100) {
this.$message.success('订单审核成功!');
}else{
this.$message.error(res.msg);
}
this.centerDialogVisible=false
this.getData();
})
},
examine(index,row){
this.query1.batchcode=row.batchcode
this.centerDialogVisible=true
},
onPreview(url) {
this.showBigImgList=url;
this.showViewer = true
},
//
closeViewer() {
this.showViewer = false
},
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
fetchData(this.query).then(res => {
// console.log(res);
this.tableData = res.list;
this.pageTotal = res.pageTotal || 50;
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
@ -167,37 +248,18 @@ export default {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleDelete(index, row) {
//
this.$confirm('确定要删除吗?', '提示', {
type: 'warning'
})
.then(() => {
this.$message.success('删除成功');
this.tableData.splice(index, 1);
})
.catch(() => {});
},
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
//
handleEdit(index, row) {
this.idx = index;
this.form = row;
this.dialogID=row.asset_id;
this.editVisible = true;
},
//
saveEdit() {
this.editVisible = false;
this.$message.success(`修改第 ${this.idx + 1} 行成功`);
this.$set(this.tableData, this.idx, this.form);
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'pageIndex', val);
this.$set(this.query, 'page', val);
this.getData();
}
}
@ -233,4 +295,10 @@ export default {
width: 40px;
height: 40px;
}
.selectExamine{
margin: 15px 0;
}
.messege >>> .handle-input{
width: 250px;
}
</style>

276
src/components/page/TransactionManagement/refundOrderExamine.vue

@ -5,33 +5,33 @@
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>退款订单审核</el-breadcrumb-item>
<el-breadcrumb-item>待确认签约合同订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" class="handle-input mr10"></el-input>
<el-input v-model="query.name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" class="handle-select mr10">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.address" placeholder="审核人员" class="handle-select mr10">
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
@ -42,18 +42,31 @@
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
@selection-change="handleSelectionChange"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="name" label="创建时间"></el-table-column>
<el-table-column label="订单编号" prop="name"></el-table-column>
<el-table-column prop="address" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="name"></el-table-column>
<el-table-column label="买家名称" prop="name"></el-table-column>
<el-table-column prop="address" label="交易方式"></el-table-column>
<el-table-column prop="address" label="交易数量"></el-table-column>
<el-table-column prop="address" label="交易金额"></el-table-column>
<el-table-column prop="date" label="审核人员"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate" align="center"></el-table-column>
<el-table-column label="订单编号" prop="batchcode" align="center"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称" align="center"></el-table-column>
<el-table-column label="资产名称" prop="serial_name" align="center"></el-table-column>
<el-table-column label="买家名称" prop="firm_name" align="center"></el-table-column>
<el-table-column label="交易方式" align="center">
<template slot-scope="scope" >
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量" align="center"></el-table-column>
<el-table-column prop="price" label="交易金额" align="center"></el-table-column>
<el-table-column prop="price" label="摘牌方签约合同" align="center">
<template slot-scope="scope">
<a :href="scope.row.buy_contract" download class="upload_span">点击查看</a>
</template>
</el-table-column>
<el-table-column prop="price" label="挂牌方签约合同" align="center">
<template slot-scope="scope">
<a :href="scope.row.sell_contract" download class="upload_span">点击查看</a>
</template>
</el-table-column>
<el-table-column prop="auditID_name" label="审核人员" align="center"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
@ -62,8 +75,12 @@
>资产查看</el-button>
<el-button
type="text"
@click="handleDelete(scope.$index, scope.row)"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
<el-button
type="text"
@click="examine(scope.$index, scope.row)"
>签约审核</el-button>
</template>
</el-table-column>
</el-table>
@ -71,95 +88,148 @@
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.pageIndex"
:page-size="query.pageSize"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<!-- 编辑弹出框 -->
<el-dialog title="编辑" :visible.sync="editVisible" width="30%">
<el-form ref="form" :model="form" label-width="70px">
<el-form-item label="用户名">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="地址">
<el-input v-model="form.address"></el-input>
</el-form-item>
</el-form>
<el-dialog
title="付款审核"
:visible.sync="centerDialogVisible"
width="30%"
center>
<span>该订单的签约审核是否通过</span>
<div class="selectExamine">
<el-radio v-model="query1.check_pay_status" :label="1">审核通过</el-radio>
<el-radio v-model="query1.check_pay_status" :label="2">审核不通过</el-radio>
</div>
<div class="messege" v-if="query1.check_pay_status==2">
<span>审核不通过原因</span>
<el-input placeholder="请输入" v-model="query1.content" class="handle-input mr10"></el-input>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="editVisible = false"> </el-button>
<el-button type="primary" @click="saveEdit"> </el-button>
<el-button @click="centerDialogVisible = false"> </el-button>
<el-button type="primary" @click="selectExamine()"> </el-button>
</span>
</el-dialog>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { fetchData } from '../../../api/index';
import { orderList,orderConfirmContract } from '../../../api/index';
import moment from 'moment'
export default {
name: 'basetable',
data() {
return {
centerDialogVisible:false,
orderShowVisible:false,
order_batchcode:'',
query: {
address: '',
name: '',
pageIndex: 1,
pageSize: 10
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:4
},
query1:{
batchcode:'',
check_pay_status:1,
content:''
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
form: {},
idx: -1,
id: -1,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
selectExamine(){
orderConfirmContract(this.query1).then(res=>{
console.info(res)
if (res.code==100) {
this.$message.success('订单审核成功!');
}else{
this.$message.error(res.msg);
}
this.centerDialogVisible=false
this.getData();
})
},
examine(index,row){
this.query1.batchcode=row.batchcode
this.centerDialogVisible=true
},
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
fetchData(this.query).then(res => {
// console.log(res);
this.tableData = res.list;
this.pageTotal = res.pageTotal || 50;
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
@ -167,37 +237,18 @@ export default {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleDelete(index, row) {
//
this.$confirm('确定要删除吗?', '提示', {
type: 'warning'
})
.then(() => {
this.$message.success('删除成功');
this.tableData.splice(index, 1);
})
.catch(() => {});
},
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
//
handleEdit(index, row) {
this.idx = index;
this.form = row;
this.dialogID=row.asset_id;
this.editVisible = true;
},
//
saveEdit() {
this.editVisible = false;
this.$message.success(`修改第 ${this.idx + 1} 行成功`);
this.$set(this.tableData, this.idx, this.form);
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'pageIndex', val);
this.$set(this.query, 'page', val);
this.getData();
}
}
@ -205,6 +256,11 @@ export default {
</script>
<style scoped>
.upload_span{
color: #294CC6;
text-decoration: underline;
cursor: pointer;
}
.handle-box {
margin-bottom: 20px;
}
@ -233,4 +289,10 @@ export default {
width: 40px;
height: 40px;
}
.selectExamine{
margin: 15px 0;
}
.messege >>> .handle-input{
width: 250px;
}
</style>

216
src/components/page/TransactionManagement/settlementOrder.vue

@ -5,33 +5,33 @@
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>结算订单</el-breadcrumb-item>
<el-breadcrumb-item>上传签约合同订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" class="handle-input mr10"></el-input>
<el-input v-model="query.name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" class="handle-select mr10">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.address" placeholder="审核人员" class="handle-select mr10">
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
@ -42,18 +42,21 @@
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
@selection-change="handleSelectionChange"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="name" label="创建时间"></el-table-column>
<el-table-column label="订单编号" prop="name"></el-table-column>
<el-table-column prop="address" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="name"></el-table-column>
<el-table-column label="买家名称" prop="name"></el-table-column>
<el-table-column prop="address" label="交易方式"></el-table-column>
<el-table-column prop="address" label="交易数量"></el-table-column>
<el-table-column prop="address" label="交易金额"></el-table-column>
<el-table-column prop="date" label="审核人员"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate"></el-table-column>
<el-table-column label="订单编号" prop="batchcode"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="serial_name"></el-table-column>
<el-table-column label="买家名称" prop="firm_name"></el-table-column>
<el-table-column label="交易方式">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量"></el-table-column>
<el-table-column prop="price" label="交易金额"></el-table-column>
<el-table-column prop="auditID_name" label="审核人员"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
@ -62,7 +65,7 @@
>资产查看</el-button>
<el-button
type="text"
@click="handleDelete(scope.$index, scope.row)"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
</template>
</el-table-column>
@ -71,95 +74,107 @@
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.pageIndex"
:page-size="query.pageSize"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<!-- 编辑弹出框 -->
<el-dialog title="编辑" :visible.sync="editVisible" width="30%">
<el-form ref="form" :model="form" label-width="70px">
<el-form-item label="用户名">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="地址">
<el-input v-model="form.address"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="editVisible = false"> </el-button>
<el-button type="primary" @click="saveEdit"> </el-button>
</span>
</el-dialog>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { fetchData } from '../../../api/index';
import { orderList } from '../../../api/index';
import moment from 'moment'
export default {
name: 'basetable',
data() {
return {
orderShowVisible:false,
order_batchcode:'',
query: {
address: '',
name: '',
pageIndex: 1,
pageSize: 10
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:3
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
form: {},
idx: -1,
id: -1,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
fetchData(this.query).then(res => {
// console.log(res);
this.tableData = res.list;
this.pageTotal = res.pageTotal || 50;
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
@ -167,37 +182,18 @@ export default {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleDelete(index, row) {
//
this.$confirm('确定要删除吗?', '提示', {
type: 'warning'
})
.then(() => {
this.$message.success('删除成功');
this.tableData.splice(index, 1);
})
.catch(() => {});
},
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
//
handleEdit(index, row) {
this.idx = index;
this.form = row;
this.dialogID=row.asset_id;
this.editVisible = true;
},
//
saveEdit() {
this.editVisible = false;
this.$message.success(`修改第 ${this.idx + 1} 行成功`);
this.$set(this.tableData, this.idx, this.form);
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'pageIndex', val);
this.$set(this.query, 'page', val);
this.getData();
}
}

232
src/components/page/TransactionManagement/toBeConfirmDelivered.vue

@ -0,0 +1,232 @@
<template>
<div>
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>待确认交付订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
</div>
<el-table
:data="tableData"
border
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate"></el-table-column>
<el-table-column label="订单编号" prop="batchcode"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="serial_name"></el-table-column>
<el-table-column label="买家名称" prop="firm_name"></el-table-column>
<el-table-column label="交易方式">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量"></el-table-column>
<el-table-column prop="price" label="交易金额"></el-table-column>
<el-table-column prop="auditID_name" label="审核人员"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
type="text"
@click="handleEdit(scope.$index, scope.row)"
>资产查看</el-button>
<el-button
type="text"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { orderList } from '../../../api/index';
import moment from 'moment'
export default {
data() {
return {
orderShowVisible:false,
order_batchcode:'',
query: {
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:6
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
handleSearch() {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleEdit(index, row) {
this.dialogID=row.asset_id;
this.editVisible = true;
},
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'page', val);
this.getData();
}
}
};
</script>
<style scoped>
.handle-box {
margin-bottom: 20px;
}
.handle-select {
width: 120px;
}
.handle-input {
width: 150px;
display: inline-block;
}
.table {
width: 100%;
font-size: 14px;
}
.red {
color: #ff0000;
}
.mr10 {
margin-right: 10px;
}
.table-td-thumb {
display: block;
margin: auto;
width: 40px;
height: 40px;
}
</style>

232
src/components/page/TransactionManagement/toBeDelivered.vue

@ -0,0 +1,232 @@
<template>
<div>
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>待交付订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
</div>
<el-table
:data="tableData"
border
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate"></el-table-column>
<el-table-column label="订单编号" prop="batchcode"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="serial_name"></el-table-column>
<el-table-column label="买家名称" prop="firm_name"></el-table-column>
<el-table-column label="交易方式">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量"></el-table-column>
<el-table-column prop="price" label="交易金额"></el-table-column>
<el-table-column prop="auditID_name" label="审核人员"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
type="text"
@click="handleEdit(scope.$index, scope.row)"
>资产查看</el-button>
<el-button
type="text"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { orderList } from '../../../api/index';
import moment from 'moment'
export default {
data() {
return {
orderShowVisible:false,
order_batchcode:'',
query: {
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:5
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
handleSearch() {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleEdit(index, row) {
this.dialogID=row.asset_id;
this.editVisible = true;
},
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'page', val);
this.getData();
}
}
};
</script>
<style scoped>
.handle-box {
margin-bottom: 20px;
}
.handle-select {
width: 120px;
}
.handle-input {
width: 150px;
display: inline-block;
}
.table {
width: 100%;
font-size: 14px;
}
.red {
color: #ff0000;
}
.mr10 {
margin-right: 10px;
}
.table-td-thumb {
display: block;
margin: auto;
width: 40px;
height: 40px;
}
</style>

232
src/components/page/TransactionManagement/toBeSettled.vue

@ -0,0 +1,232 @@
<template>
<div>
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-lx-cascades"></i> 交易管理
</el-breadcrumb-item>
<el-breadcrumb-item>待结算订单</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container">
<div class="handle-box">
<el-input placeholder="订单编号" v-model="query.batchcode" class="handle-input mr10"></el-input>
<el-input v-model="query.firm_name" placeholder="商家名称" class="handle-input mr10"></el-input>
<el-input placeholder="买家名称" v-model="query.pay_username" class="handle-input mr10"></el-input>
<el-input placeholder="资产名称" v-model="query.account_name" class="handle-input mr10"></el-input>
<el-select placeholder="交易方式" v-model="query.trade_type" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-select v-model="query.auditID" placeholder="审核人员" class="handle-select mr10">
<el-option key="1" label="广东省" value="广东省"></el-option>
<el-option key="2" label="湖南省" value="湖南省"></el-option>
</el-select>
<el-date-picker
class="mr10"
v-model="query.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
value-format="yyyy-MM-dd h:m:s"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
</div>
<el-table
:data="tableData"
border
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
>
<el-table-column prop="id" label="序号" width="55" align="center"></el-table-column>
<el-table-column prop="create_time" label="创建时间" :formatter="formatDate"></el-table-column>
<el-table-column label="订单编号" prop="batchcode"></el-table-column>
<el-table-column prop="sell_firm_name" label="商家名称"></el-table-column>
<el-table-column label="资产名称" prop="serial_name"></el-table-column>
<el-table-column label="买家名称" prop="firm_name"></el-table-column>
<el-table-column label="交易方式">
<template slot-scope="scope">
<span>{{scope.row.order_pay_mode==1? '线下':'网银'}}</span>
</template>
</el-table-column>
<el-table-column prop="count" label="交易数量"></el-table-column>
<el-table-column prop="price" label="交易金额"></el-table-column>
<el-table-column prop="auditID_name" label="审核人员"></el-table-column>
<el-table-column label="操作" width="280" align="center">
<template slot-scope="scope">
<el-button
type="text"
@click="handleEdit(scope.$index, scope.row)"
>资产查看</el-button>
<el-button
type="text"
@click="orderDetails(scope.$index, scope.row)"
>订单详情</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination
background
layout="total, prev, pager, next"
:current-page="query.page"
:page-size="query.limit"
:total="pageTotal"
@current-change="handlePageChange"
></el-pagination>
</div>
</div>
<whyDialog v-if="editVisible" :isshow="editVisible" :dialogID="dialogID"
:dialogType="dialogType" @MisShow="MisShow" :assets_type="1" >
</whyDialog>
<orderDialog v-if="orderShowVisible" :isshow="orderShowVisible" :batchcode="order_batchcode"
@orderShow="orderShow" >
</orderDialog>
</div>
</template>
<script>
import { orderList } from '../../../api/index';
import moment from 'moment'
export default {
data() {
return {
orderShowVisible:false,
order_batchcode:'',
query: {
page: 1,
limit: 10,
batchcode:'',
firm_name:'',
pay_username:'',
account_name:'',
trade_type:'',
auditID:'',
time:'',
order_type:7
},
tableData: [],
multipleSelection: [],
delList: [],
editVisible: false,
dialogID:'',
dialogType:3,
pageTotal: 0,
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
};
},
components:{
whyDialog: () => import('../../common/dialog/insex.vue'),
orderDialog: () => import('../../common/orderDialog/index.vue')
},
created() {
this.getData();
},
methods: {
MisShow(){
this.editVisible=false
},
orderShow(){
this.orderShowVisible=false
},
//
formatDate(row,colnum){
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
// easy-mock
getData() {
orderList(this.query).then(res => {
console.log(res);
this.tableData = res.data.list;
this.pageTotal = res.data.count ;
});
},
//
handleSearch() {
this.$set(this.query, 'pageIndex', 1);
this.getData();
},
//
handleEdit(index, row) {
this.dialogID=row.asset_id;
this.editVisible = true;
},
orderDetails(index, row) {
this.order_batchcode=row.batchcode;
this.orderShowVisible = true;
},
//
handlePageChange(val) {
this.$set(this.query, 'page', val);
this.getData();
}
}
};
</script>
<style scoped>
.handle-box {
margin-bottom: 20px;
}
.handle-select {
width: 120px;
}
.handle-input {
width: 150px;
display: inline-block;
}
.table {
width: 100%;
font-size: 14px;
}
.red {
color: #ff0000;
}
.mr10 {
margin-right: 10px;
}
.table-td-thumb {
display: block;
margin: auto;
width: 40px;
height: 40px;
}
</style>

2
src/components/page/TransactionManagement/transactionQuery.vue

@ -153,7 +153,7 @@ export default {
methods: {
//
formatDate(row,colnum){
return moment(row[colnum.create_time]).format('YYYY-MM-DD HH:mm:ss')
return moment(row.create_time*1000).format('YYYY-MM-DD HH:mm:ss')
},
//
reset(){

33
src/router/index.js

@ -153,22 +153,47 @@ export default new Router({
{
path: '/TobepaidOrder',
component: () => import(/* webpackChunkName: "releaseAudit" */ '../components/page/TransactionManagement/TobepaidOrder.vue'),
meta: { title: '待付订单' }
meta: { title: '待付订单' }
},
{
path: '/publicityOrder',
component: () => import(/* webpackChunkName: "publicityOrder" */ '../components/page/TransactionManagement/publicityOrder.vue'),
meta: { title: '待公示订单' }
meta: { title: '待审核付款订单' }
},
{
path: '/settlementOrder',
component: () => import(/* webpackChunkName: "settlementOrder" */ '../components/page/TransactionManagement/settlementOrder.vue'),
meta: { title: '待结算订单' }
meta: { title: '待上传签约合同订单' }
},
{
path: '/refundOrderExamine',
component: () => import(/* webpackChunkName: "refundOrderExamine" */ '../components/page/TransactionManagement/refundOrderExamine.vue'),
meta: { title: '退款订单审核' }
meta: { title: '待确认签约合同订单' }
},
{
path: '/toBeDelivered',
component: () => import(/* webpackChunkName: "refundOrderExamine" */ '../components/page/TransactionManagement/toBeDelivered.vue'),
meta: { title: '待交付订单' }
},
{
path: '/toBeConfirmDelivered',
component: () => import(/* webpackChunkName: "refundOrderExamine" */ '../components/page/TransactionManagement/toBeConfirmDelivered.vue'),
meta: { title: '待确认交付订单' }
},
{
path: '/toBeSettled',
component: () => import(/* webpackChunkName: "refundOrderExamine" */ '../components/page/TransactionManagement/toBeSettled.vue'),
meta: { title: '待结算订单' }
},
{
path: '/completed',
component: () => import(/* webpackChunkName: "refundOrderExamine" */ '../components/page/TransactionManagement/completed.vue'),
meta: { title: '已完成订单' }
},
{
path: '/closed',
component: () => import(/* webpackChunkName: "refundOrderExamine" */ '../components/page/TransactionManagement/closed.vue'),
meta: { title: '已关闭订单' }
},
// 运营管理、OperationManagement
{

Loading…
Cancel
Save