| | |
| | | <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" :formatter="formattedNumber" /> |
| | | <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" :formatter="formattedNumber" /> |
| | | <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" :formatter="formattedNumber" /> |
| | | <el-table-column label="开票数" prop="invoiceNum" /> |
| | | <el-table-column label="开票数" prop="invoiceNum" :formatter="formattedNumber" /> |
| | | <el-table-column label="开票金额(元)" prop="invoiceAmount" :formatter="formattedNumber" /> |
| | | <el-table-column label="未开票数" prop="noInvoiceNum" /> |
| | | <el-table-column label="未开票数" prop="noInvoiceNum" :formatter="formattedNumber" /> |
| | | <el-table-column label="未开票金额(元)" prop="noInvoiceAmount" :formatter="formattedNumber"/> |
| | | </el-table> |
| | | </template> |
| | |
| | | <el-table-column label="业务员" prop="salesman" show-overflow-tooltip/> |
| | | <el-table-column label="项目名称" prop="projectName" show-overflow-tooltip/> |
| | | <el-table-column label="合同金额(元)" prop="contractAmount" show-overflow-tooltip :formatter="formattedNumber"/> |
| | | <el-table-column label="已开票金额(元)" prop="invoiceTotal" show-overflow-tooltip :formatter="formattedNumber"/> |
| | | <el-table-column label="未开票金额(元)" prop="noInvoiceAmountTotal" show-overflow-tooltip :formatter="formattedNumber"/> |
| | | </el-table> |
| | | <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" |
| | |
| | | const tableLoading = ref(false) |
| | | const page = reactive({ |
| | | current: 1, |
| | | size: 10, |
| | | size: 100, |
| | | }) |
| | | const total = ref(0) |
| | | // 用户信息表单弹框数据 |
| | |
| | | const { searchForm, form, rules } = toRefs(data) |
| | | |
| | | const formattedNumber = (row, column, cellValue) => { |
| | | if (cellValue == 0) { |
| | | return parseFloat(cellValue).toFixed(2); |
| | | } |
| | | if (cellValue) { |
| | | return parseFloat(cellValue).toFixed(2); |
| | | } else { |
| | |
| | | } |
| | | // 主表合计方法 |
| | | const summarizeMainTable = (param) => { |
| | | return proxy.summarizeTable(param, ['contractAmount','noInvoiceAmountTotal']); |
| | | return proxy.summarizeTable(param, ['contractAmount','noInvoiceAmountTotal','invoiceTotal']); |
| | | }; |
| | | // 子表合计方法 |
| | | const summarizeChildrenTable = (param) => { |
| | |
| | | // 计算本次开票金额 |
| | | row.currentInvoiceAmount = (row.currentInvoiceNum * row.taxInclusiveUnitPrice).toFixed(2) |
| | | // 计算未开票数 |
| | | row.noInvoiceNum = row.originalNoInvoiceNum - row.currentInvoiceNum |
| | | row.noInvoiceNum = (row.originalNoInvoiceNum - row.currentInvoiceNum).toFixed(2) |
| | | // 计算未开票金额 |
| | | row.noInvoiceAmount = row.tempnoInvoiceAmount - row.currentInvoiceAmount |
| | | row.noInvoiceAmount = (row.tempnoInvoiceAmount - row.currentInvoiceAmount).toFixed(2) |
| | | } |
| | | // 本次开票金额失焦操作 |
| | | const invoiceAmountBlur = (row) => { |
| | |
| | | } |
| | | // 计算本次开票数 |
| | | row.currentInvoiceNum = (row.currentInvoiceAmount / row.taxInclusiveUnitPrice).toFixed(2) |
| | | console.log('row.currentInvoiceNum ',row.currentInvoiceNum ) |
| | | console.log(' row.originalNoInvoiceNum ', row.originalNoInvoiceNum ) |
| | | // 计算未开票数 |
| | | row.noInvoiceNum = row.originalNoInvoiceNum - row.currentInvoiceNum |
| | | row.noInvoiceNum = (row.originalNoInvoiceNum - row.currentInvoiceNum).toFixed(2) |
| | | // 计算未开票金额 |
| | | row.noInvoiceAmount = row.tempnoInvoiceAmount - row.currentInvoiceAmount |
| | | row.noInvoiceAmount = (row.tempnoInvoiceAmount - row.currentInvoiceAmount).toFixed(2) |
| | | } |
| | | |
| | | getList() |