使用promise改了几个mysql函数

This commit is contained in:
luchenqun 2016-11-08 23:02:42 +08:00
parent 4da94566f6
commit c70d081f23
2 changed files with 55 additions and 28 deletions

View File

@ -66,14 +66,51 @@ db.updateLastUseTags = function(user_id, tags) {
}); });
} }
db.clickBookmark = function(id){ db.clickBookmark = function(id) {
var sql = "UPDATE `bookmarks` SET `click_count`=`click_count`+1, `last_click`=now() WHERE (`id`='" + id + "')"; var sql = "UPDATE `bookmarks` SET `click_count`=`click_count`+1, `last_click`=now() WHERE (`id`='" + id + "')";
return new Promise(function(resolve, reject) { return new Promise(function(resolve, reject) {
client.query(sql, (err, result) => { client.query(sql, (err, result) => {
if (err) { if (err) {
reject(err); reject(err);
} else { } else {
resolve(id); resolve(result.affectedRows);
}
});
});
};
db.checkLogin = function(username, password) {
console.log('checkLogin');
var sql = "SELECT * FROM `users` WHERE `username` = '" + username + "'";
return new Promise(function(resolve, reject) {
client.query(sql, (err, result) => {
if (err) {
reject(err);
} else {
var ret = {
logined: false,
user: {},
}
if (password === result[0].password) {
ret.logined = true;
ret.user = result[0];
}
resolve(ret);
}
});
});
};
db.updateUserLastLogin = function(id) {
console.log('updateUserLastLogin');
var sql = "UPDATE `users` SET `last_login`=now() WHERE (`id`='" + id + "')";
return new Promise(function(resolve, reject) {
client.query(sql, (err, result) => {
if (err) {
reject(err);
} else {
resolve(result.affectedRows);
} }
}); });
}); });

View File

@ -69,38 +69,28 @@ api.post('/logout', function(req, res) {
}); });
api.post('/clickBookmark', function(req, res) { api.post('/clickBookmark', function(req, res) {
var params = req.body.params; db.clickBookmark(req.body.params.id)
var id = params.id; .then((affectedRows) => res.json({}))
var sql = "UPDATE `bookmarks` SET `click_count`=`click_count`+1, `last_click`=now() WHERE (`id`='" + id + "')"; .catch((err) => console.log('clickBookmark error', err));
console.log(sql);
client.query(sql, function(error, result, fields) {
res.json({
id: id,
});
})
}); });
api.post('/login', function(req, res) { api.post('/login', function(req, res) {
var params = req.body.params; var params = req.body.params;
var username = params.username; var username = params.username;
var password = md5(params.password); var password = md5(params.password);
db.checkLogin(username, password)
var sql = "SELECT * FROM `users` WHERE `username` = '" + username + "'"; .then((ret) => {
client.query(sql, function(error, result, fields) { if (ret.logined) {
var id = ''; req.session.username = ret.user.username;
var logined = false; req.session.userId = ret.user.id;
var pass = !error && result.length === 1 && password === result[0].password db.updateUserLastLogin(ret.user.id);
console.log(password, result[0].password, pass)
if (pass) {
req.session.username = username;
logined = true;
id = result[0].id;
} }
res.json({ res.json(ret);
logined: logined,
userId: id
});
}) })
.then((affectedRows) => {
console.log('updateUserLastLogin affectedRows ', affectedRows)
})
.catch((err) => console.log('login error', err));
}); });
api.get('/autoLogin', function(req, res) { api.get('/autoLogin', function(req, res) {