Przeglądaj źródła

添加学生功能

zengyicheng 2 lat temu
rodzic
commit
026ba5fcef
1 zmienionych plików z 134 dodań i 1 usunięć
  1. 134 1
      pbl.js

+ 134 - 1
pbl.js

@@ -6,7 +6,10 @@ 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 _mysqluser = ["123.58.32.151", "cocorobouser"]; //用户数据库信息
 const _mysqlLabor = ["172.16.12.5", "pbl"]; //edu數據庫信息
+const _mysqluser = ["172.16.12.5", "cocorobouser"]; //edu數據庫信息
+var crypto = require('crypto');
 
 //統壹處理區域
 router.use(async function(req, res, next) {
@@ -101,6 +104,11 @@ router.route('/findPhone').all((req, res, next) => {
     var json = queryString(req.url);
     getmysql(req, res, "findPhone", json['un']);
 });
+/* 找寻重复邮箱 */
+router.route('/findMail').all((req, res, next) => {
+    var json = queryString(req.url);
+    usergetmysql(req, res, "findMail", json['un']);
+});
 /* 新增班级 */
 router.route('/insertClass').all((req, res, next) => {
     var json = queryString(req.url);
@@ -139,7 +147,12 @@ router.route('/insertStudent').all((req, res, next) => {
 /* 查询学生 */
 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);
+    getmysql(req, res, "selectStudent", json['oid'], json['cu'], json['cn'], json['page'], 8);
+});
+/* 查询项目 */
+router.route('/selectStudentAdd').all((req, res, next) => {
+    var json = queryString(req.url);
+    getmysql(req, res, "selectStudentAdd", json['oid'], json['cu'], json['cn']);
 });
 
 /* 查询班级是否有重复 */
@@ -749,6 +762,90 @@ router.route('/getWorkData').all((req, res, next) => {
 });
 
 
+
+
+router.route('/batchRegistration').post(function(req, res, next) {
+    var users = req.body[0];
+
+    //循环注册
+
+    var _username = users.username;
+
+    var _password = users.password || "123456";
+
+    var _alias = users.alias;
+
+    var _oid = users.oid;
+
+    var _ph = users.ph;
+
+    var _class = users.cid;
+
+    //加密密碼
+
+    _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
+
+    //生成激活碼
+
+    let _hashstr = new Date().getTime() + "";
+
+    let _digest = crypto.createHash('sha256').update(_hashstr, 'utf8').digest('hex');
+
+    //用戶數據
+
+    var _userdata = [
+
+        _username,
+
+        _password,
+
+        _alias,
+
+        "",
+
+        1,
+
+        _username,
+
+        "",
+
+        generateAPIKey(_username),
+
+        _digest,
+
+        "",
+
+    ];
+
+    //參數拼接,註冊
+
+    _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregister");
+
+    //用戶註冊處理
+
+    mysql.usselect(_userdata, function(ret) {
+
+        res.end(JSON.stringify({ uid: ret[1][0].uid, ph: _ph, oid: _oid, cid: _class, success: 1 }));
+        // console.log(ret[0][0].type == 1);
+
+    });
+
+});
+
+function generateAPIKey(username) {
+
+    let timeStamp = new Date().getTime();
+
+    let hashStr = timeStamp + username;
+
+    let digest = crypto.createHash('sha256').update(hashStr, 'utf8').digest('hex');
+
+    return digest;
+
+}
+
+
+
 queryString = function(url) {
     var a = url.split("?");
     var json = querystring.parse(a[1])
@@ -775,4 +872,40 @@ getmysql = function(req, res, functionname, ...p) {
 }
 
 
+//post存储过程处理
+
+userpostmysql = function(req, res, functionname) {
+
+    //mode的处理
+
+    if (req.body.mode) {
+
+        p = req.body.mode.split(",");
+
+        p.unshift(_mysqluser[0], _mysqluser[1], functionname);
+
+        //执行存储过程
+
+        mysql.usselect(p, function(ret) { res.end(JSON.stringify(ret)); });
+
+    }
+
+}
+
+
+
+//get获取数据库信息
+
+usergetmysql = function(req, res, functionname, ...p) {
+
+    p = p || [];
+
+    p.unshift(_mysqluser[0], _mysqluser[1], functionname);
+
+    //执行存储过程
+
+    mysql.usselect(p, function(ret) { res.end(JSON.stringify(ret)); }); //
+
+}
+
 module.exports = router;