{% extends "base.html" %} {% from 'macros/sortable.html' import sort_th %} {% block title %}课时核对表 - 学生课程管理系统{% endblock %} {% block content %}

课时核对表

Excel 导入 · 查看每位学员剩余课时、余额、单价

学员课时余额一览

{{ period_stats|length }}

已导入月份

{{ total_snapshots }}

快照记录

{{ total_class_records }}

上课记录

{{ total_accounts }}

课时账户

{% if latest_year and preview_rows %}
最新月份预览({{ latest_year }}-{{ '%02d'|format(latest_month) }})
查看全部 →
{% for r in preview_rows %} {% endfor %}
{{ sort_th('keshibiao_index', 'student', '学员', preview_sort, preview_order, preview_params, '') }} {{ sort_th('keshibiao_index', 'course', '课程', preview_sort, preview_order, preview_params, '') }} {{ sort_th('keshibiao_index', 'end_lessons', '正课剩余', preview_sort, preview_order, preview_params) }} {{ sort_th('keshibiao_index', 'end_gift', '赠课', preview_sort, preview_order, preview_params) }} {{ sort_th('keshibiao_index', 'end_total', '总课时', preview_sort, preview_order, preview_params) }} {{ sort_th('keshibiao_index', 'end_balance', '余额', preview_sort, preview_order, preview_params) }} {{ sort_th('keshibiao_index', 'unit_price', '单价/节', preview_sort, preview_order, preview_params) }}
{{ r.student_name }} {{ r.course }} {{ r.end_lessons if r.end_lessons is not none else '-' }} {{ r.end_gift_lessons if r.end_gift_lessons is not none else '-' }} {{ r.end_total_lessons if r.end_total_lessons is not none else '-' }} {% if r.end_balance is not none %}¥{{ '%.2f'|format(r.end_balance) }}{% else %}-{% endif %} {% if r.unit_price is not none %}{{ '%.2f'|format(r.unit_price) }}{% else %}-{% endif %}
{% endif %}
导入 Excel

目录:{{ keshi_dir }}

{% if current_user.has_permission('keshibiao_import') %}
{% if not xlsx_files %}

目录暂无正式月度表,请放入「课时核对表(2026.x月份).xlsx」。

{% endif %} {% else %}

无导入权限

{% endif %}
已导入月份
{% if period_stats %}
{% for y, m, cnt in period_stats %} {% endfor %}
年月学员课程条数
{{ y }}-{{ '%02d'|format(m) }} {{ cnt }} 查看余额
{% else %}

尚未导入任何月份数据

{% endif %}
{% endblock %}