Files
ny-exam-platform/docs/samples/sheet-data.json
T
nxxy335 e87986fcc6 多考试块表:每场考试改为单列并修正第几次列合并
- ny_assemble_block_sheet() 中每场考试由 2 列改为 1 列,删除历史遗留的
  「是否最佳」空白列,消除每场右侧多余空白窄列
- 删除「第几次」列的纵向合并,改为逐行显示 1/2/3…,不再被吞成 1
- 合格次数行同步改为每场 1 列;未考合并加 $end > $start 跨行守卫,
  规避单行学生产生的非法 1x1 合并(Excel 修复提示)
- 列宽按考试名估算(CJK 记 2 半角宽),clamp 8~18
- 同步更新 test-multi-export.php(95 项含 4 条防回归断言)、
  make-samples.php(李四数学改为真正整场未考)、导出/接口/测试文档
  及样例预览文件;全量回归 404 项 0 失败
2026-10-06 12:22:16 +08:00

222 lines
5.2 KiB
JSON

{
"block": {
"title": "多考试导出 · 每次考试(两行表头)",
"sheet": {
"rows": [
[
"学号",
"姓名",
"第几次",
"第一次月考·数学",
"第一次月考·英语"
],
[
"",
"",
"",
"成绩",
"成绩"
],
[
"356001",
"张三",
"1",
"112",
"112"
],
[
"",
"",
"2",
"100",
"99"
],
[
"",
"",
"3",
"136",
""
],
[
"",
"",
"4",
"127",
""
],
[
"",
"",
"合格次数",
"3",
"1"
],
[
"356002",
"李四",
"1",
"未考",
"130"
],
[
"",
"",
"2",
"",
"129"
],
[
"",
"",
"3",
"",
"133"
],
[
"",
"",
"合格次数",
"",
"3"
],
[
"356003",
"王五",
"1",
"95",
"未考"
],
[
"",
"",
"合格次数",
"0",
""
]
],
"merges": [
[
1,
1,
2,
1
],
[
1,
2,
2,
2
],
[
1,
3,
2,
3
],
[
3,
1,
7,
1
],
[
3,
2,
7,
2
],
[
8,
4,
10,
4
],
[
8,
1,
11,
1
],
[
8,
2,
11,
2
],
[
12,
1,
13,
1
],
[
12,
2,
13,
2
]
],
"header_rows": 2,
"cell_styles": {
"3,5": "red",
"5,4": "red",
"7,4": "green",
"7,5": "green",
"10,5": "red",
"11,5": "green",
"12,4": "red"
}
},
"meta": {
"pass_line": 110,
"pass_times": 1
}
},
"wide": {
"title": "单场导出 · 每次考试(每人一行的宽表)",
"sheet": {
"rows": [
[
"学号",
"姓名",
"第1次",
"第2次",
"第3次",
"第4次",
"合格次数"
],
[
"356001",
"张三",
"112",
"100",
"136",
"127",
"3"
],
[
"356003",
"王五",
"95",
"",
"",
"",
"0"
]
],
"merges": [],
"header_rows": 1,
"cell_styles": {
"2,5": "red",
"2,7": "green",
"3,3": "red"
}
},
"meta": {
"pass_line": 110,
"pass_times": 1,
"exam_name": "第一次月考·数学"
}
}
}