Suzhou-SafetyToolsWarning-WX/QUICKSTART.md

254 lines
7.3 KiB
Markdown
Raw Permalink Normal View History

2025-11-07 14:54:09 +08:00
# 快速开始指南
## 🎯 项目已完成的工作
### ✅ 已完成
1. **项目结构搭建**
- 清理了所有 TDesign 示例页面
- 创建了核心功能页面结构
- 配置了底部导航栏TabBar
2. **核心页面开发**
- ✅ 首页(工作台)- 设备统计、预警提醒、快捷入口
- ✅ 设备列表 - 搜索、筛选、状态标识
- ✅ 设备详情 - 完整信息展示、编辑、删除
- ✅ 添加/编辑设备 - 表单录入、日期选择
- ✅ 统计分析 - 数据统计(图表待开发)
- ✅ 预警中心 - 预警列表、时间筛选
- ✅ 预警设置 - 预警天数设置
- ✅ 个人中心 - 用户信息、功能入口
3. **工具函数**
-`utils/deviceUtils.js` - 设备数据处理、日期计算、预警判断
-`utils/mockData.js` - 模拟数据生成
4. **UI组件**
- ✅ 全局注册 TDesign 常用组件
- ✅ 统一的样式风格
- ✅ 响应式布局
## 🚀 如何运行项目
### 步骤 1打开项目
1. 启动**微信开发者工具**
2. 选择"导入项目"
3. 选择项目目录:`/Users/syruan/WeChatProjects/miniprogram-1`
4. AppID 使用:`wx9d08fb2788d95136`(或使用测试号)
### 步骤 2构建 npm
1. 在微信开发者工具中,点击菜单栏:**工具 -> 构建 npm**
2. 等待构建完成(会生成 `miniprogram_npm` 目录)
### 步骤 3编译运行
1. 点击工具栏的"编译"按钮
2. 在模拟器中查看效果
3. 或点击"预览"在真机上测试
## 📱 功能演示
### 首页(工作台)
- 查看设备总数、预警数、到期数
- 查看最新的预警提醒前3条
- 使用快捷入口:
- 点击"设备台账"进入设备列表
- 点击"添加设备"添加新设备
- 点击"统计分析"查看统计数据
- 点击"扫码查询"扫描设备二维码(功能待完善)
### 设备台账
- 使用搜索框搜索设备(支持名称、编号、型号)
- 点击顶部标签筛选状态(全部、正常、预警、已到期)
- 点击右侧筛选图标进行高级筛选(设备类型、使用单位)
- 点击设备卡片查看详情
- 点击右下角"+"按钮添加新设备
### 设备详情
- 查看设备完整信息
- 点击"编辑设备"修改信息
- 点击"删除设备"删除设备(会弹出确认对话框)
### 添加/编辑设备
- 填写设备基本信息(名称、编号、规格型号等)
- 选择使用单位
- 选择检验日期
- 填写备注信息(可选)
- 点击"添加"或"保存"提交
### 统计分析
- 查看设备总数和预警率
- 查看设备类型统计列表
- 图表功能待开发(可集成 echarts-for-weixin
### 预警中心
- 切换标签查看不同时间范围的预警全部、7天内、15天内、已到期
- 点击预警项查看设备详情
### 预警设置
- 设置提前预警天数7天、15天、30天、60天、90天
### 个人中心
- 查看用户信息
- 访问预警设置
- 查看关于我们
## 🔧 当前使用的模拟数据
项目目前使用 `utils/mockData.js` 中的模拟数据,包含:
- 10 台设备的完整信息
- 不同状态的设备(正常、预警、已到期)
- 最近操作记录
- 设备类型和使用单位列表
**数据特点**
- 设备 ID 1绝缘手套即将到期预警状态
- 设备 ID 3安全带已到期
- 其他设备:正常或预警状态
## ⚠️ 已知问题
### 1. TabBar 图标缺失
**现象**:底部导航栏只显示文字,没有图标
**原因**:图标文件未创建
**解决方案**
- **临时方案**:当前已配置为纯文字 TabBar可以正常使用
- **完整方案**准备图标文件81px * 81pxPNG格式放入 `assets/icons/` 目录,然后在 `app.json` 中配置图标路径
所需图标:
```
assets/icons/
├── home.png # 首页图标(未选中)
├── home-active.png # 首页图标(选中)
├── device.png # 设备图标(未选中)
├── device-active.png # 设备图标(选中)
├── chart.png # 统计图标(未选中)
├── chart-active.png # 统计图标(选中)
├── warning.png # 预警图标(未选中)
├── warning-active.png # 预警图标(选中)
├── user.png # 我的图标(未选中)
└── user-active.png # 我的图标(选中)
```
### 2. 数据不持久化
**现象**:刷新页面后数据恢复到初始状态
**原因**:使用模拟数据,未实现数据持久化
**解决方案**:参考 `PROJECT_GUIDE.md` 中的"数据管理"章节,选择以下方案之一:
- 微信云开发(推荐)
- 本地存储wx.setStorageSync
- 后端 API
### 3. 部分功能待开发
以下功能显示"功能开发中"提示:
- 扫码查询(需要生成设备二维码)
- 统计图表(需要集成 echarts-for-weixin
- 数据导出
- 单位管理
- 帮助中心
- 消息推送
## 📝 下一步开发建议
### 优先级 1数据持久化
```javascript
// 方案一:使用本地存储(最简单)
// 在 utils/storage.js 中封装存储方法
function saveDevices(devices) {
wx.setStorageSync('devices', devices);
}
function getDevices() {
return wx.getStorageSync('devices') || [];
}
// 方案二:使用微信云开发(推荐)
// 1. 在微信开发者工具中开通云开发
// 2. 创建数据库集合 'devices'
// 3. 使用云数据库 API 进行 CRUD 操作
```
### 优先级 2用户登录
```javascript
// 使用微信登录
wx.login({
success: res => {
// 发送 res.code 到后端换取 openId, sessionKey, unionId
}
});
// 获取用户信息
wx.getUserProfile({
desc: '用于完善用户资料',
success: res => {
console.log(res.userInfo);
}
});
```
### 优先级 3消息推送
```javascript
// 订阅消息
wx.requestSubscribeMessage({
tmplIds: ['模板ID'],
success: res => {
// 订阅成功,可以发送模板消息
}
});
```
### 优先级 4统计图表
```bash
# 安装 echarts-for-weixin
npm install echarts-for-weixin --save
# 在页面中引入
import * as echarts from 'echarts-for-weixin';
```
## 🎨 自定义配置
### 修改主题色
编辑 `app.wxss`,修改以下变量:
```css
--td-brand-color: #0052D9; /* 主题色 */
--td-warning-color: #FF6B00; /* 预警色 */
--td-error-color: #E34D59; /* 错误色 */
```
### 修改预警天数阈值
编辑 `utils/deviceUtils.js`,修改 `getDeviceStatus` 函数的默认参数:
```javascript
function getDeviceStatus(daysLeft, warningDays = 30) {
// warningDays 默认为 30 天,可以修改为其他值
}
```
### 添加新的设备类型
编辑 `utils/mockData.js`,在 `getDeviceTypes` 函数中添加:
```javascript
function getDeviceTypes() {
return ['全部', '安全帽', '安全带', '新设备类型', ...];
}
```
## 📞 技术支持
如遇到问题,请检查:
1. 微信开发者工具版本是否最新
2. 是否已执行"构建 npm"
3. 基础库版本是否符合要求(>= 3.0.0
4. 查看控制台是否有错误信息
## 📚 相关文档
- [微信小程序官方文档](https://developers.weixin.qq.com/miniprogram/dev/framework/)
- [TDesign 小程序组件库](https://tdesign.tencent.com/miniprogram/overview)
- [微信云开发文档](https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/getting-started.html)
---
**祝开发顺利!** 🎉