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:
@@ -1,5 +1,6 @@
|
||||
package cn.nopj.chaos_api.service.impl;
|
||||
|
||||
import cn.nopj.chaos_api.common.constants.ErrorCode;
|
||||
import cn.nopj.chaos_api.common.exceotion.BizException;
|
||||
import cn.nopj.chaos_api.domain.entity.Device;
|
||||
import cn.nopj.chaos_api.dto.request.CreateDriveRequest;
|
||||
@@ -37,4 +38,14 @@ public class DeviceServiceImpl extends ServiceImpl<DeviceMapper, Device> impleme
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public DeviceResponse getDeviceById(Long id) {
|
||||
|
||||
Device device = this.baseMapper.selectOneWithTypeById(id);
|
||||
if (device == null){
|
||||
throw new BizException(ErrorCode.DEVICE_NOT_FOUND);
|
||||
}
|
||||
return new DeviceResponse(device);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package cn.nopj.chaos_api.service.impl;
|
||||
|
||||
import cn.nopj.chaos_api.common.constants.ErrorCode;
|
||||
import cn.nopj.chaos_api.common.exceotion.BizException;
|
||||
import cn.nopj.chaos_api.domain.entity.DeviceType;
|
||||
import cn.nopj.chaos_api.dto.response.DeviceTypeResponse;
|
||||
import cn.nopj.chaos_api.mapper.DriveTypeMapper;
|
||||
import cn.nopj.chaos_api.service.DeviceTypeService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class DeviceTypeServiceImpl extends ServiceImpl<DriveTypeMapper, DeviceType> implements DeviceTypeService {
|
||||
|
||||
@Override
|
||||
public List<DeviceTypeResponse> getAllDeviceTypes() {
|
||||
List<DeviceType> deviceTypes = this.baseMapper.selectList(null);
|
||||
if (deviceTypes == null || deviceTypes.isEmpty()){
|
||||
throw new BizException(ErrorCode.DEVICE_TYPE_NOT_FOUND);
|
||||
}
|
||||
return deviceTypes.stream().map(DeviceTypeResponse::new).toList();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user