Fixed bug with duplicate alarms
This commit is contained in:
parent
d5c870b4eb
commit
ccef318c6f
|
@ -276,6 +276,7 @@ internal static class Program
|
||||||
private static void SendSalimaxStateAlarm(StatusMessage currentSalimaxState, StatusRecord record)
|
private static void SendSalimaxStateAlarm(StatusMessage currentSalimaxState, StatusRecord record)
|
||||||
{
|
{
|
||||||
var s3Bucket = Config.Load().S3?.Bucket;
|
var s3Bucket = Config.Load().S3?.Bucket;
|
||||||
|
var subsribedNow = false;
|
||||||
|
|
||||||
//Every 15 iterations(30 seconds), the installation sends a heartbit message to the queue
|
//Every 15 iterations(30 seconds), the installation sends a heartbit message to the queue
|
||||||
_heartBitInterval++;
|
_heartBitInterval++;
|
||||||
|
@ -283,12 +284,13 @@ internal static class Program
|
||||||
//When the controller boots, it tries to subscribe to the queue
|
//When the controller boots, it tries to subscribe to the queue
|
||||||
if (_subscribeToQueueForTheFirstTime == false)
|
if (_subscribeToQueueForTheFirstTime == false)
|
||||||
{
|
{
|
||||||
|
subsribedNow = true;
|
||||||
_subscribeToQueueForTheFirstTime = true;
|
_subscribeToQueueForTheFirstTime = true;
|
||||||
_subscribedToQueue = RabbitMqManager.SubscribeToQueue(currentSalimaxState, s3Bucket, VpnServerIp);
|
_subscribedToQueue = RabbitMqManager.SubscribeToQueue(currentSalimaxState, s3Bucket, VpnServerIp);
|
||||||
}
|
}
|
||||||
|
|
||||||
//If already subscribed to the queue and the status has been changed, update the queue
|
//If already subscribed to the queue and the status has been changed, update the queue
|
||||||
if (_subscribedToQueue && currentSalimaxState.Status != _prevSalimaxState)
|
if (!subsribedNow && _subscribedToQueue && currentSalimaxState.Status != _prevSalimaxState)
|
||||||
{
|
{
|
||||||
_prevSalimaxState = currentSalimaxState.Status;
|
_prevSalimaxState = currentSalimaxState.Status;
|
||||||
if (s3Bucket != null)
|
if (s3Bucket != null)
|
||||||
|
|
|
@ -10,6 +10,7 @@ import {
|
||||||
useTheme
|
useTheme
|
||||||
} from '@mui/material';
|
} from '@mui/material';
|
||||||
import { TopologyValues } from '../Log/graph.util';
|
import { TopologyValues } from '../Log/graph.util';
|
||||||
|
import { Link } from 'react-router-dom';
|
||||||
|
|
||||||
interface BatteryViewProps {
|
interface BatteryViewProps {
|
||||||
values: TopologyValues;
|
values: TopologyValues;
|
||||||
|
@ -20,6 +21,9 @@ function BatteryView(props: BatteryViewProps) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
const theme = useTheme();
|
const theme = useTheme();
|
||||||
|
const searchParams = new URLSearchParams(location.search);
|
||||||
|
const installationId = parseInt(searchParams.get('installation'));
|
||||||
|
const currentTab = searchParams.get('tab');
|
||||||
|
|
||||||
const numOfBatteries = props.values.batteryView.values[0].value
|
const numOfBatteries = props.values.batteryView.values[0].value
|
||||||
.toString()
|
.toString()
|
||||||
|
@ -146,24 +150,60 @@ function BatteryView(props: BatteryViewProps) {
|
||||||
|
|
||||||
<TableCell
|
<TableCell
|
||||||
style={{
|
style={{
|
||||||
width: '15%',
|
width: '20%',
|
||||||
textAlign: 'center',
|
textAlign: 'center',
|
||||||
padding: '8px',
|
padding: '8px',
|
||||||
|
fontWeight: battery.Warnings !== '' ? 'bold' : 'inherit',
|
||||||
backgroundColor:
|
backgroundColor:
|
||||||
battery.Warnings === '' ? 'inherit' : 'FF033E'
|
battery.Warnings === '' ? 'inherit' : '#ff9900',
|
||||||
|
color: battery.Warnings != '' ? 'black' : 'inherit'
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{battery.Warnings === '' ? 'None' : battery.Warnings}
|
{battery.Warnings === '' ? (
|
||||||
|
'None'
|
||||||
|
) : battery.Warnings.split(';').length > 1 ? (
|
||||||
|
<Link
|
||||||
|
style={{ color: 'black' }}
|
||||||
|
to={
|
||||||
|
'?installation=' +
|
||||||
|
installationId +
|
||||||
|
'&tab=log' +
|
||||||
|
'&open=warning'
|
||||||
|
}
|
||||||
|
>
|
||||||
|
Multiple Warnings
|
||||||
|
</Link>
|
||||||
|
) : (
|
||||||
|
battery.Warnings
|
||||||
|
)}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
<TableCell
|
<TableCell
|
||||||
sx={{
|
sx={{
|
||||||
width: '15%',
|
width: '20%',
|
||||||
textAlign: 'center',
|
textAlign: 'center',
|
||||||
marginLeft: '10px',
|
fontWeight: battery.Alarms !== '' ? 'bold' : 'inherit',
|
||||||
backgroundColor: battery.Alarms === '' ? 'inherit' : 'FF033E'
|
backgroundColor:
|
||||||
|
battery.Alarms === '' ? 'inherit' : '#FF033E',
|
||||||
|
color: battery.Alarms != '' ? 'black' : 'inherit'
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{battery.Alarms === '' ? 'None' : battery.Alarms}
|
{battery.Alarms === '' ? (
|
||||||
|
'None'
|
||||||
|
) : battery.Alarms.split(';').length > 1 ? (
|
||||||
|
<Link
|
||||||
|
style={{ color: 'black' }}
|
||||||
|
to={
|
||||||
|
'?installation=' +
|
||||||
|
installationId +
|
||||||
|
'&tab=log' +
|
||||||
|
'&open=error'
|
||||||
|
}
|
||||||
|
>
|
||||||
|
Multiple Alarms
|
||||||
|
</Link>
|
||||||
|
) : (
|
||||||
|
battery.Alarms
|
||||||
|
)}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
</TableRow>
|
</TableRow>
|
||||||
))}
|
))}
|
||||||
|
|
Loading…
Reference in New Issue