package com.ruoyi.device.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.Result; import com.ruoyi.device.dto.DataConfigDto; import com.ruoyi.device.mapper.DataConfigMapper; import com.ruoyi.device.mapper.DeviceMapper; import com.ruoyi.device.pojo.DataConfig; import com.ruoyi.device.pojo.Device; import com.ruoyi.device.service.DataConfigService; import lombok.AllArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import java.util.List; /** *

* 服务实现类 *

* * @author 江苏鵷雏网络科技有限公司 * @since 2024-07-13 12:23:00 */ @Service @AllArgsConstructor public class DataConfigServiceImpl extends ServiceImpl implements DataConfigService { private DeviceMapper deviceMapper; private DataConfigMapper dataConfigMapper; /** * 维护设备文件配置 * @param dataConfigList */ @Override public void saveDeviceFileConfiguration(DataConfigDto dataConfigList) { if (dataConfigList.getDeviceId() == null) { throw new RuntimeException("缺少设备Id"); } Device device = new Device(); BeanUtils.copyProperties(dataConfigList, device); device.setId(dataConfigList.getDeviceId()); deviceMapper.updateById(device); } /** * 数采配置 * @param dataConfigList */ @Override public void saveDataAcquisitionConfiguration(DataConfigDto dataConfigList) { if (dataConfigList.getDeviceId() == null) { throw new RuntimeException("缺少设备id"); } for (DataConfig dataConfig : dataConfigList.getDataConfigList()) { if (dataConfig.getStructureItemParameterId() == null) { throw new RuntimeException("缺少检验项id"); } dataConfig.setDeviceId(dataConfigList.getDeviceId()); } this.saveOrUpdateBatch(dataConfigList.getDataConfigList()); } @Override public Result queryDataAcquisitionConfiguration(DataConfig dataConfig) { return Result.success(dataConfigMapper.selectDataConfigList(dataConfig.getDeviceId())); } /** * 查询检验项数采配置 * @param dataConfig * @return */ @Override public Result queryProductConfiguration(DataConfig dataConfig) { if (dataConfig.getStructureItemParameterId() == null) { throw new RuntimeException("缺少检测项id"); } List list = baseMapper.selectList(Wrappers.lambdaQuery().eq(DataConfig::getStructureItemParameterId, dataConfig.getStructureItemParameterId())); return Result.success(list); } /** * 查询了绑定但是没有配置的检验项 * @param deviceId * @return */ @Override public IPage getNoConfigProduct(Page page, Integer deviceId) { return baseMapper.getNoConfigProduct(page, deviceId); } }