update Mo 15. Jun 00:01:01 CEST 2020

This commit is contained in:
Robert Richter 2020-06-15 00:01:01 +02:00
parent 83b43ce50a
commit 7d8f72af9e
2 changed files with 30 additions and 12 deletions

View File

@ -9,10 +9,6 @@ module.exports = function (db, uuidv4, app_cfg) {
// SQL-Abfragen // SQL-Abfragen
function db_einsatz_speichern(content, callback) { function db_einsatz_speichern(content, callback) {
// uuid erzeugen und zuweisen falls nicht vorhanden
if (!content.einsatzdaten.uuid) {
content.einsatzdaten.uuid = uuidv4();
};
// Polygon erzeugen und zuweisen falls nicht vorhanden // Polygon erzeugen und zuweisen falls nicht vorhanden
if (!content.ortsdaten.wgs84_area) { if (!content.ortsdaten.wgs84_area) {
var wgs_x = parseFloat(content.ortsdaten.wgs84_x); var wgs_x = parseFloat(content.ortsdaten.wgs84_x);
@ -32,9 +28,18 @@ module.exports = function (db, uuidv4, app_cfg) {
}) })
content.ortsdaten.wgs84_area = JSON.stringify(new_buffer); content.ortsdaten.wgs84_area = JSON.stringify(new_buffer);
}; };
// Einsatzdaten verarbeiten // pruefen, ob vielleicht schon ein Einsatz mit einer UUID gespeichert ist
db.serialize(function () { db.get('select uuid from waip_einsaetze where einsatznummer like ?', [content.einsatzdaten.nummer], function (err, row) {
// Einsatzdaten speichern if (err == null && row) {
// wenn Einsatz mit UUID vorhanden, dann setzten
content.einsatzdaten.uuid = row.uuid;
} else {
// uuid erzeugen und zuweisen falls nicht vorhanden
if (!content.einsatzdaten.uuid) {
content.einsatzdaten.uuid = uuidv4();
};
};
// Einsatzdaten verarbeiten
db.run(`INSERT OR REPLACE INTO waip_einsaetze ( 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, wgs84_area) id, uuid, einsatznummer, alarmzeit, einsatzart, stichwort, sondersignal, besonderheiten, ort, ortsteil, strasse, objekt, objektnr, objektart, wachenfolge, wgs84_x, wgs84_y, wgs84_area)
VALUES ( VALUES (
@ -155,10 +160,24 @@ module.exports = function (db, uuidv4, app_cfg) {
delete missiondata.em_alarmiert; delete missiondata.em_alarmiert;
var uuid_em_weitere = uuidv5(JSON.stringify(missiondata.em_weitere), custom_namespace); var uuid_em_weitere = uuidv5(JSON.stringify(missiondata.em_weitere), custom_namespace);
delete missiondata.em_weitere; delete missiondata.em_weitere;
delete missiondata.zeitstempel;
delete missiondata.ablaufzeit;
delete missiondata.wgs84_x;
delete missiondata.wgs84_y;
delete missiondata.wgs84_area;
console.log(missiondata);
var uuid_einsatzdaten = uuidv5(JSON.stringify(missiondata), custom_namespace); var uuid_einsatzdaten = uuidv5(JSON.stringify(missiondata), custom_namespace);
console.log(uuid_em_alarmiert);
console.log(uuid_em_weitere);
console.log(uuid_einsatzdaten);
// FIXME fertigstellen
// Abfrage ob zu Socket und Waip-ID bereits History-Daten hinterlegt sind // Abfrage ob zu Socket und Waip-ID bereits History-Daten hinterlegt sind
db.get('select * from waip_history where waip_id like ? and socket_id like ?', [waip_id, socket_id], function (err, row) { db.get('select * from waip_history where waip_id like ? and socket_id like ?', [waip_id, socket_id], function (err, row) {
if (err == null && row) { if (err == null && row) {
console.log(waip_id);
console.log(socket_id);
// wenn History-Daten hinterlegt sind, dann pruefen sich etwas verändert hat // wenn History-Daten hinterlegt sind, dann pruefen sich etwas verändert hat
if (uuid_einsatzdaten !== row.uuid_einsatz_grunddaten || uuid_em_alarmiert !== row.uuid_em_alarmiert) { if (uuid_einsatzdaten !== row.uuid_einsatz_grunddaten || uuid_em_alarmiert !== row.uuid_em_alarmiert) {
// Grunddaten oder alarmierte Einsatzmittel haben sich verändert, somit History veraltet und neue Alarmierung notwendig // Grunddaten oder alarmierte Einsatzmittel haben sich verändert, somit History veraltet und neue Alarmierung notwendig
@ -729,7 +748,6 @@ module.exports = function (db, uuidv4, app_cfg) {
function db_rmld_get_fuer_wache(waip_einsaetze_id, wachen_nr, callback) { function db_rmld_get_fuer_wache(waip_einsaetze_id, wachen_nr, callback) {
// Rueckmeldungen fuer eine Wache auslesen // Rueckmeldungen fuer eine Wache auslesen
db.all(`SELECT * FROM waip_response WHERE waip_uuid = (select uuid from waip_einsaetze where id = ?)`, [waip_einsaetze_id], function (err, rows) { db.all(`SELECT * FROM waip_response WHERE waip_uuid = (select uuid from waip_einsaetze where id = ?)`, [waip_einsaetze_id], function (err, rows) {
console.log(rows);
if (err == null && rows) { if (err == null && rows) {
// temporaere Variablen // temporaere Variablen
var itemsProcessed = 0; var itemsProcessed = 0;

View File

@ -370,8 +370,8 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, proof) {
sql.db_export_get_for_rmld(arry_wachen, function (export_data) { sql.db_export_get_for_rmld(arry_wachen, function (export_data) {
// SQL gibt ist eine Schliefe (db.each), fuer jedes Ergebnis wird eine CSV/Mail erstellt // SQL gibt ist eine Schliefe (db.each), fuer jedes Ergebnis wird eine CSV/Mail erstellt
console.log('exportfilter'); console.log('exportfilter');
// FIXME
console.log(export_data.export_filter); console.log(export_data);
var part_rmld = full_rmld.filter(obj => obj.wache_id.startsWith(export_data.export_filter)); var part_rmld = full_rmld.filter(obj => obj.wache_id.startsWith(export_data.export_filter));
// CSV-Spalten definieren // CSV-Spalten definieren
var csv_col = ['id', 'einsatznummer', 'waip_uuid', 'rmld_uuid', 'alias', 'einsatzkraft', 'maschinist', 'fuehrungskraft', 'agt', 'set_time', 'arrival_time', 'wache_id', 'wache_nr', 'wache_name']; var csv_col = ['id', 'einsatznummer', 'waip_uuid', 'rmld_uuid', 'alias', 'einsatzkraft', 'maschinist', 'fuehrungskraft', 'agt', 'set_time', 'arrival_time', 'wache_id', 'wache_nr', 'wache_name'];