mysql-pbl.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. // ROUTES FOR OUR API(直接执行 SQL 语句)
  2. // =============================================================================
  3. var express = require("express");
  4. var request = require("request");
  5. var bcrypt = require("bcryptjs");
  6. var router = express.Router(); // get an instance of the express Router
  7. const querystring = require("querystring");
  8. var mysql = require("./mysql");
  9. //=====================================
  10. // 本地
  11. // const _mysqlLabor = ["183.36.26.8", "pbl"]; //edu數據庫信息
  12. // const _mysqluser = ["183.36.26.8", "cocorobouser"]; //用户数据库信息
  13. // const _getmysqlLabor2 = ["183.36.26.8", "pbl"]; //edu數據庫信息
  14. // const _getmysqlLabor = ["183.36.26.8", "pbl"]; //edu數據庫信息
  15. //线上
  16. const _mysqlLabor = ["172.16.12.150", "pbl"]; //edu數據庫信息
  17. const _mysqluser = ["172.16.12.150", "cocorobouser"]; //用户数据库信息
  18. // const _getmysqlLabor = ["172.16.12.150", "pbl"]; //edu數據庫信息
  19. // const _getmysqluser = ["172.16.12.150", "cocorobouser"]; //用户数据库信息
  20. //======================================
  21. //解析 url 查询参数
  22. function queryString(url) {
  23. var a = url.split("?");
  24. var json = querystring.parse(a[1]);
  25. return json;
  26. }
  27. //直接执行 SQL(pbl 库)
  28. function runPbl(res, sql, params) {
  29. var cfg = _mysqlLabor;
  30. var p = [cfg[0], cfg[1], sql].concat(params || []);
  31. mysql.usquery(p, function (ret) {
  32. res.end(JSON.stringify(ret));
  33. });
  34. }
  35. //直接执行 SQL(cocorobouser 库)
  36. function runUser(res, sql, params) {
  37. var cfg = _mysqluser;
  38. var p = [cfg[0], cfg[1], sql].concat(params || []);
  39. mysql.usquery(p, function (ret) {
  40. res.end(JSON.stringify(ret));
  41. });
  42. }
  43. /* 查询用户(按 userid) */
  44. router.route("/selectUser").all((req, res, next) => {
  45. var json = queryString(req.url);
  46. var sql = "SELECT * FROM User WHERE userid = ?";
  47. runPbl(res, sql, [json["uid"]]);
  48. });
  49. /* 查询全部用户 */
  50. router.route("/selectUserAll").all((req, res, next) => {
  51. var json = queryString(req.url);
  52. var page = parseInt(json["page"]) || 1;
  53. var pageSize = parseInt(json["pageSize"]) || 10;
  54. var offset = (page - 1) * pageSize;
  55. var sql = "SELECT * FROM User LIMIT ? OFFSET ?";
  56. runPbl(res, sql, [pageSize, offset]);
  57. });
  58. /* 修改用户 */
  59. router.route("/updateUser").post((req, res, next) => {
  60. var json = req.body;
  61. var sql = "UPDATE User SET username = ? WHERE userid = ?";
  62. runPbl(res, sql, [json["username"], json["userid"]]);
  63. });
  64. module.exports = router;