package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.whyc.constant.DevAlarmEnum; import com.whyc.constant.PowerAlarmEnum; import com.whyc.dto.Real.AlmDto; import com.whyc.dto.Response; import com.whyc.mapper.PwrdevAlarmMapper; import com.whyc.pojo.db_alarm.DevalarmData; import com.whyc.pojo.db_pwrdev_alarm.PwrdevAlarm; import com.whyc.util.ActionUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Map; @Service public class PwrdevAlarmService { @Autowired(required = false) private PwrdevAlarmMapper mapper; //获取电源实时告警信息 public Response getPwrAlmReal(AlmDto almDto) { PageHelper.startPage(almDto.getPageNum(),almDto.getPageSize()); List list=mapper.getPwrAlmReal(almDto); list.forEach(data->{ data.setAlmName(PowerAlarmEnum.getValue(data.getAlmId())); }); PageInfo pageInfo=new PageInfo(list); return new Response().setII(1,list!=null,pageInfo,"获取电源实时告警信息"); } //确认电源告警 public Response updatePwrConfrim(Integer num) { UpdateWrapper wrapper = new UpdateWrapper<>(); wrapper.set("alm_is_confirmed",1); wrapper.set("alm_confirmed_time",new SimpleDateFormat(ActionUtil.time_yyyyMMddHHmmss).format(new Date())); // 通过num修改 wrapper.eq("num",num); int flag=mapper.update((PwrdevAlarm) ActionUtil.objeNull,wrapper); return new Response().set(1,flag>0,flag>0?"确认成功":"确认失败"); } //获取一级未处理实时告警数 public Integer getPwrAlmNum(Integer powerId) { QueryWrapper wrapper=new QueryWrapper(); wrapper.eq("power_id",powerId); wrapper.eq("alm_is_confirmed",0); wrapper.eq("alm_level",1); List list=mapper.selectList(wrapper); return list!=null?list.size():0; } //获取电源告警类型(下拉) public Response getPwrAlmIdType() { Map> map= PowerAlarmEnum.getOpInfo(); return new Response().setII(1,true,map,"获取电源告警类型(下拉)"); } }