| | |
| | | v-hasPermi="['qualityFinancialAnalysis:list:add']" |
| | | >新增</el-button> |
| | | </el-form-item> |
| | | <el-form-item label="企业名称:" v-if="data.isAdmin" style="margin-left: 20px"> |
| | | <el-form-item label="单位名称:" v-if="data.isAdmin" style="margin-left: 20px"> |
| | | <el-select v-model="data.queryParams.companyId" placeholder="请选择" filterable clearable> |
| | | <el-option |
| | | v-for="item in data.companyList" |
| | |
| | | type="primary" |
| | | @click="exportData" |
| | | >导出</el-button> |
| | | <el-button |
| | | type="primary" |
| | | @click="toDownload" |
| | | >模版下载</el-button> |
| | | </el-form-item> |
| | | |
| | | </el-form> |
| | |
| | | <el-table v-loading="loading" :data="dataList" :border="true" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" /> |
| | | <el-table-column type="index" label="序号" width="80" align="center"></el-table-column> |
| | | <el-table-column label="企业名称" prop="companyName" align="center" v-if="data.isAdmin" /> |
| | | <el-table-column label="单位名称" prop="companyName" align="center" v-if="data.isAdmin" /> |
| | | <el-table-column label="名称" prop="year" align="center" > |
| | | <template #default="scope"> |
| | | <span>{{scope.row.year}}年质量经济性分析报告</span> |
| | |
| | | import { Document, Paragraph, TextRun, Table, TableRow, TableCell,BorderStyle , Packer, AlignmentType, HeadingLevel } from "docx"; |
| | | import { saveAs } from "file-saver"; |
| | | import {delEconomy, getEconomy} from "@/api/qualityFinancialAnalysis"; |
| | | import {useRouter} from "vue-router"; |
| | | const { proxy } = getCurrentInstance(); |
| | | const loading = ref(false); |
| | | const noticeRef = ref(); |
| | | const router = useRouter() |
| | | const loadingCompany = ref(false) |
| | | const choosedData = ref([]) |
| | | const data = reactive({ |
| | |
| | | const searchClick = () => { |
| | | getList(); |
| | | } |
| | | |
| | | const toDownload = ()=>{ |
| | | router.push({ |
| | | path: '/learn/standardSysTemp/recordStandardModule', |
| | | query: { |
| | | templateName: '质量经济性分析' |
| | | } |
| | | }) |
| | | } |
| | | |
| | | const openDialog = (type, value) => { |
| | | noticeRef.value.openDialog(type, value,data.companyList); |
| | | } |
| | |
| | | }), |
| | | |
| | | |
| | | // 三、内外部损失 |
| | | // 三、综合评价 |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | | text: "三、内外部损失", |
| | | text: "三、综合评价", |
| | | font: "宋体", |
| | | size: 22, |
| | | bold: true, |
| | |
| | | alignment: AlignmentType.LEFT, |
| | | spacing: { after: 100 } |
| | | }), |
| | | //内外部损失内容 |
| | | //综合评价内容 |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | |
| | | spacing: { after: 300 } // 和下一段的间距 |
| | | }), |
| | | |
| | | // 四、纠正措施 |
| | | // 四、改进意见 |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | | text: "四、纠正措施", |
| | | text: "四、改进意见", |
| | | font: "宋体", |
| | | size: 22, |
| | | bold: true, |
| | |
| | | alignment: AlignmentType.LEFT, |
| | | spacing: { after: 100 } |
| | | }), |
| | | //纠正措施内容 |
| | | //改进意见内容 |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | |
| | | alignment: AlignmentType.LEFT, |
| | | spacing: { after: 300 } // 和下一段的间距 |
| | | }), |
| | | //五、分析结果 |
| | | //五、结论 |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | | text: "六、分析结果", |
| | | text: "五、结论", |
| | | font: "宋体", |
| | | size: 22, |
| | | bold: true, |
| | |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | | text: data.suggest, // 替换为实际内容 |
| | | text: data.analysis, // 替换为实际内容 |
| | | font: "宋体", // 与标题一致 |
| | | size: 20, // 小四号(20 half-points) |
| | | bold: false, // 常规 |
| | |
| | | alignment: AlignmentType.LEFT, |
| | | spacing: { after: 300 } // 和下一段的间距 |
| | | }), |
| | | |
| | | // 二、改进建议 |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | | text: "六、改进建议", |
| | | font: "宋体", |
| | | size: 22, |
| | | bold: true, |
| | | color: "000000" |
| | | }) |
| | | ], |
| | | heading: HeadingLevel.HEADING_1, |
| | | alignment: AlignmentType.LEFT, |
| | | spacing: { after: 100 } |
| | | }), |
| | | //改进建议内容 |
| | | new Paragraph({ |
| | | children: [ |
| | | new TextRun({ |
| | | text: data.suggest, // 替换为实际内容 |
| | | font: "宋体", // 与标题一致 |
| | | size: 20, // 小四号(20 half-points) |
| | | bold: false, // 常规 |
| | | color: "000000" // 纯黑 |
| | | }) |
| | | ], |
| | | alignment: AlignmentType.LEFT, |
| | | spacing: { after: 300 } // 和下一段的间距 |
| | | }), |
| | | // |
| | | // // 二、改进建议 |
| | | // new Paragraph({ |
| | | // children: [ |
| | | // new TextRun({ |
| | | // text: "六、改进建议", |
| | | // font: "宋体", |
| | | // size: 22, |
| | | // bold: true, |
| | | // color: "000000" |
| | | // }) |
| | | // ], |
| | | // heading: HeadingLevel.HEADING_1, |
| | | // alignment: AlignmentType.LEFT, |
| | | // spacing: { after: 100 } |
| | | // }), |
| | | // //改进建议内容 |
| | | // new Paragraph({ |
| | | // children: [ |
| | | // new TextRun({ |
| | | // text: data.suggest, // 替换为实际内容 |
| | | // font: "宋体", // 与标题一致 |
| | | // size: 20, // 小四号(20 half-points) |
| | | // bold: false, // 常规 |
| | | // color: "000000" // 纯黑 |
| | | // }) |
| | | // ], |
| | | // alignment: AlignmentType.LEFT, |
| | | // spacing: { after: 300 } // 和下一段的间距 |
| | | // }), |
| | | |
| | | // 10. 综合部落款 |
| | | new Paragraph({ |