src/main/java/com/whyc/controller/AlarmDataController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/controller/VoiceController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/mapper/DevalarmDataMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/mapper/PwrdevAlarmMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/AlarmDataService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/DevalarmDataService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/PwrdevAlarmService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/BattalarmDataMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/DevalarmDataMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/PwrdevAlarmMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/controller/AlarmDataController.java
File was deleted src/main/java/com/whyc/controller/VoiceController.java
@@ -2,6 +2,7 @@ import com.whyc.dto.Response; import com.whyc.pojo.UserInf; import com.whyc.service.AlarmDataService; import com.whyc.service.MSTTSSpeechService; import com.whyc.util.ActionUtil; import com.whyc.util.CommonUtil; @@ -18,8 +19,9 @@ @RestController @RequestMapping("voice") public class VoiceController { @Autowired private MSTTSSpeechService service; private AlarmDataService alarmDataService; /** * 用户的语音文件路径层级 @@ -35,6 +37,8 @@ String unreadSuffixPath = "wav" + File.separator + "alarm" + File.separator + user.getUId() + File.separator + "unread"; String unreadDirPath = CommonUtil.getRootFile() + unreadSuffixPath; File unreadDir = new File(unreadDirPath); //保存用户的告警语音文件 alarmDataService.saveToWav(unreadDirPath); if(!unreadDir.exists()){ return new Response().set(1,false,"无未读告警语音"); }else{ @@ -49,10 +53,6 @@ } return new Response().setII(1,true,fileNameList,null); } /*String text = "啊哈哈哈哈"; service.setRate(10); service.saveToWav(text,"F:\\1.wav"); return new Response().set(1);*/ } @ApiOperation("删除用户wav语音文件") src/main/java/com/whyc/mapper/DevalarmDataMapper.java
@@ -21,4 +21,7 @@ List getDevAlarm2(); List<DevalarmData> getSendDevAlarm(@Param("uId") Integer uId); List<DevalarmData> getList(@Param("uId") Long userId); } src/main/java/com/whyc/mapper/PwrdevAlarmMapper.java
@@ -24,5 +24,5 @@ //电源实时告警-首页foot List<PwrdevAlarm> getRealAlarmFoot(Date yesterday, int uId); List<PwrdevAlarm> getList(Long userId); } src/main/java/com/whyc/service/AlarmDataService.java
@@ -1,6 +1,7 @@ package com.whyc.service; import com.whyc.dto.AlarmDaoFactory; import com.whyc.dto.Response; import com.whyc.mapper.BattalarmDataMapper; import com.whyc.mapper.DevalarmDataMapper; import com.whyc.pojo.*; @@ -9,7 +10,9 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import javax.servlet.ServletContext; import javax.servlet.http.HttpSession; import java.io.File; import java.util.HashMap; import java.util.LinkedList; import java.util.List; @@ -35,6 +38,9 @@ @Autowired private PwrdevAlarmService pwrdevAlarmService; @Autowired private MSTTSSpeechService service; public Map<String, Object> getAlarmLevel1ListMap() { @@ -79,79 +85,88 @@ } public List<String> getAlarmMsgList() { public void saveToWav(String unreadDirPath) { Long uId = ActionUtil.getUser().getUId(); HttpSession session = ActionUtil.getSession(); ServletContext application = ActionUtil.getApplication(); //用户 Map<String,Object> alarmMap = (Map<String, Object>) session.getAttribute("alarmMap_" + uId); Map<String,Object> alarmMap = (Map<String, Object>) application.getAttribute("alarmMap_" + uId); Map<String, Object> alarmMapNow = getAlarmLevel1ListMap(); List<BattalarmData> battAlarmListNow = (List<BattalarmData>) alarmMapNow.get("battAlarmList"); List<DevalarmData> devAlarmListNow = (List<DevalarmData>) alarmMapNow.get("devAlarmList"); List<PwrdevAlarm> powerAlarmListNow = (List<PwrdevAlarm>) alarmMapNow.get("powerAlarmList"); if(alarmMap==null){ //不存在,插入内存 session.setAttribute("alarmMap_" + uId,alarmMapNow); //不存在,插入应用内存 application.setAttribute("alarmMap_" + uId,alarmMapNow); //返回内容格式处理,并存为语音 return formatResultAndSaveToWav(battAlarmListNow,devAlarmListNow,powerAlarmListNow); } //获取新增的 List<BattalarmData> battAlarmList = (List<BattalarmData>) alarmMap.get("battAlarmList"); List<DevalarmData> devAlarmList = (List<DevalarmData>) alarmMap.get("devAlarmList"); List<PwrdevAlarm> powerAlarmList = (List<PwrdevAlarm>) alarmMap.get("powerAlarmList"); formatResultAndSaveToWav(unreadDirPath,battAlarmListNow,devAlarmListNow,powerAlarmListNow); }else { //获取新增的 List<BattalarmData> battAlarmList = (List<BattalarmData>) alarmMap.get("battAlarmList"); List<DevalarmData> devAlarmList = (List<DevalarmData>) alarmMap.get("devAlarmList"); List<PwrdevAlarm> powerAlarmList = (List<PwrdevAlarm>) alarmMap.get("powerAlarmList"); List<BattalarmData> battAlarmListAdded = new LinkedList<>(); List<BattalarmData> battAlarmListAdded = new LinkedList<>(); List<DevalarmData> devAlarmListAdded = new LinkedList<>(); List<DevalarmData> devAlarmListAdded = new LinkedList<>(); List<PwrdevAlarm> powerAlarmListAdded = new LinkedList<>(); //电池组告警增加 for (BattalarmData now : battAlarmListNow) { long num = now.getNum(); boolean exist = false; for (BattalarmData old : battAlarmList) { if (old.getNum() == num) { exist = true; break; List<PwrdevAlarm> powerAlarmListAdded = new LinkedList<>(); //电池组告警增加 for (BattalarmData now : battAlarmListNow) { long num = now.getNum(); boolean exist = false; for (BattalarmData old : battAlarmList) { if (old.getNum() == num) { exist = true; break; } } } if (!exist) { battAlarmListAdded.add(now); } } //设备告警增加 for (DevalarmData now : devAlarmListNow) { long num = now.getNum(); boolean exist = false; for (DevalarmData old : devAlarmList) { if (old.getNum() == num) { exist = true; break; if (!exist) { battAlarmListAdded.add(now); } } if (!exist) { devAlarmListAdded.add(now); } } //电源告警增加 for (PwrdevAlarm now : powerAlarmListNow) { long num = now.getNum(); boolean exist = false; for (PwrdevAlarm old : powerAlarmList) { if (old.getNum() == num) { exist = true; break; } //设备告警增加 for (DevalarmData now : devAlarmListNow) { long num = now.getNum(); boolean exist = false; for (DevalarmData old : devAlarmList) { if (old.getNum() == num) { exist = true; break; } } if (!exist) { devAlarmListAdded.add(now); } } if (!exist) { powerAlarmListAdded.add(now); //电源告警增加 for (PwrdevAlarm now : powerAlarmListNow) { long num = now.getNum(); boolean exist = false; for (PwrdevAlarm old : powerAlarmList) { if (old.getNum() == num) { exist = true; break; } } if (!exist) { powerAlarmListAdded.add(now); } } if (battAlarmListAdded.size() != 0 || devAlarmListAdded.size() != 0 || powerAlarmListAdded.size() != 0 ) { //有任何变动,更新旧的告警列表 application.setAttribute("alarmMap_" + uId, alarmMapNow); } formatResultAndSaveToWav(unreadDirPath,battAlarmListAdded, devAlarmListAdded, powerAlarmListAdded); } return formatResultAndSaveToWav(battAlarmListAdded, devAlarmListAdded, powerAlarmListAdded); } /** @@ -165,10 +180,34 @@ * @param powerAlarmList * @return */ private List<String> formatResultAndSaveToWav(List<BattalarmData> battAlarmList, List<DevalarmData> devAlarmList, List<PwrdevAlarm> powerAlarmList) { private void formatResultAndSaveToWav(String unreadDirPath, List<BattalarmData> battAlarmList, List<DevalarmData> devAlarmList, List<PwrdevAlarm> powerAlarmList) { return null; StringBuilder alarmMsgBuilder = new StringBuilder(); for (BattalarmData alarm : battAlarmList) { String alarmName = AlarmDaoFactory.getAllAlarmName(alarm.getAlmSignalId()); alarmMsgBuilder.append(alarm.getStationName()).append(",电池组编号为").append(alarm.getBattgroupname()).append(",单体为").append(alarm.getMonNum()).append(",在").append(alarm.getAlmStartTime()).append("发生了").append(alarmName).append("告警;"); } for (DevalarmData alarm : devAlarmList) { String alarmName = AlarmDaoFactory.getAllAlarmName(alarm.getAlmType()); alarmMsgBuilder.append(alarm.getStationName()).append(",设备编号为").append(alarm.getDevId()).append(",在").append(alarm.getAlmStartTime()).append("发生了").append(alarmName).append("告警;"); } for (PwrdevAlarm alarm : powerAlarmList) { String alarmName = AlarmDaoFactory.getAllAlarmName(alarm.getAlmType()); alarmMsgBuilder.append(alarm.getStationName()).append(",电源编号为").append(alarm.getPowerDeviceId()).append(",在").append(alarm.getAlmStartTime()).append("发生了").append(alarmName).append("告警;"); } File file = new File(unreadDirPath); if(!file.exists()){ file.mkdirs(); } String alarmMsg = alarmMsgBuilder.toString(); if(!alarmMsg.isEmpty()) { service.setRate(-1); service.saveToWav(alarmMsg, unreadDirPath + File.separator + System.currentTimeMillis() + ".wav"); } } } src/main/java/com/whyc/service/DevalarmDataService.java
@@ -91,6 +91,6 @@ } public List<DevalarmData> getList(Long userId) { return mapper.getSendDevAlarm(userId.intValue()); return mapper.getList(userId); } } src/main/java/com/whyc/service/PwrdevAlarmService.java
@@ -194,6 +194,6 @@ } public List<PwrdevAlarm> getList(Long userId) { return mapper.getSendPwrdevAlarm(userId.intValue()); return mapper.getList(userId); } } src/main/resources/mapper/BattalarmDataMapper.xml
@@ -307,6 +307,7 @@ from db_alarm.tb_battalarm_data,db_battinf.tb_battinf where alm_cleared_type = 0 and alm_is_confirmed = 0 and DATEDIFF(alm_start_time,NOW())=0 and db_alarm.tb_battalarm_data.battgroupid=db_battinf.tb_battinf.battgroupid and db_alarm.tb_battalarm_data.BattGroupId in (select distinct db_battinf.tb_battinf.battgroupid from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf src/main/resources/mapper/DevalarmDataMapper.xml
@@ -140,4 +140,19 @@ ORDER BY alm_start_time DESC </select> <select id="getList" resultType="com.whyc.pojo.DevalarmData"> select distinct db_alarm.tb_devalarm_data.num,db_alarm.tb_devalarm_data.dev_id,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationname3,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.fbsdevicename,dev_ip,alm_level,alm_type,alm_start_time from db_alarm.tb_devalarm_data,db_battinf.tb_battinf where alm_cleared_type=0 and alm_is_confirmed = 0 and DATEDIFF(alm_start_time,NOW())=0 and db_alarm.tb_devalarm_data.dev_id=db_battinf.tb_battinf.fbsdeviceid and db_alarm.tb_devalarm_data.dev_id in (select distinct db_battinf.tb_battinf.FbsDeviceId from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=#{uId}) order by alm_start_time desc </select> </mapper> src/main/resources/mapper/PwrdevAlarmMapper.xml
@@ -194,5 +194,25 @@ ORDER BY alarm.alm_start_time DESC </select> <select id="getList" resultType="com.whyc.pojo.PwrdevAlarm"> select alarm.*,inf.StationName,inf.StationName3 from db_pwrdev_alarm.tb_pwrdev_alarm alarm,db_pwrdev_inf.tb_pwrdev_inf inf <where> alarm.PowerDeviceId = inf.PowerDeviceId and alarm.alm_cleared_type=0 and alarm.alm_is_confirmed = 0 and DATEDIFF(alm_start_time,NOW())=0 and inf.StationId in ( select distinct inf.StationId from (select StationId from db_battinf.tb_battinf union select StationId from db_pwrdev_inf.tb_pwrdev_inf ) inf, db_user.tb_user_battgroup_baojigroup_battgroup, db_user.tb_user_battgroup_baojigroup_usr, db_user.tb_user_inf where db_user.tb_user_battgroup_baojigroup_battgroup.StationId=inf.StationId and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=#{uId} ) </where> ORDER BY alarm.alm_start_time DESC </select> </mapper>