From a90cf43e7a1f41dcde401ed1fd118b0f90d7c3f5 Mon Sep 17 00:00:00 2001 From: cqf Date: 星期四, 26 五月 2022 11:41:49 +0800 Subject: [PATCH] 举一反三隐患-存在 --- src/views/summaryPotentialSafetyHzards/index.vue | 101 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 73 insertions(+), 28 deletions(-) diff --git a/src/views/summaryPotentialSafetyHzards/index.vue b/src/views/summaryPotentialSafetyHzards/index.vue index 4f953f9..ee4a106 100644 --- a/src/views/summaryPotentialSafetyHzards/index.vue +++ b/src/views/summaryPotentialSafetyHzards/index.vue @@ -67,26 +67,30 @@ </el-select> </el-form-item> </div> - <el-form-item label="统计类别"> - <el-radio-group v-model="form.x_axis" style="padding: 0px 0;"> - <el-radio label="ht_branch">按隐患部门</el-radio> - <el-radio label="ht_typesub">按专业</el-radio> - <el-radio label="ht_level">按级别</el-radio> - <el-radio label="checktype">按检查类别</el-radio> - <el-radio label="ht_community">按检查单位(上级单位)</el-radio> - <el-radio label="check_branch">按检查单位(本部单位)</el-radio> - </el-radio-group> - </el-form-item> - <el-form-item label="汇总类别"> - <el-radio-group v-model="form.y_axis"> - <el-radio label="ht_branch">按隐患部门</el-radio> - <el-radio label="ht_typesub">按专业</el-radio> - <el-radio label="ht_level">按级别</el-radio> - <el-radio label="checktype">按检查类别</el-radio> - <el-radio label="ht_community">按检查单位(上级单位)</el-radio> - <el-radio label="check_branch">按检查单位(本部单位)</el-radio> - </el-radio-group> - </el-form-item> + <el-row> + <el-form-item label="统计类别"> + <el-radio-group v-model="form.x_axis" style="padding: 0px 0;"> + <el-radio label="ht_branch">按隐患部门</el-radio> + <el-radio label="ht_typesub">按专业</el-radio> + <el-radio label="ht_level">按级别</el-radio> + <el-radio label="checktype">按检查类别</el-radio> + <el-radio label="ht_community">按检查单位(上级单位)</el-radio> + <el-radio label="check_branch">按检查单位(本部单位)</el-radio> + </el-radio-group> + </el-form-item> + </el-row> + <el-row> + <el-form-item label="汇总类别"> + <el-radio-group v-model="form.y_axis"> + <el-radio label="ht_branch">按隐患部门</el-radio> + <el-radio label="ht_typesub">按专业</el-radio> + <el-radio label="ht_level">按级别</el-radio> + <el-radio label="checktype">按检查类别</el-radio> + <el-radio label="ht_community">按检查单位(上级单位)</el-radio> + <el-radio label="check_branch">按检查单位(本部单位)</el-radio> + </el-radio-group> + </el-form-item> + </el-row> </div> <div class="center" style="text-align: center;padding-top: 10px;"> <el-form-item label="检查时间:"> @@ -102,15 +106,16 @@ <el-button class="btn" size="small" type="primary" @click="queryData" >汇总 </el-button> - <el-button class="btn" size="small" type="primary" @click="close()" + <el-button class="btn" size="small" type="primary" @click="exportData()" >导出Excel </el-button> </el-form-item> </div> </el-form> - <el-table - :data="tableData" - style="width: 100%"> + <el-table id="out-table" + :data="tableData" + v-loading="loading" + style="width: 100%"> <el-table-column align="center" label="众泰煤焦化-安全隐患台帐"> <el-table-column prop="y_label" @@ -120,6 +125,7 @@ </el-table-column> <el-table-column v-for="item in tableData[0].items" + :key="item.x_label" :label="item.x_label" align="center"> <template slot-scope="scope"> @@ -152,6 +158,8 @@ } from "@/api/sgyhpczl/initSelect"; import {danger_summary} from "@/api/sgyhpczl/summaryPotentialSafetyHzards"; +import FileSaver from "file-saver"; +import XLSX from "xlsx"; export default { name: "index", @@ -199,6 +207,7 @@ YHBMList: [], YHJBList: [], YHZTList: [], + loading: false, startDate: "", endDate: "", } @@ -325,7 +334,9 @@ } selectData.push(timeSearchCloumn) requestData.query_condition = selectData; + this.loading = true; danger_summary(requestData).then(res => { + this.loading = false; if (res.data.ok == 1) { this.tableData = res.data.data } else { @@ -369,10 +380,15 @@ return data.value }, - showYHList(row,item){ + showYHList(row, item) { var searchData = {}; - searchData[this.form.x_axis] = item.x_label; - searchData[this.form.y_axis] = row.y_label; + console.log(item) + if (item.x_label != null && item.x_label != "合计") { + searchData[this.form.x_axis] = item.x_label; + } + if (row.y_label != null && row.y_label != "合计") { + searchData[this.form.y_axis] = row.y_label; + } let requestData = {}; let selectData = [] for (const queryElement in this.form) { @@ -394,6 +410,34 @@ path: "/summaryList", query: {"searchData": searchData} }) + }, + exportData() { + var xlsxParam = {raw: true}; + /* 从表生成工作簿对象 */ + var wb = XLSX.utils.table_to_book( + document.querySelector("#out-table"), + xlsxParam + ); + /* 获取二进制字符串作为输出 */ + var wbout = XLSX.write(wb, { + bookType: "xlsx", + bookSST: true, + type: "array", + }); + try { + FileSaver.saveAs( + //Blob 对象表示一个不可变、原始数据的类文件对象。 + //Blob 表示的不一定是JavaScript原生格式的数据。 + //File 接口基于Blob,继承了 blob 的功能并将其扩展使其支持用户系统上的文件。 + //返回一个新创建的 Blob 对象,其内容由参数中给定的数组串联组成。 + new Blob([wbout], {type: "application/octet-stream"}), + //设置导出文件名称 + "安全隐患汇总.xlsx" + ); + } catch (e) { + if (typeof console !== "undefined") console.log(e, wbout); + } + return wbout; } } @@ -460,7 +504,8 @@ /deep/ .el-date-editor .el-range-separator { width: auto; } -.clickSpan:hover{ + +.clickSpan:hover { cursor: pointer; } -- Gitblit v1.9.2