refactor(basic): 重构设备配置获取逻辑
All checks were successful
ZhenTu-BE/pipeline/head This commit looks good

- 修改 getDeviceConfig 方法,使用 DeviceConfigManager替代 List<DeviceConfigV2DTO>
- 更新 convertToDeviceConfigEntity 方法,使用 DeviceConfigManager 作为参数
- 在 convertToDeviceConfigEntity 方法中实现从 configManager 到 deviceConfigEntity 的字段映射
This commit is contained in:
2025-09-04 16:33:29 +08:00
parent 1cce9168c1
commit 5b757eda8d

View File

@@ -70,9 +70,9 @@ public class DeviceRepository {
}
public DeviceConfigEntity getDeviceConfig(Long deviceId) {
List<DeviceConfigV2DTO> configList = deviceConfigIntegrationService.getDeviceConfigs(deviceId);
if (configList != null && !configList.isEmpty()) {
return convertToDeviceConfigEntity(configList, deviceId);
DeviceConfigManager configManager = getDeviceConfigManager(deviceId);
if (configManager != null) {
return convertToDeviceConfigEntity(configManager, deviceId);
}
return null;
}
@@ -96,13 +96,26 @@ public class DeviceRepository {
/**
* 将DeviceConfigV2DTO列表转换为DeviceConfigEntity(为了兼容性)
*/
private DeviceConfigEntity convertToDeviceConfigEntity(List<DeviceConfigV2DTO> configList, Long deviceId) {
private DeviceConfigEntity convertToDeviceConfigEntity(DeviceConfigManager configManager, Long deviceId) {
DeviceConfigEntity entity = new DeviceConfigEntity();
entity.setId(SnowFlakeUtil.getLongId());
entity.setDeviceId(deviceId);
// 由于DeviceConfigEntity没有通用的configJson字段,这里只设置基本信息
// 具体的配置项需要通过DeviceConfigManager来访问
// 通过configManager获取对应的字段写入到deviceConfigEntity中
entity.setViidType(configManager.getInteger("viid_type"));
entity.setStoreType(configManager.getInteger("store_type"));
entity.setStoreConfigJson(configManager.getString("store_config_json"));
entity.setStoreExpireDay(configManager.getInteger("store_expire_day"));
entity.setOnlineCheck(configManager.getInteger("online_check"));
entity.setOnlineMaxInterval(configManager.getInteger("online_max_interval"));
entity.setCutPre(configManager.getBigDecimal("cut_pre"));
entity.setCutPost(configManager.getBigDecimal("cut_post"));
entity.setEnablePreBook(configManager.getInteger("enable_pre_book"));
entity.setImageFree(configManager.getInteger("image_free"));
entity.setVideoFree(configManager.getInteger("video_free"));
entity.setPairDevice(configManager.getLong("pair_device"));
entity.setVideoCrop(configManager.getString("video_crop"));
entity.setCropConfig(configManager.getString("crop_config"));
return entity;
}