diff --git a/server/routing.js b/server/routing.js index 981b0c9..9cefcc3 100644 --- a/server/routing.js +++ b/server/routing.js @@ -66,7 +66,7 @@ module.exports = function(app, sql, app_cfg, passport, auth, udp) { app.post('/rueckmeldung/:waip_uuid', function(req, res) { console.log('post_rueckmeldung '+JSON.stringify(req.body)); - sql.db_save_response(req.body.waip_id, req.body, function(result){ + sql.db_save_response(req.body, function(result){ if (result) { res.redirect('/rueckmeldung/' + req.params.waip_uuid); } else { diff --git a/server/sql_qry.js b/server/sql_qry.js index dd67462..d831e24 100644 --- a/server/sql_qry.js +++ b/server/sql_qry.js @@ -604,12 +604,58 @@ module.exports = function(db, async, app_cfg) { }); };*/ - function db_save_response(waip_id, responseobj, callback) { + function db_save_response(responseobj, callback) { + + + // Rueckmeldung aufarbeiten + var reuckmeldung = {}; + reuckmeldung.waip_uuid = responseobj.waip_uuid; + // Typ der Einsatzfunktion festlegen + switch (responseobj.radio_efunction) { + case 'ek': + reuckmeldung.einsatzkraft = 1; + reuckmeldung.maschinist = 0; + reuckmeldung.fuehrungskraft = 0; + break; + case 'ma': + reuckmeldung.einsatzkraft = 0; + reuckmeldung.maschinist = 1; + reuckmeldung.fuehrungskraft = 0; + break; + case 'fk': + reuckmeldung.einsatzkraft = 0; + reuckmeldung.maschinist = 0; + reuckmeldung.fuehrungskraft = 1; + break; + default: + reuckmeldung.einsatzkraft = 0; + reuckmeldung.maschinist = 0; + reuckmeldung.fuehrungskraft = 0; + }; + // ist AGT ja / nein + if (responseobj.cb_agt) { + reuckmeldung.agt = 1; + } else { + reuckmeldung.agt = 0; + }; + // Zeitpunkt der Rueckmeldung festlegen + reuckmeldung.set_time = new Date(); + // Zeitpunkt der geplanten Ankunft festlegen + var resp_time = new Date(); + resp_time.setMinutes(resp_time.getMinutes() + parseInt(responseobj.eintreffzeit)); + reuckmeldung.arrival_time = resp_time; + // Wache zuordnen + if (!isNaN(responseobj.wachenauswahl)) { + reuckmeldung.wache = responseobj.wachenauswahl; + } else { + reuckmeldung.wache = null; + }; + console.log(JSON.stringify(reuckmeldung)); db.run((`INSERT INTO waip_response (waip_einsaetze_id, response_json) VALUES ( - \'` + waip_id + `\', - \'` + JSON.stringify(responseobj) + `\')`), function(err) { + \'` + reuckmeldung.waip_uuid + `\', + \'` + JSON.stringify(reuckmeldung) + `\')`), function(err) { console.log(err); if (err == null) { callback && callback('OK'); diff --git a/views/includes/modal_response.pug b/views/includes/modal_response.pug index 89fd943..c342d1d 100644 --- a/views/includes/modal_response.pug +++ b/views/includes/modal_response.pug @@ -8,7 +8,7 @@ span(aria-hidden='true') × #responseModalBody.modal-body form#send_response.was-validated(action=einsatzdaten.uuid, method="POST") - input(type="hidden" name="waip_id" value=einsatzdaten.uuid) + input(type="hidden" name="waip_uuid" value=einsatzdaten.uuid) .form-group p.text-muted Ich komme als ... .custom-control.custom-radio.form-control-lg