You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
TimeManager/src/workserver/controllers/user.js

150 lines
3.5 KiB

// 引用用户模版数据
const User = require('../model/user');
const userController = {
// showUser 获取用户数据并返回到页面
showUser: async function(req,res,next){
try{
let userData;
if(req.body.id){
console.log(req.body.id)
userData= await User.getById('id',req.body.id)
}else{
userData = await User.all()
}
res.json({
code: 200,
message: "操作成功",
data: userData
})
}catch(e){
res.json({ code: 0, message: "操作失败", data: e })
}
},
// 新增用户
addUser: async function(req, res, next) {
try {
const userData = req.body; // 从请求中获取用户数据
const result = await User.insert(userData);
res.json({
code: 200,
message: "用户添加成功",
data: result
});
} catch (e) {
res.json({
code: 0,
message: "用户添加失败",
data: e
});
}
},
// 修改用户
updateUser: async function(req, res, next) {
try {
const userId = req.body.id; // Assuming the user ID is passed as a parameter
const userData = req.body; // Updated user data
console.log(userId + " & " + JSON.stringify(userData));
const result = await User.update(userId, userData); // Use an appropriate function to update the user
if (result) {
res.json({
code: 200,
message: "用户修改成功",
data: result
});
} else {
res.json({
code: 404,
message: "用户不存在",
data: null
});
}
} catch (e) {
res.json({
code: 0,
message: "用户修改失败",
data: e
});
}
},
// 删除用户
deleteUser: async function(req, res, next) {
try {
const userId = req.body.id; // Assuming the user ID is passed as a parameter
const result = await User.delete(userId); // Use an appropriate function to delete the user
if (result) {
res.json({
code: 200,
message: "用户删除成功",
data: result
});
} else {
res.json({
code: 404,
message: "用户不存在",
data: null
});
}
} catch (e) {
res.json({
code: 0,
message: "用户删除失败",
data: e
});
}
},
// 注册用户
register: async function(req, res, next) {
try {
const userData = req.body; // 从请求中获取用户数据
const newUser = await User.insert(userData); // 创建新用户,使用合适的方法
res.json({
code: 200,
message: "注册成功",
data: newUser
});
} catch (e) {
res.json({
code: 0,
message: "注册失败",
data: e
});
}
},
// 用户登录
login: async function(req, res, next) {
try {
const user = await User.getById('username',req.body.username); // 根据邮箱和密码查找用户,使用合适的方法
if (!req.body.password==user.password) {
res.json({
code: 401,
message: "登录失败,用户名或密码不正确",
data: null
});
} else {
// 在此处可以生成并返回一个 JSON Web Token (JWT) 作为用户的身份认证标识
const token = User.generateAuthToken();
res.json({
code: 200,
message: "登录成功",
data: { user, token }
});
}
} catch (e) {
res.json({
code: 0,
message: "登录失败",
data: e
});
}
}
}
module.exports = userController;