91 lines
2.5 KiB
Markdown
91 lines
2.5 KiB
Markdown
# 供水管理系统 - 移动端APP
|
||||
|
|
|
|||
|
|
三合一移动应用:供水管理 / 巡检管理 / 营收管理
|
|||
|
|
|
|||
|
|
## 技术栈
|
|||
|
|
|
|||
|
|
- **框架**: Flutter 3.x
|
|||
|
|
- **状态管理**: Provider
|
|||
|
|
- **路由**: GoRouter
|
|||
|
|
- **HTTP**: Dio
|
|||
|
|
- **本地存储**: Hive + SharedPreferences
|
|||
|
|
- **定位**: Geolocator
|
|||
|
|
- **相机**: Image Picker
|
|||
|
|
- **通知**: Flutter Local Notifications
|
|||
|
|
|
|||
|
|
## 项目结构
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
mobile-app/
|
|||
|
|
├── lib/
|
|||
|
|
│ ├── main.dart # 入口文件
|
|||
|
|
│ ├── core/ # 核心模块
|
|||
|
|
│ │ ├── theme/ # 主题配置
|
|||
|
|
│ │ ├── constants/ # 常量定义
|
|||
|
|
│ │ ├── network/ # 网络层(Dio + 拦截器)
|
|||
|
|
│ │ └── utils/ # 工具类
|
|||
|
|
│ ├── features/ # 功能模块
|
|||
|
|
│ │ ├── auth/ # 认证(登录/Token)
|
|||
|
|
│ │ ├── main_shell/ # 主框架(Tab导航)
|
|||
|
|
│ │ ├── water_supply/ # 供水管理
|
|||
|
|
│ │ ├── patrol/ # 巡检管理
|
|||
|
|
│ │ └── revenue/ # 营收管理
|
|||
|
|
│ ├── shared/ # 共享模块
|
|||
|
|
│ │ ├── widgets/ # 通用组件
|
|||
|
|
│ │ └── services/ # 共享服务
|
|||
|
|
│ └── config/ # 配置(路由等)
|
|||
|
|
├── android/ # Android 配置
|
|||
|
|
├── ios/ # iOS 配置
|
|||
|
|
└── pubspec.yaml # 依赖配置
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 功能模块
|
|||
|
|
|
|||
|
|
### 1. 统一登录 + Token 管理
|
|||
|
|
- 账号密码登录
|
|||
|
|
- Token 自动附加(AuthInterceptor)
|
|||
|
|
- Token 刷新机制
|
|||
|
|
- 登录状态持久化
|
|||
|
|
|
|||
|
|
### 2. 三合一 Tab 导航
|
|||
|
|
- 供水管理 Tab
|
|||
|
|
- 巡检管理 Tab
|
|||
|
|
- 营收管理 Tab
|
|||
|
|
|
|||
|
|
### 3. 供水管理
|
|||
|
|
- 监测站点列表
|
|||
|
|
- 实时水压/流量/水质数据
|
|||
|
|
- 状态告警
|
|||
|
|
|
|||
|
|
### 4. 巡检管理
|
|||
|
|
- 巡检任务列表(按状态筛选)
|
|||
|
|
- 任务进度展示
|
|||
|
|
- 支持新建巡检任务
|
|||
|
|
|
|||
|
|
### 5. 营收管理
|
|||
|
|
- 抄表任务列表
|
|||
|
|
- 账单列表(缴费状态筛选)
|
|||
|
|
- 抄表数据录入
|
|||
|
|
|
|||
|
|
### 6. 核心服务
|
|||
|
|
- **PushService**: 消息推送(初始化 + 回调)
|
|||
|
|
- **LocationService**: GPS定位 + 权限管理
|
|||
|
|
- **CameraService**: 拍照/相册选择
|
|||
|
|
- **CacheService**: 离线缓存(Hive)
|
|||
|
|
|
|||
|
|
## 运行
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 安装依赖
|
|||
|
|
flutter pub get
|
|||
|
|
|
|||
|
|
# 运行开发模式
|
|||
|
|
flutter run
|
|||
|
|
|
|||
|
|
# 构建 APK
|
|||
|
|
flutter build apk
|
|||
|
|
|
|||
|
|
# 构建 iOS
|
|||
|
|
flutter build ios
|
|||
|
|
```
|