From 0805c8f58834e70b2a654cfa9f54fdaeaa0ddda1 Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期五, 06 六月 2025 15:59:03 +0800
Subject: [PATCH] bug修改
---
src/views/salesManagement/receiptPaymentLedger/index.vue | 99 ++++++++++++++++++++++++++-----------------------
1 files changed, 53 insertions(+), 46 deletions(-)
diff --git a/src/views/salesManagement/receiptPaymentLedger/index.vue b/src/views/salesManagement/receiptPaymentLedger/index.vue
index 0fbd7ff..42f61f1 100644
--- a/src/views/salesManagement/receiptPaymentLedger/index.vue
+++ b/src/views/salesManagement/receiptPaymentLedger/index.vue
@@ -17,17 +17,16 @@
<div style="display: flex">
<div class="table_list">
<el-table :data="tableData" border v-loading="tableLoading"
- @selection-change="handleSelectionChange"
:row-key="row => row.id"
show-summary
:summary-method="summarizeMainTable"
+ @row-click = "rowClickMethod"
height="calc(100vh - 18.5em)">
- <el-table-column align="center" type="selection" width="55" />
<el-table-column align="center" label="搴忓彿" type="index" width="60" />
<el-table-column label="瀹㈡埛鍚嶇О" prop="customerName" show-overflow-tooltip/>
- <el-table-column label="寮�绁ㄩ噾棰�" prop="invoiceAmount" show-overflow-tooltip/>
- <el-table-column label="鍥炴閲戦" prop="receiptPaymentAmount" show-overflow-tooltip/>
- <el-table-column label="鏈洖娆鹃噾棰�" prop="unReceiptPaymentAmount" show-overflow-tooltip/>
+ <el-table-column label="寮�绁ㄩ噾棰�(鍏�)" prop="invoiceTotal" show-overflow-tooltip :formatter="formattedNumber"/>
+ <el-table-column label="鍥炴閲戦(鍏�)" prop="receiptPaymentAmount" show-overflow-tooltip :formatter="formattedNumber"/>
+ <el-table-column label="鏈洖娆鹃噾棰�(鍏�)" prop="unReceiptPaymentAmount" show-overflow-tooltip :formatter="formattedNumber"/>
</el-table>
<pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current"
:limit="page.size" @pagination="paginationChange" />
@@ -36,16 +35,16 @@
<el-table :data="receiptRecord" border
:row-key="row => row.id"
show-summary
- :summary-method="summarizeMainTable"
+ :summary-method="summarizeMainTable1"
height="calc(100vh - 18.5em)">
- <el-table-column align="center" type="selection" width="55" />
<el-table-column align="center" label="搴忓彿" type="index" width="60" />
<el-table-column label="鍙戠敓鏃ユ湡" prop="receiptPaymentDate" show-overflow-tooltip/>
- <el-table-column label="鍥炴閲戦" prop="receiptPaymentAmount" show-overflow-tooltip/>
- <el-table-column label="搴旀敹閲戦" prop="invoiceAmount" show-overflow-tooltip/>
+ <el-table-column label="鍥炴閲戦(鍏�)" prop="receiptPaymentAmount" show-overflow-tooltip :formatter="formattedNumber"/>
+ <el-table-column label="寰呮敹閲戦(鍏�)" prop="noReceiptAmount" show-overflow-tooltip :formatter="formattedNumber"/>
+ <el-table-column label="搴旀敹閲戦(鍏�)" prop="invoiceTotal" show-overflow-tooltip :formatter="formattedNumber"/>
</el-table>
<pagination v-show="recordTotal > 0" :total="recordTotal" layout="total, sizes, prev, pager, next, jumper" :page="recordPage.current"
- :limit="recordPage.size" @pagination="paginationChange" />
+ :limit="recordPage.size" @pagination="recordPaginationChange" />
</div>
</div>
@@ -53,19 +52,17 @@
</template>
<script setup>
-import pagination from '@/components/PIMTable/Pagination.vue'
import { ref } from 'vue'
-import {Search} from "@element-plus/icons-vue";
import {
invoiceLedgerSalesAccount,
} from "../../../api/salesManagement/invoiceLedger.js";
import {
receiptPaymentListPage
} from "../../../api/salesManagement/receiptPayment.js";
-
+import Pagination from "../../../components/PIMTable/Pagination.vue";
+const { proxy } = getCurrentInstance()
const tableData = ref([])
const receiptRecord = ref([])
-const selectedRows = ref([])
const tableLoading = ref(false)
const page = reactive({
current: 1,
@@ -83,6 +80,7 @@
invoiceDate:''
}
})
+const customerId = ref('')
const { searchForm } = toRefs(data)
// 鏌ヨ鍒楄〃
/** 鎼滅储鎸夐挳鎿嶄綔 */
@@ -90,9 +88,10 @@
page.current = 1
getList()
}
-const paginationChange = ({ current, limit }) => {
- page.current = current;
- page.size = limit;
+const paginationChange = (obj) => {
+ console.log('paginationChange', current,limit)
+ page.current = obj.page;
+ page.size = obj.limit;
getList()
}
const getList = () => {
@@ -102,50 +101,58 @@
tableData.value = res.data.records;
total.value = res.data.total;
if(tableData.value.length > 0) {
- receiptPaymentList(recordPage,tableData.value[0].customerId);
+ recordPage.current = 1
+ customerId.value = tableData.value[0].id
+ receiptPaymentList(customerId.value);
}
})
}
-// 琛ㄦ牸閫夋嫨鏁版嵁
-const handleSelectionChange = (selection) => {
- selectedRows.value = selection
-}
+const formattedNumber = (row, column, cellValue) => {
+ return parseFloat(cellValue).toFixed(2);
+};
// 涓昏〃鍚堣鏂规硶
const summarizeMainTable = (param) => {
- const { columns, data } = param;
- const sums = [];
- columns.forEach((column, index) => {
- if (index === 0) {
- sums[index] = '鍚堣';
- return;
- }
- const prop = column.property;
- if (['invoiceAmount','receiptPaymentAmount','unReceiptPaymentAmount'].includes(prop)) {
- const values = data.map(item => Number(item[prop]));
- if (!values.every(value => isNaN(value))) {
- sums[index] = values.reduce((acc, val) => (!isNaN(val) ? acc + val : acc), 0);
- } else {
- sums[index] = '';
- }
- } else {
- sums[index] = '';
- }
- })
- return sums;
+ return proxy.summarizeTable(param, ['invoiceTotal', 'receiptPaymentAmount', 'unReceiptPaymentAmount'], {
+ ticketsNum: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
+ futureTickets: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
+ });
+};
+// 瀛愯〃鍚堣鏂规硶
+const summarizeMainTable1 = (param) => {
+ return proxy.summarizeTable(param, ['receiptPaymentAmount', 'noReceiptAmount', 'invoiceTotal'], {
+ ticketsNum: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
+ futureTickets: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
+ });
};
-const receiptPaymentList = (page,id) => {
+const receiptPaymentList = (id) => {
const param = {
customerId:id,
- current: page.current,
- size: page.size,
+ current: recordPage.current,
+ size: recordPage.size,
}
+ console.log('param', param)
receiptPaymentListPage(param).then(res => {
receiptRecord.value = res.data.records;
- receiptRecord.total = res.data.total;
+ recordTotal.value = res.data.total;
+
})
}
+// 姹囨璁板綍鍒楄〃鍒嗛〉
+const recordPaginationChange = (obj) => {
+ console.log('recordPaginationChange', obj );
+ recordPage.current = obj.page;
+ recordPage.size = obj.limit;
+ console.log('recordPage',recordPage)
+ receiptPaymentList(customerId.value);
+}
+
+const rowClickMethod = (row) => {
+ customerId.value = row.id;
+ receiptPaymentList(customerId.value);
+}
+
getList()
</script>
--
Gitblit v1.9.3