diff --git a/src/api/expense-manage/index.js b/src/api/expense-manage/index.js index 92d97fe..bed3ba4 100644 --- a/src/api/expense-manage/index.js +++ b/src/api/expense-manage/index.js @@ -19,6 +19,13 @@ export const getAllocationDetails = (allocationId) => { method: "get" }); }; +export const getAllocationSummaryDetails = (params) => { + return request({ + url: '/workflow/mosr/cost/allocation/collect', + method: "get", + params:params + }); +}; export const getAllocationProcess = () => { return request({ url: '/workflow/mosr/cost/allocation/process', diff --git a/src/components/DetailComponent/AllocationSummaryDetail.vue b/src/components/DetailComponent/AllocationSummaryDetail.vue new file mode 100644 index 0000000..2df5099 --- /dev/null +++ b/src/components/DetailComponent/AllocationSummaryDetail.vue @@ -0,0 +1,104 @@ + + 导出 + + + + + + + + + -- + + + + + + + + -- + + + + + + {{ toThousands(scope.row.afterTax) }} + + + + + + + + + diff --git a/src/components/DetailComponent/ExpenseDetail.vue b/src/components/DetailComponent/ExpenseDetail.vue index 58cbae1..d8d67cf 100644 --- a/src/components/DetailComponent/ExpenseDetail.vue +++ b/src/components/DetailComponent/ExpenseDetail.vue @@ -1,6 +1,7 @@ 导出 - + { +// const {columns, data} = param +// const sums = [] +// columns.forEach((column, index) => { +// if (index === 1) { +// sums[index] = '合计' +// } +// // else if (index == (columns.length - 1)) {//分摊金额总计 +// // const values = data.map((item) => { +// // // Number() +// // console.log('column.property',column.property) +// // console.log('item]',item) +// // }) +// // if (!values.every((value) => Number.isNaN(value))) { +// // sums[index] = `${values.reduce((prev, curr) => { +// // const value = Number(curr) +// // if (!Number.isNaN(value)) { +// // return prev + curr +// // } else { +// // return prev +// // } +// // }, 0)}` +// // sums[index] = toThousands(sums[index]) +// // } else { +// // sums[index] = '-' +// // } +// // } +// // else if (index == (columns.length - 2)) {//分摊金额合计 +// // const values = data.map((item) => Number(item[column.property])) +// // console.log('values',values) +// // if (!values.every((value) => Number.isNaN(value))) { +// // sums[index] = `${values.reduce((prev, curr) => { +// // const value = Number(curr) +// // if (!Number.isNaN(value)) { +// // return prev + curr +// // } else { +// // return prev +// // } +// // }, 0)}` +// // sums[index] = toThousands(sums[index]) +// // } else { +// // sums[index] = '-' +// // } +// // } +// const parts = column.property.split('.'); +// if (column.property.startsWith('personInfo') && parts[1] === 'separationAmount') { +// console.log('column',column,index) +// const values = data.map((item) => { +// // console.log('parts[0]',parts) +// // console.log(item[parts[0]]) +// }) +// // console.log('values',values) +// if (!values.every((value) => Number.isNaN(value))) { +// sums[index] = `${values.reduce((prev, curr) => { +// const value = Number(curr) +// if (!Number.isNaN(value)) { +// return prev + curr +// } else { +// return prev +// } +// }, 0)}` +// sums[index] = toThousands(sums[index]) +// } else { +// sums[index] = '-' +// } +// } else { +// if (column.property.startsWith('personInfo') && parts[1] === 'subtotal') { +// const values = data.map((item) => Number(item[parts[0]].subtotal)) +// if (!values.every((value) => Number.isNaN(value))) { +// sums[index] = `${values.reduce((prev, curr) => { +// const value = Number(curr) +// if (!Number.isNaN(value)) { +// return prev + curr +// } else { +// return prev +// } +// }, 0)}` +// sums[index] = toThousands(sums[index]) +// } else { +// sums[index] = '-' +// } +// } +// } +// }) +// return sums +// } + const objectSpanMethod = ({row, column, rowIndex, columnIndex}) => { if (columnIndex === 0) { if (monthConcat.has(rowIndex)) { @@ -166,6 +257,6 @@ const exportTable = () => { if (!$table) { $table = $e } - exportExcel($table, (5 + (Object.keys(tableData.value[0]).length - 5) * 5), "四川省国有资产经营投资管理有限责任公司科技创新项目人工成本分摊明细表") + exportExcel($table, (5 + (Object.keys(tableData.value[0]).length - 5) * 5), "四川省国有资产经营投资管理有限责任公司科技创新项目人工成本分摊明细表",2) } diff --git a/src/utils/changePrice.js b/src/utils/changePrice.js index c7eb7bd..14e518b 100644 --- a/src/utils/changePrice.js +++ b/src/utils/changePrice.js @@ -1,8 +1,9 @@ export const toThousands = (num) => { - if(num==undefined||num==null)return '--'; - const options = { - style: 'currency', - currency: 'CNY', - }; - return (num).toLocaleString('zh-CN', options) + let newNum=Number(num) + if (newNum == undefined || newNum == null) return '--'; + const options = { + style: 'currency', + currency: 'CNY', + }; + return (newNum).toLocaleString('zh-CN', options) } diff --git a/src/utils/export-excel.js b/src/utils/export-excel.js index c0fd244..b05118e 100644 --- a/src/utils/export-excel.js +++ b/src/utils/export-excel.js @@ -8,7 +8,7 @@ import XLSX from "xlsx-style-vite"; * @param columnLength 列长度 * @param excelName 导出文件名称 */ -export function exportExcel($table, columnLength, excelName) { +export function exportExcel($table, columnLength, excelName,bigWidth) { //从el-table表生成工作簿对象 //使用原始的格式,保留表格中的格式如%、小数末尾的0等 let workbook = utils.table_to_book($table, { @@ -16,6 +16,9 @@ export function exportExcel($table, columnLength, excelName) { }); //列宽,需要导出的表格有多少列这里的i就小于多少 for (let i = 1; i < columnLength; i++) { + if(i==bigWidth){ + workbook.Sheets.Sheet1["!cols"].push({wpx: 300}); + } workbook.Sheets.Sheet1["!cols"].push({wpx: 100}); } //设置单元格样式 diff --git a/src/views/expense-management/share/detail.vue b/src/views/expense-management/share/detail.vue index 4b78ab6..38d6ca5 100644 --- a/src/views/expense-management/share/detail.vue +++ b/src/views/expense-management/share/detail.vue @@ -18,11 +18,7 @@ - - - - - + @@ -60,7 +56,6 @@