文件
mashangyoujiu/Public/Retail/bs5-demo.html

252 行
12 KiB
HTML
可执行文件

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap 5 后台管理系统演示</title>
<!-- Bootstrap 5 CSS -->
<link href="https://cdn.bootcdn.net/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css" rel="stylesheet">
<!-- Bootstrap Icons -->
<link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/bootstrap-icons/1.10.0/font/bootstrap-icons.css">
<!-- 自定义样式 -->
<link rel="stylesheet" type="text/css" href="css/bs5-admin-base.css">
<link rel="stylesheet" type="text/css" href="css/bs5-admin-sidebar.css">
<link rel="stylesheet" type="text/css" href="css/bs5-admin-components.css">
</head>
<body>
<div class="admin-wrapper">
<!-- 侧边栏 -->
<nav class="sidebar">
<div class="sidebar-header">
<div class="sidebar-brand">
<img src="images/zhihuilogo4.png" alt="Logo" class="sidebar-logo">
<div class="sidebar-brand-text">
<div class="brand-name">商户系统</div>
<div class="brand-subtitle">管理平台</div>
</div>
</div>
</div>
<div class="sidebar-menu">
<ul class="nav flex-column">
<li class="nav-item">
<a class="nav-link active" href="#">
<i class="bi bi-house-door nav-icon"></i>
<span class="nav-text">首页概览</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<i class="bi bi-box nav-icon"></i>
<span class="nav-text">商品管理</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<i class="bi bi-receipt nav-icon"></i>
<span class="nav-text">订单管理</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<i class="bi bi-people nav-icon"></i>
<span class="nav-text">客户管理</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">
<i class="bi bi-gear nav-icon"></i>
<span class="nav-text">系统设置</span>
</a>
</li>
</ul>
</div>
<div class="sidebar-footer">
<div class="user-info">
<div class="user-avatar">
<img src="images/default-avatar.png" alt="用户头像">
</div>
<div class="user-details">
<div class="user-name">管理员</div>
<div class="user-role">系统管理员</div>
</div>
</div>
</div>
</nav>
<!-- 主内容区域 -->
<div class="main-content">
<header class="topbar">
<div class="topbar-left">
<button class="btn btn-link sidebar-toggle" type="button">
<i class="bi bi-list"></i>
</button>
<nav class="breadcrumb-nav">
<ol class="breadcrumb mb-0">
<li class="breadcrumb-item">
<i class="bi bi-house-door"></i>
<span>首页</span>
</li>
<li class="breadcrumb-item active">概览</li>
</ol>
</nav>
</div>
<div class="topbar-right">
<div class="topbar-item">
<button class="btn btn-link topbar-btn">
<i class="bi bi-bell"></i>
<span class="badge bg-danger notification-badge">3</span>
</button>
</div>
<div class="topbar-item">
<button class="btn btn-link topbar-btn user-menu-btn">
<img src="images/default-avatar.png" class="user-avatar-small">
<span class="user-name-small">管理员</span>
<i class="bi bi-chevron-down"></i>
</button>
</div>
</div>
</header>
<main class="content-area">
<div class="container-fluid">
<!-- 统计卡片 -->
<div class="row mb-4">
<div class="col-md-3 mb-3">
<div class="card text-center">
<div class="card-body">
<h3 class="text-primary">1,234</h3>
<p class="text-muted mb-0">今日订单</p>
</div>
</div>
</div>
<div class="col-md-3 mb-3">
<div class="card text-center">
<div class="card-body">
<h3 class="text-success">¥12,345</h3>
<p class="text-muted mb-0">今日销售额</p>
</div>
</div>
</div>
<div class="col-md-3 mb-3">
<div class="card text-center">
<div class="card-body">
<h3 class="text-warning">567</h3>
<p class="text-muted mb-0">新增客户</p>
</div>
</div>
</div>
<div class="col-md-3 mb-3">
<div class="card text-center">
<div class="card-body">
<h3 class="text-info">89</h3>
<p class="text-muted mb-0">商品种类</p>
</div>
</div>
</div>
</div>
<!-- 按钮演示 -->
<div class="card mb-4">
<div class="card-header">
<h5 class="card-title">按钮样式演示</h5>
</div>
<div class="card-body">
<div class="mb-3">
<button class="btn btn-primary me-2">主要按钮</button>
<button class="btn btn-secondary me-2">次要按钮</button>
<button class="btn btn-success me-2">成功按钮</button>
<button class="btn btn-warning me-2">警告按钮</button>
<button class="btn btn-danger me-2">危险按钮</button>
</div>
<div class="mb-3">
<button class="btn btn-outline-primary me-2">主要轮廓</button>
<button class="btn btn-outline-secondary me-2">次要轮廓</button>
</div>
<div>
<button class="btn btn-primary btn-sm me-2">小按钮</button>
<button class="btn btn-primary me-2">默认按钮</button>
<button class="btn btn-primary btn-lg">大按钮</button>
</div>
</div>
</div>
<!-- 表格演示 -->
<div class="card">
<div class="card-header">
<h5 class="card-title">最近订单</h5>
</div>
<div class="card-body p-0">
<table class="table table-hover mb-0">
<thead>
<tr>
<th>订单号</th>
<th>客户</th>
<th>金额</th>
<th>状态</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>#20240101001</td>
<td>张三</td>
<td>¥299.00</td>
<td><span class="badge bg-success">已完成</span></td>
<td>
<button class="btn btn-sm btn-primary me-1">查看</button>
<button class="btn btn-sm btn-outline-secondary">编辑</button>
</td>
</tr>
<tr>
<td>#20240101002</td>
<td>李四</td>
<td>¥599.00</td>
<td><span class="badge bg-warning">处理中</span></td>
<td>
<button class="btn btn-sm btn-primary me-1">查看</button>
<button class="btn btn-sm btn-outline-secondary">编辑</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</main>
</div>
</div>
<!-- Bootstrap 5 JS -->
<script src="https://cdn.bootcdn.net/ajax/libs/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>
<script>
// 侧边栏切换
document.querySelector('.sidebar-toggle').addEventListener('click', function() {
const sidebar = document.querySelector('.sidebar');
const wrapper = document.querySelector('.admin-wrapper');
sidebar.classList.toggle('collapsed');
wrapper.classList.toggle('sidebar-collapsed');
});
// 菜单项点击
document.querySelectorAll('.nav-link').forEach(link => {
link.addEventListener('click', function(e) {
e.preventDefault();
document.querySelectorAll('.nav-link').forEach(l => l.classList.remove('active'));
this.classList.add('active');
});
});
// 响应式处理
if (window.innerWidth < 768) {
document.querySelector('.sidebar').classList.add('collapsed');
document.querySelector('.admin-wrapper').classList.add('sidebar-collapsed');
}
</script>
</body>
</html>