pull/78/head
Konstantin Gründger 2020-05-30 14:29:22 +02:00
rodzic 7f8df24d96
commit c3c4f029bd
3 zmienionych plików z 11 dodań i 7 usunięć

Wyświetl plik

@ -1,6 +1,7 @@
from sqlalchemy.ext.hybrid import hybrid_property
from sqlalchemy.sql import null, case
from app import db
from app.model import Device
class Logbook(db.Model):
@ -23,6 +24,9 @@ class Logbook(db.Model):
landing_airport_id = db.Column(db.Integer, db.ForeignKey("airports.id", ondelete="CASCADE"), index=True)
landing_airport = db.relationship("Airport", foreign_keys=[landing_airport_id])
def get_device(self):
return db.session.query(Device).filter(Device.address == self.address).one()
@hybrid_property
def duration(self):
return None if (self.landing_timestamp is None or self.takeoff_timestamp is None) else self.landing_timestamp - self.takeoff_timestamp

Wyświetl plik

@ -9,11 +9,11 @@
<table class="datatable table table-striped table-bordered">
<tr><td>Name:</td><td>{{ device.name }}</td></tr>
<tr><td>Address:</td><td>{{ device.address }}</td></tr>
<tr><td>Real Address:</td><td>{{ device.real_address }}</td></tr>
<tr><td>Stealth:</td><td>{{ device.stealth }}</td></tr>
<tr><td>Real Address:</td><td>{{ device.real_address if device.real_address else '-' }}</td></tr>
<tr><td>Stealth:</td><td>{{ device.stealth if device.stealth else '-' }}</td></tr>
<tr><td>Aircraft Type:</td><td>{{ device.aircraft_type }}</td></tr>
<tr><td>Software Version:</td><td>{{ device.software_version }}</td></tr>
<tr><td>Hardware Version:</td><td>{{ device.hardware_version }}</td></tr>
<tr><td>Software Version:</td><td>{{ device.software_version if device.software_version else '-' }}</td></tr>
<tr><td>Hardware Version:</td><td>{{ device.hardware_version if device.hardware_version else '-' }}</td></tr>
<tr><td>First seen:</td><td>{{ device.firstseen }}</td></tr>
<tr><td>Last seen:</td><td>{{ device.lastseen }}</td></tr>
</table>

Wyświetl plik

@ -51,9 +51,9 @@
</tr>
{% for entry in logbook %}
<tr>
<td>{{ loop.index }}</td>
<td><a href="{{ url_for('main.device_detail', id=entry.device.id) }}">{% if entry.device.info is not none and entry.device.info.registration|length %}{{ entry.device.info.registration }}{% else %}[{{ entry.device.address }}]{% endif %}</a></td>
<td>{% if entry.device.info is not none and entry.device.info.aircraft|length %}{{ entry.device.info.aircraft }}{% else %}-{% endif %}</td>
<td>{{ loop.index }}</td>{% set device = entry.get_device() %}
<td><a href="{{ url_for('main.device_detail', device_name=device.name) }}">{% if device.info is not none and device.info.registration|length %}{{ device.info.registration }}{% else %}[{{ device.address }}]{% endif %}</a></td>
<td>{% if device.info is not none and device.info.aircraft|length %}{{ device.info.aircraft }}{% else %}-{% endif %}</td>
<td>{% if entry.takeoff_timestamp is not none and entry.takeoff_airport.id == sel_airport %} {{ entry.takeoff_timestamp.strftime('%H:%M') }} {% endif %}</td>
<td>{% if entry.takeoff_track is not none and entry.takeoff_airport.id == sel_airport %} {{ '%02d' | format(entry.takeoff_track/10) }} {% endif %}</td>
<td>{% if entry.landing_timestamp is not none and entry.landing_airport.id == sel_airport %} {{ entry.landing_timestamp.strftime('%H:%M') }} {% endif %}</td>