四川大学飞扬俱乐部
云上飞扬是飞扬俱乐部为全校师生打造的设备报修服务平台。本项目是从微信小程序向 Flutter 跨平台重构的全新客户端,在保留原有全部业务能力的基础上,提供了更流畅的原生体验。
🛠 设备报修
- 引导式报修表单:设备信息、故障描述、故障图片上传等
- 工单全流程可视化:报修 → 技术员接单 → 双向确认 → 完成/取消
- 报修须知强制确认、跨校区维修意愿、进度短信/邮件通知
🧰 技术员工作台
- 扫码接单 / 转单码接单
- 维修凭证拍照上传,双向确认闭环,异常工单强制关闭
- 接单意愿、多校区接单、同时接单上限管理
- 技术员英雄榜与年度维修总结
🎪 社团活动
- 现场活动幸运抽奖号码与中奖状态展示
🎨 界面个性化
- 深色模式(跟随系统/浅色/深色)与全局文字大小调节
- 应用内切换桌面图标,多款图标即时生效
- 首页公告栏、技术员榜单显示开关
🔐 账号体系
- 手机号 + 短信验证码登录,30 天长效会话
- 与微信小程序同账号互通
- 「记住此设备」多账号管理:本机保存账号,登录页一键切换
- 资料编辑、头像上传、换绑手机号、账号注销
| 类别 | 选型 |
|---|---|
| 框架 | Flutter 3.x |
| 状态管理 | Provider (ChangeNotifier) |
| 网络层 | Dio 5.x(Bearer 注入、401 自动登出、错误防御) |
| 扫码/二维码 | mobile_scanner · qr_flutter |
| Markdown 渲染 | flutter_markdown_plus(公告、服务条款) |
| 动态图标 | flutter_dynamic_icon_plus(iOS/Android 应用内换图标) |
| 本地存储 | shared_preferences |
lib/
├── core/ # 网络层、接口常量、主题、共享文案
├── models/ # 数据实体与序列化
├── services/ # RESTful API 交互
├── providers/ # 业务状态管理
└── views/ # 页面(首页 / 活动 / 我的 Tab + 子页面)
git clone https://github.com/gkxqh/foc_app.git
cd foc_app
flutter pub get
flutter run -d macos # 桌面预览(macOS)
flutter run # 连接 iOS / Android 真机或模拟器后端接口基址:
https://focapi.feiyang.ac.cn登录需要已在微信小程序「云上飞扬」注册并绑定手机号的账号。
提交前请确保静态分析与测试全部通过:
flutter analyze # 静态检查
flutter test # 单元测试 + Widget 测试应用图标源图处理脚本(需先在 assets/icon/ 放置源图):
dart run tool/gen_icon.dart # 生成主图标与 Android 自适应前景
dart run tool/gen_logo.dart # 生成 Logo 备用图标(黑/白底)- fyscu/foc_fe — 微信小程序
Powered By 四川大学飞扬俱乐部研发部