v1.7版本更新
This commit is contained in:
@@ -94,8 +94,8 @@ include __DIR__ . '/../includes/header.php';
|
||||
<div class="stat-value" id="studentRank">--</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-label">作业完成率</div>
|
||||
<div class="stat-value" id="homeworkRate">--%</div>
|
||||
<div class="stat-label">缺交次数</div>
|
||||
<div class="stat-value" id="homeworkRate">--</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-label">本月出勤率</div>
|
||||
@@ -103,6 +103,11 @@ include __DIR__ . '/../includes/header.php';
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="info-item" id="dormitoryInfo" style="display:none; text-align: center; padding: 8px 0; color: #555; font-size: 14px;">
|
||||
<span class="info-label">宿舍号: </span>
|
||||
<span class="info-value" id="dormitoryNumber"></span>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-title">最新操行分记录</div>
|
||||
<div id="recentRecords"></div>
|
||||
@@ -136,10 +141,10 @@ include __DIR__ . '/../includes/header.php';
|
||||
<thead>
|
||||
<tr>
|
||||
<th>科目</th>
|
||||
<th>作业标题</th>
|
||||
<th>截止日期</th>
|
||||
<th>状态</th>
|
||||
<th>时间</th>
|
||||
<th>分值</th>
|
||||
<th>备注</th>
|
||||
<th>作业</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="homeworkList"></tbody>
|
||||
@@ -296,6 +301,13 @@ include __DIR__ . '/../includes/header.php';
|
||||
document.getElementById('recentRecords').innerHTML = html;
|
||||
}
|
||||
|
||||
// 获取个人信息(宿舍号)
|
||||
const infoRes = await apiGet('/api/student/my-info');
|
||||
if (infoRes && infoRes.success && infoRes.data.dormitory_number) {
|
||||
document.getElementById('dormitoryNumber').textContent = infoRes.data.dormitory_number;
|
||||
document.getElementById('dormitoryInfo').style.display = '';
|
||||
}
|
||||
|
||||
// 获取班级排名
|
||||
const rankingRes = await apiGet('/api/student/ranking', { limit: 100 });
|
||||
if (rankingRes && rankingRes.success) {
|
||||
@@ -307,13 +319,14 @@ include __DIR__ . '/../includes/header.php';
|
||||
document.getElementById('studentRank').textContent = '--';
|
||||
}
|
||||
}
|
||||
|
||||
// 获取作业统计
|
||||
// 获取作业统计 - 缺交次数
|
||||
const homeworkRes = await apiGet(`/api/student/homework/${STUDENT_ID}`);
|
||||
if (homeworkRes && homeworkRes.success) {
|
||||
const stats = homeworkRes.data.statistics;
|
||||
const rate = stats.total > 0 ? Math.round(stats.submitted / stats.total * 100) : 0;
|
||||
document.getElementById('homeworkRate').textContent = `${rate}%`;
|
||||
const notSubmitted = (stats.not_submitted || 0) + (stats.late || 0);
|
||||
const total = stats.total || 0;
|
||||
document.getElementById('homeworkRate').textContent = `缺交 ${notSubmitted}/${total} 次`;
|
||||
}
|
||||
}
|
||||
|
||||
// 获取考勤统计
|
||||
@@ -381,13 +394,14 @@ include __DIR__ . '/../includes/header.php';
|
||||
if (res && res.success) {
|
||||
let html = '';
|
||||
res.data.homework.forEach(hw => {
|
||||
const pointsDisplay = hw.points ? hw.points + '分' : '-';
|
||||
html += `
|
||||
<tr>
|
||||
<td>${escapeHtml(hw.subject_name)}</td>
|
||||
<td>${escapeHtml(hw.title)}</td>
|
||||
<td>${escapeHtml(hw.deadline)}</td>
|
||||
<td>${getStatusBadge(hw.status, 'homework')}</td>
|
||||
<td>${hw.deadline || hw.created_at}</td>
|
||||
<td>${pointsDisplay}</td>
|
||||
<td>${escapeHtml(hw.comments || '-')}</td>
|
||||
<td>${escapeHtml(hw.title)}</td>
|
||||
</tr>
|
||||
`;
|
||||
});
|
||||
|
||||
@@ -36,7 +36,7 @@ include __DIR__ . '/../includes/header.php';
|
||||
<div class="table-wrapper">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr><th>科目</th><th>作业标题</th><th>截止日期</th><th>状态</th><th>备注</th></tr>
|
||||
<tr><th>科目</th><th>时间</th><th>分值</th><th>备注</th><th>作业</th></tr>
|
||||
</thead>
|
||||
<tbody id="homeworkList"></tbody>
|
||||
</table>
|
||||
@@ -44,31 +44,8 @@ include __DIR__ . '/../includes/header.php';
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
const STUDENT_ID = <?php echo $student_id; ?>;
|
||||
|
||||
async function loadHomework() {
|
||||
const res = await apiGet(`/api/student/homework/${STUDENT_ID}`);
|
||||
if (res && res.success) {
|
||||
let html = '';
|
||||
res.data.homework.forEach(hw => {
|
||||
html += `<tr>
|
||||
<td>${escapeHtml(hw.subject_name)}</td>
|
||||
<td>${escapeHtml(hw.title)}</td>
|
||||
<td>${hw.deadline}</td>
|
||||
<td>${getStatusBadge(hw.status, 'homework')}</td>
|
||||
<td>${escapeHtml(hw.comments || '-')}</td>
|
||||
</tr>`;
|
||||
});
|
||||
if (res.data.homework.length === 0) {
|
||||
html = '<tr><td colspan="5" style="text-align:center;">暂无作业</td></tr>';
|
||||
}
|
||||
document.getElementById('homeworkList').innerHTML = html;
|
||||
}
|
||||
}
|
||||
|
||||
loadHomework();
|
||||
</script>
|
||||
<script>window.PAGE_CONFIG = { studentId: <?php echo $student_id; ?> };</script>
|
||||
<script src="/assets/js/student.js"></script>
|
||||
<script src="/assets/js/student-homework.js"></script>
|
||||
|
||||
<?php include __DIR__ . '/../includes/footer.php'; ?>
|
||||
Reference in New Issue
Block a user