import { exportXlsx2 } from "@/excel/Export2Excel.js"
import { filterjd } from "@/utils/auth.js";
/**
 * 导出xlsx
 *
 * @export
 * @param {*} tableData
 * @param {*} {D_BZ_XB}
 */
//职业危害场所
export function zywhcsXlsx(tableData, dictObj, tips) {
    const { D_BZ_RYLB_NEW, D_BZ_ZYJKTJLB, D_BZ_TSZYLX, D_BZ_JCZYWHYS } = dictObj
    tableData = Array.isArray(tableData) ? tableData : []
    let titleData = [

        {
            orgName: "(*)企业名称",
            placeName: '(*)职业危害场所名称',
            factorName: '(*)职业危害因素',
            otherFactor: '职业危害因素(其他)',
            pointsQty: '检测信息',
            exceedingPointsQty: '检测信息',
        },
        {
            orgName: "(*)企业名称",
            placeName: '(*)职业危害场所名称',
            factorName: '(*)职业危害因素',
            otherFactor: '职业危害因素(其他)',
            pointsQty: '检测点位数量',
            exceedingPointsQty: '超标点位数量',
        }]

    const exportData = tableData.map(item => {

        return {
            ...item
        }
    })
    const rules =
    {
        orgName: "文本：1-50字符",
        wc: '文本：1-50字符',
        factorName: '参考填表说明8（2）',
        otherFactor: '文本：1-50字符',
        pointsQty: '整数：0-99999',
        exceedingPointsQty: '整数：0-99999',
    }

    exportXlsx2({
        tablename: '职业危害场所台账.xlsx',
        baseData: {
            content: `填报说明：
1、填报单位：省级单位名称；
2、企业名称：各省级单位机关或下属单位名称；
3、职业健康和劳动保护管理模块统计频次：季度；
4、职业健康和劳动保护管理模块提交周期：每季度1日至下季度5日。`,
            orgName: '',
        }, // 填报基本信息
        tableObj: {
            titleData,
            tableData: exportData,
            tableTitle: '职业危害场所',
            sheetName: '职业危害场所',
            merges: [
                { s: { r: 2, c: 1 }, e: { r: 3, c: 1 } },
                { s: { r: 2, c: 2 }, e: { r: 3, c: 2 } },
                { s: { r: 2, c: 3 }, e: { r: 3, c: 3 } },
                { s: { r: 2, c: 4 }, e: { r: 3, c: 4 } },
                { s: { r: 2, c: 5 }, e: { r: 2, c: 6 } },
            ],
            tips, // 填表说明
            rules, // 字段规则
            headerNum: 1,
        },
        dict: [
            {
                title: '统计时间',
                data: filterjd(2)
            },

            {
                title: '人员类别',
                data: D_BZ_RYLB_NEW
            },
            {
                title: '体检类型',
                data: D_BZ_ZYJKTJLB
            },
            {
                title: '特殊作业类别',
                data: D_BZ_TSZYLX

            },

            {
                title: '接触职业危害因素',
                data: D_BZ_JCZYWHYS
            },


        ]
    })
}
//职业危害从业人数
export function zywhcyrsXlsx(tableData, dictObj, tips) {
    const { D_BZ_RYLB_NEW, D_BZ_ZYJKTJLB, D_BZ_TSZYLX, D_BZ_JCZYWHYS } = dictObj
    tableData = Array.isArray(tableData) ? tableData : []
    let titleData = [
        {
            orgName: "(*)企业名称",
            factorName: '(*)职业危害因素',
            otherFactor: '其他职业危害因素',
            bbEohPersonnelCategoryName: '(*)人员类别',
            personnelQty: '(*)数量',
        }]

    const exportData = tableData.map(item => {

        return {
            ...item
        }
    })
    const rules =
    {
        orgName: "文本：1-50字符",
        factorName: '枚举选择',
        otherFactor: '文本：0-50字符',
        bbEohPersonnelCategoryName: '枚举选择',
        personnelQty: '整数：0-99999',
    }

    exportXlsx2({
        tablename: '职业危害从业台账.xlsx',
        baseData: {
            content: `填报说明：
1、填报单位：省级单位名称；
2、企业名称：各省级单位机关或下属单位名称；
3、职业健康和劳动保护管理模块统计频次：季度；
4、职业健康和劳动保护管理模块提交周期：每季度1日至下季度5日。`,
            orgName: '',
        }, // 填报基本信息
        tableObj: {
            titleData,
            tableData: exportData,
            tableTitle: '职业危害从业台账',
            sheetName: '职业危害从业台账',
            merges: [
            ],
            tips, // 填表说明
            rules, // 字段规则
            headerNum: 1,
        },
        dict: [
            {
                title: '统计时间',
                data: filterjd(2)
            },

            {
                title: '人员类别',
                data: D_BZ_RYLB_NEW
            },
            {
                title: '体检类型',
                data: D_BZ_ZYJKTJLB
            },
            {
                title: '特殊作业类别',
                data: D_BZ_TSZYLX

            },

            {
                title: '接触职业危害因素',
                data: D_BZ_JCZYWHYS
            },


        ]
    })
}
//职业健康体检
export function zyjktjXlsx(tableData, dictObj, tips) {
    const { D_BZ_RYLB_NEW, D_BZ_ZYJKTJLB, D_BZ_TSZYLX, D_BZ_JCZYWHYS } = dictObj
    tableData = Array.isArray(tableData) ? tableData : []
    let titleData = [
        {
            orgName: "(*)企业名称",
            examinationTypeName: '(*)体检类型',
            occupationalHazardName: '接触职业危害因素',
            jcqt: '其他接触职业危害因素',
            specialJobCategorieName: '特殊作业类别',
            bbEohPersonnelCategoryName: '(*)人员类别',
            personnelQty: '(*)数量',
        }]

    const exportData = tableData.map(item => {

        return {
            ...item
        }
    })
    const rules =
    {
        orgName: "文本：1-50字符",
        examinationTypeName: '体检类型为：涉及职业危害职业健康体检，选择接触职业危害因素；体检类型为：职业禁忌证体检，选择特殊作业类别',
        occupationalHazardName: '体检类型为：涉及职业危害职业健康体检，选择接触职业危害因素；体检类型为：职业禁忌证体检，选择特殊作业类别',
        jcqt: '体检类型为：涉及职业危害职业健康体检，选择接触职业危害因素；体检类型为：职业禁忌证体检，选择特殊作业类别',
        specialJobCategorieName: '体检类型为：涉及职业危害职业健康体检，选择接触职业危害因素；体检类型为：职业禁忌证体检，选择特殊作业类别',
        bbEohPersonnelCategoryName: '枚举选择',
        personnelQty: '整数：0-999999',
    }

    exportXlsx2({
        tablename: '职业健康体检.xlsx',
        baseData: {
            content: `填报说明：
1、填报单位：省级单位名称；
2、企业名称：各省级单位机关或下属单位名称；
3、职业健康和劳动保护管理模块统计频次：季度；
4、职业健康和劳动保护管理模块提交周期：每季度1日至下季度5日。`,
            orgName: '',
        }, // 填报基本信息
        tableObj: {
            titleData,
            tableData: exportData,
            tableTitle: '职业健康体检',
            sheetName: '职业健康体检',
            merges: [
                { s: { r: 1, c: 2 }, e: { r: 1, c: 5 } },
            ],
            tips, // 填表说明
            rules, // 字段规则
            headerNum: 1,
        },
        dict: [
            {
                title: '统计时间',
                data: filterjd(2)
            },

            {
                title: '人员类别',
                data: D_BZ_RYLB_NEW
            },
            {
                title: '体检类型',
                data: D_BZ_ZYJKTJLB
            },
            {
                title: '特殊作业类别',
                data: D_BZ_TSZYLX

            },

            {
                title: '接触职业危害因素',
                data: D_BZ_JCZYWHYS
            },


        ]
    })
}
//职业病
export function zybXlsx(tableData, dictObj, tips) {
    const { D_BZ_RYLB_NEW, D_BZ_ZYJKTJLB, D_BZ_TSZYLX, D_BZ_JCZYWHYS } = dictObj
    tableData = Array.isArray(tableData) ? tableData : []
    let titleData = [
        {
            orgName: "(*)企业名称",
            occupationalDiseaseQty: '(*)职业病确诊人数',
        }]

    const exportData = tableData.map(item => {

        return {
            ...item
        }
    })
    const rules =
    {
        orgName: "文本：1-50字符",
        occupationalDiseaseQty: '整数：0-999999',
    }

    exportXlsx2({
        tablename: '职业病台账.xlsx',
        baseData: {
            content: `填报说明：
1、填报单位：省级单位名称；
2、企业名称：各省级单位机关或下属单位名称；
3、职业健康和劳动保护管理模块统计频次：季度；
4、职业健康和劳动保护管理模块提交周期：每季度1日至下季度5日。`,
            orgName: '',
        }, // 填报基本信息
        tableObj: {
            titleData,
            tableData: exportData,
            tableTitle: '职业病',
            sheetName: '职业病',
            merges: [
            ],
            tips, // 填表说明
            rules, // 字段规则
            headerNum: 1,
        },
        dict: [
            {
                title: '统计时间',
                data: filterjd(2)
            },

            {
                title: '人员类别',
                data: D_BZ_RYLB_NEW
            },
            {
                title: '体检类型',
                data: D_BZ_ZYJKTJLB
            },
            {
                title: '特殊作业类别',
                data: D_BZ_TSZYLX

            },

            {
                title: '接触职业危害因素',
                data: D_BZ_JCZYWHYS
            },


        ]
    })
}