123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378 |
- // ROUTES FOR OUR API
- // =============================================================================
- var express = require('express');
- var bcrypt = require('bcryptjs');
- var router = express.Router(); // get an instance of the express Router
- const querystring = require('querystring');
- var mysql = require('./mysql');
- // const _mysqlLabor = ["123.58.32.151", "pbl"]; //edu數據庫信息
- const _mysqlLabor = ["172.16.12.5", "pbl"]; //edu數據庫信息
- //統壹處理區域
- router.use(async function (req, res, next) {
- await asynnext(req, res, next);
- //// make sure we go to the next routes and don't stop here
- //res.end("");
- });
- /**
- * @des 參數解釋同上
- */
- function asynnext(req, res, next) {
- //異步處理
- return new Promise(async (resolve, reject) => {
- next();
- //resolve(true);aa
- });
- }
- /*測試*/
- router.route('/a').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "a", json['ph'], json['pa']);
- });
- router.route('/b').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "b", json['ph'], json['pa']);
- });
- /* 注册接口 */
- router.route('/register').post(function (req, res, next) {
- //mode的处理
- if (req.body[0]) {
- // 0 用户名 1 用户密码 2用户身份 3 第三方id(可有可无)
- p = Object.values(req.body[0]); //获取用户密码
- //没有第三方id的处理
- // if (p.length < 4) {
- // p.push("")
- // }
- p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
- //密码加密
- // bcrypt.hash(p[1], 10, function (err, hash) {
- // if (err) {
- // return next(err);
- // }
- // p[1] = hash;
- // });
- //参数拼接,注册
- p.unshift(_mysqlLabor[0], _mysqlLabor[1], "register");
- //返回注册用户数据
- // mysql.usselect(p, function (ret) {
- // res.end(ret);
- // });
- mysql.usselect(p, function (ret) {
- res.end(JSON.stringify(ret));
- });
- }
- });
- /*登录接口*/
- router.route('/login').all((req, res, next) => {
- //mode的处理
- if (req.body[0]) {
- // 0 用户名 1 用户密码
- c = Object.values(req.body[0]); //获取用户密码
- p = [c[0]]
- // p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
- var _password = [c[0]];
- _password.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectPassword");
- mysql.usselect(_password, function (ret) {
- var _ret = ret
- var paJ = _ret[0][0].userpassword
- bcrypt.compare(c[1], paJ, function (err, result) {
- // console.log(result)
- if (result) {
- //参数拼接,登录
- p.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectLogin");
- //执行存储过程
- mysql.usselect(p, function (ret) {
- res.end(JSON.stringify({ status: "1", ...ret }));
- });
- } else {
- res.end(JSON.stringify([{ status: "0" }]));
- }
- })
- });
- // console.log(isEqual)
- }
- });
- /* 找寻重复手机号 */
- router.route('/findPhone').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "findPhone", json['un']);
- });
- /* 新增班级 */
- router.route('/insertClass').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "insertClass", json['name'], json['oid'], json['uid']);
- });
- /* 查询班级 */
- router.route('/selectClass').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectClass", json['cu'], json['oid'], json['cn'], json['page'], 10);
- });
- /* 删除班级 */
- router.route('/deleteClass').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "deleteClass", json['id']);
- });
- /* 查询学校 */
- router.route('/selectOrg').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectOrg");
- });
- /* 新增学生 */
- router.route('/insertStudent').all((req, res, next) => {
- var json = queryString(req.url);
- json['userpassword'] = bcrypt.hashSync(json['userpassword'], bcrypt.genSaltSync(10))
- getmysql(req, res, "insertStudent", json['ph'], json['username'], json['userpassword'], json['type'], json['oid'], json['tid'], json['cid']);
- });
- /* 新增学生 */
- router.route('/iStudent').all((req, res, next) => {
- postmysql(req, res, "insertStudent");
- });
- /* 查询学生 */
- router.route('/selectStudent').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectStudent", json['uid'], json['cu'], json['cn'], json['page'], 10);
- });
- /* 查询班级是否有重复 */
- router.route('/selectC').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectC", json['className']);
- });
- /* 查询学校是否有重复 */
- router.route('/selectS').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectS", json['schoolName']);
- });
- /* 修改个人信息 */
- router.route('/updateUser').all((req, res, next) => {
- postmysql(req, res, "updateUser");
- });
- //查询老师的信息
- router.route('/getUser').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectUserDeail", json['uid']);
- });
- //查询教师端消息
- router.route('/getNewsTeacher').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectNew", json['uid'], json['page'], 10);
- });
- //查询通知详情
- router.route('/selectNewDetail').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectNewDetail", json['nid']);
- });
- //查出分组分类
- router.route('/getGroup').all((req, res, next) => {
- getmysql(req, res, "selectGroupTeacher");
- });
- //查询这个老师底下的学生提交的作业
- router.route('/getWorks').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectWorks", json['bid'], json['isRate'], json['classx'], json['cid'], json['page'], 10);
- });
- //查询项目
- router.route('/getProject').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectProject", json['type'], json['uid'], json['oid'], json['cn'], json['page'], 10);
- });
- //查询项目成员
- router.route('/selectProjectStudent').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_student", json['cn'], json['oid'], json['uid']);
- });
- //新增课程
- router.route('/addWork').all((req, res, next) => {
- postmysql(req, res, "insert_teacher_work");
- });
- //查询课程
- router.route('/selectCourse').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_course", json['type'], json['uid'], json['oid'], json['page'], 10);
- });
- //查询学校
- // router.route('/selectSchoolName').all((req, res, next) => {
- // var json = queryString(req.url);
- // getmysql(req, res, "selectOidName",json['oid']);
- // });
- //删除学生
- router.route('/deleteStudent').all((req, res, next) => {
- postmysql(req, res, "delete_student");
- });
- //lsc
- //admin 查询学校
- router.route('/getSchoolAdmin').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_school", json['page'], 10);
- });
- //admin 添加学校
- router.route('/addSchoolAdmin').all((req, res, next) => {
- postmysql(req, res, "add_school");
- });
- //admin 删除学校
- router.route('/deleteSchoolAdmin').all((req, res, next) => {
- postmysql(req, res, "delete_school");
- });
- //admin 查询班级
- router.route('/getClassAdmin').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_classAdmin", json['cn'], json['page'], 10);
- });
- //admin 添加班级
- router.route('/addClassAdmin').all((req, res, next) => {
- postmysql(req, res, "add_classAdmin");
- });
- //admin 查询班级是否重复
- router.route('/getClassRepeat').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_classRepeatAdmin", json['n'], json['oid']);
- });
- //admin 发布通知
- router.route('/addNews').all((req, res, next) => {
- postmysql(req, res, "add_news");
- });
- //admin 删除通知
- router.route('/deleteNews').all((req, res, next) => {
- postmysql(req, res, "delete_news");
- });
- //admin 添加banner
- router.route('/addBanner').all((req, res, next) => {
- postmysql(req, res, "add_banner");
- });
- //admin 添加banner
- router.route('/deleteBanner').all((req, res, next) => {
- postmysql(req, res, "delete_banner");
- });
- //admin 查询banner
- router.route('/getBanner').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_banner");
- });
- //admin 查询课程getSearchCourse
- router.route('/getSearchCourse').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "selectAll_courseSearch", json['t']);
- });
- //admin 查询所有课程专区
- router.route('/getZone').all((req, res, next) => {
- getmysql(req, res, "select_zone");
- });
- //admin 添加课程专区
- router.route('/addZone').all((req, res, next) => {
- postmysql(req, res, "insert_classZone");
- });
- //查询所有课程专区下的课程
- router.route('/getZoneClass').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_zoneClass", json['bid'], json['page'], 10);
- });
- //admin 后台查看专区下课程的数量
- router.route('/getZoneClassNum').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_zoneClassNum", json['bid']);
- });
- //admin 后台添加课程专区时查看课程是否在此专区重复
- router.route('/getZoneClassRepeat').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_zoneClassRepeat", json['pid'], json['cid']);
- });
- //把课程添加进专区
- router.route('/addZoneCourse').all((req, res, next) => {
- postmysql(req, res, "insert_app");
- });
- //admin 删除课程专区底下的课程
- router.route('/deleteZoneCourse').all((req, res, next) => {
- postmysql(req, res, "delete_app");
- });
- //admin 删除班级
- router.route('/deleteZone').all((req, res, next) => {
- postmysql(req, res, "delete_zone");
- });
- //admin 后台专区上移下移
- router.route('/zoneRank').all((req, res, next) => {
- postmysql(req, res, "update_classRank");
- });
- //admin 添加模板文档
- router.route('/addTemplateAdmin').all((req, res, next) => {
- postmysql(req, res, "add_template");
- });
- //admin 添加模板文档
- router.route('/deleteTemplateAdmin').all((req, res, next) => {
- postmysql(req, res, "delete_template");
- });
- //admin 查询模板文档
- router.route('/getTemplateAdmin').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_template", json['page'], 10);
- });
- //admin 查询课程
- router.route('/getCourseAdmin').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_courseAdmin", json['cn'], json['page'], 10);
- });
- //admin 查询模板文档
- router.route('/deleteCourseAdmin').all((req, res, next) => {
- postmysql(req, res, "delete_courseAdmin",);
- });
- //teacher 查询模板
- router.route('/getTemplateT').all((req, res, next) => {
- var json = queryString(req.url);
- getmysql(req, res, "select_templateT");
- });
- queryString = function (url) {
- var a = url.split("?");
- var json = querystring.parse(a[1])
- return json;
- }
- //post存儲過程處理
- postmysql = function (req, res, functionname) {
- //mode的處理
- if (req.body[0]) {
- p = Object.values(req.body[0]);
- p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
- //執行存儲過程
- mysql.usselect(p, function (ret) { res.end(JSON.stringify(ret)); });
- }
- }
- //get獲取數據庫信息
- getmysql = function (req, res, functionname, ...p) {
- p = p || [];
- p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
- //執行存儲過程
- mysql.usselect(p, function (ret) { res.end(JSON.stringify(ret)); }); //
- }
- module.exports = router;
|