guanqb
2024-02-06 e381544add9bb8c55a8cd0495a1ea449efd96ff6
src/views/publicSecurity/ninePlaceManage/hiddenDangerStatistics.vue
@@ -34,6 +34,8 @@
import {
    getYHTJList
} from "@/api/publicSecurity/ninePlaceManage"
import { export_json_to_excels } from "@/util/Export2Excel"
import { timestampToTime } from "@/util/timeStamp"
export default {
    data () {
@@ -202,7 +204,184 @@
    methods: {
        exportAvue () {
            this.$refs.crud.rowExcel()
            this.$confirm("是否导出隐患统计数据?", "提示", {
                confirmButtonText: "确定",
                cancelButtonText: "取消",
                type: "warning"
            }).then(() => {
                // this.$refs.crud.rowExcel()
                this.exportBtn()
            })
        },
        //json格式化
        formatJson (filterVal, tableData) {
            return tableData.map((v) => {
                return filterVal.map((j) => {
                    return v[j]
                })
            })
        },
        // 导出
        exportBtn () {
            const multiHeader = ["序号", "地区", "小商店", "小旅馆", "小学校(幼儿园、校外培训机构)", "", "", "小医院(诊所、养老院)", "", "", "小网吧", "小餐饮场所", "小歌舞娱乐场所", "小美容洗浴场所", "小生产加工企业", "总数"]//第一行表头
            const tHeader = ["", "", "", "", "学校", "幼儿园", "校外培训机构", "医院", "诊所", "养老院", "", "", "", "", "", "",]//最后一行的表头
            const filterVal = [
                "index",
                "name",
                "xsd",
                "xlg",
                "xxx",
                "yey",
                "xwpxjg",
                "yy",
                "zs",
                "yly",
                "xwb",
                "xcycs",
                "xgwylcs",
                "xmrxycs",
                "xscjgqy",
                "count"
            ]
            var time = timestampToTime((new Date()).getTime())
            var filename = '隐患统计' + time
            this.data.forEach((item, index) => {
                item.index = index + 1
            })
            var data = this.formatJson(filterVal, this.data)
            const merges = [//合并单元格
                {
                    s: {//开始单元格
                        r: 0,//纵轴坐标(1=0,以此类推)
                        c: 0//横轴坐标(A=0,以此类推)
                    },
                    e: {//结束单元格
                        r: 1,
                        c: 0
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 1
                    },
                    e: {
                        r: 1,
                        c: 1
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 2
                    },
                    e: {
                        r: 1,
                        c: 2
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 3
                    },
                    e: {
                        r: 1,
                        c: 3
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 4
                    },
                    e: {
                        r: 0,
                        c: 6
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 7
                    },
                    e: {
                        r: 0,
                        c: 9
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 10
                    },
                    e: {
                        r: 1,
                        c: 10
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 11
                    },
                    e: {
                        r: 1,
                        c: 11
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 12
                    },
                    e: {
                        r: 1,
                        c: 12
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 13
                    },
                    e: {
                        r: 1,
                        c: 13
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 14
                    },
                    e: {
                        r: 1,
                        c: 14
                    }
                },
                {
                    s: {
                        r: 0,
                        c: 15
                    },
                    e: {
                        r: 1,
                        c: 15
                    }
                }
            ]
            export_json_to_excels({
                headerOne: multiHeader,
                headerTwo: tHeader,
                merges,
                data,
                filename
            })
        },
        getLastMouth (str = '-') {