feat: 看板支持A/B组对比下钻 + 全屏 + 删除返回按钮 + 全系统组别(A/B)支持

This commit is contained in:
2026-09-08 19:44:45 +08:00
parent 6d14860b9c
commit 1b7683baab
7 changed files with 251 additions and 77 deletions
+8 -1
View File
@@ -29,6 +29,7 @@ class Roster
'sid' => trim((string)($s['sid'] ?? '')),
'name' => trim((string)($s['name'] ?? '')),
'cls' => trim((string)($s['cls'] ?? '')),
'grp' => trim((string)($s['grp'] ?? '')),
];
}
return $out;
@@ -56,6 +57,7 @@ class Roster
'sid' => $sid,
'name' => $name,
'cls' => trim((string)($s['cls'] ?? '')),
'grp' => trim((string)($s['grp'] ?? '')),
];
}
return ny_write_json(self::file(), [
@@ -177,6 +179,7 @@ class Roster
$sidCol = -1;
$nameCol = -1;
$clsCol = -1;
$grpCol = -1;
$headerIdx = -1;
// 找表头
@@ -202,6 +205,9 @@ class Roster
if ($clsCol < 0 && preg_match('/班\s*级|班级|class/i', $c)) {
$clsCol = $j;
}
if ($grpCol < 0 && preg_match('/组\s*别|分\s*组|^\s*组\s*$|group/i', $c)) {
$grpCol = $j;
}
}
}
if ($sidCol < 0) {
@@ -222,7 +228,8 @@ class Roster
// 学号去掉 .0 尾巴(Excel 数字读取)
$sid = preg_replace('/\.0+$/', '', $sid) ?? $sid;
$cls = $clsCol >= 0 ? trim((string)($row[$clsCol] ?? '')) : '';
$out[] = ['sid' => $sid, 'name' => $name, 'cls' => $cls];
$grp = $grpCol >= 0 ? trim((string)($row[$grpCol] ?? '')) : '';
$out[] = ['sid' => $sid, 'name' => $name, 'cls' => $cls, 'grp' => $grp];
}
return $out;
}