Skip to content

xuanxiang/uestc-api

 
 

Repository files navigation

UESTC

UESTC-API

👉 https://uestc.ga

node (tag) Dependency Status PRs Welcome %e2%9d%a4

介绍

UESTC-API 是电子科技大学部分网站功能的集成 API 接口,仅支持查询本科生数据

功能

  1. 教务系统

    • 统一身份认证系统登录/退出
    • 按学期获取课程表信息
    • 按学期获取考试安排信息
    • 按学期获取课程成绩信息
    • 获取所有课程成绩信息
    • 获取成绩统计信息
    • 获取平时成绩信息
    • 评教
  2. 后勤综合服务

    • 绑定喜付账户
    • 获取一卡通信息
    • 获取最近 30 天账单
    • 获取宿舍电费信息
    • 监控宿舍电费与一卡通余额,余额预警推送
    • 获取班车 / 公交信息
  3. 教务处

    • 教务处学生公告
    • 学校部门信息
    • 学院地址 & 联系方式

文档

快速开始

在开始之前,需要:

  1. 已完成初始设置的电子科技大学本科统一身份认证系统账户

  2. 已完成学生认证和一卡通、电费房间号绑定的喜付账户

安装

项目框架为 Eggnode 版本需要高于 v8.0.0

$ git clone && npm install

安装全局依赖

开发环境运行

config.default.jsconfig.unittest.js 中的密码、Key 等替换成自己的

$ npm run dev

或者可以将参数设置为环境变量,然后运行:

$ APP_KEY=xxx JWT_SECRET=xxx YOUR_STU_NUM=xxx  YOUR_STU_PASS=xxx YOUR_XIFU_ACCOUNT=xxx YOUR_XIFU_PASS=xxx YOUR_ROOM_ID=xxx ALINODE_APPID=xxx ALINODE_SECRET=xxx PROXY=YOUR_HTTP_PROXY_URL npm run dev

参数说明

参数 是否必须 说明
APP_KEY 自定义
JWT_SECRET 自定义,生成 jwt-token 的密钥
YOUR_STU_NUM
YOUR_STU_PASS
否(单元测试必须) 学号
密码
YOUR_XIFU_ACCOUNT
YOUR_XIFU_PASS
YOUR_ROOM_ID
否(单元测试必须) 喜付账户
喜付密码
宿舍房间号
ALINODE_APPID
ALINODE_SECRET
阿里云 Node.js 性能平台
APPID
SECRET
(需自行注册)
PROXY HTTP(S) 代理服务器地址和端口
格式 http(s)://url:port

浏览器打开 http://127.0.0.1:7001 页面出现项目主页即为运行成功

单元测试

单元测试受源站网络影响,如遇单元测试无法通过,请先确认 教务系统清水河畔喜付 APP成电微教务(微信订阅号) 是否可以正常使用

$ npm test

目前只完成了 Controller 层简单的单元测试,如果您有兴趣完善,欢迎 Pull Request

覆盖率测试

$ npm run cov

代码风格检查(ESLint)

$ npm run lint

检查依赖更新

请先删除 package-lock.jsonyarn.lock 文件

$ npm run autod

参考:autod

许可协议

GPL-3.0

About

🏫 电子科技大学(UESTC)集成 API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 100.0%