潘志宝
10 天以前 272565b7fc3c7dd196f9203c2dae7d90d4f5a744
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmMessageServiceImpl.java
@@ -1,11 +1,99 @@
package com.iailab.module.model.mcs.pre.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.iailab.framework.common.pojo.PageResult;
import com.iailab.framework.common.service.impl.BaseServiceImpl;
import com.iailab.framework.common.util.object.BeanUtils;
import com.iailab.module.model.mcs.pre.dao.MmPredictAlarmMessageDao;
import com.iailab.module.model.mcs.pre.entity.MmPredictAlarmMessageEntity;
import com.iailab.module.model.mcs.pre.service.MmPredictAlarmMessageService;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessagePageReqVO;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessageSaveReqVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.*;
/**
 * @author PanZhibao
 * @Description
 * @createTime 2024年11月19日
 */
public class MmPredictAlarmMessageServiceImpl implements MmPredictAlarmMessageService {
@Service
public class MmPredictAlarmMessageServiceImpl extends BaseServiceImpl<MmPredictAlarmMessageDao, MmPredictAlarmMessageEntity>
        implements MmPredictAlarmMessageService {
    @Override
    public PageResult<MmPredictAlarmMessageEntity> page(MmPredictAlarmMessagePageReqVO reqVO) {
        return baseDao.selectPage(reqVO);
    }
    @Override
    public MmPredictAlarmMessageEntity getInfo(String id) {
        return baseDao.selectById(id);
    }
    @Override
    public MmPredictAlarmMessageEntity getLast(String alarmObj) {
        QueryWrapper<MmPredictAlarmMessageEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("alarm_obj", alarmObj)
                .orderByDesc("alarm_time")
                .last("limit 1");
        return baseDao.selectOne(queryWrapper);
    }
    @Override
    public List<MmPredictAlarmMessageEntity> getList(List<String> alarmObjList, Date predictTime) {
        if (CollectionUtils.isEmpty(alarmObjList)) {
            return new ArrayList<>();
        }
        QueryWrapper<MmPredictAlarmMessageEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.in("alarm_obj", alarmObjList);
        queryWrapper.eq("alarm_time", predictTime);
        return baseDao.selectList(queryWrapper);
    }
    @Override
    public List<MmPredictAlarmMessageEntity> getList(String alarmObj, Date alarmTime) {
        QueryWrapper<MmPredictAlarmMessageEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("alarm_obj", alarmObj)
                .eq("alarm_time", alarmTime);
        return baseDao.selectList(queryWrapper);
    }
    @Override
    public List<MmPredictAlarmMessageEntity> getList(String alarmObj, Date alarmTime, String title) {
        QueryWrapper<MmPredictAlarmMessageEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("alarm_obj", alarmObj)
                .eq("alarm_time", alarmTime)
                .eq(StringUtils.isNotBlank(title),"title", title);
        return baseDao.selectList(queryWrapper);
    }
    @Override
    public void create(MmPredictAlarmMessageSaveReqVO reqVO) {
        MmPredictAlarmMessageEntity entity = BeanUtils.toBean(reqVO, MmPredictAlarmMessageEntity.class);
        entity.setId(UUID.randomUUID().toString());
        entity.setCreateTime(new Date());
        baseDao.insert(entity);
    }
    @Override
    public void update(MmPredictAlarmMessageSaveReqVO reqVO) {
        MmPredictAlarmMessageEntity entity = BeanUtils.toBean(reqVO, MmPredictAlarmMessageEntity.class);
        baseDao.updateById(entity);
    }
    @Override
    public void delete(String id) {
        baseDao.deleteById(id);
    }
    @Override
    public void cleanAlarmMessage(Map<String, Date> tMap) {
        baseDao.cleanAlarmMessage(tMap);
    }
}