123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- <!-- 欠费统计 -->
- <template>
- <view class="container">
- <view class="table">
- <view class="table-date" v-if="currentDate">{{ currentDate.join(' 至 ') }}</view>
- <view class="table-box">
- <TableRanking
- :loading="loading"
- :padding="'0'"
- :tableTh="tableTh"
- :tableData="tableData"
- @pageChange="pageChange"
- />
- </view>
- </view>
- <view class="total">
- <view>
- 欠费次数
- <text>{{ totalData.oweCount || 0 }}</text>次,欠费金额
- <text>{{ totalData.amtOwe || 0 }}</text>元
- </view>
- </view>
- </view>
- </template>
- <script>
- import TableRanking from '@/components/tableRanking.vue';
- export default {
- components: {
- TableRanking
- },
- props: {
- tableTh: {
- type: Array,
- default: () => {
- return [
- { field: '车牌号', key: 'vehicleNo', width: 100 },
- { field: '车主姓名', key: 'name', width: 100 },
- { field: '联系方式', key: 'mobile', width: 100 },
- { field: '欠费次数(次)', width: 80, key: 'oweCount' },
- { field: '欠费金额(元)', width: 80, key: 'amtOwe' }
- ];
- }
- }
- },
- data() {
- return {
- loading: false,
- totalData: {},
- tableData: {
- current: 1,
- total: 0,
- list: []
- },
- currentDate: [],
- beginTime: undefined,
- endTime: undefined
- };
- },
- methods: {
- tabClick(item) {
- this.tabCurName = item.value;
- this.tableData.current = 1;
- this.getArreasReportTotal();
- this.getArreasReportList();
- },
- getData(data) {
- if (data.length) {
- this.beginTime = data[0];
- this.endTime = data[1];
- }
- this.currentDate = data;
- this.tableData.current = 1;
- this.getArreasReportTotal();
- this.getArreasReportList();
- },
- getArreasReportTotal() {
- uni.$u.api.statisticalReportApi
- .getArrearsReportTotalApi({
- beginTime: this.beginTime,
- endTime: this.endTime
- })
- .then((res) => {
- if (res.code === 200) {
- this.totalData = res.data;
- }
- });
- },
- getArreasReportList() {
- this.loading = true;
- uni.$u.api.statisticalReportApi
- .getArrearsReportListApi({
- beginTime: this.beginTime,
- endTime: this.endTime,
- pageNum: this.tableData.current,
- pageSize: 10
- })
- .then((res) => {
- if (res.code === 200) {
- this.tableData.list = res.rows;
- this.tableData.total = res.total;
- }
- this.loading = false;
- });
- },
- pageChange(cur) {
- this.tableData.current = cur;
- this.getArreasReportList();
- }
- }
- };
- </script>
- <style lang="scss" scoped>
- @import './report.scss';
- .tab {
- margin-bottom: 10px;
- }
- </style>
|