- 新增 Prettier 配置文件,规范代码格式 - 重构用户控制器和 DAO 层代码,提高可读性和维护性 - 添加 MongoDB 数据库配置和连接逻辑 - 更新用户模型,使用 Mongoose Schema 定义 - 新增密码加密功能 - 删除 SQLite 相关代码和数据库文件
84 lines
2.3 KiB
JavaScript
84 lines
2.3 KiB
JavaScript
var express = require('express');
|
|
var router = express.Router();
|
|
|
|
const user_controller = require('../controllers/userController');
|
|
const User = require('../models/user.model');
|
|
const userService = require('../service/user.service');
|
|
const StringUtils = require('../utils/StringUtil');
|
|
|
|
/* GET home page. */
|
|
router.get('/', function (req, res, next) {
|
|
res.send('test');
|
|
});
|
|
|
|
router.get('/user', async function (req, res, next) {
|
|
console.log(req.session);
|
|
console.log(req.session.account);
|
|
if (
|
|
req.session.account === null ||
|
|
req.session.account === '' ||
|
|
req.session.account === undefined
|
|
) {
|
|
res.send('not login');
|
|
return;
|
|
}
|
|
let us = await user_controller.user_list();
|
|
us = JSON.stringify(us);
|
|
res.send(us);
|
|
});
|
|
|
|
router.post('/login', async function (req, res, next) {
|
|
const body = req.body;
|
|
if (!StringUtils.isNotEmpty(body)) {
|
|
return res.json({ ret_code: -1, ret_msg: '登录失败' });
|
|
}
|
|
const { account, password } = body;
|
|
|
|
if (account === '' || account === undefined || account === null) {
|
|
return res.json({ ret_code: -1, ret_msg: '没有填写账号' });
|
|
}
|
|
if (password === '' || password === undefined || password === null) {
|
|
return res.json({ ret_code: -1, ret_msg: '没有填写密码' });
|
|
}
|
|
|
|
const user = await user_controller.find_user_login(account);
|
|
if (!user) {
|
|
return res.json({ ret_code: -1, ret_msg: '账号不存在' });
|
|
}
|
|
|
|
if (user.password != password) {
|
|
return res.json({ ret_code: -1, ret_msg: '密码错误' });
|
|
}
|
|
|
|
req.session.regenerate((err) => {
|
|
if (err) {
|
|
return res.json({ ret_code: -1, ret_msg: '登录失败' });
|
|
}
|
|
req.session.account = account;
|
|
res.json({ ret_code: 0, ret_msg: '登录成功' });
|
|
});
|
|
});
|
|
|
|
router.get('/logout', async function (req, res, next) {
|
|
res.json({ ret_code: 1, ret_msg: '退出登录成功' });
|
|
});
|
|
|
|
router.post('/register', async function (req, res, next) {
|
|
const body = req.body;
|
|
const { account, username, password } = body;
|
|
|
|
console.log(account, username, password);
|
|
const user = new User();
|
|
user.setUserAccount(account);
|
|
user.setUserName(username);
|
|
user.setPassword(password);
|
|
// console.log(user);
|
|
let userMsg;
|
|
userMsg = await userService.register(user);
|
|
console.log(userMsg.get('userMsg'));
|
|
|
|
res.json({ ret_code: 1, ret_msg: userMsg.get('userMsg') });
|
|
});
|
|
|
|
module.exports = router;
|