import { exportXlsx2 } from "@/excel/Export2Excel.js"

/**
 * 导出xlsx
 *
 * @export
 * @param {Array} tableData
 * @param {Object} dictObj
 * @param {String} tips
 */
export function exportXlsx(tableData, dictObj, tips) {
    const { D_BZ_XB, D_BZ_AQRYSCLY, D_BZ_ZCAQGCSJB, D_BZ_ZCXFGCSJB, D_BZ_SFWAJWCY, D_BZ_SFWAQGCS, D_BZ_ZZMM } = dictObj
    tableData = Array.isArray(tableData) ? tableData : []
    // (*)统计周期	(*)企业名称	(*)所在部门（单位）	(*)姓名	(*)政治面貌	(*)性别	(*)岗位名称	(*)出生年月	(*)最高专业技术资格名称	(*)职务	全日制毕（肄）业学校（单位）	在职毕（肄）业学校（单位）	最高全日制学历	最高在职学历	全日制毕（肄）业专业	在职毕（肄）业专业	(*)联系方式	(*)擅长领域	(*)累计从事专职安全管理年限	(*)注册安全工程师级别	(*)注册消防工程师级别	(*)是否为安技委成员	(*)是否评聘为安全工程师	填报人	填报时间	更新人	更新时间
    let titleData = [{
        // index: "序号",
        // dataStatCycle: "(*)统计周期",
        baOrgName: "(*)企业名称",
        deptName: "(*)所在部门（单位）",
        employeeName: "(*)姓名",
        politicalAffiliation: "(*)政治面貌",
        sexName: "(*)性别",
        postName: "(*)岗位名称",
        birthDate: "(*)出生年月",
        proQualifiedName: "(*)最高专业技术资格名称", // 职称
        dutiesName: "(*)职务",
        graduationSchoolName: "(*)全日制毕（肄）业学校（单位）",
        jobGraduationSchoolName: "(*)在职毕（肄）业学校（单位）",
        maximumDegreeName: "(*)最高全日制学历",
        jobEducationName: "(*)最高在职学历",
        graduatedMajorName: "(*)全日制毕（肄）业专业",
        jobGraduatedSchoolName: "(*)在职毕（肄）业专业",
        contact: "(*)联系方式",
        areasExpertiseName: "(*)擅长领域",
        safetyManageYear: "(*)累计从事专职安全管理年限",
        cseLevelName: "(*)注册安全工程师级别",
        fireEngineerLevelName: "(*)注册消防工程师级别",
        safetyMemberFlag: "(*)是否为安技委成员",
        seFlag: "(*)是否评聘为安全工程师",

    }]

    const exportData = tableData.map(item => {

        return {
            ...item
        }
    })

    const dicArr = [
        {
            title: '性别',
            data: D_BZ_XB
        },
        {
            title: '擅长领域',
            data: D_BZ_AQRYSCLY
        },
        {
            title: '注册安全工程师级别',
            data: D_BZ_ZCAQGCSJB
        },
        {
            title: '注册消防工程师级别',
            data: D_BZ_ZCXFGCSJB
        },
        {
            title: '是否为安技委成员',
            data: D_BZ_SFWAQGCS
        },
        {
            title: '是否评聘为安全工程师',
            data: D_BZ_SFWAJWCY
        },
        {
            title: '政治面貌',
            data: D_BZ_ZZMM
        },
    ]
    // 表头上面的规则
    const rules =
    {
        // dataStatCycle: "导入不以此字段为依据，请在系统内对应选择周期导入",
        baOrgName: "文本：1-50字符",
        deptName: "文本：1-200字符",
        employeeName: "文本：1-50字符",
        politicalAffiliation: "文本：1-64字符",
        sexName: "枚举选择",
        postName: "文本：1-50字符",
        birthDate: "日期格式：yyyy-MM-dd",
        proQualifiedName: "文本：1-256字符",
        dutiesName: "文本：1-100字符",
        graduationSchoolName: "文本：0-256字符",
        jobGraduationSchoolName: "文本：0-256字符",
        maximumDegreeName: "文本：0-64字符",
        jobEducationName: "文本：0-64字符",
        graduatedMajorName: "文本：0-64字符",
        jobGraduatedSchoolName: "文本：0-64字符",
        contact: "11位手机号",
        areasExpertiseName: "参考填报说明12",
        safetyManageYear: "1位小数：0-999.9",
        cseLevelName: "枚举选择",
        fireEngineerLevelName: "枚举选择",
        safetyMemberFlag: "枚举选择",
        seFlag: "枚举选择",
        // xx: "文本：1-50字符",
        // yy: "时间yyyy-MM-dd HH:mm:ss",
        // zz: "时间yyyy-MM-dd HH:mm:ss",
        // wsbNum: "文本：1-50字符",
        // updateTime: "时间yyyy-MM-dd HH:mm:ss",
        // status: "枚举选择",
        // sbcs: "文本：1-50字符",
    }

    exportXlsx2({
        tablename: '安全管理队伍.xlsx',
        baseData: {
            content: `1、填写范围：
  专职安全管理人员数量包含：配置在安全管理部门和其他部门专职安全员（包含车间、县局级等专职安全员），统计范围以人事部门设置岗位名称为准；
  2、安全管理队伍模块统计频次：季度；
  3、安全管理队伍提交周期：提交时间范围为每季度1日至下季度5日。`,
            orgName: '',
        }, // 填报基本信息
        tableObj: {
            titleData,
            tableData: exportData,
            tableTitle: '安全管理队伍',
            sheetName: '安全管理队伍',
            merges: [],
            tips, // 填表说明
            rules // 字段规则
        },
        dict: dicArr,
        dictHeader: {
            content: ['安全管理队伍下拉项'],
            merges: [{ s: { r: 0, c: 0 }, e: { r: 0, c: dicArr.length - 1 } }] // 为字典长度
        }
    })
}