Newer
Older
teacher-diary / src / main / resources / templates / dashboard / index.html
<!DOCTYPE html>
<html lang="ru" xmlns:th="http://www.thymeleaf.org"
      th:replace="~{layout/main :: html(pageTitle='Главная', activeMenu='dashboard', content=~{::content}, scripts=~{})}">
<body>
<th:block th:fragment="content">
    <!-- Статистика -->
    <div class="row g-4 mb-4">
        <div class="col-md-6 col-lg-3">
            <div class="card stat-card">
                <div class="card-body">
                    <div class="stat-icon bg-primary-subtle text-primary">
                        <i class="bi bi-people"></i>
                    </div>
                    <div class="stat-value" th:text="${studentCount}">0</div>
                    <div class="stat-label">Учеников</div>
                </div>
            </div>
        </div>
        <div class="col-md-6 col-lg-3">
            <div class="card stat-card">
                <div class="card-body">
                    <div class="stat-icon bg-success-subtle text-success">
                        <i class="bi bi-folder"></i>
                    </div>
                    <div class="stat-value" th:text="${groupCount}">0</div>
                    <div class="stat-label">Групп</div>
                </div>
            </div>
        </div>
        <div class="col-md-6 col-lg-3">
            <div class="card stat-card">
                <div class="card-body">
                    <div class="stat-icon bg-warning-subtle text-warning">
                        <i class="bi bi-calendar-check"></i>
                    </div>
                    <div class="stat-value" th:text="${todayLessonsCount}">0</div>
                    <div class="stat-label">Занятий сегодня</div>
                </div>
            </div>
        </div>
        <div class="col-md-6 col-lg-3">
            <div class="card stat-card">
                <div class="card-body">
                    <div class="stat-icon bg-info-subtle text-info">
                        <i class="bi bi-person-hearts"></i>
                    </div>
                    <div class="stat-value" th:text="${parentCount}">0</div>
                    <div class="stat-label">Родителей</div>
                </div>
            </div>
        </div>
    </div>

    <div class="row g-4">
        <!-- Занятия на сегодня -->
        <div class="col-lg-8">
            <div class="card">
                <div class="card-header">
                    <h5 class="mb-0">Занятия на сегодня</h5>
                </div>
                <div class="card-body" th:if="${todayLessons.isEmpty()}">
                    <p class="text-muted mb-0">Нет запланированных занятий</p>
                </div>
                <ul class="list-group list-group-flush" th:if="${!todayLessons.isEmpty()}">
                    <li class="list-group-item" th:each="lesson : ${todayLessons}">
                        <!-- TODO: отображение занятий -->
                    </li>
                </ul>
            </div>
        </div>

        <!-- Быстрые действия -->
        <div class="col-lg-4">
            <div class="card">
                <div class="card-header">
                    <h5 class="mb-0">Быстрые действия</h5>
                </div>
                <div class="card-body d-grid gap-2">
                    <a th:href="@{/students/new}" class="btn btn-outline-primary">
                        <i class="bi bi-person-plus me-2"></i> Добавить ученика
                    </a>
                    <a th:href="@{/parents/new}" class="btn btn-outline-primary">
                        <i class="bi bi-person-hearts me-2"></i> Добавить родителя
                    </a>
                    <a th:href="@{/groups/new}" class="btn btn-outline-primary">
                        <i class="bi bi-folder-plus me-2"></i> Создать группу
                    </a>
                </div>
            </div>
        </div>
    </div>
</th:block>
</body>
</html>