update Di 28. Apr 13:31:01 CEST 2020
This commit is contained in:
parent
059c04a7c9
commit
404261ca71
@ -32,8 +32,7 @@ module.exports = function (io, sql, app_cfg, waip) {
|
|||||||
// Socket-Room beitreiten
|
// Socket-Room beitreiten
|
||||||
socket.join(wachen_id, function () {
|
socket.join(wachen_id, function () {
|
||||||
// prüfen ob für diese Wache Einsätze vorhanden sind
|
// prüfen ob für diese Wache Einsätze vorhanden sind
|
||||||
var user_id = socket.request.user.id;
|
sql.db_einsatz_ermitteln(wachen_id, socket, function (result_einsatz) {
|
||||||
sql.db_einsatz_ermitteln(wachen_id, user_id, function (result_einsatz) {
|
|
||||||
if (result_einsatz) {
|
if (result_einsatz) {
|
||||||
// nur den ersten Einsatz senden, falls mehrere vorhanden sind
|
// nur den ersten Einsatz senden, falls mehrere vorhanden sind
|
||||||
var waip_id = result_einsatz[0].waip_einsaetze_ID;
|
var waip_id = result_einsatz[0].waip_einsaetze_ID;
|
||||||
@ -59,7 +58,7 @@ module.exports = function (io, sql, app_cfg, waip) {
|
|||||||
});
|
});
|
||||||
// Disconnect
|
// Disconnect
|
||||||
socket.on('disconnect', function () {
|
socket.on('disconnect', function () {
|
||||||
sql.db_log('DEBUG', 'Alarmmonitor Nr. ' + wachen_id + ' von ' + client_ip + ' (' + socket.id + ') geschlossen.');
|
sql.db_log('DEBUG', 'Alarmmonitor von ' + client_ip + ' (' + socket.id + ') geschlossen.');
|
||||||
sql.db_client_delete(socket);
|
sql.db_client_delete(socket);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -78,29 +77,15 @@ nsp_dbrd.on('connection', function (socket) {
|
|||||||
sql.db_log('DEBUG', 'Dashboard ' + uuid + ' von ' + client_ip + ' (' + socket.id + ') aufgerufen.');
|
sql.db_log('DEBUG', 'Dashboard ' + uuid + ' von ' + client_ip + ' (' + socket.id + ') aufgerufen.');
|
||||||
// prüfen ob Dashboard/Einsatz vorhanden
|
// prüfen ob Dashboard/Einsatz vorhanden
|
||||||
sql.db_einsatz_uuid_vorhanden(uuid, function(dbrd_uuid) {
|
sql.db_einsatz_uuid_vorhanden(uuid, function(dbrd_uuid) {
|
||||||
// wenn die Wachennummer vorhanden/plausibel dann weiter
|
// wenn die Wachennummer vorhanden dann weiter
|
||||||
if (result) {
|
if (dbrd_uuid) {
|
||||||
// Socket-Room beitreiten
|
// Socket-Room beitreiten
|
||||||
socket.join(wachen_id, function () {
|
socket.join(dbrd_uuid, function () {
|
||||||
// prüfen ob für diese Wache Einsätze vorhanden sind
|
sql.db_log('DBRD', 'Einsatz ' + dbrd_uuid + ' für Dashboard ' + dbrd_uuid + ' vorhanden, wird jetzt an Client ' + socket.id + ' gesendet.');
|
||||||
var user_id = socket.request.user.id;
|
|
||||||
sql.db_einsatz_ermitteln(wachen_id, user_id, function (result_einsatz) {
|
|
||||||
if (result_einsatz) {
|
|
||||||
// nur den ersten Einsatz senden, falls mehrere vorhanden sind
|
|
||||||
var waip_id = result_einsatz[0].waip_einsaetze_ID;
|
|
||||||
sql.db_log('WAIP', 'Einsatz ' + waip_id + ' für Wache ' + wachen_id + ' vorhanden, wird jetzt an Client ' + socket.id + ' gesendet.');
|
|
||||||
//letzten Einsatz verteilen
|
//letzten Einsatz verteilen
|
||||||
waip.einsatz_verteilen(waip_id, socket, wachen_id);
|
waip.dbrd_verteilen(dbrd_uuid, socket);
|
||||||
//vorhandene Rückmeldungen verteilen
|
|
||||||
waip.rueckmeldung_verteilen_for_client(waip_id, socket, wachen_id);
|
|
||||||
} else {
|
|
||||||
sql.db_log('WAIP', 'Kein Einsatz für Wache ' + wachen_id + ' vorhanden, gehe in Standby');
|
|
||||||
// falls kein Einsatz vorhanden ist, dann Standby senden
|
|
||||||
socket.emit('io.standby', null);
|
|
||||||
};
|
|
||||||
});
|
|
||||||
// in Statusüberischt speichern
|
// in Statusüberischt speichern
|
||||||
sql.db_update_client_status(socket, null);
|
sql.db_update_client_status(socket, dbrd_uuid);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
sql.db_log('ERROR', 'Fehler: Dashboard ' + dbrd_uuid + 'nicht (mehr) vorhanden!');
|
sql.db_log('ERROR', 'Fehler: Dashboard ' + dbrd_uuid + 'nicht (mehr) vorhanden!');
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
module.exports = function (db, uuidv4, turf, app_cfg) {
|
module.exports = function (db, uuidv4, turf, app_cfg) {
|
||||||
|
|
||||||
// ermittelt den letzten vorhanden Einsatz zu einer Wache
|
// ermittelt den letzten vorhanden Einsatz zu einer Wache
|
||||||
function db_einsatz_ermitteln(wachen_id, user_id, callback) {
|
function db_einsatz_ermitteln(wachen_id, socket, callback) {
|
||||||
var select_reset_counter;
|
var select_reset_counter;
|
||||||
|
var user_id = socket.request.user.id;
|
||||||
var dts = app_cfg.global.default_time_for_standby;
|
var dts = app_cfg.global.default_time_for_standby;
|
||||||
// wenn Wachen-ID 0 ist, dann % setzen
|
// wenn Wachen-ID 0 ist, dann % setzen
|
||||||
if (parseInt(wachen_id) == 0) {
|
if (parseInt(wachen_id) == 0) {
|
||||||
|
|||||||
@ -239,8 +239,9 @@ module.exports = function (io, sql, tw, async, app_cfg) {
|
|||||||
// alle User-Einstellungen prüfen und ggf. Standby senden
|
// alle User-Einstellungen prüfen und ggf. Standby senden
|
||||||
sql.db_get_sockets_to_standby(function (socket_ids) {
|
sql.db_get_sockets_to_standby(function (socket_ids) {
|
||||||
if (socket_ids) {
|
if (socket_ids) {
|
||||||
|
console.log()
|
||||||
socket_ids.forEach(function (row) {
|
socket_ids.forEach(function (row) {
|
||||||
var socket = io.sockets.sockets[row.socket_id];
|
var socket = io.sockets.connected[row.socket_id];
|
||||||
socket.emit('io.standby', null);
|
socket.emit('io.standby', null);
|
||||||
socket.emit('io.stopaudio', null);
|
socket.emit('io.stopaudio', null);
|
||||||
sql.db_log('WAIP', 'Standby an Socket ' + socket.id + ' gesendet');
|
sql.db_log('WAIP', 'Standby an Socket ' + socket.id + ' gesendet');
|
||||||
@ -297,11 +298,38 @@ module.exports = function (io, sql, tw, async, app_cfg) {
|
|||||||
})
|
})
|
||||||
}, 10000);
|
}, 10000);
|
||||||
|
|
||||||
|
function dbrd_verteilen(dbrd_uuid, socket) {
|
||||||
|
sql.db_get_einsatzdaten_by_uuid(dbrd_uuid, function(einsatzdaten) {
|
||||||
|
if (einsatzdaten) {
|
||||||
|
sql.db_check_permission(socket.request.user, einsatzdaten.id, function(valid) {
|
||||||
|
if (!valid) {
|
||||||
|
delete einsatzdaten.objekt;
|
||||||
|
delete einsatzdaten.besonderheiten;
|
||||||
|
delete einsatzdaten.strasse;
|
||||||
|
delete einsatzdaten.wgs84_x;
|
||||||
|
delete einsatzdaten.wgs84_y;
|
||||||
|
};
|
||||||
|
socket.emit('io.Einsatz', einsatzdaten);
|
||||||
|
sql.db_log('DBRD', 'Einsatzdaten für Dashboard' + dbrd_uuid + ' an Socket ' + socket.id + ' gesendet');
|
||||||
|
sql.db_update_client_status(socket, waip_id);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
var err = new Error('Der angefragte Einsatz ist nicht - oder nicht mehr - vorhanden!');
|
||||||
|
err.status = 404;
|
||||||
|
next(err);
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// TODO: Funktion um Clients "neuzustarten" (Seite remote neu laden)
|
// TODO: Funktion um Clients "neuzustarten" (Seite remote neu laden)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
einsatz_speichern: einsatz_speichern,
|
einsatz_speichern: einsatz_speichern,
|
||||||
einsatz_verteilen: einsatz_verteilen,
|
einsatz_verteilen: einsatz_verteilen,
|
||||||
|
dbrd_verteilen: dbrd_verteilen,
|
||||||
rueckmeldung_verteilen_for_client: rueckmeldung_verteilen_for_client,
|
rueckmeldung_verteilen_for_client: rueckmeldung_verteilen_for_client,
|
||||||
reuckmeldung_verteilen_by_uuid: reuckmeldung_verteilen_by_uuid
|
reuckmeldung_verteilen_by_uuid: reuckmeldung_verteilen_by_uuid
|
||||||
};
|
};
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user