2025-05-12 19:44:22 +08:00

93 lines
4.1 KiB
HTML

<!-- app/templates/statistics/index.html -->
{% extends "base.html" %}
{% block title %}统计分析 - 图书管理系统{% endblock %}
{% block head %}
<link rel="stylesheet" href="{{ url_for('static', filename='css/statistics.css') }}">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css">
<!-- Updated Google Fonts Link -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Lora:wght@400;600&family=Open+Sans:wght@300;400&family=Sacramento&family=EB+Garamond:ital@0;1&display=swap" rel="stylesheet">
{% endblock %}
{% block content %}
<div class="statistics-container animate__animated animate__fadeIn">
<h1 class="page-title">统计分析</h1>
<div class="quote-banner">
<p>"统计数字是文学世界的星辰,照亮知识的海洋"</p>
</div>
<div class="stats-grid">
<a href="{{ url_for('statistics.book_ranking') }}" class="stats-card animate__animated animate__fadeInUp">
<div class="card-inner">
<div class="card-icon"><i class="fas fa-chart-line"></i></div>
<div class="card-title">热门图书排行</div>
<div class="card-description">查看最受欢迎的图书,按借阅次数排名</div>
<div class="card-decoration book-decoration"></div>
</div>
</a>
<a href="{{ url_for('statistics.borrow_statistics') }}" class="stats-card animate__animated animate__fadeInUp" style="animation-delay: 0.1s;">
<div class="card-inner">
<div class="card-icon"><i class="fas fa-exchange-alt"></i></div>
<div class="card-title">借阅趋势分析</div>
<div class="card-description">查看借阅和归还的历史趋势和分布</div>
<div class="card-decoration trend-decoration"></div>
</div>
</a>
<a href="{{ url_for('statistics.user_activity') }}" class="stats-card animate__animated animate__fadeInUp" style="animation-delay: 0.2s;">
<div class="card-inner">
<div class="card-icon"><i class="fas fa-users"></i></div>
<div class="card-title">用户活跃度分析</div>
<div class="card-description">查看最活跃的用户和用户行为分析</div>
<div class="card-decoration user-decoration"></div>
</div>
</a>
<a href="{{ url_for('statistics.overdue_analysis') }}" class="stats-card animate__animated animate__fadeInUp" style="animation-delay: 0.3s;">
<div class="card-inner">
<div class="card-icon"><i class="fas fa-exclamation-circle"></i></div>
<div class="card-title">逾期分析</div>
<div class="card-description">分析图书逾期情况和趋势</div>
<div class="card-decoration overdue-decoration"></div>
</div>
</a>
</div>
<div class="page-decoration left"></div>
<div class="page-decoration right"></div>
</div>
{% endblock %}
{% block scripts %}
<script src="{{ url_for('static', filename='js/statistics.js') }}"></script>
<script>
document.addEventListener('DOMContentLoaded', function() {
// 添加卡片悬停动画效果
const cards = document.querySelectorAll('.stats-card');
cards.forEach(card => {
card.addEventListener('mouseenter', function() {
const decoration = this.querySelector('.card-decoration');
if (decoration) { // Check if decoration exists
decoration.classList.add('active');
}
this.classList.add('hovered'); // Add class for general hover style
});
card.addEventListener('mouseleave', function() {
const decoration = this.querySelector('.card-decoration');
if (decoration) { // Check if decoration exists
decoration.classList.remove('active');
}
this.classList.remove('hovered'); // Remove class
});
});
});
</script>
{% endblock %}