feat(device): 添加设备类型管理功能
- 在Device实体中添加了deviceType字段,并使用@TableField注解标记为非数据库字段 - 新增DeviceType实体类,用于表示设备类型信息 - 创建DeviceTypeController控制器,提供获取所有设备类型的接口 - 新增DeviceTypeService接口及其实现类DeviceTypeServiceImpl,实现设备类型相关业务逻辑 - 添加DriveTypeMapper接口,继承BaseMapper以支持对DeviceType的数据库操作 - 在ErrorCode常量类中增加了设备相关的错误码:DEVICE_NOT_FOUND和DEVICE_TYPE_NOT_FOUND - 更新DeviceController,引入DeviceTypeResponse并优化代码结构 - 在DeviceMapper中新增selectOneWithTypeById方法,通过MyBatis注解实现关联查询设备及其类型信息
This commit is contained in:
@@ -2,8 +2,29 @@ package cn.nopj.chaos_api.mapper;
|
||||
|
||||
import cn.nopj.chaos_api.domain.entity.Device;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.*;
|
||||
|
||||
@Mapper
|
||||
public interface DeviceMapper extends BaseMapper<Device> {
|
||||
/**
|
||||
* 根据id查询设备信息
|
||||
* @param id 设备id
|
||||
* @return 设备信息
|
||||
*/
|
||||
@Select("SELECT * FROM t_device WHERE id = #{id}")
|
||||
@Results(id = "DeviceResultMap", value ={
|
||||
@Result(id = true, property = "id", column = "id"),
|
||||
@Result(property = "name", column = "name"),
|
||||
@Result(property = "model", column = "model"),
|
||||
@Result(property = "snmpCommunity", column = "snmp_community"),
|
||||
@Result(property = "manufacturer", column = "manufacturer"),
|
||||
@Result(property = "purchaseDate", column = "purchase_date"),
|
||||
@Result(property = "status", column = "status"),
|
||||
@Result(property = "remark", column = "remark"),
|
||||
@Result(property = "createTime", column = "create_time"),
|
||||
@Result(property = "updateTime", column = "update_time"),
|
||||
@Result(property = "deviceType", column = "type_id",
|
||||
one = @One(select = "cn.nopj.chaos_api.mapper.DriveTypeMapper.selectById"))
|
||||
})
|
||||
Device selectOneWithTypeById(Long id);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package cn.nopj.chaos_api.mapper;
|
||||
|
||||
import cn.nopj.chaos_api.domain.entity.DeviceType;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface DriveTypeMapper extends BaseMapper<DeviceType> {
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user