This commit is contained in:
binghuai
2025-11-10 10:27:43 +08:00
parent 31c9d5754b
commit 1feb1be62d
8 changed files with 991 additions and 28 deletions

View File

@@ -1 +1 @@
{"月度/8月/8月.md":{"scroll":288.7292,"cursor":{"from":{"ch":0,"line":352},"to":{"ch":0,"line":352}}},"材料/服务器.md":{"scroll":34.1919,"cursor":{"from":{"ch":11,"line":54},"to":{"ch":11,"line":54}}},"月度/9月/9月.md":{"scroll":48.0242,"cursor":{"from":{"ch":1,"line":408},"to":{"ch":1,"line":408}}},"月度/7月/7月.md":{"scroll":0,"cursor":{"from":{"ch":29,"line":147},"to":{"ch":29,"line":147}}},"月度/6月/6月.md":{"scroll":0,"cursor":{"from":{"ch":23,"line":120},"to":{"ch":23,"line":120}}},"月度/5月/5月.md":{"scroll":93.1957,"cursor":{"from":{"ch":20,"line":105},"to":{"ch":20,"line":105}}},"月度/4月/4月.md":{"scroll":120.1806,"cursor":{"from":{"ch":20,"line":139},"to":{"ch":20,"line":139}}},"月度/3月/3月.md":{"scroll":31.0412,"cursor":{"from":{"ch":6,"line":39},"to":{"ch":6,"line":39}}},"月度/7月/7月工作总结及8月工作计划.md":{"scroll":0,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/6月/6月份晨午检bug修复.md":{"scroll":307.9981,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/7月/设备管理中心研发记录.md":{"scroll":108.9598,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/8月/CA身份认证app/CA身份认证app流程图.md":{"scroll":5.8654,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/常见病/20250903常见病优化沟通.md":{"scroll":0.7205,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/对接主机/不登录模式接口文档.md":{"scroll":0,"cursor":{"from":{"ch":5,"line":8},"to":{"ch":5,"line":8}}},"月度/9月/汇海/对接主机/登录算法和密钥.md":{"scroll":0,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/对接主机/华夏汇海接口文档.md":{"scroll":1133.8083,"cursor":{"from":{"ch":96,"line":1670},"to":{"ch":96,"line":1670}}},"材料/配置/Obsidian快捷键.md":{"scroll":0,"cursor":{"from":{"ch":18,"line":16},"to":{"ch":18,"line":16}}},"材料/配置/工具.md":{"scroll":0,"cursor":{"from":{"ch":50,"line":0},"to":{"ch":50,"line":0}}},"月度/9月/石榴籽-家校通/家校通需求.md":{"scroll":22.9513,"cursor":{"from":{"ch":13,"line":37},"to":{"ch":13,"line":37}}},"月度/9月/汇海/体质测试数据上传接口文档.md":{"scroll":64.4749,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/解析汇海设备请求.md":{"scroll":1331.4598,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/156中 中考模拟 初三.md":{"scroll":8.0497,"cursor":{"from":{"ch":0,"line":20},"to":{"ch":0,"line":20}}},"月度/10月/10月.md":{"scroll":0,"cursor":{"from":{"ch":12,"line":0},"to":{"ch":0,"line":0}}},"月度/11月/11月.md":{"scroll":139.3539,"cursor":{"from":{"ch":29,"line":163},"to":{"ch":29,"line":163}}},"月度/10月/第86届中国教育装备展/智慧体育.md":{"scroll":0.0271,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}}} {"月度/8月/8月.md":{"scroll":288.7292,"cursor":{"from":{"ch":0,"line":352},"to":{"ch":0,"line":352}}},"材料/服务器.md":{"scroll":34.1919,"cursor":{"from":{"ch":11,"line":54},"to":{"ch":11,"line":54}}},"月度/9月/9月.md":{"scroll":48.0242,"cursor":{"from":{"ch":1,"line":408},"to":{"ch":1,"line":408}}},"月度/7月/7月.md":{"scroll":0,"cursor":{"from":{"ch":29,"line":147},"to":{"ch":29,"line":147}}},"月度/6月/6月.md":{"scroll":0,"cursor":{"from":{"ch":23,"line":120},"to":{"ch":23,"line":120}}},"月度/5月/5月.md":{"scroll":93.1957,"cursor":{"from":{"ch":20,"line":105},"to":{"ch":20,"line":105}}},"月度/4月/4月.md":{"scroll":120.1806,"cursor":{"from":{"ch":20,"line":139},"to":{"ch":20,"line":139}}},"月度/3月/3月.md":{"scroll":31.0412,"cursor":{"from":{"ch":6,"line":39},"to":{"ch":6,"line":39}}},"月度/7月/7月工作总结及8月工作计划.md":{"scroll":0,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/6月/6月份晨午检bug修复.md":{"scroll":307.9981,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/7月/设备管理中心研发记录.md":{"scroll":108.9598,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/8月/CA身份认证app/CA身份认证app流程图.md":{"scroll":5.8654,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/常见病/20250903常见病优化沟通.md":{"scroll":0.7205,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/对接主机/不登录模式接口文档.md":{"scroll":0,"cursor":{"from":{"ch":5,"line":8},"to":{"ch":5,"line":8}}},"月度/9月/汇海/对接主机/登录算法和密钥.md":{"scroll":0,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/对接主机/华夏汇海接口文档.md":{"scroll":1133.8083,"cursor":{"from":{"ch":96,"line":1670},"to":{"ch":96,"line":1670}}},"材料/配置/Obsidian快捷键.md":{"scroll":0,"cursor":{"from":{"ch":18,"line":16},"to":{"ch":18,"line":16}}},"材料/配置/工具.md":{"scroll":0,"cursor":{"from":{"ch":50,"line":0},"to":{"ch":50,"line":0}}},"月度/9月/石榴籽-家校通/家校通需求.md":{"scroll":22.9513,"cursor":{"from":{"ch":13,"line":37},"to":{"ch":13,"line":37}}},"月度/9月/汇海/体质测试数据上传接口文档.md":{"scroll":64.4749,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/解析汇海设备请求.md":{"scroll":1331.4598,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/156中 中考模拟 初三.md":{"scroll":8.0497,"cursor":{"from":{"ch":0,"line":20},"to":{"ch":0,"line":20}}},"月度/10月/10月.md":{"scroll":0,"cursor":{"from":{"ch":12,"line":0},"to":{"ch":0,"line":0}}},"月度/11月/11月.md":{"scroll":168.7832,"cursor":{"from":{"ch":0,"line":188},"to":{"ch":0,"line":188}}},"月度/10月/第86届中国教育装备展/智慧体育.md":{"scroll":0.0271,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}}}

View File

@@ -20,6 +20,20 @@
"icon": "lucide-file", "icon": "lucide-file",
"title": "11月" "title": "11月"
} }
},
{
"id": "7c4c1a1cc542496d",
"type": "leaf",
"state": {
"type": "webviewer",
"state": {
"url": "https://lanhuapp.com/sso/#/main/home?redirect_to=https%3A%2F%2Flanhuapp.com%2Flink%2F%23%2Finvite%3Fsid%3Dlx0S1sqJ%26sign%3D&login_title=189****7325%20%E9%82%80%E8%AF%B7%E4%BD%A0%E5%8A%A0%E5%85%A5%20%E6%B9%96%E5%8D%97%E5%8F%B7&isInvite=1&invite_id=8bb6cfc3-001b-4308-9e96-2b8ba762379d&tid=325edb8b-9af0-4286-b5b3-c2d7515bcfad",
"title": "开始使用 - 蓝湖",
"mode": "webview"
},
"icon": "globe-2",
"title": "开始使用 - 蓝湖"
}
} }
] ]
} }
@@ -103,16 +117,6 @@
"title": "11月 的大纲" "title": "11月 的大纲"
} }
}, },
{
"id": "f55c76f2b9832da8",
"type": "leaf",
"state": {
"type": "git-view",
"state": {},
"icon": "git-pull-request",
"title": "Source Control"
}
},
{ {
"id": "734ccebd275fc27a", "id": "734ccebd275fc27a",
"type": "leaf", "type": "leaf",
@@ -185,8 +189,7 @@
"title": "添加笔记属性" "title": "添加笔记属性"
} }
} }
], ]
"currentTab": 2
} }
], ],
"direction": "horizontal", "direction": "horizontal",
@@ -208,8 +211,17 @@
"univer:Univer": false "univer:Univer": false
} }
}, },
"active": "734ccebd275fc27a", "active": "696c93f3a8e665e1",
"lastOpenFiles": [ "lastOpenFiles": [
"月度/11月/11月.md",
"月度/11月/家校协同/数据统计页面.html",
"月度/11月/家校协同/体育教师端首页.html",
"月度/11月/家校协同/体育教师端.xlsx",
"月度/11月/家校协同",
"月度/11月/体质健康漏洞/体质健康.docx",
"月度/11月/体质健康漏洞",
"月度/11月/巴州常见病需求/巴州儿童青少年健康监测平台——功能清单.xlsx",
"月度/11月/巴州常见病需求",
"月度/8月/8月.md", "月度/8月/8月.md",
"月度/9月/156中 中考模拟 初三.md", "月度/9月/156中 中考模拟 初三.md",
"月度/7月/设备管理中心研发记录.md", "月度/7月/设备管理中心研发记录.md",
@@ -225,20 +237,11 @@
"月度/3月/3月.md", "月度/3月/3月.md",
"月度/10月/第86届中国教育装备展/智慧体育.md", "月度/10月/第86届中国教育装备展/智慧体育.md",
"材料/服务器.md", "材料/服务器.md",
"月度/11月/11月.md",
"月度/月度封面.base", "月度/月度封面.base",
"月度/10月/日常体测监测/测试登记表总表.xlsx", "月度/10月/日常体测监测/测试登记表总表.xlsx",
"未命名.base",
"月度/11月/Drawing 2025-11-05 13.43.01.excalidraw.md", "月度/11月/Drawing 2025-11-05 13.43.01.excalidraw.md",
"月度/10月/日常体测监测/sportSQL/米东区.xlsx",
"图片/11月.png", "图片/11月.png",
"月度/11月",
"材料/发票/乌市体测打车费/~$费用报销登记明细表.xlsx",
"材料/发票/乌市体测打车费/替票/dzfp_25657000000082317926_新疆青卫舜源信息科技有限公司.pdf",
"sportSql.md", "sportSql.md",
"月度/10月/日常体测监测/sportSQL/沙依巴克区.xlsx",
"月度/10月/日常体测监测/sportSQL/水磨沟区.xlsx",
"月度/10月/日常体测监测/sportSQL/新市区.xlsx",
"月度/6月/6月.md", "月度/6月/6月.md",
"月度/7月/7月.md", "月度/7月/7月.md",
"月度/10月/第86届中国教育装备展/第86届中国教育装备展/庆云鲁冠文体设备制造有限公司-杨丽杰15621305060/鲁冠文体.jpg", "月度/10月/第86届中国教育装备展/第86届中国教育装备展/庆云鲁冠文体设备制造有限公司-杨丽杰15621305060/鲁冠文体.jpg",
@@ -255,7 +258,6 @@
"月度/9月/汇海/对接主机/不登录模式接口文档.md", "月度/9月/汇海/对接主机/不登录模式接口文档.md",
"月度/9月/汇海/解析汇海设备请求.md", "月度/9月/汇海/解析汇海设备请求.md",
"月度/9月/汇海/体质测试数据上传接口文档.md", "月度/9月/汇海/体质测试数据上传接口文档.md",
"月度/9月/汇海/对接主机/登录算法和密钥.md",
"月度/未命名.canvas", "月度/未命名.canvas",
"月度/8月/ca身份认证/未命名.canvas", "月度/8月/ca身份认证/未命名.canvas",
"未命名.canvas" "未命名.canvas"

View File

@@ -54,7 +54,7 @@ feat(quartz): 新增乌鲁木齐地区直属定时任务
2.参加巴州常见病需求研讨会 2.参加巴州常见病需求研讨会
[[巴州儿童青少年健康监测平台——功能清单.xlsx]]
3.<span style="color:#3EC1D3 !important;">cjb-app巴州</span> 3.<span style="color:#3EC1D3 !important;">cjb-app巴州</span>
feat(app): 更新应用配置和界面主题 feat(app): 更新应用配置和界面主题
- 修改AndroidManifest.xml中的应用标签为"巴州常见病" - 修改AndroidManifest.xml中的应用标签为"巴州常见病"
@@ -118,7 +118,12 @@ style(physicalcheck): 统一使用微信配色风格优化界面
# 11.7 # 11.7
1.<span style="color:#3EC1D3 !important;">中考体育生产达梦</span> 1.
> [!note]
> 资源发展中心网信办扫描漏洞
> [[体质健康.docx]]
<span style="color:#3EC1D3 !important;">中考体育生产达梦</span>
chore(deps): 移除过时的Bootstrap JS文件 chore(deps): 移除过时的Bootstrap JS文件
- 删除了旧版本Bootstrap的JavaScript文件引用 - 删除了旧版本Bootstrap的JavaScript文件引用
- 清理了不再使用的前端资源依赖 - 清理了不再使用的前端资源依赖
@@ -126,7 +131,6 @@ chore(deps): 移除过时的Bootstrap JS文件
<span style="display: inline-block; width: 50px; height: 2px; background: #00F9FF; vertical-align: middle; margin: 0 5px;"></span>主要是修复下述漏洞 <span style="display: inline-block; width: 50px; height: 2px; background: #00F9FF; vertical-align: middle; margin: 0 5px;"></span>主要是修复下述漏洞
![image.png|500x400](https://www.binghuai.xyz/markdown/20251107124900463.png) ![image.png|500x400](https://www.binghuai.xyz/markdown/20251107124900463.png)
2.<span style="color:#3EC1D3 !important;">cjb-ui巴州</span> 2.<span style="color:#3EC1D3 !important;">cjb-ui巴州</span>
feat(doubtful): 重构可疑数据年龄分析页面 feat(doubtful): 重构可疑数据年龄分析页面
- 重新设计页面布局,采用卡片式结构提升视觉效果 - 重新设计页面布局,采用卡片式结构提升视觉效果
@@ -169,3 +173,20 @@ feat(static): 添加学制筛选功能并重构查询组件
- 优化区域选择器的重置和禁用状态控制 - 优化区域选择器的重置和禁用状态控制
- 调整页面布局和样式以适应新增筛选项 - 调整页面布局和样式以适应新增筛选项
- 修复部分数据字段和组件引用问题 - 修复部分数据字段和组件引用问题
# 11.9
1.撰写<span style="color:#3EC1D3 !important;">家校协同</span>体育教师端功能列表
[[体育教师端首页.html]]<span style="display: inline-block; width: 50px; height: 2px; background: #00F9FF; vertical-align: middle; margin: 0 5px;"></span>[[体育教师端.xlsx]]
[[数据统计页面.html]]
晨午检&家校协同页面
```embed
title: "Lanhu_Share"
image: ""
description: ""
url: "https://lanhuapp.com/link/#/invite?sid=lx0S1sqJ"
favicon: ""
```
# 11.10

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,498 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>体质提升作业平台</title>
<script src="https://cdn.tailwindcss.com"></script>
<link href="https://cdn.tailwindcss.com" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/font-awesome@4.7.0/css/font-awesome.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/chart.js@4.4.8/dist/chart.umd.min.js"></script>
<script>
tailwind.config = {
theme: {
extend: {
colors: {
primary: '#2563EB', // 专业蓝
secondary: '#10B981', // 健康绿
accent: '#F59E0B', // 活力橙
warning: '#EF4444',
light: '#F3F4F6',
dark: '#1F2937'
},
fontFamily: {
sans: ['PingFang SC', 'Microsoft YaHei', 'sans-serif'],
},
}
}
}
</script>
<style type="text/tailwindcss">
@layer utilities {
.content-auto {
content-visibility: auto;
}
.card {
@apply bg-white rounded-xl shadow-sm p-4 transition-all duration-300 hover:shadow-md;
}
.btn {
@apply px-4 py-2.5 rounded-lg font-medium transition-all duration-200;
}
.btn-primary {
@apply bg-primary text-white hover:bg-primary/90;
}
.badge {
@apply px-2 py-0.5 rounded-full text-xs font-medium;
}
.progress-bar {
@apply h-2 rounded-full bg-gray-200 overflow-hidden;
}
.progress-value {
@apply h-full rounded-full transition-all duration-700;
}
}
</style>
</head>
<body class="bg-light text-dark font-sans min-h-screen flex flex-col">
<!-- 顶部导航栏 -->
<header class="bg-primary text-white py-4 px-5 sticky top-0 z-10 shadow-md">
<div class="flex items-center justify-between">
<div class="flex items-center gap-2">
<i class="fa fa-line-chart text-xl"></i>
<h1 class="text-lg font-bold">体质提升作业平台</h1>
</div>
<div class="flex items-center gap-4">
<button class="relative">
<i class="fa fa-bell text-xl"></i>
<span class="absolute -top-1 -right-1 w-4 h-4 bg-accent rounded-full text-white text-xs flex items-center justify-center">4</span>
</button>
<img src="https://picsum.photos/id/1005/200/200" alt="体育老师头像" class="w-9 h-9 rounded-full border-2 border-white">
</div>
</div>
</header>
<!-- 主内容区 -->
<main class="flex-1 overflow-y-auto">
<!-- 体质测试进度概览 -->
<div class="px-5 py-4 bg-white">
<div class="flex justify-between items-center mb-4">
<div>
<h2 class="text-base font-bold">体质测试提升计划</h2>
<p class="text-xs text-gray-500 mt-1">当前学期2023-2024学年第一学期</p>
</div>
<div class="text-right">
<p class="text-xs text-gray-500">距离体质测试还有</p>
<p class="text-base font-bold text-primary">32天</p>
</div>
</div>
<div class="bg-light rounded-xl p-3">
<div class="flex justify-between items-center mb-2">
<span class="text-sm font-medium">整体提升进度</span>
<span class="text-sm font-medium">62%</span>
</div>
<div class="progress-bar">
<div class="progress-value bg-primary" style="width: 62%"></div>
</div>
<div class="grid grid-cols-3 gap-2 mt-3 text-center text-xs">
<div>
<p class="text-gray-500">优秀率</p>
<p class="font-bold text-secondary">28%</p>
</div>
<div>
<p class="text-gray-500">良好率</p>
<p class="font-bold text-secondary">45%</p>
</div>
<div>
<p class="text-gray-500">待提升</p>
<p class="font-bold text-warning">27%</p>
</div>
</div>
</div>
</div>
<!-- 快捷操作 -->
<div class="px-5 py-3">
<div class="grid grid-cols-3 gap-3">
<button class="card flex flex-col items-center justify-center p-3">
<div class="w-12 h-12 bg-primary/10 rounded-full flex items-center justify-center mb-2">
<i class="fa fa-plus text-primary"></i>
</div>
<span class="text-sm font-medium">布置作业</span>
</button>
<button class="card flex flex-col items-center justify-center p-3">
<div class="w-12 h-12 bg-secondary/10 rounded-full flex items-center justify-center mb-2">
<i class="fa fa-bar-chart text-secondary"></i>
</div>
<span class="text-sm font-medium">查看数据</span>
</button>
<button class="card flex flex-col items-center justify-center p-3">
<div class="w-12 h-12 bg-accent/10 rounded-full flex items-center justify-center mb-2">
<i class="fa fa-file-text-o text-accent"></i>
</div>
<span class="text-sm font-medium">测试报告</span>
</button>
</div>
</div>
<!-- 家庭打卡任务列表 -->
<div class="px-5 py-2">
<div class="flex justify-between items-center mb-3">
<h3 class="font-bold">家庭打卡任务</h3>
<button class="text-primary text-sm">查看全部</button>
</div>
<div class="space-y-3 mb-6">
<!-- 进行中的任务 -->
<div class="card border-l-4 border-primary">
<div class="flex justify-between items-start">
<div>
<h4 class="font-medium">每日跳绳练习</h4>
<p class="text-xs text-gray-500 mt-1">针对1-6年级 | 提升:协调性、耐力</p>
</div>
<span class="badge bg-primary/10 text-primary">进行中</span>
</div>
<div class="mt-3">
<div class="flex justify-between items-center mb-1">
<span class="text-xs text-gray-500">打卡完成率</span>
<span class="text-xs font-medium">82%</span>
</div>
<div class="progress-bar">
<div class="progress-value bg-primary" style="width: 82%"></div>
</div>
</div>
<div class="mt-3 flex flex-wrap gap-2">
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-calendar-o text-gray-500"></i>
<span>9.20-10.5</span>
</div>
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-clock-o text-gray-500"></i>
<span>每天10分钟</span>
</div>
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-users text-gray-500"></i>
<span>187人参与</span>
</div>
</div>
<div class="mt-3 flex justify-between items-center">
<button class="text-xs text-gray-500 flex items-center">
<i class="fa fa-comment-o mr-1"></i> 查看反馈(12)
</button>
<button class="text-xs text-primary flex items-center">
<i class="fa fa-bar-chart mr-1"></i> 查看详情
</button>
</div>
</div>
<!-- 新发布的任务 -->
<div class="card border-l-4 border-accent">
<div class="flex justify-between items-start">
<div>
<h4 class="font-medium">家庭仰卧起坐训练</h4>
<p class="text-xs text-gray-500 mt-1">针对4-6年级 | 提升:核心力量</p>
</div>
<span class="badge bg-accent/10 text-accent">新发布</span>
</div>
<div class="mt-3">
<div class="flex justify-between items-center mb-1">
<span class="text-xs text-gray-500">打卡完成率</span>
<span class="text-xs font-medium">36%</span>
</div>
<div class="progress-bar">
<div class="progress-value bg-accent" style="width: 36%"></div>
</div>
</div>
<div class="mt-3 flex flex-wrap gap-2">
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-calendar-o text-gray-500"></i>
<span>9.25-10.10</span>
</div>
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-clock-o text-gray-500"></i>
<span>每天8分钟</span>
</div>
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-users text-gray-500"></i>
<span>124人参与</span>
</div>
</div>
<div class="mt-3 flex justify-between items-center">
<button class="text-xs text-gray-500 flex items-center">
<i class="fa fa-comment-o mr-1"></i> 查看反馈(5)
</button>
<button class="text-xs text-primary flex items-center">
<i class="fa fa-bar-chart mr-1"></i> 查看详情
</button>
</div>
</div>
<!-- 即将开始的任务 -->
<div class="card border-l-4 border-secondary">
<div class="flex justify-between items-start">
<div>
<h4 class="font-medium">柔韧性提升训练</h4>
<p class="text-xs text-gray-500 mt-1">针对1-6年级 | 提升:坐位体前屈成绩</p>
</div>
<span class="badge bg-secondary/10 text-secondary">即将开始</span>
</div>
<div class="mt-3 flex flex-wrap gap-2">
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-calendar-o text-gray-500"></i>
<span>10.6-10.20</span>
</div>
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-clock-o text-gray-500"></i>
<span>每天5分钟</span>
</div>
<div class="flex items-center gap-1 bg-light px-2 py-1 rounded text-xs">
<i class="fa fa-users text-gray-500"></i>
<span>187人参与</span>
</div>
</div>
<div class="mt-3 flex justify-end">
<button class="text-xs text-primary flex items-center">
<i class="fa fa-pencil mr-1"></i> 编辑任务
</button>
</div>
</div>
</div>
</div>
<!-- 班级打卡情况 -->
<div class="px-5 py-2 mb-20">
<div class="flex justify-between items-center mb-3">
<h3 class="font-bold">班级打卡情况</h3>
<button class="text-primary text-sm">全部班级</button>
</div>
<div class="space-y-3">
<div class="card">
<div class="flex justify-between items-center">
<div class="flex items-center gap-3">
<div class="w-9 h-9 bg-primary/10 rounded-lg flex items-center justify-center text-primary font-bold">3</div>
<div>
<h4 class="font-medium">三年级(1)班</h4>
<p class="text-xs text-gray-500">32名学生</p>
</div>
</div>
<div class="text-right">
<p class="text-sm font-medium">91%</p>
<p class="text-xs text-secondary">优秀</p>
</div>
</div>
</div>
<div class="card">
<div class="flex justify-between items-center">
<div class="flex items-center gap-3">
<div class="w-9 h-9 bg-primary/10 rounded-lg flex items-center justify-center text-primary font-bold">4</div>
<div>
<h4 class="font-medium">四年级(2)班</h4>
<p class="text-xs text-gray-500">30名学生</p>
</div>
</div>
<div class="text-right">
<p class="text-sm font-medium">85%</p>
<p class="text-xs text-secondary">良好</p>
</div>
</div>
</div>
<div class="card">
<div class="flex justify-between items-center">
<div class="flex items-center gap-3">
<div class="w-9 h-9 bg-primary/10 rounded-lg flex items-center justify-center text-primary font-bold">5</div>
<div>
<h4 class="font-medium">五年级(3)班</h4>
<p class="text-xs text-gray-500">29名学生</p>
</div>
</div>
<div class="text-right">
<p class="text-sm font-medium">76%</p>
<p class="text-xs text-accent">一般</p>
</div>
</div>
</div>
<div class="card">
<div class="flex justify-between items-center">
<div class="flex items-center gap-3">
<div class="w-9 h-9 bg-primary/10 rounded-lg flex items-center justify-center text-primary font-bold">6</div>
<div>
<h4 class="font-medium">六年级(1)班</h4>
<p class="text-xs text-gray-500">31名学生</p>
</div>
</div>
<div class="text-right">
<p class="text-sm font-medium">68%</p>
<p class="text-xs text-warning">需关注</p>
</div>
</div>
</div>
</div>
</div>
</main>
<!-- 底部导航 -->
<footer class="bg-white border-t border-gray-200 py-2 px-4 fixed bottom-0 left-0 right-0 z-10">
<div class="flex justify-between">
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-primary">
<i class="fa fa-home text-lg"></i>
<span class="text-xs mt-1">首页</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-tasks text-lg"></i>
<span class="text-xs mt-1">任务管理</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-bar-chart text-lg"></i>
<span class="text-xs mt-1">数据统计</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-users text-lg"></i>
<span class="text-xs mt-1">班级管理</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-cog text-lg"></i>
<span class="text-xs mt-1">设置</span>
</a>
</div>
</footer>
<!-- 布置作业弹窗 (默认隐藏) -->
<div id="assign-task-modal" class="fixed inset-0 bg-black/50 z-50 flex items-center justify-center p-5 hidden">
<div class="bg-white rounded-2xl w-full max-w-md max-h-[90vh] overflow-y-auto">
<div class="p-5 border-b border-gray-100 flex justify-between items-center">
<h3 class="text-lg font-bold">布置家庭打卡任务</h3>
<button id="close-modal" class="text-gray-400 hover:text-gray-600">
<i class="fa fa-times text-xl"></i>
</button>
</div>
<div class="p-5 space-y-4">
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">选择训练项目</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary">
<option>一分钟跳绳 - 提升协调性与耐力</option>
<option>仰卧起坐 - 提升核心力量</option>
<option>坐位体前屈 - 提升柔韧性</option>
<option>家庭趣味跑步 - 提升心肺功能</option>
<option>平衡练习 - 提升身体协调性</option>
<option>开合跳 - 提升爆发力</option>
</select>
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">适用班级</label>
<div class="grid grid-cols-3 gap-2">
<button class="border border-primary bg-primary/5 text-primary py-2 rounded-lg text-sm">1年级</button>
<button class="border border-gray-200 hover:border-primary py-2 rounded-lg text-sm">2年级</button>
<button class="border border-gray-200 hover:border-primary py-2 rounded-lg text-sm">3年级</button>
<button class="border border-gray-200 hover:border-primary py-2 rounded-lg text-sm">4年级</button>
<button class="border border-gray-200 hover:border-primary py-2 rounded-lg text-sm">5年级</button>
<button class="border border-gray-200 hover:border-primary py-2 rounded-lg text-sm">6年级</button>
</div>
</div>
<div class="grid grid-cols-2 gap-4">
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">开始日期</label>
<input type="date" class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary">
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">结束日期</label>
<input type="date" class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary">
</div>
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">每日训练时长</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary">
<option>5分钟</option>
<option>10分钟</option>
<option>15分钟</option>
<option>20分钟</option>
</select>
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">训练要求与指导</label>
<textarea rows="3" placeholder="请输入具体的训练指导和要求..." class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary"></textarea>
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">体质提升目标</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary">
<option>提升10%以上</option>
<option>提升5-10%</option>
<option>巩固现有水平</option>
<option>针对薄弱项提升</option>
</select>
</div>
</div>
<div class="p-5 border-t border-gray-100 flex gap-3">
<button id="cancel-task" class="flex-1 py-2.5 border border-gray-300 rounded-lg font-medium text-gray-700">取消</button>
<button class="flex-1 btn btn-primary">发布打卡任务</button>
</div>
</div>
</div>
<script>
// 页面交互逻辑
document.addEventListener('DOMContentLoaded', function() {
// 获取元素
const assignTaskBtn = document.querySelector('.grid .card:first-child');
const taskModal = document.getElementById('assign-task-modal');
const closeModal = document.getElementById('close-modal');
const cancelTask = document.getElementById('cancel-task');
// 打开弹窗
assignTaskBtn.addEventListener('click', function() {
taskModal.classList.remove('hidden');
document.body.style.overflow = 'hidden'; // 阻止背景滚动
});
// 关闭弹窗
function hideModal() {
taskModal.classList.add('hidden');
document.body.style.overflow = 'auto'; // 恢复背景滚动
}
closeModal.addEventListener('click', hideModal);
cancelTask.addEventListener('click', hideModal);
// 点击弹窗外部关闭
taskModal.addEventListener('click', function(e) {
if (e.target === taskModal) {
hideModal();
}
});
// 底部导航切换效果
const navItems = document.querySelectorAll('footer a');
navItems.forEach(item => {
item.addEventListener('click', function(e) {
e.preventDefault();
navItems.forEach(nav => nav.classList.remove('text-primary'));
navItems.forEach(nav => nav.classList.add('text-gray-500'));
this.classList.remove('text-gray-500');
this.classList.add('text-primary');
});
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,442 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>体质数据统计分析</title>
<script src="https://cdn.tailwindcss.com"></script>
<link href="https://cdn.jsdelivr.net/npm/font-awesome@4.7.0/css/font-awesome.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/chart.js@4.4.8/dist/chart.umd.min.js"></script>
<script>
tailwind.config = {
theme: {
extend: {
colors: {
primary: '#2563EB', // 专业蓝
secondary: '#10B981', // 健康绿
accent: '#F59E0B', // 活力橙
warning: '#EF4444',
light: '#F3F4F6',
dark: '#1F2937'
},
fontFamily: {
sans: ['PingFang SC', 'Microsoft YaHei', 'sans-serif'],
},
}
}
}
</script>
<style type="text/tailwindcss">
@layer utilities {
.content-auto {
content-visibility: auto;
}
.card {
@apply bg-white rounded-xl shadow-sm p-4 transition-all duration-300 hover:shadow-md;
}
.stat-card {
@apply bg-white rounded-xl shadow-sm p-4 transition-all duration-300 hover:shadow-md border-l-4;
}
.progress-bar {
@apply h-2 rounded-full bg-gray-200 overflow-hidden;
}
.progress-value {
@apply h-full rounded-full transition-all duration-700;
}
}
</style>
</head>
<body class="bg-light text-dark font-sans min-h-screen flex flex-col">
<!-- 顶部导航栏 -->
<header class="bg-primary text-white py-4 px-5 sticky top-0 z-10 shadow-md">
<div class="flex items-center justify-between">
<button id="back-btn" class="text-white">
<i class="fa fa-arrow-left text-xl"></i>
</button>
<h1 class="text-lg font-bold">体质数据统计分析</h1>
<div class="w-6"></div> <!-- 占位元素,保持标题居中 -->
</div>
</header>
<!-- 筛选条件 -->
<div class="bg-white px-5 py-3 border-b border-gray-100">
<div class="flex justify-between items-center">
<div class="flex items-center gap-2">
<span class="text-sm text-gray-500">统计周期:</span>
<select class="text-sm border-none bg-transparent focus:outline-none text-primary font-medium">
<option>近30天</option>
<option>本学期</option>
<option>上月</option>
<option>自定义</option>
</select>
</div>
<div class="flex items-center gap-2">
<span class="text-sm text-gray-500">班级:</span>
<select class="text-sm border-none bg-transparent focus:outline-none text-primary font-medium">
<option>全部班级</option>
<option>三年级(1)班</option>
<option>四年级(2)班</option>
<option>五年级(3)班</option>
<option>六年级(1)班</option>
</select>
</div>
</div>
</div>
<!-- 主内容区 -->
<main class="flex-1 overflow-y-auto">
<!-- 核心指标卡片 -->
<div class="px-5 py-4">
<h2 class="text-sm font-medium text-gray-500 mb-3">核心指标</h2>
<div class="grid grid-cols-2 gap-3">
<div class="stat-card border-primary bg-primary/5">
<p class="text-xs text-gray-500">平均打卡完成率</p>
<h3 class="text-2xl font-bold mt-1 text-primary">78.5%</h3>
<div class="flex items-center mt-2 text-xs">
<span class="text-secondary flex items-center">
<i class="fa fa-arrow-up mr-1"></i> 4.2%
</span>
<span class="text-gray-500 ml-2">较上周</span>
</div>
</div>
<div class="stat-card border-secondary bg-secondary/5">
<p class="text-xs text-gray-500">体质提升幅度</p>
<h3 class="text-2xl font-bold mt-1 text-secondary">12.3%</h3>
<div class="flex items-center mt-2 text-xs">
<span class="text-secondary flex items-center">
<i class="fa fa-arrow-up mr-1"></i> 2.8%
</span>
<span class="text-gray-500 ml-2">较上月</span>
</div>
</div>
<div class="stat-card border-accent bg-accent/5">
<p class="text-xs text-gray-500">参与率</p>
<h3 class="text-2xl font-bold mt-1 text-accent">92.7%</h3>
<div class="flex items-center mt-2 text-xs">
<span class="text-secondary flex items-center">
<i class="fa fa-arrow-up mr-1"></i> 1.5%
</span>
<span class="text-gray-500 ml-2">较上周</span>
</div>
</div>
<div class="stat-card border-warning bg-warning/5">
<p class="text-xs text-gray-500">待提升学生</p>
<h3 class="text-2xl font-bold mt-1 text-warning">24人</h3>
<div class="flex items-center mt-2 text-xs">
<span class="text-secondary flex items-center">
<i class="fa fa-arrow-down mr-1"></i> 6人
</span>
<span class="text-gray-500 ml-2">较上月</span>
</div>
</div>
</div>
</div>
<!-- 打卡趋势图表 -->
<div class="px-5 py-2">
<div class="flex justify-between items-center mb-3">
<h3 class="font-bold">家庭打卡趋势</h3>
<select class="text-xs border-none bg-transparent focus:outline-none text-primary">
<option>按周统计</option>
<option>按月统计</option>
<option>按日统计</option>
</select>
</div>
<div class="card h-64">
<canvas id="checkInChart"></canvas>
</div>
</div>
<!-- 各项目完成情况 -->
<div class="px-5 py-2">
<h3 class="font-bold mb-3">各项目完成情况</h3>
<div class="card mb-3">
<div class="flex justify-between items-center mb-2">
<span class="text-sm">一分钟跳绳</span>
<span class="text-sm font-medium">82%</span>
</div>
<div class="progress-bar">
<div class="progress-value bg-primary" style="width: 82%"></div>
</div>
<div class="flex justify-between text-xs text-gray-500 mt-1">
<span>平均时长: 9.2分钟</span>
<span>提升: +15.3%</span>
</div>
</div>
<div class="card mb-3">
<div class="flex justify-between items-center mb-2">
<span class="text-sm">仰卧起坐</span>
<span class="text-sm font-medium">68%</span>
</div>
<div class="progress-bar">
<div class="progress-value bg-primary" style="width: 68%"></div>
</div>
<div class="flex justify-between text-xs text-gray-500 mt-1">
<span>平均时长: 7.5分钟</span>
<span>提升: +9.7%</span>
</div>
</div>
<div class="card mb-3">
<div class="flex justify-between items-center mb-2">
<span class="text-sm">坐位体前屈</span>
<span class="text-sm font-medium">75%</span>
</div>
<div class="progress-bar">
<div class="progress-value bg-primary" style="width: 75%"></div>
</div>
<div class="flex justify-between text-xs text-gray-500 mt-1">
<span>平均时长: 5.8分钟</span>
<span>提升: +11.2%</span>
</div>
</div>
<div class="card">
<div class="flex justify-between items-center mb-2">
<span class="text-sm">家庭趣味跑步</span>
<span class="text-sm font-medium">62%</span>
</div>
<div class="progress-bar">
<div class="progress-value bg-primary" style="width: 62%"></div>
</div>
<div class="flex justify-between text-xs text-gray-500 mt-1">
<span>平均时长: 12.3分钟</span>
<span>提升: +8.5%</span>
</div>
</div>
</div>
<!-- 班级对比 -->
<div class="px-5 py-2 mb-4">
<div class="flex justify-between items-center mb-3">
<h3 class="font-bold">班级表现对比</h3>
<button class="text-primary text-sm">详情</button>
</div>
<div class="card h-64">
<canvas id="classComparisonChart"></canvas>
</div>
</div>
<!-- 待提升学生 -->
<div class="px-5 py-2 mb-20">
<div class="flex justify-between items-center mb-3">
<h3 class="font-bold">需重点关注学生</h3>
<button class="text-primary text-sm">查看全部</button>
</div>
<div class="space-y-3">
<div class="card">
<div class="flex justify-between items-center">
<div class="flex items-center gap-3">
<img src="https://picsum.photos/id/1012/100/100" alt="学生头像" class="w-10 h-10 rounded-full object-cover">
<div>
<h4 class="font-medium">张明 - 四年级(2)班</h4>
<p class="text-xs text-gray-500">打卡完成率: 35% | 体质提升: 2.1%</p>
</div>
</div>
<button class="text-xs bg-warning/10 text-warning px-3 py-1 rounded-full">
重点关注
</button>
</div>
</div>
<div class="card">
<div class="flex justify-between items-center">
<div class="flex items-center gap-3">
<img src="https://picsum.photos/id/1027/100/100" alt="学生头像" class="w-10 h-10 rounded-full object-cover">
<div>
<h4 class="font-medium">李娜 - 五年级(3)班</h4>
<p class="text-xs text-gray-500">打卡完成率: 42% | 体质提升: 3.5%</p>
</div>
</div>
<button class="text-xs bg-warning/10 text-warning px-3 py-1 rounded-full">
重点关注
</button>
</div>
</div>
<div class="card">
<div class="flex justify-between items-center">
<div class="flex items-center gap-3">
<img src="https://picsum.photos/id/1025/100/100" alt="学生头像" class="w-10 h-10 rounded-full object-cover">
<div>
<h4 class="font-medium">王浩 - 六年级(1)班</h4>
<p class="text-xs text-gray-500">打卡完成率: 58% | 体质提升: 1.8%</p>
</div>
</div>
<button class="text-xs bg-accent/10 text-accent px-3 py-1 rounded-full">
一般关注
</button>
</div>
</div>
</div>
</div>
</main>
<!-- 底部导航 -->
<footer class="bg-white border-t border-gray-200 py-2 px-4 fixed bottom-0 left-0 right-0 z-10">
<div class="flex justify-between">
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-home text-lg"></i>
<span class="text-xs mt-1">首页</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-tasks text-lg"></i>
<span class="text-xs mt-1">任务管理</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-primary">
<i class="fa fa-bar-chart text-lg"></i>
<span class="text-xs mt-1">数据统计</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-users text-lg"></i>
<span class="text-xs mt-1">班级管理</span>
</a>
<a href="#" class="flex flex-col items-center justify-center w-1/5 text-gray-500">
<i class="fa fa-cog text-lg"></i>
<span class="text-xs mt-1">设置</span>
</a>
</div>
</footer>
<script>
// 页面加载完成后初始化图表
document.addEventListener('DOMContentLoaded', function() {
// 返回按钮功能
document.getElementById('back-btn').addEventListener('click', function() {
window.history.back();
});
// 打卡趋势图表
const checkInCtx = document.getElementById('checkInChart').getContext('2d');
const checkInChart = new Chart(checkInCtx, {
type: 'line',
data: {
labels: ['第1周', '第2周', '第3周', '第4周', '第5周', '第6周'],
datasets: [
{
label: '打卡完成率',
data: [65, 68, 72, 69, 75, 78.5],
borderColor: '#2563EB',
backgroundColor: 'rgba(37, 99, 235, 0.1)',
tension: 0.3,
fill: true
},
{
label: '体质提升幅度',
data: [3.2, 5.8, 7.5, 9.1, 10.5, 12.3],
borderColor: '#10B981',
backgroundColor: 'rgba(16, 185, 129, 0.1)',
tension: 0.3,
fill: true
}
]
},
options: {
responsive: true,
maintainAspectRatio: false,
plugins: {
legend: {
position: 'top',
labels: {
boxWidth: 12,
font: {
size: 11
}
}
}
},
scales: {
y: {
beginAtZero: true,
max: 100,
ticks: {
callback: function(value) {
return value + '%';
},
font: {
size: 10
}
}
},
x: {
ticks: {
font: {
size: 10
}
}
}
}
}
});
// 班级对比图表
const classCtx = document.getElementById('classComparisonChart').getContext('2d');
const classChart = new Chart(classCtx, {
type: 'bar',
data: {
labels: ['3(1)班', '4(2)班', '5(3)班', '6(1)班'],
datasets: [
{
label: '打卡完成率',
data: [91, 85, 76, 68],
backgroundColor: '#2563EB',
borderRadius: 4
},
{
label: '体质提升幅度',
data: [15.2, 13.8, 11.5, 8.7],
backgroundColor: '#10B981',
borderRadius: 4
}
]
},
options: {
responsive: true,
maintainAspectRatio: false,
plugins: {
legend: {
position: 'top',
labels: {
boxWidth: 12,
font: {
size: 11
}
}
}
},
scales: {
y: {
beginAtZero: true,
max: 100,
ticks: {
callback: function(value) {
return value + '%';
},
font: {
size: 10
}
}
},
x: {
ticks: {
font: {
size: 10
}
}
}
}
}
});
});
</script>
</body>
</html>