2024-08-16 18:26:19 +08:00
|
|
|
|
<!--增值交易订单-->
|
|
|
|
|
|
<template>
|
|
|
|
|
|
<div class="app-container"> <!-- 表单查询-->
|
2024-10-31 15:36:10 +08:00
|
|
|
|
<div class="box-card">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="100px">
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-form-item label="" prop="orderNo">
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="queryParams.orderNo"
|
|
|
|
|
|
placeholder="请输入订单号"
|
|
|
|
|
|
clearable
|
|
|
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
|
|
|
/>
|
|
|
|
|
|
</el-form-item>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-form-item label="" prop="returnType">
|
|
|
|
|
|
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-select
|
2024-08-16 18:26:19 +08:00
|
|
|
|
v-model="queryParams.returnType"
|
|
|
|
|
|
clearable
|
2024-09-18 11:35:58 +08:00
|
|
|
|
placeholder="请选择类型"
|
2024-08-16 18:26:19 +08:00
|
|
|
|
>
|
|
|
|
|
|
<el-option label="挂账" value="0"></el-option>
|
|
|
|
|
|
<el-option label="归还" value="1"></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-form-item label="" prop="staffId">
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="queryParams.staffId"
|
|
|
|
|
|
clearable
|
|
|
|
|
|
placeholder="请选择员工"
|
|
|
|
|
|
@change="$forceUpdate"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option v-for="item in staffList" :key="item.id" :label="item.realName" :value="item.id">
|
|
|
|
|
|
<span style="float: left">{{ item.realName }}</span>
|
|
|
|
|
|
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.mobile }}</span>
|
|
|
|
|
|
</el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-form-item label="" prop="status">
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="queryParams.status"
|
2024-10-23 11:13:47 +08:00
|
|
|
|
placeholder="请选择状态"
|
2024-08-16 18:26:19 +08:00
|
|
|
|
clearable
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option label="未归还" value="0"></el-option>
|
|
|
|
|
|
<el-option label="已归还" value="1"></el-option>
|
|
|
|
|
|
<el-option label="部分归还" value="2"></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="">
|
|
|
|
|
|
<el-date-picker
|
|
|
|
|
|
v-model="beginTime"
|
|
|
|
|
|
style="width: 160px"
|
|
|
|
|
|
type="date"
|
|
|
|
|
|
placeholder="开始日期">
|
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
|
至
|
|
|
|
|
|
<el-date-picker
|
|
|
|
|
|
v-model="endTime"
|
|
|
|
|
|
style="width: 160px"
|
|
|
|
|
|
type="date"
|
|
|
|
|
|
placeholder="结束日期">
|
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
|
</el-form-item>
|
2024-10-31 15:36:10 +08:00
|
|
|
|
<el-form-item style="float: right;margin-right: 0px">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
|
|
|
|
|
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-button type="primary" @click="exportExcelCashier()">导出</el-button>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-form>
|
|
|
|
|
|
<div class="table-box">
|
|
|
|
|
|
<el-table
|
|
|
|
|
|
:data="hangBillList"
|
|
|
|
|
|
border
|
|
|
|
|
|
style="width: 100%">
|
|
|
|
|
|
<el-table-column type="index" width="50" align="center" label="序号"/>
|
|
|
|
|
|
<el-table-column prop="orderNo" align="center" label="订单号" width="220"></el-table-column>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-table-column prop="unitName" align="center" label="挂账单位"></el-table-column>
|
|
|
|
|
|
<el-table-column prop="personCredit" align="center" label="挂账人"></el-table-column>
|
|
|
|
|
|
<el-table-column prop="contactMobile" align="center" label="联系电话"></el-table-column>
|
|
|
|
|
|
<el-table-column prop="returnType" align="center" label="类型">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<div v-if="scope.row.returnType == 0">挂账</div>
|
|
|
|
|
|
<div v-else>归还</div>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column prop="amount" align="center" label="挂账金额(元)"></el-table-column>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-table-column prop="repaidAmount" align="center" label="已归还金额(元)"></el-table-column>
|
|
|
|
|
|
<el-table-column prop="outstandAmount" align="center" label="未归还金额(元)"></el-table-column>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-table-column prop="status" align="center" label="状态">
|
|
|
|
|
|
<template slot-scope="scope">
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<span v-if="scope.row.status == 0" style="color: #F44522">未归还</span>
|
|
|
|
|
|
<span v-else-if="scope.row.status == 1" style="color: #0DC291">已归还</span>
|
|
|
|
|
|
<span v-else style="color: #0DC291">部分归还</span>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-table-column prop="realName" align="center" label="操作人"></el-table-column>
|
2024-09-18 11:35:58 +08:00
|
|
|
|
<el-table-column prop="createTime" align="center" label="操作时间" width="220">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<template slot-scope="scope">
|
2024-09-18 11:35:58 +08:00
|
|
|
|
<span>{{ parseTime(scope.row.updateTime) || parseTime(scope.row.createTime) }}</span>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
|
|
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
size="mini"
|
|
|
|
|
|
type="text"
|
|
|
|
|
|
@click="returnRecord(scope.row.id)"
|
2024-10-23 11:13:47 +08:00
|
|
|
|
>归还详情
|
|
|
|
|
|
</el-button>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
</el-table>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="pagination-box">
|
2024-10-24 15:39:10 +08:00
|
|
|
|
<pagination
|
2024-08-16 18:26:19 +08:00
|
|
|
|
v-show="total>0"
|
|
|
|
|
|
:total="total"
|
|
|
|
|
|
:page.sync="queryParams.page"
|
|
|
|
|
|
:limit.sync="queryParams.pageSize"
|
2024-10-24 15:39:10 +08:00
|
|
|
|
@pagination="getList"
|
|
|
|
|
|
/>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-10-31 15:36:10 +08:00
|
|
|
|
</div>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
|
<!-- 归还记录信息-->
|
|
|
|
|
|
<el-drawer
|
|
|
|
|
|
title="归还详情"
|
|
|
|
|
|
:visible.sync="drawer"
|
|
|
|
|
|
direction="rtl"
|
|
|
|
|
|
size="55%"
|
|
|
|
|
|
:before-close="handleClose">
|
|
|
|
|
|
<div style="display: grid; place-items: center;">
|
2024-10-31 15:36:10 +08:00
|
|
|
|
<div style="background-color: #f5f5f5;width: 90%;box-sizing: border-box;padding: 15px;padding-top: 20px">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<div slot="header" class="clearfix">
|
|
|
|
|
|
<div style="position: relative;">
|
|
|
|
|
|
<div style="position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);">
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<h2>单据号:{{ record.orderNo }}</h2>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<br>
|
|
|
|
|
|
<div style="display: flex; justify-content: space-between;">
|
|
|
|
|
|
<span>操作员工:</span>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<span>{{ record.realName }}</span>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<div>
|
|
|
|
|
|
<div style="display: flex; justify-content: space-between;">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<span>挂账单位</span>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<span>{{ record.unitName }}</span>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</div>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<div style="display: flex; justify-content: space-between;margin: 10px 0">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<span>挂账人</span>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<span>{{ record.personCredit }}</span>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</div>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<div style="display: flex; justify-content: space-between;">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<span>联系电话</span>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<span>{{ record.contactMobile }}</span>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2024-10-31 15:36:10 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div style="margin-top: 15px;width: 90%">
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-table ref="tables"
|
2024-10-31 15:36:10 +08:00
|
|
|
|
border
|
2024-08-16 18:26:19 +08:00
|
|
|
|
v-loading="loading"
|
|
|
|
|
|
:data="returnRecordList">
|
|
|
|
|
|
<el-table-column label="单据号" align="center" prop="orderNo" width="200"></el-table-column>
|
|
|
|
|
|
<el-table-column label="类型" align="center" prop="returnType">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<el-tag v-if="scope.row.returnType == 0">挂账</el-tag>
|
|
|
|
|
|
<el-tag v-else type="success">归还</el-tag>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-table-column label="归还金额" align="center" prop="amount"/>
|
|
|
|
|
|
<el-table-column label="找零金额" align="center" prop="seekZero"/>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-table-column label="归还方式" align="center" prop="status">
|
|
|
|
|
|
<template slot-scope="scope">
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<span>{{ getPayMeth(payList, scope.row.status) }}</span>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column label="支付状态" align="center" prop="payStatus">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<el-tag v-if="scope.row.payStatus == 'unpaid'">未支付</el-tag>
|
|
|
|
|
|
<el-tag type="success" v-else-if="scope.row.payStatus == 'paid'">已支付</el-tag>
|
|
|
|
|
|
<el-tag type="danger" v-else>支付失败</el-tag>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2024-10-23 11:13:47 +08:00
|
|
|
|
<el-table-column label="操作人" align="center" prop="realName"/>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
<el-table-column label="支付时间" align="center" prop="payTime" width="200">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<span>{{ parseTime(scope.row.payTime) }}</span>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
</el-table>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="pagination-box">
|
|
|
|
|
|
<el-pagination
|
|
|
|
|
|
background
|
|
|
|
|
|
layout="prev, pager, next"
|
|
|
|
|
|
v-show="total2>0"
|
|
|
|
|
|
:total="total2"
|
|
|
|
|
|
:page.sync="queryParams1.page"
|
|
|
|
|
|
:limit.sync="queryParams1.pageSize"
|
|
|
|
|
|
@current-change="getRecordList">
|
|
|
|
|
|
</el-pagination>
|
|
|
|
|
|
</div>
|
2024-10-31 15:36:10 +08:00
|
|
|
|
</div>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</el-drawer>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
|
import {
|
|
|
|
|
|
hangBillAllAmount,
|
|
|
|
|
|
hangBillAllNoReturnAmount,
|
|
|
|
|
|
hangBillAllReturnAmount, hangBillInfo, hangBillReturnTotal,
|
|
|
|
|
|
listHangBill
|
|
|
|
|
|
} from "@/api/order/hangbill";
|
|
|
|
|
|
import {getDicts} from "@/api/order/data";
|
|
|
|
|
|
import {listReturnRecord} from "@/api/order/returnrecord";
|
|
|
|
|
|
import {exportExcelHangBillApi} from "@/api/order/exportExcel";
|
2024-10-23 11:13:47 +08:00
|
|
|
|
import {queryStaffs} from "@/api/order/staff";
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
|
name: "order_Cashier",
|
2024-10-23 11:13:47 +08:00
|
|
|
|
data() {
|
|
|
|
|
|
return {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
queryParams1: {
|
|
|
|
|
|
page: 1,
|
|
|
|
|
|
pageSize: 10,
|
2024-10-23 11:13:47 +08:00
|
|
|
|
hangBillId: "",
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
2024-10-23 11:13:47 +08:00
|
|
|
|
hangBillList: [],
|
|
|
|
|
|
total: 0,
|
|
|
|
|
|
total2: 0,
|
|
|
|
|
|
loading: false,
|
|
|
|
|
|
queryParams: {
|
|
|
|
|
|
page: 1,
|
|
|
|
|
|
pageSize: 10,
|
|
|
|
|
|
returnType: "",
|
|
|
|
|
|
status: "",
|
|
|
|
|
|
unitName: "",
|
|
|
|
|
|
personCredit: "",
|
|
|
|
|
|
contactMobile: "",
|
|
|
|
|
|
mobile: "",
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
2024-10-23 11:13:47 +08:00
|
|
|
|
dateRange: [],
|
|
|
|
|
|
beginTime: "",
|
|
|
|
|
|
endTime: "",
|
|
|
|
|
|
returnRecordList: [],
|
|
|
|
|
|
payList: [],
|
|
|
|
|
|
// 员工列表
|
|
|
|
|
|
staffList: [],
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 归还账单总数
|
2024-10-23 11:13:47 +08:00
|
|
|
|
returnTotal: 0,
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 挂账总额
|
2024-10-23 11:13:47 +08:00
|
|
|
|
allAmount: 0,
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 归还总额
|
2024-10-23 11:13:47 +08:00
|
|
|
|
returnAllAmount: 0,
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 未归还总额
|
2024-10-23 11:13:47 +08:00
|
|
|
|
noReturnAllAmount: 0,
|
|
|
|
|
|
drawer: false,
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 挂账信息
|
2024-10-23 11:13:47 +08:00
|
|
|
|
record: {},
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 是否为当天时间
|
2024-10-23 11:13:47 +08:00
|
|
|
|
isSysDate: false,
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
created() {
|
|
|
|
|
|
let start = new Date();
|
|
|
|
|
|
start.setHours(0)
|
|
|
|
|
|
start.setMinutes(0)
|
|
|
|
|
|
start.setSeconds(0)
|
|
|
|
|
|
start.setMilliseconds(0)
|
2024-10-23 11:13:47 +08:00
|
|
|
|
this.dateRange = [start, new Date()];
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.beginTime = start
|
|
|
|
|
|
this.endTime = new Date()
|
|
|
|
|
|
this.isSysDate = true
|
|
|
|
|
|
this.getList()
|
|
|
|
|
|
this.getPayList()
|
|
|
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
|
|
|
|
|
|
|
|
|
|
exportExcelCashier() {
|
|
|
|
|
|
// this.dateRange.push(this.beginTime)
|
|
|
|
|
|
// this.dateRange.push(this.endTime)
|
2024-10-23 11:13:47 +08:00
|
|
|
|
this.$confirm('是否导出列表中的数据!', '提示', {
|
|
|
|
|
|
confirmButtonText: '导出',
|
|
|
|
|
|
cancelButtonText: '取消'
|
|
|
|
|
|
}).then(() => {
|
|
|
|
|
|
let dateRange = []
|
|
|
|
|
|
if (this.beginTime && this.endTime) {
|
|
|
|
|
|
dateRange.push(this.beginTime.toLocaleDateString())
|
|
|
|
|
|
dateRange.push(this.endTime.toLocaleDateString())
|
|
|
|
|
|
}
|
|
|
|
|
|
exportExcelHangBillApi(this.addDateRange(this.queryParams, dateRange)).then(res => {
|
|
|
|
|
|
const blob = new Blob([res], {type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'});
|
|
|
|
|
|
this.$download.saveAs(blob, '挂账订单统计.xLsx')
|
|
|
|
|
|
})
|
|
|
|
|
|
}).catch(() => {
|
|
|
|
|
|
|
|
|
|
|
|
});
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
|
|
|
|
|
// 归还记录详情弹框
|
2024-10-23 11:13:47 +08:00
|
|
|
|
returnRecord(id) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.record = {}
|
|
|
|
|
|
this.drawer = true
|
|
|
|
|
|
hangBillInfo(id).then(response => {
|
|
|
|
|
|
this.record = response.data
|
|
|
|
|
|
})
|
2024-10-23 11:13:47 +08:00
|
|
|
|
this.getRecordList(id, 1);
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
2024-10-23 11:13:47 +08:00
|
|
|
|
getRecordList(id, val) {
|
|
|
|
|
|
if (val != 1) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.queryParams1.page = id
|
|
|
|
|
|
this.queryParams1.hangBillId = this.record.id
|
2024-10-23 11:13:47 +08:00
|
|
|
|
} else {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.queryParams1.hangBillId = id
|
|
|
|
|
|
}
|
|
|
|
|
|
listReturnRecord(this.queryParams1).then(response => {
|
|
|
|
|
|
this.returnRecordList = response.data.records
|
|
|
|
|
|
this.total2 = response.data.total
|
|
|
|
|
|
})
|
|
|
|
|
|
},
|
|
|
|
|
|
// 获取支付方式
|
|
|
|
|
|
getPayList() {
|
|
|
|
|
|
getDicts("payment_type").then(response => {
|
|
|
|
|
|
this.payList = response.data;
|
|
|
|
|
|
})
|
2024-10-23 11:13:47 +08:00
|
|
|
|
queryStaffs().then(response => {
|
|
|
|
|
|
this.staffList = response.data;
|
|
|
|
|
|
})
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
2024-10-23 11:13:47 +08:00
|
|
|
|
getPayMeth(list, val) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
let name = "";
|
2024-10-23 11:13:47 +08:00
|
|
|
|
if (list != null && list != "") {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
list.forEach(item => {
|
2024-10-23 11:13:47 +08:00
|
|
|
|
if (item.dictValue == val) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
name = item.dictLabel
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
return name;
|
|
|
|
|
|
},
|
|
|
|
|
|
// 是否关闭弹框
|
|
|
|
|
|
handleClose(done) {
|
|
|
|
|
|
done();
|
|
|
|
|
|
},
|
2024-10-24 15:39:10 +08:00
|
|
|
|
getList() {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
let dateRange = []
|
|
|
|
|
|
if (this.beginTime && this.endTime) {
|
|
|
|
|
|
dateRange.push(this.beginTime.toLocaleDateString())
|
|
|
|
|
|
dateRange.push(this.endTime.toLocaleDateString())
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-23 11:13:47 +08:00
|
|
|
|
listHangBill(this.addDateRange(this.queryParams, dateRange)).then(response => {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.hangBillList = response.data.records
|
|
|
|
|
|
this.total = response.data.total;
|
|
|
|
|
|
this.isSysDate = false
|
|
|
|
|
|
})
|
|
|
|
|
|
this.getStatistic();
|
|
|
|
|
|
},
|
|
|
|
|
|
// 获取挂账统计信息
|
2024-10-23 11:13:47 +08:00
|
|
|
|
getStatistic() {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
let dateRange = []
|
|
|
|
|
|
if (this.beginTime && this.endTime) {
|
|
|
|
|
|
dateRange.push(this.beginTime.toLocaleDateString())
|
|
|
|
|
|
dateRange.push(this.endTime.toLocaleDateString())
|
|
|
|
|
|
}
|
|
|
|
|
|
hangBillReturnTotal(this.addDateRange(this.queryParams, dateRange)).then(res => {
|
|
|
|
|
|
this.returnTotal = res.data
|
|
|
|
|
|
})
|
|
|
|
|
|
hangBillAllAmount(this.addDateRange(this.queryParams, dateRange)).then(res => {
|
|
|
|
|
|
// if (res.data) {
|
2024-10-23 11:13:47 +08:00
|
|
|
|
this.allAmount = res.data
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// }
|
|
|
|
|
|
})
|
|
|
|
|
|
hangBillAllReturnAmount(this.addDateRange(this.queryParams, dateRange)).then(res => {
|
|
|
|
|
|
// if (res.data) {
|
2024-10-23 11:13:47 +08:00
|
|
|
|
this.returnAllAmount = res.data
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// }
|
|
|
|
|
|
})
|
|
|
|
|
|
hangBillAllNoReturnAmount(this.addDateRange(this.queryParams, dateRange)).then(res => {
|
|
|
|
|
|
// if (res.data) {
|
2024-10-23 11:13:47 +08:00
|
|
|
|
this.noReturnAllAmount = res.data
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// }
|
|
|
|
|
|
})
|
|
|
|
|
|
},
|
|
|
|
|
|
// 搜索按钮操作
|
|
|
|
|
|
handleQuery() {
|
|
|
|
|
|
this.queryParams.page = 1;
|
|
|
|
|
|
this.getList();
|
|
|
|
|
|
},
|
|
|
|
|
|
// 重置按钮操作
|
|
|
|
|
|
resetQuery() {
|
|
|
|
|
|
this.dateRange = [];
|
|
|
|
|
|
this.queryParams.page = 1;
|
|
|
|
|
|
this.beginTime = ""
|
|
|
|
|
|
this.endTime = ""
|
|
|
|
|
|
this.resetForm("queryForm");
|
|
|
|
|
|
this.handleQuery();
|
|
|
|
|
|
},
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<style scoped lang="scss">
|
2024-10-23 11:13:47 +08:00
|
|
|
|
.app-top {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
|
|
|
|
|
|
|
|
|
|
|
height: 60px;
|
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
|
padding: 10px;
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.clearfix {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.box-card {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
2024-11-01 15:08:04 +08:00
|
|
|
|
height: 89vh;
|
|
|
|
|
|
border-radius: 8px;
|
2024-08-16 18:26:19 +08:00
|
|
|
|
margin-bottom: 15px;
|
2024-10-31 15:36:10 +08:00
|
|
|
|
background: #fff;
|
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
|
padding: 10px;
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.box-gang {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.box {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
//box-sizing: border-box;
|
|
|
|
|
|
padding: 5px;
|
|
|
|
|
|
//background: #f9f9f9;
|
|
|
|
|
|
margin-right: 20px;
|
|
|
|
|
|
padding-left: 20px;
|
|
|
|
|
|
|
|
|
|
|
|
width: 211px;
|
|
|
|
|
|
height: 60px;
|
2024-10-23 11:13:47 +08:00
|
|
|
|
background: rgba(64, 158, 255, 0.05);
|
2024-08-16 18:26:19 +08:00
|
|
|
|
border-radius: 6px 6px 6px 6px;
|
2024-09-08 17:38:26 +08:00
|
|
|
|
border: 1px solid #fe8c4a;
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
2024-08-16 18:26:19 +08:00
|
|
|
|
.el-form--inline .el-form-item {
|
|
|
|
|
|
margin-right: 44px;
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.size-hui {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
//width: 200px;
|
|
|
|
|
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
|
font-size: 13px;
|
|
|
|
|
|
color: #888888;
|
|
|
|
|
|
//line-height: 0px;
|
|
|
|
|
|
text-align: left;
|
|
|
|
|
|
font-style: normal;
|
|
|
|
|
|
text-transform: none;
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
2024-08-16 18:26:19 +08:00
|
|
|
|
.nei {
|
|
|
|
|
|
width: 150px;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.size-bole {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
height: 31px;
|
|
|
|
|
|
font-family: YouSheBiaoTiHei;
|
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
|
font-size: 24px;
|
|
|
|
|
|
color: #555555;
|
|
|
|
|
|
text-align: left;
|
|
|
|
|
|
font-style: normal;
|
|
|
|
|
|
text-transform: none;
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.wgang {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
margin-bottom: 20px;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.table-box {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
2024-11-01 15:08:04 +08:00
|
|
|
|
height: 73vh;
|
2024-10-23 11:13:47 +08:00
|
|
|
|
overflow: auto;
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.pagination-box {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
|
|
|
|
|
margin: 10px auto;
|
|
|
|
|
|
display: flex;
|
2024-10-23 11:13:47 +08:00
|
|
|
|
align-items: end;
|
|
|
|
|
|
justify-content: end;
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.top-app-sou {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 20%;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-23 11:13:47 +08:00
|
|
|
|
.icon-img {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
//margin-left: 110px;
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
height: 20px;
|
|
|
|
|
|
margin-right: 5px;
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
img {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
float: right;
|
|
|
|
|
|
//width: 100%;
|
|
|
|
|
|
width: 20px;
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-10-23 11:13:47 +08:00
|
|
|
|
|
|
|
|
|
|
.box1 {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
//box-sizing: border-box;
|
|
|
|
|
|
padding: 5px;
|
|
|
|
|
|
//background: #f9f9f9;
|
|
|
|
|
|
margin-right: 20px;
|
|
|
|
|
|
margin-bottom: 20px;
|
|
|
|
|
|
padding-left: 20px;
|
|
|
|
|
|
|
|
|
|
|
|
width: 211px;
|
|
|
|
|
|
height: 60px;
|
2024-10-23 11:13:47 +08:00
|
|
|
|
background: rgba(255, 150, 85, 0.05);
|
2024-08-16 18:26:19 +08:00
|
|
|
|
border-radius: 6px 6px 6px 6px;
|
|
|
|
|
|
border: 1px solid #FF9655;
|
|
|
|
|
|
}
|
|
|
|
|
|
</style>
|