Spaces:
Running
Running
Update src/templates/compare.html
Browse files- src/templates/compare.html +19 -10
src/templates/compare.html
CHANGED
|
@@ -1414,7 +1414,7 @@
|
|
| 1414 |
// 获取所有考试列表并排序(按时间倒序)
|
| 1415 |
const allExams = [...studentsDataA, ...studentsDataB];
|
| 1416 |
const uniqueExams = [...new Map(allExams.map(exam => [exam.考试名称, exam])).values()]
|
| 1417 |
-
.sort((a, b) =>
|
| 1418 |
|
| 1419 |
uniqueExams.forEach((exam, index) => {
|
| 1420 |
const examBtn = document.createElement('button');
|
|
@@ -2161,23 +2161,32 @@
|
|
| 2161 |
|
| 2162 |
// 按时间排序的所有考试
|
| 2163 |
const allExamsA = [...studentsDataA].sort((a, b) =>
|
| 2164 |
-
|
| 2165 |
);
|
| 2166 |
|
| 2167 |
const allExamsB = [...studentsDataB].sort((a, b) =>
|
| 2168 |
-
|
| 2169 |
);
|
| 2170 |
|
| 2171 |
-
//
|
| 2172 |
-
const
|
| 2173 |
-
|
| 2174 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2175 |
|
| 2176 |
-
const uniqueLabels =
|
| 2177 |
|
| 2178 |
// 收集排名数据
|
| 2179 |
const dataA = uniqueLabels.map(label => {
|
| 2180 |
-
const exam = allExamsA.find(e => e.考试名称
|
| 2181 |
if (!exam) return null;
|
| 2182 |
|
| 2183 |
const rankKey = subject === '总分' ? '大类排名' : `${subject}校次`;
|
|
@@ -2186,7 +2195,7 @@
|
|
| 2186 |
});
|
| 2187 |
|
| 2188 |
const dataB = uniqueLabels.map(label => {
|
| 2189 |
-
const exam = allExamsB.find(e => e.考试名称
|
| 2190 |
if (!exam) return null;
|
| 2191 |
|
| 2192 |
const rankKey = subject === '总分' ? '大类排名' : `${subject}校次`;
|
|
|
|
| 1414 |
// 获取所有考试列表并排序(按时间倒序)
|
| 1415 |
const allExams = [...studentsDataA, ...studentsDataB];
|
| 1416 |
const uniqueExams = [...new Map(allExams.map(exam => [exam.考试名称, exam])).values()]
|
| 1417 |
+
.sort((a, b) => (b.sort_index || 0) - (a.sort_index || 0));
|
| 1418 |
|
| 1419 |
uniqueExams.forEach((exam, index) => {
|
| 1420 |
const examBtn = document.createElement('button');
|
|
|
|
| 2161 |
|
| 2162 |
// 按时间排序的所有考试
|
| 2163 |
const allExamsA = [...studentsDataA].sort((a, b) =>
|
| 2164 |
+
(a.sort_index || 0) - (b.sort_index || 0)
|
| 2165 |
);
|
| 2166 |
|
| 2167 |
const allExamsB = [...studentsDataB].sort((a, b) =>
|
| 2168 |
+
(a.sort_index || 0) - (b.sort_index || 0)
|
| 2169 |
);
|
| 2170 |
|
| 2171 |
+
// 收集考试名称和日期作为标签,并按 sort_index 排序
|
| 2172 |
+
const allExams = [...studentsDataA, ...studentsDataB];
|
| 2173 |
+
const uniqueExamsMap = new Map();
|
| 2174 |
+
allExams.forEach(exam => {
|
| 2175 |
+
const name = exam.考试名称 || exam.考试时间;
|
| 2176 |
+
if (!uniqueExamsMap.has(name)) {
|
| 2177 |
+
uniqueExamsMap.set(name, exam);
|
| 2178 |
+
}
|
| 2179 |
+
});
|
| 2180 |
+
|
| 2181 |
+
const sortedUniqueExams = Array.from(uniqueExamsMap.values()).sort((a, b) =>
|
| 2182 |
+
(a.sort_index || 0) - (b.sort_index || 0)
|
| 2183 |
+
);
|
| 2184 |
|
| 2185 |
+
const uniqueLabels = sortedUniqueExams.map(exam => exam.考试名称 || exam.考试时间);
|
| 2186 |
|
| 2187 |
// 收集排名数据
|
| 2188 |
const dataA = uniqueLabels.map(label => {
|
| 2189 |
+
const exam = allExamsA.find(e => (e.考试名称 || e.考试时间) === label);
|
| 2190 |
if (!exam) return null;
|
| 2191 |
|
| 2192 |
const rankKey = subject === '总分' ? '大类排名' : `${subject}校次`;
|
|
|
|
| 2195 |
});
|
| 2196 |
|
| 2197 |
const dataB = uniqueLabels.map(label => {
|
| 2198 |
+
const exam = allExamsB.find(e => (e.考试名称 || e.考试时间) === label);
|
| 2199 |
if (!exam) return null;
|
| 2200 |
|
| 2201 |
const rankKey = subject === '总分' ? '大类排名' : `${subject}校次`;
|