diff --git a/public/js/waip_client.js b/public/js/waip_client.js index 360ead9..5f585ec 100644 --- a/public/js/waip_client.js +++ b/public/js/waip_client.js @@ -474,18 +474,19 @@ $('#rueckmeldung').each(function(index) { }); $('#send_response').on('click', function() { - // Rückmeldung sammeln - var respo = {}; - respo.einsatzkraft = $('#radios_res_ek').prop('checked'); - respo.maschinist = $('#radios_res_ma').prop('checked'); - respo.fuehrungskraft = $('#radios_res_fk').prop('checked'); - respo.atemschutz = $('#cb_res_agt').prop('checked'); // Rückmeldung senden - socket.emit('response',waip_id,respo); + socket.emit( + 'response', + waip_id, + $('#radios_res_ek').prop('checked'), + $('#radios_res_ma').prop('checked'), + $('#radios_res_fk').prop('checked'), + $('#cb_res_agt').prop('checked') + ); }); socket.on('io.response', function(data) { - // neue Rückmeldungen hinterlegen + // Rückmeldungen hinterlegen $('#rueckmeldung').empty(); //{einsatzkraft: "0", maschinist: "0", fuehrungskraft: "0", atemschutz: "0"} for (var i in data) { diff --git a/server/socket.js b/server/socket.js index db24f6b..c1bf0d8 100755 --- a/server/socket.js +++ b/server/socket.js @@ -60,12 +60,12 @@ socket_api.emit('CH01', 'me', 'test msg'); }; }); }); - socket.on('response', function(waip_id, responseobj) { - //var i_ek = ek ? 1 : 0; - //var i_ma = ma ? 1 : 0; - //var i_fk = fk ? 1 : 0; - //var i_agt = agt ? 1 : 0; - sql.db_update_response(waip_id, responseobj, function(result){ + socket.on('response', function(waip_id, ek, ma, fk, agt) { + var i_ek = ek ? 1 : 0; + var i_ma = ma ? 1 : 0; + var i_fk = fk ? 1 : 0; + var i_agt = agt ? 1 : 0; + sql.db_update_response(waip_id, i_ek, i_ma, i_fk, i_agt, function(result){ waip.reuckmeldung_verteilen(waip_id, result); }); }); diff --git a/server/sql_cfg.js b/server/sql_cfg.js index ff74834..05f7b41 100644 --- a/server/sql_cfg.js +++ b/server/sql_cfg.js @@ -28,9 +28,8 @@ module.exports = function (fs, bcrypt, app_cfg) { db.serialize(function () { // Einsatz-Tabelle erstellen db.run(`CREATE TABLE waip_einsaetze ( - id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, + id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE, zeitstempel DATETIME DEFAULT CURRENT_TIMESTAMP, - uuid TEXT, einsatznummer TEXT, alarmzeit TEXT, einsatzart TEXT, @@ -45,9 +44,7 @@ module.exports = function (fs, bcrypt, app_cfg) { objektart TEXT, wachenfolge INTEGER, wgs84_x TEXT, - wgs84_y TEXT, - wgs84_area, - UNIQUE (id, uuid))`); + wgs84_y TEXT)`); // Einsatzmittel-Tabelle erstellen // TODO: Erweitern um Status, Staerke, AGT db.run(`CREATE TABLE waip_einsatzmittel ( @@ -89,7 +86,10 @@ module.exports = function (fs, bcrypt, app_cfg) { db.run(`CREATE TABLE waip_response ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE, waip_einsaetze_id INTEGER NOT NULL, - response_json TEXT)`); + einsatzkraft TEXT, + maschinist TEXT, + fuehrungskraft TEXT, + atemschutz TEXT)`); // Benutzer-Tabelle erstellen db.run(`CREATE TABLE waip_users ( id INTEGER PRIMARY KEY AUTOINCREMENT, @@ -778,11 +778,10 @@ module.exports = function (fs, bcrypt, app_cfg) { db.run(`INSERT OR REPLACE INTO waip_ttsreplace ( einsatzmittel_typ, einsatzmittel_rufname) VALUES - (\'10\',\'KDOW\'), + (\'10\',\'ELW\'), (\'11\',\'ELW\'), - (\'12\',\'ELW 2\'), (\'14\',\'KDOW\'), - (\'19\',\'MTF\'), + (\'19\',\'MTW\'), (\'20\',\'Tanklöschfahrzeug\'), (\'21\',\'Tanklöschfahrzeug\'), (\'22\',\'Vorauslöschfahrzeug\'), @@ -790,14 +789,13 @@ module.exports = function (fs, bcrypt, app_cfg) { (\'24\',\'Tanklöschfahrzeug\'), (\'25\',\'Großtanklöschfahrzeug\'), (\'26\',\'Tanklöschfahrzeug\'), - (\'27\',\'Tanklöschfahrzeug\'), (\'29\',\'Großtanklöschfahrzeug\'), (\'30\',\'Drehleiter\'), (\'31\',\'Drehleiter\'), (\'32\',\'Drehleiter\'), (\'33\',\'Drehleiter\'), (\'34\',\'Hubarbeitsbühne\'), - (\'35\',\'Gelenkmast\'), + (\'35\',\'Drehleiter\'), (\'36\',\'Teleskopmast\'), (\'37\',\'Teleskopmast \'), (\'38\',\'Hubretter\'), @@ -810,21 +808,11 @@ module.exports = function (fs, bcrypt, app_cfg) { (\'46\',\'Löschfahrzeug\'), (\'47\',\'TSF\'), (\'48\',\'TSF\'), - (\'49\',\'Speziallöschfahrzeug\'), (\'51\',\'Rüstwagen\'), (\'52\',\'Rüstwagen\'), - (\'53\',\'Rüstwagen\'), + (\'59\',\'Rüstwagen\'), (\'59\',\'Gerätewagen\'), - (\'61\',\'Schlauchwagen\'), - (\'62\',\'Schlauchwagen\'), - (\'63\',\'Schlauchwagen\'), - (\'64\',\'Schlauchtransportwagen\'), - (\'65\',\'Wechsellader\'), - (\'66\',\'Wechsellader\'), - (\'67\',\'Wechsellader\'), (\'69\',\'TSA\'), - (\'76\',\'Krad\'), - (\'78\',\'Löschboot\'), (\'79\',\'Mehrzweckboot\'), (\'82\',\'NEF\'), (\'83\',\'RTW\'), diff --git a/server/sql_qry.js b/server/sql_qry.js index b20c91f..fa30be6 100644 --- a/server/sql_qry.js +++ b/server/sql_qry.js @@ -1,8 +1,5 @@ module.exports = function(db, async, app_cfg) { - // Module laden - const uuidv4 = require('uuid/v4'); - // ermittelt den letzten vorhanden Einsatz zu einer Wache function db_einsatz_vorhanden(wachen_id, user_id, callback) { var select_reset_counter; @@ -42,17 +39,12 @@ module.exports = function(db, async, app_cfg) { }; function db_einsatz_speichern(content, callback) { - // uuid erzeugen und zuweisen falls nicht vorhanden - if !(content.einsatzdaten.uuid) { - content.einsatzdaten.uuid = uuidv4(); - }; db.serialize(function() { // Einsatzdaten speichern db.run(`INSERT OR REPLACE INTO waip_einsaetze ( - id, uuid, einsatznummer, alarmzeit, einsatzart, stichwort, sondersignal, besonderheiten, ort, ortsteil, strasse, objekt, objektnr, objektart, wachenfolge, wgs84_x, wgs84_y) + id, einsatznummer, alarmzeit, einsatzart, stichwort, sondersignal, besonderheiten, ort, ortsteil, strasse, objekt, objektnr, objektart, wachenfolge, wgs84_x, wgs84_y) VALUES ( (select ID from waip_einsaetze where einsatznummer like \'` + content.einsatzdaten.nummer + `\'), - \'` + content.einsatzdaten.uuid + `\', \'` + content.einsatzdaten.nummer + `\', \'` + content.einsatzdaten.alarmzeit + `\', \'` + content.einsatzdaten.art + `\', @@ -69,7 +61,7 @@ module.exports = function(db, async, app_cfg) { \'` + content.ortsdaten.wgs84_x + `\', \'` + content.ortsdaten.wgs84_y + `\')`, function(err) { - if (err == null) + if (err == null) { // Einsatzmittel zum Einsatz speichern var id = this.lastID; @@ -564,8 +556,7 @@ module.exports = function(db, async, app_cfg) { }); }; - /*function db_update_response(waip_id, responseobj, callback) { - // veraltet + function db_update_response(waip_id, i_ek, i_ma, i_fk, i_agt, callback) { db.run(` UPDATE waip_response SET einsatzkraft = einsatzkraft + \'` + i_ek + `\', @@ -602,78 +593,13 @@ module.exports = function(db, async, app_cfg) { callback && callback(null); }; }); - }; */ - - function db_save_response(waip_id, responseobj, callback) { - db.run((`INSERT INTO waip_response - (waip_einsaetze_id, response_json) - VALUES ( - \'` + waip_id + `\', - \'` + responseobj + `\')`), function(err) { - if (err == null) { - callback && callback(); - } else { - callback && callback(null); - }; - }); }; - function db_get_response_gesamter_einsatz(waip_einsaetze_id, callback){ - db.all(`SELECT response_json FROM waip_response - WHERE waip_einsaetze_id = ?`, [waip_einsaetze_id], function(err, row) { - if (err == null && rows) { - callback && callback(rows); - } else { - callback && callback(null); - }; - }); - }; - - function db_get_response_wache(waip_einsaetze_id, wachen_nr, callback){ - db.all(`SELECT response_json FROM waip_response - WHERE waip_einsaetze_id = ?`, [waip_einsaetze_id], function(err, row) { - if (err == null && rows) { - - function loop_done(waip_id) { - callback && callback(waip_id); - }; - - var itemsProcessed = 0; - var response_wache = {}; - - rows.forEach(function (item, index, array) { - if (item.wachen_nr.startsWith(wachen_nr)) { - // hier jsonobjekt increment erstellen - }; - - db.run(`INSERT OR REPLACE INTO waip_einsatzmittel (id, waip_einsaetze_ID, waip_wachen_ID, wachenname, einsatzmittel, zeitstempel) - VALUES ( - (select ID from waip_einsatzmittel where einsatzmittel like \'` + item.einsatzmittel + `\'), - \'` + id + `\', - (select id from waip_wachen where name_wache like \'` + item.wachenname + `\'), - \'` + item.wachenname + `\', - \'` + item.einsatzmittel + `\', - \'` + item.zeit_a + `\')`, - function(err) { - if (err == null) { - itemsProcessed++; - - if (itemsProcessed === array.length) { - loop_done(id); - }; - } else { - callback && callback(null); - }; - }); - - - - - - - - - //callback && callback(row); + function db_get_response(waip_id, callback){ + db.get(`SELECT einsatzkraft EK, maschinist MA, fuehrungskraft FK, atemschutz AGT FROM waip_response + WHERE waip_einsaetze_id = ?`, [waip_id], function(err, row) { + if (err == null && row) { + callback && callback(row); } else { callback && callback(null); }; diff --git a/server/waip.js b/server/waip.js index 86d78fa..66e89cb 100644 --- a/server/waip.js +++ b/server/waip.js @@ -14,6 +14,7 @@ module.exports = function(io, sql, async, app_cfg) { var room_sockets = io.sockets.adapter.rooms[row.room]; //console.log(row); //console.log(row.room); + //console.log(room_sockets); //console.log(io.sockets.adapter); if (typeof room_sockets !== 'undefined') {