package com.whyc.service; import com.github.pagehelper.PageInfo; import com.whyc.constant.BattAlarmIdEnum; import com.whyc.constant.BattSingalIdEnum; import com.whyc.constant.DevAlarmEnum; import com.whyc.constant.PowerAlarmEnum; import com.whyc.dto.AlmHis.BattAlmPar; import com.whyc.dto.AlmHis.DevAlmPar; import com.whyc.dto.AlmHis.PwrAlmPar; import com.whyc.dto.Real.AlmDto; import com.whyc.dto.Response; import com.whyc.pojo.db_alarm.BattalarmDataHistory; import com.whyc.pojo.db_alarm.DevalarmDataHistory; import com.whyc.pojo.db_pwrdev_alarm.PwrdevAlarmHistory; import com.whyc.pojo.db_user.User; import com.whyc.util.ActionUtil; import com.whyc.util.MessageUtils; import com.whyc.util.SubTablePageInfoUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.text.ParseException; import java.util.Date; import java.util.List; @Service public class AlarmHisService { @Resource private SubTablePageInfoUtils subTablePageInfoUtils; //电池告警历史记录查询 public Response getBattAlmHis(BattAlmPar almDto) throws ParseException, InterruptedException { //分页信息 Integer pageNum = almDto.getPageNum(); Integer pageSize = almDto.getPageSize(); User uinf = ActionUtil.getUser(); int uid = uinf.getId(); almDto.setUid(uid); Date almStartTime = almDto.getAlmStartTime(); Date almEndTime = almDto.getAlmEndTime(); PageInfo pageInfo = subTablePageInfoUtils.getPageInfoByMonthTable(pageNum, pageSize, almStartTime, almEndTime, "db_alarm", "tb_battalarm_data_history", almDto); List list = pageInfo.getList(); for (Object data : list) { BattalarmDataHistory dataH = (BattalarmDataHistory) data; dataH.setAlmName(BattSingalIdEnum.getValue(dataH.getAlmSignalId())); } return new Response().setII(1, list!=null, pageInfo, "电池告警历史记录查询"); } //设备告警历史记录查询 public Response getDevAlmHis(DevAlmPar almDto) throws ParseException, InterruptedException { Integer pageNum = almDto.getPageNum(); Integer pageSize = almDto.getPageSize(); Date almStartTime = almDto.getAlmStartTime(); Date almEndTime = almDto.getAlmEndTime(); User uinf = ActionUtil.getUser(); int uid = uinf.getId(); almDto.setUid(uid); PageInfo pageInfo = subTablePageInfoUtils.getPageInfoByMonthTable(pageNum, pageSize, almStartTime, almEndTime, "db_alarm", "tb_devalarm_data_history", almDto); List list = pageInfo.getList(); for (Object data : list) { DevalarmDataHistory dataH = (DevalarmDataHistory) data; dataH.setAlmName(DevAlarmEnum.getValue(dataH.getAlmId())); } return new Response().setII(1, pageInfo.getList()!=null, pageInfo, "返回结果"); } //电源告警历史记录查询 public Response getPwrAlmHis(PwrAlmPar almDto) throws ParseException { Integer pageNum = almDto.getPageNum(); Integer pageSize = almDto.getPageSize(); Date almStartTime = almDto.getAlmStartTime(); Date almEndTime = almDto.getAlmEndTime(); //recordId = 1 普通电源 //param.setRecordId(1L); User uinf = ActionUtil.getUser(); int uid = uinf.getId(); almDto.setUid(uid); PageInfo pageInfo = subTablePageInfoUtils.getPageInfo(pageNum, pageSize, almStartTime, almEndTime, "db_pwrdev_alarm", "tb_pwrdev_alarm_history", almDto); List list = pageInfo.getList(); for (Object data : list) { PwrdevAlarmHistory dataH = (PwrdevAlarmHistory) data; dataH.setAlmName(PowerAlarmEnum.getValue(dataH.getAlmId())); } return new Response<>().setII(1, pageInfo, null, "电源告警历史记录查询"); } }