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.
150 lines
3.5 KiB
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;
|
|
|