• Data Governance Dev's avatar
    feat(web2): IdCardTable 列选择(表头 checkbox)+ 导出 Excel · cfca7ea3
    Data Governance Dev authored
    列选择(为「导出选列」预埋):
    - 每列表头前加 el-checkbox,可单独控制该列是否参与导出
    - 第 0 列固定全选 checkbox(支持半选 indeterminate)
    - 「违规」列也加 checkbox,内部用 __violation__ 作 key
    - 默认全部勾选;新出现的列自动勾上
    - 未勾选的列**不隐藏**(仍显示),仅加 idcard-table__col-unselected class 灰显
    - 暴露 selectedColumns / selectedDataColumns / selectAll / deselectAll 给父组件
    - emit columns-change 事件
    
    导出 Excel:
    - 表格上方加工具栏:[📥 导出当前表 (N 行)] 已勾选 X/Y 列
    - 文件格式:
      - 第 1 行:字段注释(column_comment)
      - 第 2 行:字段名(column_name,加粗 + 浅灰背景 + 居中)
      - 第 3 行起:数据
      - 含「违规」列时,第1行首列 = 「违规原因」,第2行首列 = _id_card_violation
    - 黑色细边框(4 边 thin + #000000)
    - 冻结前 2 行(Excel 滚动时表头固定)
    - 超过 5000 行弹确认框
    - sheet 名 sanitize(去掉 :\/?*[],最长 31 字符)
    - 文件名 sanitize(去掉 <>:"/\|?*,最长 100 字符)
    
    IdCardTool.vue:给 <IdCardTable> 加 :table-name="t.table_name"
    cfca7ea3
IdCardTable.vue 19.7 KB