Add multilabel rendering

master
informatic 2020-04-12 15:16:13 +02:00
parent de65a16886
commit 889c59975c
3 changed files with 21 additions and 4 deletions

View File

@ -158,7 +158,14 @@ class FaceshieldRequestAdmin(ModelView):
@flask_admin.expose('/label/html')
def label_html(self):
return self.render('label.html', model=self.get_one(request.args.get('id')))
model = self.get_one(request.args.get('id'))
if model.faceshield_full_delivered % 150 == 0 and model.faceshield_full_delivered // 150 > 1:
label_count = model.faceshield_full_delivered // 150
else:
label_count = 1
return self.render('label.html', model=model, label_count=label_count)
class FilteredFaceshieldRequestAdmin(FaceshieldRequestAdmin):
def get_query(self):

View File

@ -46,7 +46,7 @@ html, body {
}
.idline small {
color: #555;
color: #333;
display: block;
font-size: 9pt;
}
@ -55,13 +55,20 @@ html, body {
padding-top: 10pt;
color: #555;
}
.idline small.labelid {
font-size: 14pt;
display: inline;
font-weight: bold;
}
</style>
</head>
<body>
{% for label_id in range(label_count) %}
<div class="container">
<div class="line idline">
<small>Warszawski Hackerspace / <u>https://covid.hackerspace.pl</u></small>
{{ model.faceshield_full_delivered }} <b>#{{ model.id }}</b>
<small>Warszawski Hackerspace / <u>https://covid.hackerspace.pl</u> / <b>{{ model.status.name }}</b></small>
{{ model.faceshield_full_delivered }} <b>#{{ model.id }}</b>{% if label_count > 1 %} <small class="labelid">({{ label_id + 1 }}/{{ label_count }})</small>{% endif %}
</div>
<div class="line mark">
{{ model.entity_info }}<br />
@ -73,5 +80,6 @@ html, body {
{{ model.full_name }} {{ model.phone_number }}
</div>
</div>
{% endfor %}
</body>
</html>

View File

@ -16,6 +16,8 @@
{{ render_metric('Liczba przyłbic wyprodukowanych w ciągu ostatnich 24h', sztanca_last_24h) }}
{{ render_metric('Aktualna liczba produkowanych przyłbic na minutę', "%.2f"|format(sztanca_ppm|float)) }}
{{ render_metric('Liczba dostarczonych przyłbic', delivered['fulfilled'], live=False) }}
</div>
<div class="row">
{{ render_metric('Liczba przyłbic w trasie', delivered['intransit'], live=False) }}
{{ render_metric('Liczba przyłbic czekających na odbiór osobisty', delivered['pickuppending'], live=False) }}
{{ render_metric('Liczba przyłbic czekających na odbiór przez kuriera', delivered['shippingpending'], live=False) }}