# oneCourse **Repository Path**: ffffffds/one-course ## Basic Information - **Project Name**: oneCourse - **Description**: 一课表仓库 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 9 - **Forks**: 0 - **Created**: 2021-08-30 - **Last Updated**: 2025-10-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 官网 https://qq1159704367.github.io/oneCourse/
# 适配提交 / 申请 ## **1. 申请进行适配(预计一~两周上线,后续会更快)** ## 无需自己动手!!! ### 无需自己动手!!! #### 无需自己动手!!! ### **→您可以通过填写问卷进行申请:[问卷地址](https://wj.qq.com/s2/9278405/958c/)←** #### 由于适配需要时间精力,可能进行得不会这么快,技术不足也不一定能够适配成功,感谢大家的信任与支持。 #### $\color{#FF0000}{请注意:收到申请后我一定会回复的,如果没有回复请查看邮件地址,或者加群询问,谢谢}$ ## 2.仅适配课表 #### 如果仅适配课表,那么只需要在电脑上登陆教务系统,在可以看到课表的时候,点击f12,将element(元素)内的内容复制发送到邮箱中即可,同时还需发送 **$\color{#ff0000}{上课时间,教务网址}$** (持续时间、每节课开始时间) #### 注:适配该功能只会在智能教务导入中实现,不会用于教务登录中噢,软件中的登录功能是无法使用的噢。 ![点击此处后复制下面的文字内容](https://images.gitee.com/uploads/images/2021/0925/182613_1008f7df_7367191.png "屏幕截图.png") ## 3. 想要自己适配自己学校 #### 下载schoolBase.java文件,根据文件进行重写相关的函数,具体要求在文件中可以看到 #### 模仿example.java,对文件相关函数补全 #### 完成后,将代码文件 xxxxdx.java 发送到 oneCourse@outlook.com ,标题为 提交适配xxx大学,文件名请以大学简拼命名,在审核后会将您的适配更新到应用上。 #### 对每一位自主适配的同学感到由衷的感谢,是你们提供了这个应用的生态,如果需要,可以将您的信息记录在对应的教务系统上。
## 附录说明(更多细节请看 ```https://gitee.com/ffffffds/school-match/tree/master```) ``` public abstract class schoolBase { //记录教务能力,若可以执行为true,否则为false public boolean courseGet = true; //必选 public boolean scoreGet = false; //可选 public boolean gpaGet = false; //可选 public boolean examGet = false; //可选 public boolean needVerifyCode = false; // 是否需要验证码(目前仅支持图片验证码),需要则无法支持卡片功能,仅能用于页面内教务使用,仅支持图像验证码 public String[] courseTime = new String[]{}; //课程时间串,第一个为课程1节持续时间,后续为第n节课的起始时间 //登录函数,初始化时完成登录,返回JSON字符串或者JSONObject,如果不需要验证码,请忽视verifyCode这个参数,在需要验证码时他会带上用户输入的验证码值 //内容格式示例--- //{name:xxx} //name:String //学生姓名 public abstract String Login(String id,String pas,String verifyCode); //获取最新学期的课表,返回JSON字符串或者JSONObject,错误返回null,请检测登陆过期,并在过期时重新登陆,再获取信息 //内容格式示例: //{courses:[[{idx:1,name:xxx,last:2,teacher:xxx,place:xxx,week:["1-16"]}],[],[],[],[],[],[]],startDate:"2021-01-04"} //---courses:Array> 记录课程信息,内容如下: //idx:Number 课程索引,按照课程次序从大到小,1为第一节课,依次后推 //name:String 课程名称 //last:Number 课程持续节次 //teacher:String, place:String 可选 //week:Array 可有格式 "1-16","2" //返回的数组必须长度为7,记录顺序为周一,周二,...,周日 //---startDate:String 课程表的起始日期,需为周一,若无法获得请置本年第一个周一 //---warn:String 可选,提示信息,当下载课表时将弹出 public abstract String getCourses(); //获取成绩,返回JSON字符串或者JSONObject,错误返回null,请检测登陆过期,并在过期时重新登陆,再获取信息 //内容格式示例: //[{name:xxx,value:80}] //name:String 课程名称 //value:Number/String 课程分数,可显示A+等 public String getScores(){return null;} //获取学分绩,返回JSON字符串或者JSONObject,错误返回null,请检测登陆过期,并在过期时重新登陆,再获取信息 //内容格式示例: //{gpa: 3.9,all:100,at:30} //gpa:Number 学分绩 //all:Number 总人数,可选,无可填-1 //at:Number 你的排名 public String getGPA(){return null;} //若需要验证码,请在此函数获取验证码图片并返回 public byte[] getVerifyCode(){return null;} //获取近期的考试安排,返回JSON字符串或JSONObject,错误返回null,请检测登录过期,并在过期时重新登陆,再获取信息 //内容格式示例: //[{name:xxx,startDate:2021-09-20,place:xxx,time:14:40~16:40}] //name:String 课程名称 //startDate:String 考试日期 //place:String 考试地点 //time:String 考试时间,需用 ~ 分割两段时间,呈xx:xx~xx:xx public String getExams(){return null;} } ```