package cn.iocoder.yudao.module.iot.dal.mysql.alert; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.iot.controller.admin.alert.vo.recrod.IotAlertRecordPageReqVO; import cn.iocoder.yudao.module.iot.dal.dataobject.alert.IotAlertRecordDO; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import org.apache.ibatis.annotations.Mapper; import java.util.Collection; import java.util.List; /** * IoT 告警记录 Mapper * * @author 芋道源码 */ @Mapper public interface IotAlertRecordMapper extends BaseMapperX { default PageResult selectPage(IotAlertRecordPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(IotAlertRecordDO::getConfigId, reqVO.getConfigId()) .eqIfPresent(IotAlertRecordDO::getConfigLevel, reqVO.getConfigLevel()) .eqIfPresent(IotAlertRecordDO::getProductId, reqVO.getProductId()) .eqIfPresent(IotAlertRecordDO::getDeviceId, reqVO.getDeviceId()) .eqIfPresent(IotAlertRecordDO::getProcessStatus, reqVO.getProcessStatus()) .betweenIfPresent(IotAlertRecordDO::getCreateTime, reqVO.getCreateTime()) .orderByDesc(IotAlertRecordDO::getId)); } default List selectListBySceneRuleId(Long sceneRuleId, Long deviceId, Boolean processStatus) { return selectList(new LambdaQueryWrapperX() .eq(IotAlertRecordDO::getSceneRuleId, sceneRuleId) .eqIfPresent(IotAlertRecordDO::getDeviceId, deviceId) .eqIfPresent(IotAlertRecordDO::getProcessStatus, processStatus) .orderByDesc(IotAlertRecordDO::getId)); } default int updateList(Collection ids, IotAlertRecordDO updateObj) { return update(updateObj, new LambdaUpdateWrapper() .in(IotAlertRecordDO::getId, ids)); } }