package com.sandu.ximon.admin.service; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.sandu.common.execption.BusinessException; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.service.impl.BaseServiceImpl; import com.sandu.ximon.admin.security.SecurityUtils; import com.sandu.ximon.dao.bo.AirEquipmentBo; import com.sandu.ximon.dao.domain.AirEquipment; import com.sandu.ximon.dao.mapper.AirEquipmentMapper; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import java.util.List; @Service @AllArgsConstructor public class AirEquipmentService extends BaseServiceImpl { private final AirEquipmentMapper airEquipmentMapper; /** * 模糊查询 */ public List listAirEquipmentByKeyword(BaseConditionVO baseConditionVO, String keyword) { if (baseConditionVO != null) { PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize()); } List airEquipmentBos; if (SecurityUtils.getClientId() == null) { airEquipmentBos = airEquipmentMapper.listAirEquipmentByIds(keyword, null); } else { airEquipmentBos = airEquipmentMapper.listAirEquipmentByIds(keyword, SecurityUtils.getUserId()); } return airEquipmentBos; } /** * 添加大气设备数据 * * @return */ public void addAirEquipment(AirEquipment airEquipment) { AirEquipment one = getOne(Wrappers.lambdaQuery(AirEquipment.class).eq(AirEquipment::getMac, airEquipment.getMac())); // //存储设备状态到缓存 // RedisUtils.getBean().set(AtmoFunctionCode.AIR_EQUIPMENT_STATE.getCode() + airEquipment.getMac() // , 1, 300L); if (one == null) { save(airEquipment); } } /** * 删除大气设备数据 * * @param Id * @return */ public boolean deleteAirEquipment(Long Id) { AirEquipment airEquipment = getById(Id); if (airEquipment == null) { throw new BusinessException("找不到大气设备数据"); } return removeById(Id); } /** * 根据Mac大气设备数据详情 */ public AirEquipment getAirEquipment(String mac) { return getOne(Wrappers.lambdaQuery(AirEquipment.class).eq(AirEquipment::getMac, mac)); } }