pbl.js 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755
  1. // ROUTES FOR OUR API
  2. // =============================================================================
  3. var express = require('express');
  4. var bcrypt = require('bcryptjs');
  5. var router = express.Router(); // get an instance of the express Router
  6. const querystring = require('querystring');
  7. var mysql = require('./mysql');
  8. // const _mysqlLabor = ["123.58.32.151", "pbl"]; //edu數據庫信息
  9. const _mysqlLabor = ["172.16.12.5", "pbl"]; //edu數據庫信息
  10. //統壹處理區域
  11. router.use(async function(req, res, next) {
  12. await asynnext(req, res, next);
  13. //// make sure we go to the next routes and don't stop here
  14. //res.end("");
  15. });
  16. /**
  17. * @des 參數解釋同上
  18. */
  19. function asynnext(req, res, next) {
  20. //異步處理
  21. return new Promise(async(resolve, reject) => {
  22. next();
  23. //resolve(true);aa
  24. });
  25. }
  26. /*測試*/
  27. router.route('/a').all((req, res, next) => {
  28. var json = queryString(req.url);
  29. getmysql(req, res, "a", json['ph'], json['pa']);
  30. });
  31. router.route('/b').all((req, res, next) => {
  32. var json = queryString(req.url);
  33. getmysql(req, res, "b", json['ph'], json['pa']);
  34. });
  35. /* 注册接口 */
  36. router.route('/register').post(function(req, res, next) {
  37. //mode的处理
  38. if (req.body[0]) {
  39. // 0 用户名 1 用户密码 2用户身份 3 第三方id(可有可无)
  40. p = Object.values(req.body[0]); //获取用户密码
  41. //没有第三方id的处理
  42. // if (p.length < 4) {
  43. // p.push("")
  44. // }
  45. p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  46. //密码加密
  47. // bcrypt.hash(p[1], 10, function (err, hash) {
  48. // if (err) {
  49. // return next(err);
  50. // }
  51. // p[1] = hash;
  52. // });
  53. //参数拼接,注册
  54. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "register");
  55. //返回注册用户数据
  56. // mysql.usselect(p, function (ret) {
  57. // res.end(ret);
  58. // });
  59. mysql.usselect(p, function(ret) {
  60. res.end(JSON.stringify(ret));
  61. });
  62. }
  63. });
  64. /*登录接口*/
  65. router.route('/login').all((req, res, next) => {
  66. //mode的处理
  67. if (req.body[0]) {
  68. // 0 用户名 1 用户密码
  69. c = Object.values(req.body[0]); //获取用户密码
  70. p = [c[0]]
  71. // p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  72. var _password = [c[0]];
  73. _password.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectPassword");
  74. mysql.usselect(_password, function(ret) {
  75. var _ret = ret
  76. var paJ = _ret[0][0].userpassword
  77. bcrypt.compare(c[1], paJ, function(err, result) {
  78. // console.log(result)
  79. if (result) {
  80. //参数拼接,登录
  81. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectLogin");
  82. //执行存储过程
  83. mysql.usselect(p, function(ret) {
  84. res.end(JSON.stringify({ status: "1", ...ret }));
  85. });
  86. } else {
  87. res.end(JSON.stringify([{ status: "0" }]));
  88. }
  89. })
  90. });
  91. // console.log(isEqual)
  92. }
  93. });
  94. /* 找寻重复手机号 */
  95. router.route('/findPhone').all((req, res, next) => {
  96. var json = queryString(req.url);
  97. getmysql(req, res, "findPhone", json['un']);
  98. });
  99. /* 新增班级 */
  100. router.route('/insertClass').all((req, res, next) => {
  101. var json = queryString(req.url);
  102. getmysql(req, res, "insertClass", json['name'], json['oid'], json['uid']);
  103. });
  104. /* 查询班级 */
  105. router.route('/selectClass').all((req, res, next) => {
  106. var json = queryString(req.url);
  107. getmysql(req, res, "selectClass", json['cu'], json['oid'], json['cn'], json['page'], 10);
  108. });
  109. /* 删除班级 */
  110. router.route('/deleteClass').all((req, res, next) => {
  111. var json = queryString(req.url);
  112. getmysql(req, res, "deleteClass", json['id']);
  113. });
  114. /* 查询学校 */
  115. router.route('/selectOrg').all((req, res, next) => {
  116. var json = queryString(req.url);
  117. getmysql(req, res, "selectOrg");
  118. });
  119. /* 新增学生 */
  120. router.route('/insertStudent').all((req, res, next) => {
  121. var json = queryString(req.url);
  122. json['userpassword'] = bcrypt.hashSync(json['userpassword'], bcrypt.genSaltSync(10))
  123. getmysql(req, res, "insertStudent", json['ph'], json['username'], json['userpassword'], json['type'], json['oid'], json['tid'], json['cid']);
  124. });
  125. // /* 新增学生 */
  126. // router.route('/iStudent').all((req, res, next) => {
  127. // var json = queryString(req.url);
  128. // json['userpassword'] = bcrypt.hashSync(json['userpassword'], bcrypt.genSaltSync(10))
  129. // getmysql(req, res, "insertStudent", json['ph'], json['username'], json['userpassword'], json['type'], json['oid'], json['tid'], json['cid']);
  130. // });
  131. /* 查询学生 */
  132. router.route('/selectStudent').all((req, res, next) => {
  133. var json = queryString(req.url);
  134. getmysql(req, res, "selectStudent", json['uid'], json['cu'], json['cn'], json['page'], 10);
  135. });
  136. /* 查询班级是否有重复 */
  137. router.route('/selectC').all((req, res, next) => {
  138. var json = queryString(req.url);
  139. getmysql(req, res, "selectC", json['className']);
  140. });
  141. /* 查询学校是否有重复 */
  142. router.route('/selectS').all((req, res, next) => {
  143. var json = queryString(req.url);
  144. getmysql(req, res, "selectS", json['schoolName']);
  145. });
  146. /* 修改个人信息 */
  147. router.route('/updateUser').all((req, res, next) => {
  148. postmysql(req, res, "updateUser");
  149. });
  150. //查询老师的信息
  151. router.route('/getUser').all((req, res, next) => {
  152. var json = queryString(req.url);
  153. getmysql(req, res, "selectUserDeail", json['uid']);
  154. });
  155. router.route('/selectUser').all((req, res, next) => {
  156. var json = queryString(req.url);
  157. getmysql(req, res, "selectUser", json['userid']);
  158. });
  159. //查询教师端消息
  160. router.route('/getNewsTeacher').all((req, res, next) => {
  161. var json = queryString(req.url);
  162. getmysql(req, res, "selectNew", json['uid'], json['page'], 10);
  163. });
  164. //查询通知详情
  165. router.route('/selectNewDetail').all((req, res, next) => {
  166. var json = queryString(req.url);
  167. getmysql(req, res, "selectNewDetail", json['nid']);
  168. });
  169. //查出分组分类
  170. router.route('/getGroup').all((req, res, next) => {
  171. getmysql(req, res, "selectGroupTeacher");
  172. });
  173. //查询这个老师底下的学生提交的作业
  174. router.route('/getWorks').all((req, res, next) => {
  175. var json = queryString(req.url);
  176. getmysql(req, res, "selectWorks", json['cn'], json['cid'], json['page'], 10);
  177. });
  178. //查询项目
  179. router.route('/getProject').all((req, res, next) => {
  180. var json = queryString(req.url);
  181. getmysql(req, res, "selectProject", json['type'], json['uid'], json['oid'], json['cn'], json['page'], 10);
  182. });
  183. //查询项目成员
  184. router.route('/selectProjectStudent').all((req, res, next) => {
  185. var json = queryString(req.url);
  186. getmysql(req, res, "select_student", json['cn'], json['oid'], json['uid']);
  187. });
  188. //新增课程
  189. router.route('/addWork').all((req, res, next) => {
  190. postmysql(req, res, "insert_teacher_work");
  191. });
  192. router.route('/addWorkNew').all((req, res, next) => {
  193. // postmysql(req, res, "insert_teacher_work_new");
  194. if (req.body[0]) {
  195. // p = Object.values(req.body[0]);
  196. p = [req.body[0].uid, req.body[0].title, req.body[0].brief, req.body[0].cover, req.body[0].astudent, req.body[0].see, req.body[0].chapters, req.body[0].template];
  197. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new");
  198. //執行存儲過程
  199. mysql.usselect(p, function(ret) {
  200. let course = req.body[0].courseType;
  201. let courseId = ret[0][0].courseId;
  202. let userid = req.body[0].uid;
  203. delCourseType(course, courseId, userid);
  204. res.end(JSON.stringify({ ordernumber: ret[0][0].ordernumber, courseId: ret[0][0].courseId, success: 1 }));
  205. // res.end(JSON.stringify(ret));
  206. });
  207. }
  208. });
  209. function delCourseType(course, courseId, userid) {
  210. let _courseId = courseId;
  211. var _userdata = [
  212. _courseId
  213. ];
  214. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "delete_courseType");
  215. mysql.usselect(_userdata, function(ret) {
  216. console.log(ret);
  217. });
  218. setTimeout(() => {
  219. addCourseType(userid, course, _courseId)
  220. }, 1000);
  221. }
  222. function addCourseType(userid, course, _courseId) {
  223. var _uid = userid;
  224. var _courses = _courseId
  225. var _tid = JSON.parse(course)
  226. for (let i = 0; i < _tid.length; i++) {
  227. if (_tid[i] == '') {
  228. continue;
  229. }
  230. var _userdata = [
  231. _courses,
  232. _tid[i],
  233. _uid,
  234. ];
  235. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "add_courseType");
  236. mysql.usselect(_userdata, function(ret) {
  237. console.log(ret);
  238. });
  239. }
  240. }
  241. //修改课程
  242. // router.route('/updateWork').all((req, res, next) => {
  243. // postmysql(req, res, "update_teacher_work");
  244. // });
  245. router.route('/updateWorkNew').all((req, res, next) => {
  246. if (req.body[0]) {
  247. // p = Object.values(req.body[0]);
  248. p = [req.body[0].cid, req.body[0].title, req.body[0].brief, req.body[0].cover, req.body[0].astudent, req.body[0].see, req.body[0].chapters, req.body[0].template];
  249. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new");
  250. //執行存儲過程
  251. mysql.usselect(p, function(ret) {
  252. let course = req.body[0].courseType;
  253. let courseId = req.body[0].cid;
  254. let userid = req.body[0].uid;
  255. delCourseType(course, courseId, userid);
  256. res.end(JSON.stringify({ success: 1 }));
  257. // res.end(JSON.stringify(ret));
  258. });
  259. }
  260. });
  261. //查询课程
  262. // router.route('/selectCourse').all((req, res, next) => {
  263. // var json = queryString(req.url);
  264. // getmysql(req, res, "select_course", json['type'], json['uid'], json['oid'], json['page'], 10);
  265. // });
  266. router.route('/selectCourseNew').all((req, res, next) => {
  267. var json = queryString(req.url);
  268. getmysql(req, res, "select_course_new", json['type'], json['uid'], json['oid'], json['typea'], json['typeb'], json['typec'], json['typed'], json['typeE'], json['cu'], json['cn'], json['page'], 10);
  269. });
  270. //查询学校
  271. router.route('/selectSchoolName').all((req, res, next) => {
  272. var json = queryString(req.url);
  273. getmysql(req, res, "selectOidName", json['oid']);
  274. });
  275. //删除学生
  276. router.route('/deleteStudent').all((req, res, next) => {
  277. postmysql(req, res, "delete_student");
  278. });
  279. //查询学校底下的班级
  280. router.route('/selectClassBySchool').all((req, res, next) => {
  281. var json = queryString(req.url);
  282. getmysql(req, res, "selectClassBySchool", json['oid']);
  283. });
  284. //学生注册接口
  285. router.route('/register_student').post(function(req, res, next) {
  286. //mode的处理
  287. if (req.body[0]) {
  288. // 0 用户名 1 用户密码 2用户身份 3 第三方id(可有可无)
  289. p = Object.values(req.body[0]); //获取用户密码
  290. //没有第三方id的处理
  291. // if (p.length < 4) {
  292. // p.push("")
  293. // }
  294. p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  295. //密码加密
  296. // bcrypt.hash(p[1], 10, function (err, hash) {
  297. // if (err) {
  298. // return next(err);
  299. // }
  300. // p[1] = hash;
  301. // });
  302. //参数拼接,注册
  303. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "register_student");
  304. //返回注册用户数据
  305. // mysql.usselect(p, function (ret) {
  306. // res.end(ret);
  307. // });
  308. mysql.usselect(p, function(ret) {
  309. res.end(JSON.stringify(ret));
  310. });
  311. }
  312. });
  313. //查询课程详情
  314. router.route('/selectCourseDetail').all((req, res, next) => {
  315. var json = queryString(req.url);
  316. getmysql(req, res, "selectCourseDetail", json['courseId']);
  317. });
  318. //跳转阶段时,如果有课程就查询1返回,如果没有就插入
  319. router.route('/addUserR').all((req, res, next) => {
  320. var json = queryString(req.url);
  321. getmysql(req, res, "insertUserR", json['uid'], json['cid']);
  322. });
  323. //新增学生端作业
  324. router.route('/addWorks').all((req, res, next) => {
  325. postmysql(req, res, "add_works");
  326. });
  327. //查询已提交作业
  328. router.route('/selectWork').all((req, res, next) => {
  329. var json = queryString(req.url);
  330. getmysql(req, res, "selectWork", json['cid'], json['stage'], json['uid']);
  331. });
  332. //查询作业详情
  333. router.route('/selectWorksDetail').all((req, res, next) => {
  334. var json = queryString(req.url);
  335. getmysql(req, res, "selectWorksDetail", json['uid'], json['cid']);
  336. });
  337. //新增作业评分
  338. router.route('/updateWorks').all((req, res, next) => {
  339. var json = queryString(req.url);
  340. getmysql(req, res, "updateWorks", json['rate'], json['tuid'], json['id']);
  341. });
  342. //新增素材信息
  343. router.route('/addMtl').all((req, res, next) => {
  344. var json = queryString(req.url);
  345. getmysql(req, res, "add_mtl", json['cInfo'], json['t'], json['cBy']);
  346. });
  347. //根据类型查询素材信息
  348. router.route('/selectMtl').all((req, res, next) => {
  349. var json = queryString(req.url);
  350. getmysql(req, res, "selectMtl", json['t'], json['page'], 10);
  351. });
  352. //查询学生信息
  353. router.route('/selectSDetail').all((req, res, next) => {
  354. var json = queryString(req.url);
  355. getmysql(req, res, "selectStudentDetail", json['uid']);
  356. });
  357. //查询个人课程
  358. router.route('/selectMyCourse').all((req, res, next) => {
  359. var json = queryString(req.url);
  360. getmysql(req, res, "selectMyCourse", json['uid']);
  361. });
  362. //查询个人课程groupby课程id
  363. router.route('/selectMyCourseBycid').all((req, res, next) => {
  364. var json = queryString(req.url);
  365. getmysql(req, res, "selectMyCourseBycid", json['uid']);
  366. });
  367. //查询所有课程
  368. router.route('/selectAllCourse').all((req, res, next) => {
  369. var json = queryString(req.url);
  370. getmysql(req, res, "selectAllCourse", json['oid'], json['page'], 10);
  371. });
  372. //删除素材
  373. router.route('/deleteM').all((req, res, next) => {
  374. var json = queryString(req.url);
  375. getmysql(req, res, "deleteM", json['id']);
  376. });
  377. //点击阶段时添加观看人数
  378. router.route('/updateVc').all((req, res, next) => {
  379. var json = queryString(req.url);
  380. getmysql(req, res, "updateVc", json['cid']);
  381. });
  382. //删除课程
  383. router.route('/deleteCourse').all((req, res, next) => {
  384. var json = queryString(req.url);
  385. getmysql(req, res, "deleteCourse", json['cid']);
  386. });
  387. //查看课程
  388. router.route('/select_course_detail').all((req, res, next) => {
  389. var json = queryString(req.url);
  390. getmysql(req, res, "select_course_detail", json['cid']);
  391. });
  392. //模糊查找课程
  393. // router.route('/searchCourse').all((req, res, next) => {
  394. // var json = queryString(req.url);
  395. // getmysql(req, res, "searchCourse", json['cu'], json['cn'], json['page'], 10);
  396. // });
  397. //创建调查问卷
  398. router.route('/addAsk').all((req, res, next) => {
  399. postmysql(req, res, "insert_ask");
  400. });
  401. //学生提交问卷
  402. router.route('/addAskList').all((req, res, next) => {
  403. postmysql(req, res, "insert_askList");
  404. });
  405. //根据课程id阶段id获取已提交的问卷
  406. router.route('/getAskListByCidStage').all((req, res, next) => {
  407. var json = queryString(req.url);
  408. getmysql(req, res, "getAskListByCidStage", json['cid'], json['stage']);
  409. });
  410. //获取调查问卷
  411. router.route('/getAsk').all((req, res, next) => {
  412. var json = queryString(req.url);
  413. getmysql(req, res, "select_ask", json['uid'], json['page'], 10);
  414. });
  415. //问卷调查数据统计
  416. router.route('/getAskListByAskid').all((req, res, next) => {
  417. var json = queryString(req.url);
  418. getmysql(req, res, "select_askListByAskid", json['aid']);
  419. });
  420. //删除学生提交问卷
  421. router.route('/deleteAskList').all((req, res, next) => {
  422. postmysql(req, res, "update_askList_delete");
  423. });
  424. //根据id获取调查问卷
  425. router.route('/getAskList').all((req, res, next) => {
  426. var json = queryString(req.url);
  427. getmysql(req, res, "select_askList", json['uid'], json['page'], 10);
  428. });
  429. //查看便签列表
  430. router.route('/selectNote').all((req, res, next) => {
  431. var json = queryString(req.url);
  432. getmysql(req, res, "selectNote", json['uid']);
  433. });
  434. //新增便签列表
  435. router.route('/insertNote').all((req, res, next) => {
  436. var json = queryString(req.url);
  437. getmysql(req, res, "insertNote", json['uid'], json['c']);
  438. });
  439. //根据便签id修改便签内容
  440. router.route('/updateNote').all((req, res, next) => {
  441. var json = queryString(req.url);
  442. getmysql(req, res, "updateNote", json['nid'], json['c']);
  443. });
  444. //删除便签
  445. router.route('/deleteNote').all((req, res, next) => {
  446. var json = queryString(req.url);
  447. getmysql(req, res, "deleteNote", json['nid']);
  448. });
  449. //查询便签
  450. router.route('/selectNoteContent').all((req, res, next) => {
  451. var json = queryString(req.url);
  452. getmysql(req, res, "selectNoteContent", json['cn']);
  453. });
  454. //修改用户信息
  455. router.route('/updateUserByEdu').all((req, res, next) => {
  456. postmysql(req, res, "updateUserByEdu");
  457. });
  458. //查询用户信息
  459. router.route('/selectUser').all((req, res, next) => {
  460. var json = queryString(req.url);
  461. getmysql(req, res, "selectUser", json['userid']);
  462. });
  463. //查询分类及子分类
  464. router.route('/selectType').all((req, res, next) => {
  465. var json = queryString(req.url);
  466. getmysql(req, res, "selectType", );
  467. });
  468. //更加父id查询分类
  469. router.route('/selectTypeByPid').all((req, res, next) => {
  470. var json = queryString(req.url);
  471. getmysql(req, res, "selectTypeByPid", json['pid']);
  472. });
  473. //点击工具计数
  474. router.route('/insertToolsCount').all((req, res, next) => {
  475. var json = queryString(req.url);
  476. getmysql(req, res, "insertToolsCount", json['cid'], json['chid'], json['uid'], json['tid'], json['count']);
  477. });
  478. //修改工具次数
  479. router.route('/updateToolsCount').all((req, res, next) => {
  480. var json = queryString(req.url);
  481. getmysql(req, res, "updateToolsCount", json['cid'], json['chid'], json['uid'], json['tid'], json['count']);
  482. });
  483. //查询工具次数
  484. router.route('/selectToolsCount').all((req, res, next) => {
  485. var json = queryString(req.url);
  486. getmysql(req, res, "selectToolsCount", json['cid'], json['chid'], json['uid']);
  487. });
  488. //lsc
  489. //admin 查询学校
  490. router.route('/getSchoolAdmin').all((req, res, next) => {
  491. var json = queryString(req.url);
  492. getmysql(req, res, "select_school", json['page'], 10);
  493. });
  494. //admin 添加学校
  495. router.route('/addSchoolAdmin').all((req, res, next) => {
  496. postmysql(req, res, "add_school");
  497. });
  498. //admin 删除学校
  499. router.route('/deleteSchoolAdmin').all((req, res, next) => {
  500. postmysql(req, res, "delete_school");
  501. });
  502. //admin 查询班级
  503. router.route('/getClassAdmin').all((req, res, next) => {
  504. var json = queryString(req.url);
  505. getmysql(req, res, "select_classAdmin", json['cn'], json['page'], 10);
  506. });
  507. //admin 添加班级
  508. router.route('/addClassAdmin').all((req, res, next) => {
  509. postmysql(req, res, "add_classAdmin");
  510. });
  511. //admin 查询班级是否重复
  512. router.route('/getClassRepeat').all((req, res, next) => {
  513. var json = queryString(req.url);
  514. getmysql(req, res, "select_classRepeatAdmin", json['n'], json['oid']);
  515. });
  516. //admin 发布通知
  517. router.route('/addNews').all((req, res, next) => {
  518. postmysql(req, res, "add_news");
  519. });
  520. //admin 删除通知
  521. router.route('/deleteNews').all((req, res, next) => {
  522. postmysql(req, res, "delete_news");
  523. });
  524. //admin 添加banner
  525. router.route('/addBanner').all((req, res, next) => {
  526. postmysql(req, res, "add_banner");
  527. });
  528. //admin 添加banner
  529. router.route('/deleteBanner').all((req, res, next) => {
  530. postmysql(req, res, "delete_banner");
  531. });
  532. //admin 查询banner
  533. router.route('/getBanner').all((req, res, next) => {
  534. var json = queryString(req.url);
  535. getmysql(req, res, "select_banner");
  536. });
  537. //admin 查询课程getSearchCourse
  538. router.route('/getSearchCourse').all((req, res, next) => {
  539. var json = queryString(req.url);
  540. getmysql(req, res, "selectAll_courseSearch", json['t']);
  541. });
  542. //admin 查询所有课程专区
  543. router.route('/getZone').all((req, res, next) => {
  544. getmysql(req, res, "select_zone");
  545. });
  546. //admin 添加课程专区
  547. router.route('/addZone').all((req, res, next) => {
  548. postmysql(req, res, "insert_classZone");
  549. });
  550. //查询所有课程专区下的课程
  551. router.route('/getZoneClass').all((req, res, next) => {
  552. var json = queryString(req.url);
  553. getmysql(req, res, "select_zoneClass", json['bid'], json['oid'], json['page'], 10);
  554. });
  555. //查询所有课程专区下的课程
  556. router.route('/getZoneClassStudent').all((req, res, next) => {
  557. var json = queryString(req.url);
  558. getmysql(req, res, "select_zoneClass", json['bid'], json['oid'], json['page'], 20);
  559. });
  560. //admin 后台查看专区下课程的数量
  561. router.route('/getZoneClassNum').all((req, res, next) => {
  562. var json = queryString(req.url);
  563. getmysql(req, res, "select_zoneClassNum", json['bid']);
  564. });
  565. //admin 后台添加课程专区时查看课程是否在此专区重复
  566. router.route('/getZoneClassRepeat').all((req, res, next) => {
  567. var json = queryString(req.url);
  568. getmysql(req, res, "select_zoneClassRepeat", json['pid'], json['cid']);
  569. });
  570. //把课程添加进专区
  571. router.route('/addZoneCourse').all((req, res, next) => {
  572. postmysql(req, res, "insert_app");
  573. });
  574. //admin 删除课程专区底下的课程
  575. router.route('/deleteZoneCourse').all((req, res, next) => {
  576. postmysql(req, res, "delete_app");
  577. });
  578. //admin 删除班级
  579. router.route('/deleteZone').all((req, res, next) => {
  580. postmysql(req, res, "delete_zone");
  581. });
  582. //admin 后台专区上移下移
  583. router.route('/zoneRank').all((req, res, next) => {
  584. postmysql(req, res, "update_classRank");
  585. });
  586. //admin 添加模板文档
  587. router.route('/addTemplateAdmin').all((req, res, next) => {
  588. postmysql(req, res, "add_template");
  589. });
  590. //admin 添加模板文档
  591. router.route('/deleteTemplateAdmin').all((req, res, next) => {
  592. postmysql(req, res, "delete_template");
  593. });
  594. //admin 查询模板文档
  595. router.route('/getTemplateAdmin').all((req, res, next) => {
  596. var json = queryString(req.url);
  597. getmysql(req, res, "select_template", json['page'], 10);
  598. });
  599. //admin 查询课程
  600. router.route('/getCourseAdmin').all((req, res, next) => {
  601. var json = queryString(req.url);
  602. getmysql(req, res, "select_courseAdmin", json['cn'], json['page'], 10);
  603. });
  604. //admin 查询模板文档
  605. router.route('/deleteCourseAdmin').all((req, res, next) => {
  606. postmysql(req, res, "delete_courseAdmin", );
  607. });
  608. //teacher 查询模板
  609. router.route('/getTemplateT').all((req, res, next) => {
  610. var json = queryString(req.url);
  611. getmysql(req, res, "select_templateT");
  612. });
  613. //思维网格 创建房间
  614. router.route('/insertRoom').all((req, res, next) => {
  615. postmysql(req, res, "insertRoom");
  616. });
  617. //协同编辑 创建房间
  618. router.route('/insertRoomByFile').all((req, res, next) => {
  619. var json = queryString(req.url);
  620. getmysql(req, res, "insertRoomByFile", json["uid"], json["n"], json["d"]);
  621. });
  622. //思维网格 查询是否是重复房间号
  623. router.route('/checkRoomNum').all((req, res, next) => {
  624. var json = queryString(req.url);
  625. getmysql(req, res, "checkRoomNum", json['num']);
  626. });
  627. //协同编辑 查询是否是重复房间号
  628. router.route('/checkRoomNumByFile').all((req, res, next) => {
  629. var json = queryString(req.url);
  630. getmysql(req, res, "checkRoomNumByFile", json['num']);
  631. });
  632. //思维网格 根据房间号或者用户id查询房间信息
  633. router.route('/selectRoom').all((req, res, next) => {
  634. var json = queryString(req.url);
  635. getmysql(req, res, "selectRoom", json['uid']);
  636. });
  637. //协同编辑 根据房间号或者用户id查询房间信息
  638. router.route('/selectRoomByFile').all((req, res, next) => {
  639. var json = queryString(req.url);
  640. getmysql(req, res, "selectRoomByFile", json['uid']);
  641. });
  642. //思维网格 修改房间数据
  643. router.route('/updateRoomData').all((req, res, next) => {
  644. postmysql(req, res, "updateRoomData");
  645. });
  646. router.route('/updateFileData').all((req, res, next) => {
  647. var json = queryString(req.url);
  648. var json2 = json['mode'].split(',');
  649. getmysql(req, res, "updateFileData", json2[0], json2[1]);
  650. });
  651. router.route('/select_file').all((req, res, next) => {
  652. var json = queryString(req.url);
  653. getmysql(req, res, "select_file", json['fid']);
  654. });
  655. //思维网格 解散房间
  656. router.route('/dismiss').all((req, res, next) => {
  657. postmysql(req, res, "update_room");
  658. });
  659. //提交提问
  660. router.route('/addProblem').all((req, res, next) => {
  661. postmysql(req, res, "add_problem");
  662. //cid 课程id,chid 章节id,t 提问内容,uid 用户id
  663. });
  664. //查询提交的提问
  665. router.route('/getProblem').all((req, res, next) => {
  666. var json = queryString(req.url); //cid 课程id,page 页数
  667. getmysql(req, res, "select_problem", json['cid'], json['page'], 10);
  668. });
  669. //作业生成报告
  670. router.route('/getWorkData').all((req, res, next) => {
  671. var json = queryString(req.url); //cid 课程id,page 页数
  672. getmysql(req, res, "select_work_data", json['cid']);
  673. });
  674. queryString = function(url) {
  675. var a = url.split("?");
  676. var json = querystring.parse(a[1])
  677. return json;
  678. }
  679. //post存儲過程處理
  680. postmysql = function(req, res, functionname) {
  681. //mode的處理
  682. if (req.body[0]) {
  683. p = Object.values(req.body[0]);
  684. p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
  685. //執行存儲過程
  686. mysql.usselect(p, function(ret) { res.end(JSON.stringify(ret)); });
  687. }
  688. }
  689. //get獲取數據庫信息
  690. getmysql = function(req, res, functionname, ...p) {
  691. p = p || [];
  692. p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
  693. //執行存儲過程
  694. mysql.usselect(p, function(ret) { res.end(JSON.stringify(ret)); }); //
  695. }
  696. module.exports = router;