| | |
| | | tooltip-effect="dark" |
| | | @row-click="rowClick" |
| | | :show-summary="isShowSummary" |
| | | :summary-method="summarizeMainTable" |
| | | class="lims-table" |
| | | > |
| | | <el-table-column |
| | |
| | | :isSelection="false" |
| | | :tableLoading="tableLoadingSon" |
| | | :isShowSummary="isShowSummarySon" |
| | | :summaryMethod="summarizeMainTable1" |
| | | ></PIMTable> |
| | | <pagination |
| | | v-show="sonTotal > 0" |
| | |
| | | }); |
| | | const page = reactive({ |
| | | current: 1, |
| | | size: 10, |
| | | size: 100, |
| | | }); |
| | | const sonPage = reactive({ |
| | | current: 1, |
| | | size: 10, |
| | | size: 100, |
| | | }); |
| | | const total = ref(0); |
| | | const sonTotal = ref(0); |
| | |
| | | prop: "happenTime", |
| | | }, |
| | | { |
| | | label: "发票金额", |
| | | label: "发票金额(元)", |
| | | prop: "invoiceAmount", |
| | | formatData: (params) => { |
| | | return parseFloat(params).toFixed(2); |
| | |
| | | const isShowSummarySon = ref(true); |
| | | const detailPageNum = ref(1); |
| | | const detailPageSize = ref(10); |
| | | const { proxy } = getCurrentInstance() |
| | | |
| | | // 主表合计方法 |
| | | const summarizeMainTable = (param) => { |
| | | return proxy.summarizeTable(param, ['invoiceAmount', 'paymentAmount', 'payableAmount'], { |
| | | ticketsNum: { noDecimal: true }, // 不保留小数 |
| | | futureTickets: { noDecimal: true }, // 不保留小数 |
| | | }); |
| | | }; |
| | | // 子表合计方法 |
| | | const summarizeMainTable1 = (param) => { |
| | | let summarizeTable = proxy.summarizeTable(param, ['invoiceAmount', 'currentPaymentAmount'], { |
| | | ticketsNum: { noDecimal: true }, // 不保留小数 |
| | | futureTickets: { noDecimal: true }, // 不保留小数 |
| | | }); |
| | | if(originalTableDataSon.value.length > 0) { |
| | | summarizeTable[summarizeTable.length -1] = originalTableDataSon.value[originalTableDataSon.value.length - 1].payableAmount.toFixed(2) |
| | | }else { |
| | | summarizeTable[summarizeTable.length -1] = 0.00 |
| | | } |
| | | return summarizeTable |
| | | }; |
| | | /** 搜索按钮操作 */ |
| | | const handleQuery = () => { |
| | | page.current = 1; |
| | | getList(); |
| | | }; |
| | | const paginationSearch = ({ current, limit }) => { |
| | | page.current = current; |
| | | page.size = limit; |
| | | const paginationSearch = ( obj) => { |
| | | page.current = obj.page; |
| | | page.size = obj.limit; |
| | | getList(); |
| | | }; |
| | | const getList = () => { |
| | |
| | | const handlePagination = ({ page, limit }) => { |
| | | sonPage.current = page; |
| | | sonPage.size = limit; |
| | | |
| | | |
| | | const start = (page - 1) * limit; |
| | | const end = start + limit; |
| | | |
| | | |
| | | originalTableDataSon.value = tableDataSon.value.slice(start, end); |
| | | } |
| | | |