Suzhou-SafetyToolsWarning-WX/QUICKSTART.md

254 lines
7.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 快速开始指南
## 🎯 项目已完成的工作
### ✅ 已完成
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)
---
**祝开发顺利!** 🎉