update Mo 9. Mär 23:01:01 CET 2020
This commit is contained in:
parent
32b25095ff
commit
fa1291ac4d
1646
package-lock.json
generated
1646
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -6,6 +6,7 @@
|
|||||||
"start": "node server.js"
|
"start": "node server.js"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@turf/turf": "^5.1.6",
|
||||||
"async": "^3.1.0",
|
"async": "^3.1.0",
|
||||||
"bcrypt": "^3.0.7",
|
"bcrypt": "^3.0.7",
|
||||||
"body-parser": "^1.19.0",
|
"body-parser": "^1.19.0",
|
||||||
|
|||||||
@ -16,6 +16,7 @@ const bodyParser = require('body-parser');
|
|||||||
const bcrypt = require('bcrypt');
|
const bcrypt = require('bcrypt');
|
||||||
const passport = require('passport');
|
const passport = require('passport');
|
||||||
const uuidv4 = require('uuid/v4');
|
const uuidv4 = require('uuid/v4');
|
||||||
|
const turf = require('@turf/turf');
|
||||||
|
|
||||||
// Express-Einstellungen
|
// Express-Einstellungen
|
||||||
app.set('views', path.join(__dirname, 'views'));
|
app.set('views', path.join(__dirname, 'views'));
|
||||||
@ -31,7 +32,7 @@ app.use(bodyParser.urlencoded({
|
|||||||
// Scripte einbinden
|
// Scripte einbinden
|
||||||
var app_cfg = require('./server/app_cfg.js');
|
var app_cfg = require('./server/app_cfg.js');
|
||||||
var sql_cfg = require('./server/sql_cfg')(fs, bcrypt, app_cfg);
|
var sql_cfg = require('./server/sql_cfg')(fs, bcrypt, app_cfg);
|
||||||
var sql = require('./server/sql_qry')(sql_cfg, uuidv4, app_cfg);
|
var sql = require('./server/sql_qry')(sql_cfg, uuidv4, turf, app_cfg);
|
||||||
var waip = require('./server/waip')(io, sql, async, app_cfg);
|
var waip = require('./server/waip')(io, sql, async, app_cfg);
|
||||||
var socket = require('./server/socket')(io, sql, app_cfg, waip);
|
var socket = require('./server/socket')(io, sql, app_cfg, waip);
|
||||||
var udp = require('./server/udp')(app_cfg, waip, sql);
|
var udp = require('./server/udp')(app_cfg, waip, sql);
|
||||||
|
|||||||
@ -98,8 +98,7 @@ module.exports = function (fs, bcrypt, app_cfg) {
|
|||||||
arrival_time DATETIME,
|
arrival_time DATETIME,
|
||||||
wache_id INTEGER,
|
wache_id INTEGER,
|
||||||
wache_nr INTEGER,
|
wache_nr INTEGER,
|
||||||
wache_name TEXT,
|
wache_name TEXT)`);
|
||||||
FOREIGN KEY (waip_uuid) REFERENCES waip_einsaetze(uuid) ON DELETE CASCADE ON UPDATE CASCADE)`);
|
|
||||||
// Benutzer-Tabelle erstellen
|
// Benutzer-Tabelle erstellen
|
||||||
db.run(`CREATE TABLE waip_users (
|
db.run(`CREATE TABLE waip_users (
|
||||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
module.exports = function(db, uuidv4, 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_vorhanden(wachen_id, user_id, callback) {
|
function db_einsatz_vorhanden(wachen_id, user_id, callback) {
|
||||||
@ -43,10 +43,22 @@ module.exports = function(db, uuidv4, app_cfg) {
|
|||||||
if (!content.einsatzdaten.uuid) {
|
if (!content.einsatzdaten.uuid) {
|
||||||
content.einsatzdaten.uuid = uuidv4();
|
content.einsatzdaten.uuid = uuidv4();
|
||||||
};
|
};
|
||||||
|
// Polygon erzeugen und zuweisen falls nicht vorhanden
|
||||||
|
if (!content.einsatzdaten.wgs84_area) {
|
||||||
|
var point = turf.point([content.ortsdaten.wgs84_x, content.ortsdaten.wgs84_y]);
|
||||||
|
var buffered = turf.buffer(point, 1, {units: 'kilometers', steps: 4});
|
||||||
|
var bbox = turf.bbox(buffered);
|
||||||
|
var new_point = turf.randomPoint(1, {bbox: bbox});
|
||||||
|
content.einsatzdaten.wgs84_area = JSON.stringify(turf.buffer(new_point, 1, {units: 'kilometers', steps: 6}));
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
var point = turf.point([-75.343, 39.984]);
|
||||||
|
|
||||||
db.serialize(function() {
|
db.serialize(function() {
|
||||||
// Einsatzdaten speichern
|
// Einsatzdaten speichern
|
||||||
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)
|
id, uuid, einsatznummer, alarmzeit, einsatzart, stichwort, sondersignal, besonderheiten, ort, ortsteil, strasse, objekt, objektnr, objektart, wachenfolge, wgs84_x, wgs84_y, wgs84_area)
|
||||||
VALUES (
|
VALUES (
|
||||||
(select ID from waip_einsaetze where einsatznummer like \'` + content.einsatzdaten.nummer + `\'),
|
(select ID from waip_einsaetze where einsatznummer like \'` + content.einsatzdaten.nummer + `\'),
|
||||||
\'` + content.einsatzdaten.uuid + `\',
|
\'` + content.einsatzdaten.uuid + `\',
|
||||||
@ -64,7 +76,8 @@ module.exports = function(db, uuidv4, app_cfg) {
|
|||||||
\'` + content.ortsdaten.objektart + `\',
|
\'` + content.ortsdaten.objektart + `\',
|
||||||
\'` + content.ortsdaten.wachfolge + `\',
|
\'` + content.ortsdaten.wachfolge + `\',
|
||||||
\'` + content.ortsdaten.wgs84_x + `\',
|
\'` + content.ortsdaten.wgs84_x + `\',
|
||||||
\'` + content.ortsdaten.wgs84_y + `\')`,
|
\'` + content.ortsdaten.wgs84_y + `\',
|
||||||
|
\'` + content.ortsdaten.wgs84_area + `\')`,
|
||||||
function(err) {
|
function(err) {
|
||||||
if (err == null) {
|
if (err == null) {
|
||||||
// Einsatzmittel zum Einsatz speichern
|
// Einsatzmittel zum Einsatz speichern
|
||||||
@ -72,7 +85,7 @@ module.exports = function(db, uuidv4, app_cfg) {
|
|||||||
|
|
||||||
function loop_done(waip_id) {
|
function loop_done(waip_id) {
|
||||||
callback && callback(waip_id);
|
callback && callback(waip_id);
|
||||||
//console.log('all done');
|
console.log('all done');
|
||||||
};
|
};
|
||||||
|
|
||||||
var itemsProcessed = 0;
|
var itemsProcessed = 0;
|
||||||
|
|||||||
@ -16,7 +16,7 @@ block content
|
|||||||
.card.border-dark.mb-3.w-100
|
.card.border-dark.mb-3.w-100
|
||||||
.card-header Test-Alarm
|
.card-header Test-Alarm
|
||||||
.card-body.text-dark
|
.card-body.text-dark
|
||||||
form#test_alert1(action="/test_alert", method="POST")
|
form#test_alert1(action="/adm_run_alert", method="POST")
|
||||||
.form-group
|
.form-group
|
||||||
label(for='text_test_alert1') Alarmtext
|
label(for='text_test_alert1') Alarmtext
|
||||||
textarea#text_test_alert1.form-control(rows='5' type='text', name='test_alert') {"einsatzdaten":{"nummer":"0815","alarmzeit":"01.01.19&01:00","art":"Sonstiges","stichwort":"S:Testeinsatz","sondersignal":1,"besonderheiten":"DEMO Wachalarm-IP-Web - Testeinsatz","patient":""},"ortsdaten":{"ort":"Elsterwerda","ortsteil":"Biehla","strasse":"Haidaer Str. 47A","objekt":"","objektnr":"-1","objektart":"","wachfolge":"611302","wgs84_x":"52.471244","wgs84_y":"13.502943"},"alarmdaten":[{"typ":"ALARM","netzadresse":"","wachenname":"EE FW Elsterwerda","einsatzmittel":"FL EE 02/14-01","zeit_a":"18:41","zeit_b":"","zeit_c":""}]}
|
textarea#text_test_alert1.form-control(rows='5' type='text', name='test_alert') {"einsatzdaten":{"nummer":"0815","alarmzeit":"01.01.19&01:00","art":"Sonstiges","stichwort":"S:Testeinsatz","sondersignal":1,"besonderheiten":"DEMO Wachalarm-IP-Web - Testeinsatz","patient":""},"ortsdaten":{"ort":"Elsterwerda","ortsteil":"Biehla","strasse":"Haidaer Str. 47A","objekt":"","objektnr":"-1","objektart":"","wachfolge":"611302","wgs84_x":"52.471244","wgs84_y":"13.502943"},"alarmdaten":[{"typ":"ALARM","netzadresse":"","wachenname":"EE FW Elsterwerda","einsatzmittel":"FL EE 02/14-01","zeit_a":"18:41","zeit_b":"","zeit_c":""}]}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user