cqf
2022-05-26 a90cf43e7a1f41dcde401ed1fd118b0f90d7c3f5
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;
}