修改bug。新增牛只,超链接

This commit is contained in:
xuqiuyun
2025-09-15 18:18:41 +08:00
parent be32363412
commit 89bc6e8ce2
18 changed files with 2183 additions and 76 deletions

View File

@@ -0,0 +1,168 @@
/**
* 牛只用途控制器
* 处理cattle_user表的CRUD操作
*/
const { sequelize } = require('../config/database-simple')
class CattleUserController {
/**
* 获取所有牛只用途
*/
async getAllUsers(req, res) {
try {
const [users] = await sequelize.query('SELECT * FROM cattle_user ORDER BY id ASC')
res.json({
success: true,
data: users,
message: '获取牛只用途列表成功'
})
} catch (error) {
console.error('获取牛只用途列表失败:', error)
res.status(500).json({
success: false,
message: '获取牛只用途列表失败',
error: error.message
})
}
}
/**
* 根据ID获取牛只用途
*/
async getUserById(req, res) {
try {
const { id } = req.params
const [users] = await sequelize.query('SELECT * FROM cattle_user WHERE id = ?', [id])
if (users.length === 0) {
return res.status(404).json({
success: false,
message: '牛只用途不存在'
})
}
res.json({
success: true,
data: users[0],
message: '获取牛只用途成功'
})
} catch (error) {
console.error('获取牛只用途失败:', error)
res.status(500).json({
success: false,
message: '获取牛只用途失败',
error: error.message
})
}
}
/**
* 创建牛只用途
*/
async createUser(req, res) {
try {
const { name, description } = req.body
if (!name) {
return res.status(400).json({
success: false,
message: '用途名称不能为空'
})
}
const [result] = await sequelize.query(
'INSERT INTO cattle_user (name, description) VALUES (?, ?)',
[name, description || null]
)
res.status(201).json({
success: true,
data: { id: result.insertId, name, description },
message: '创建牛只用途成功'
})
} catch (error) {
console.error('创建牛只用途失败:', error)
res.status(500).json({
success: false,
message: '创建牛只用途失败',
error: error.message
})
}
}
/**
* 更新牛只用途
*/
async updateUser(req, res) {
try {
const { id } = req.params
const { name, description } = req.body
if (!name) {
return res.status(400).json({
success: false,
message: '用途名称不能为空'
})
}
const [result] = await sequelize.query(
'UPDATE cattle_user SET name = ?, description = ?, updated_at = CURRENT_TIMESTAMP WHERE id = ?',
[name, description || null, id]
)
if (result.affectedRows === 0) {
return res.status(404).json({
success: false,
message: '牛只用途不存在'
})
}
res.json({
success: true,
data: { id: parseInt(id), name, description },
message: '更新牛只用途成功'
})
} catch (error) {
console.error('更新牛只用途失败:', error)
res.status(500).json({
success: false,
message: '更新牛只用途失败',
error: error.message
})
}
}
/**
* 删除牛只用途
*/
async deleteUser(req, res) {
try {
const { id } = req.params
const [result] = await sequelize.query('DELETE FROM cattle_user WHERE id = ?', [id])
if (result.affectedRows === 0) {
return res.status(404).json({
success: false,
message: '牛只用途不存在'
})
}
res.json({
success: true,
message: '删除牛只用途成功'
})
} catch (error) {
console.error('删除牛只用途失败:', error)
res.status(500).json({
success: false,
message: '删除牛只用途失败',
error: error.message
})
}
}
}
module.exports = new CattleUserController()