129 lines
6.1 KiB
HTML
129 lines
6.1 KiB
HTML
{% extends "layout/base.html" %}
|
|
|
|
{% block title %}个人信息 - SmartDSP考勤管理系统{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="container-fluid py-4">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<!-- 页面标题 -->
|
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
|
<h2><i class="fas fa-user-circle me-2"></i>个人信息</h2>
|
|
<nav aria-label="breadcrumb">
|
|
<ol class="breadcrumb">
|
|
<li class="breadcrumb-item"><a href="{{ url_for('admin.dashboard') }}">控制台</a></li>
|
|
<li class="breadcrumb-item active">个人信息</li>
|
|
</ol>
|
|
</nav>
|
|
</div>
|
|
|
|
<!-- 个人信息卡片 -->
|
|
<div class="row">
|
|
<div class="col-lg-8 mx-auto">
|
|
<div class="card shadow">
|
|
<div class="card-header bg-primary text-white">
|
|
<h5 class="mb-0"><i class="fas fa-user-cog me-2"></i>管理员信息</h5>
|
|
</div>
|
|
<div class="card-body">
|
|
{% if user_info %}
|
|
<div class="row">
|
|
<!-- 基本信息 -->
|
|
<div class="col-md-6">
|
|
<div class="info-group mb-3">
|
|
<label class="form-label text-muted">用户ID</label>
|
|
<div class="info-value">{{ user_info.user_id }}</div>
|
|
</div>
|
|
<div class="info-group mb-3">
|
|
<label class="form-label text-muted">账号</label>
|
|
<div class="info-value">{{ user_info.student_number }}</div>
|
|
</div>
|
|
<div class="info-group mb-3">
|
|
<label class="form-label text-muted">角色</label>
|
|
<div class="info-value">
|
|
<span class="badge bg-danger">
|
|
<i class="fas fa-crown me-1"></i>
|
|
{% if user_info.role == 'admin' %}管理员{% else %}普通用户{% endif %}
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- 状态信息 -->
|
|
<div class="col-md-6">
|
|
<div class="info-group mb-3">
|
|
<label class="form-label text-muted">账户状态</label>
|
|
<div class="info-value">
|
|
{% if user_info.is_active %}
|
|
<span class="badge bg-success">
|
|
<i class="fas fa-check-circle me-1"></i>活跃
|
|
</span>
|
|
{% else %}
|
|
<span class="badge bg-danger">
|
|
<i class="fas fa-times-circle me-1"></i>已禁用
|
|
</span>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
<div class="info-group mb-3">
|
|
<label class="form-label text-muted">最后登录</label>
|
|
<div class="info-value">
|
|
{% if user_info.last_login %}
|
|
{{ user_info.last_login.strftime('%Y-%m-%d %H:%M:%S') }}
|
|
{% else %}
|
|
<span class="text-muted">从未登录</span>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
<div class="info-group mb-3">
|
|
<label class="form-label text-muted">账户创建时间</label>
|
|
<div class="info-value">{{ user_info.created_at.strftime('%Y-%m-%d %H:%M:%S') }}</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- 操作按钮 -->
|
|
<div class="text-center mt-4">
|
|
<a href="{{ url_for('auth.change_password') }}" class="btn btn-primary me-2">
|
|
<i class="fas fa-key me-1"></i>修改密码
|
|
</a>
|
|
<a href="{{ url_for('admin.dashboard') }}" class="btn btn-secondary">
|
|
<i class="fas fa-arrow-left me-1"></i>返回控制台
|
|
</a>
|
|
</div>
|
|
{% else %}
|
|
<div class="alert alert-warning">
|
|
<i class="fas fa-exclamation-triangle me-2"></i>
|
|
无法获取用户信息
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<style>
|
|
.info-group {
|
|
border-left: 3px solid #007bff;
|
|
padding-left: 15px;
|
|
}
|
|
|
|
.info-value {
|
|
font-weight: 500;
|
|
font-size: 1.1em;
|
|
color: #333;
|
|
}
|
|
|
|
.card {
|
|
border: none;
|
|
border-radius: 10px;
|
|
}
|
|
|
|
.card-header {
|
|
border-radius: 10px 10px 0 0 !important;
|
|
}
|
|
</style>
|
|
{% endblock %}
|