- Flutter 3.x 项目初始化(pubspec.yaml + 目录结构) - 核心依赖:dio/go_router/provider/shared_preferences/hive/geolocator - 统一登录页 + Token管理(TokenService + AuthInterceptor) - 底部Tab三合一导航(供水/巡检/营收) - 供水管理Tab:监测数据列表(MonitorListPage) - 巡检Tab:任务列表+状态筛选+进度展示(PatrolTaskListPage) - 营收Tab:抄表页面+账单列表(MeterReadingPage/BillListPage) - 消息推送服务(PushService) - GPS定位服务(LocationService) - 拍照/相册服务(CameraService) - 离线缓存服务(CacheService) - Android/iOS打包配置+权限声明 - GoRouter路由+Auth认证守卫 - Provider状态管理
2.5 KiB
2.5 KiB
供水管理系统 - 移动端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)
运行
# 安装依赖
flutter pub get
# 运行开发模式
flutter run
# 构建 APK
flutter build apk
# 构建 iOS
flutter build ios