修改管理后台
This commit is contained in:
@@ -31,6 +31,52 @@ exports.getAllDevices = async (req, res) => {
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* 根据设备名称搜索设备
|
||||
* @param {Object} req - 请求对象
|
||||
* @param {Object} res - 响应对象
|
||||
*/
|
||||
exports.searchDevicesByName = async (req, res) => {
|
||||
try {
|
||||
const { name } = req.query;
|
||||
|
||||
if (!name) {
|
||||
return res.status(400).json({
|
||||
success: false,
|
||||
message: '请提供设备名称参数'
|
||||
});
|
||||
}
|
||||
|
||||
console.log(`开始搜索设备名称包含: ${name}`);
|
||||
|
||||
// 使用模糊查询搜索设备名称
|
||||
const devices = await Device.findAll({
|
||||
where: {
|
||||
name: {
|
||||
[require('sequelize').Op.like]: `%${name}%`
|
||||
}
|
||||
},
|
||||
include: [{ model: Farm, as: 'farm', attributes: ['id', 'name', 'location'] }],
|
||||
order: [['created_at', 'DESC']]
|
||||
});
|
||||
|
||||
console.log(`找到 ${devices.length} 个匹配的设备`);
|
||||
|
||||
res.status(200).json({
|
||||
success: true,
|
||||
data: devices,
|
||||
message: `找到 ${devices.length} 个匹配的设备`
|
||||
});
|
||||
} catch (error) {
|
||||
console.error('搜索设备失败:', error);
|
||||
res.status(500).json({
|
||||
success: false,
|
||||
message: '搜索设备失败',
|
||||
error: error.message
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取单个设备
|
||||
* @param {Object} req - 请求对象
|
||||
|
||||
Reference in New Issue
Block a user