package com.whyc.service;
|
|
import com.whyc.constant.PowerAlarmConstant;
|
import com.whyc.dto.Response;
|
import com.whyc.mapper.BattAlarmDataMapper;
|
import com.whyc.mapper.Fbs9100StateMapper;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
@Service
|
public class AlarmService {
|
|
@Resource
|
private BattAlarmDataMapper battAlarmDataMapper;
|
@Resource
|
private Fbs9100StateMapper fbs9100StateMapper;
|
|
/**
|
* 单体容量 monCapStd
|
* alm_id
|
* Alarm_CapAlarm =119010
|
* @param userId
|
* @return
|
*/
|
public Response<Map> getMonCapacity(int userId) {
|
Response<Map> response = new Response(); //TODO RZG
|
Map<String, Integer> resultMap = new HashMap<String, Integer>();
|
|
try {
|
Integer lowAlarmsNO = battAlarmDataMapper.getLowAlarmsNO(userId);
|
// Integer totalAlarmsScale = battAlarmDataMapper.getTotalAlarmsScale(userId);
|
Integer totalAlarms = battAlarmDataMapper.getTotalAlarms(userId);
|
Integer totalAlarmRooms = battAlarmDataMapper.getTotalAlarmRooms(userId);
|
// Integer lowAlarmRoomsScale = battAlarmDataMapper.getLowAlarmRoomsScale(userId);
|
|
resultMap.put("lowAlarmsNO", lowAlarmsNO); //低告警数量
|
resultMap.put("totalAlarmsScale", 1); //告警总数比例
|
resultMap.put("totalAlarms", totalAlarms); //告警总数
|
resultMap.put("totalAlarmRooms", totalAlarmRooms); //告警机房总数
|
resultMap.put("lowAlarmRoomsScale", 1); //低告警机房数比例
|
response.setCode(1);
|
response.setData(resultMap);
|
} catch (Exception e) {
|
e.printStackTrace();
|
response.setCode(0);
|
return response;
|
}
|
return response;
|
}
|
;
|
|
/**
|
* 在线电压和组端电压
|
* alm_id 电池告警参数
|
* Alarm_vol_Online =119001
|
* Alarm_vol_Group =119002
|
*
|
* @param userId
|
* @return
|
*/
|
public Response getOnlineAndGroupVol(int userId) {
|
// select alm_signal_id,count(alm_signal_id) as num from db_alarm.tb_battalarm_data alarm where alm_id in (119001,119002,119003,119004)
|
Response<Map> response = new Response(); //TODO RZG
|
HashMap<String, Object> resultMap = new HashMap<>();
|
Map<String, Integer> resMap = new HashMap<>();//内阻测试数量
|
Map<String, Integer> errMap = new HashMap<>();//故障数量
|
|
try {
|
Integer highAlarmsNO = battAlarmDataMapper.getAlarmsNO(PowerAlarmConstant.ALM_SIGNAL_ID_OnlineVolHigh, userId);
|
Integer lowAlarmsNO = battAlarmDataMapper.getAlarmsNO(PowerAlarmConstant.ALM_SIGNAL_ID_OnlineVolLow, userId);
|
|
resMap.put("highAlarmsNO", highAlarmsNO); //高告警数量 alm_signal_id:online 1 high; 2 low
|
resMap.put("lowAlarmsNO", lowAlarmsNO); //低告警数量
|
resMap.put("totalAlarmsScale", 1); //告警总数比例
|
|
Integer totalAlarms = battAlarmDataMapper.getTotalAlarms(userId);
|
resMap.put("totalAlarms", 1); //告警总数
|
|
Integer totalAlarmRooms = battAlarmDataMapper.getTotalAlarmRooms(userId);
|
resMap.put("totalAlarmRooms", 1); //告警机房总数
|
|
resMap.put("lowAlarmRoomsScale", 1); //低告警机房数比例
|
resultMap.put("resMap", resMap);
|
|
|
errMap.put("highAlarmsNO", 1); //高告警数量
|
errMap.put("lowAlarmsNO", 1); //低告警数量
|
errMap.put("totalAlarmsScale", 1); //告警总数比例
|
errMap.put("totalAlarms", 1); //告警总数
|
errMap.put("totalAlarmRooms", 1); //告警机房总数
|
errMap.put("lowAlarmRoomsScale", 1); //低告警机房数比例
|
resultMap.put("errMap", errMap);
|
|
response.setCode(1);
|
response.setData(resultMap);
|
} catch (Exception e) {
|
e.printStackTrace();
|
response.setCode(0);
|
return response;
|
}
|
|
return response;
|
}
|
|
|
/**
|
* BTS 设备状态
|
*
|
* @param userId
|
* @return
|
*/
|
public Response getDeviceStatus(int userId) {
|
|
Response<Map> response = new Response(); //TODO RZG
|
Map<String, Integer> resultMap = new HashMap<>();
|
try {
|
|
|
int devId = 910000001;
|
Integer herongNO = fbs9100StateMapper.getHeRongNO(devId, userId); //dev_workstate 0 在线浮充; 2 核容测试; 4 内阻测试;
|
// com.fgkj.dao.impl.ram.Fbs9100_stateImpl#seach6185Nuclear_cap 核容测试
|
// Integer onlineFloatNO = fbs9100StateMapper.getOnlineFloatNO(devId,userId);
|
// Integer chargeNO = fbs9100StateMapper.getChargeNO(devId,userId);
|
// Integer resTestNO = fbs9100StateMapper.getResTestNO(devId,userId);
|
// Integer errNO = fbs9100StateMapper.getErrNO(devId,userId);
|
resultMap.put("herongNO", herongNO); //核容数量
|
resultMap.put("onlineFloatNO", 1); //在线浮充数量
|
resultMap.put("chargeNO", 1); //充电数量
|
resultMap.put("resTestNO", 1); //内阻测试数量
|
resultMap.put("errNO", 1); //故障数量
|
response.setCode(1);
|
response.setData(resultMap);
|
} catch (Exception e) {
|
e.printStackTrace();
|
response.setCode(0);
|
return response;
|
}
|
return response;
|
}
|
|
|
/**
|
* 放电电流 Alarm_curr_Discharge =119004
|
*
|
* @param userId
|
* @return
|
*/
|
public Response getDischargeState(int userId) {
|
|
Response<Map> response = new Response(); //TODO RZG
|
Map<String, Integer> resultMap = new HashMap<>();
|
|
try {
|
resultMap.put("lowAlarmsNO", 1); //低告警数量 alm_signal_id:DisChargeCurr 7 high; 8 low
|
resultMap.put("totalAlarmRooms", 1); //告警机房总数
|
resultMap.put("alarmRoomsScale", 1); //告警机房数比例
|
resultMap.put("totalAlarms", 1); //告警总数
|
resultMap.put("totalAlarmsScale", 1); //告警总数比例
|
response.setCode(1);
|
response.setData(resultMap);
|
} catch (Exception e) {
|
e.printStackTrace();
|
response.setCode(0);
|
return response;
|
}
|
return response;
|
}
|
|
// 充电电流
|
|
/**
|
* 放电和 充电电流
|
* alm_id 电池告警参数
|
* @param userId
|
* @return
|
*/
|
public Response getCharge(int userId) {
|
|
Response<Map> response = new Response(); //TODO RZG
|
HashMap<String, Object> resultMap = new HashMap<>();
|
Map<String, Integer> disCharge = new HashMap<>();//放电电流 Alarm_curr_Discharge =119004
|
Map<String, Integer> reCharge = new HashMap<>();//充电电流 Alarm_curr_Charge =119003
|
|
|
disCharge.put("highAlarmsNO", 1); //高告警数量 alm_signal_id:ChargeCurrHigh 5 high; 6 low
|
disCharge.put("totalAlarms", 1); //告警总数
|
disCharge.put("totalAlarmsScale", 1); //告警总数比例
|
disCharge.put("totalAlarmRooms", 1); //告警机房总数
|
disCharge.put("alarmRoomsScale", 1); //告警机房数比例
|
resultMap.put("disCharge", disCharge);
|
|
reCharge.put("highAlarmsNO", 1); //高告警数量
|
reCharge.put("totalAlarms", 1); //告警总数
|
reCharge.put("totalAlarmsScale", 1); //告警总数比例
|
reCharge.put("totalAlarmRooms", 1); //告警机房总数
|
reCharge.put("alarmRoomsScale", 1); //告警机房数比例
|
resultMap.put("reCharge", reCharge);
|
|
response.setCode(1);
|
response.setData(resultMap);
|
return response;
|
}
|
|
|
/**
|
* 单体电压、内阻和温度
|
* alm_id 电池告警参数
|
* @param userId
|
* @return
|
*/
|
public Response getMonVRT(int userId) {
|
|
Response<Map> response = new Response(); //TODO RZG
|
HashMap<String, Object> resultMap = new HashMap<>();
|
Map<String, Integer> monVolMap = new HashMap<>();//单体电压 Alarm_vol_Monomer =119005;
|
Map<String, Integer> monResMap = new HashMap<>();//单体内阻 Alarm_res_Monomer =119007
|
Map<String, Integer> monTemMap = new HashMap<>();//单体温度 Alarm_tmp_Monomer =119006
|
|
|
monVolMap.put("highAlarmsNO", 1); //高告警数量 alm_signal_id 9
|
monVolMap.put("lowAlarmsNO", 1); //低告警数量 alm_signal_id 10
|
monVolMap.put("totalAlarms", 1); //告警总数
|
monVolMap.put("totalAlarmsScale", 1); //告警总数比例
|
monVolMap.put("totalAlarmRooms", 1); //告警机房总数
|
monVolMap.put("alarmRoomsScale", 1); //告警机房数比例
|
resultMap.put("monVolMap", monVolMap);
|
|
monResMap.put("highAlarmsNO", 1); //高告警数量 alm_signal_id 13
|
monResMap.put("lowAlarmsNO", 1); //低告警数量 alm_signal_id 14
|
monResMap.put("totalAlarms", 1); //告警总数
|
monResMap.put("totalAlarmsScale", 1); //告警总数比例
|
monResMap.put("totalAlarmRooms", 1); //告警机房总数
|
monResMap.put("alarmRoomsScale", 1); //告警机房数比例
|
resultMap.put("monResMap", monResMap);
|
|
monTemMap.put("highAlarmsNO", 1); //高告警数量 alm_signal_id 11
|
monTemMap.put("lowAlarmsNO", 1); //低告警数量 alm_signal_id 12
|
monTemMap.put("totalAlarms", 1); //告警总数
|
monTemMap.put("totalAlarmsScale", 1); //告警总数比例
|
monTemMap.put("totalAlarmRooms", 1); //告警机房总数
|
monTemMap.put("alarmRoomsScale", 1); //告警机房数比例
|
resultMap.put("monTemMap", monTemMap);
|
|
response.setCode(1);
|
response.setData(resultMap);
|
return response;
|
}
|
|
}
|