Skip to content

Chnja/zuoxuewen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

座学问

author Frame license

一个面向武汉大学图书馆预约座位的程序,基于Flutter编写。

开始

如果你只是使用,并不进行二次开发,可以直接下载安装Releases中的.apk安装包。

二次开发

# 1. First, clone the repo, and start this project!
$ git clone https://github.com/Chnja/zuoxuewen.git
$ cd zuoxuewen

# 2. Run!
$ flutter pub get
$ flutter run

# 3. Write your code!

# 4. Build!
$ flutter build apk

项目结构

本项目中的绝大部分内容都位于/lib路径下

lib
│  about.dart # 页面:关于页("/about")
│  libin.dart # 页面:项目主页("/libin")
│  main.dart # 页面:登录页("/login")
│  roomSelect.dart # 组件:“快速选座”功能中底部弹框
│  timeChange.dart # 组件:“变更时间”功能中底部弹框
│  zhlj.dart # 暂时未使用,为测试内建WebView时遗留
│
└─utils
        CCheckboxList.dart # 组件:类似于CheckboxListTile
        web.dart # 工具包:http请求类CWeb、自建页面栈Routes、部分共用函数等

目前实现的功能

  • 取消预约:整合图书馆目前“取消预约”和“结束使用”两个类似的功能
  • 快速选座:在指定的多个房间内快速选座(轮询)
  • 变更时间:修改当前已预约座位的时间(先取消后重新预约)

写在最后

特定时间的预约抢座功能没有做也不会做,我觉得那是红线。其实快速选座和变更时间功能,在我读本科的时候,图书馆承诺后面会加上,后面就没有下文了

本项目主要是想解决图书馆座位预约中的痛点问题:

  • 网页端:
    • 没有针对手机端做优化,使用体验不佳;
    • 通过“自选座位”选座,需要重复选择两次座位使用时间;
  • 微信公众号端:
    • 没有按照时间进行筛选的功能
  • 没有指定多的房间的快速选座
  • 无法变更使用时间

其实不论通过哪种方案,爬虫访问图书馆网页终究不是长久之计。我有一个想法!要是图书馆能够开放API接口,开发者们通过SecretID和SecretKey进行身份认证获取接入权限,那该多好啊

Acknowledgement

Contact

chj1997@whu.edu.cn