improve summary rows in reports (#2861)

This commit is contained in:
Kevin Papst
2021-10-16 13:38:08 +02:00
committed by GitHub
parent 8539938b8a
commit e2be5b401c
8 changed files with 95 additions and 69 deletions

View File

@@ -89,6 +89,15 @@ table.dataTable {
opacity: 0.8; opacity: 0.8;
} }
} }
tfoot {
tr {
/* overwritten if used in tfoot, to switch the border from below to top */
&.summary td {
border-top: 1px solid #ccc;
border-bottom: 0;
}
}
}
} }
table.table-hover { table.table-hover {

View File

@@ -1,7 +1,6 @@
.dataTable { .dataTable {
.weekend { .weekend {
background-color: #f9f9f9; background-color: #f9f9f9;
opacity: 0.6;
} }
} }

File diff suppressed because one or more lines are too long

View File

@@ -6,7 +6,7 @@
"build/app.e22732af.js" "build/app.e22732af.js"
], ],
"css": [ "css": [
"build/app.fdf3c5fb.css" "build/app.c57cdec8.css"
] ]
}, },
"invoice": { "invoice": {

View File

@@ -1,5 +1,5 @@
{ {
"build/app.css": "build/app.fdf3c5fb.css", "build/app.css": "build/app.c57cdec8.css",
"build/app.js": "build/app.e22732af.js", "build/app.js": "build/app.e22732af.js",
"build/invoice.css": "build/invoice.ff32661a.css", "build/invoice.css": "build/invoice.ff32661a.css",
"build/invoice.js": "build/invoice.19f36eca.js", "build/invoice.js": "build/invoice.19f36eca.js",

View File

@@ -25,6 +25,7 @@
{% set totals = {'totals': 0} %} {% set totals = {'totals': 0} %}
{% set columns = 2 %} {% set columns = 2 %}
<table class="table table-bordered table-hover dataTable"> <table class="table table-bordered table-hover dataTable">
<thead>
<tr> <tr>
<th>&nbsp;</th> <th>&nbsp;</th>
<th>&nbsp;</th> <th>&nbsp;</th>
@@ -37,6 +38,8 @@
{% set totals = totals|merge({(day|report_date): 0}) %} {% set totals = totals|merge({(day|report_date): 0}) %}
{% endfor %} {% endfor %}
</tr> </tr>
</thead>
<tbody>
{% set oldCustomer = null %} {% set oldCustomer = null %}
{% for pid, project in rows|sort((a,b) => a.project.customer.id <=> b.project.customer.id) %} {% for pid, project in rows|sort((a,b) => a.project.customer.id <=> b.project.customer.id) %}
{% if oldCustomer is null or oldCustomer != project.project.customer.id %} {% if oldCustomer is null or oldCustomer != project.project.customer.id %}
@@ -76,15 +79,18 @@
</tr> </tr>
{% endfor %} {% endfor %}
{% endfor %} {% endfor %}
</tbody>
<tfoot>
<tr class="summary"> <tr class="summary">
<th></th> <td>{{ 'stats.durationTotal'|trans }}</td>
<th class="text-nowrap text-center total">{{ totals['totals']|duration }}</th> <td class="text-nowrap text-center total">{{ totals['totals']|duration }}</td>
{% for day in days.dateTimes %} {% for day in days.dateTimes %}
<th class="text-nowrap text-center day-total{% if day is weekend %} weekend{% endif %}"> <td class="text-nowrap text-center day-total{% if day is weekend %} weekend{% endif %}">
{{ totals[day|report_date]|duration }} {{ totals[day|report_date]|duration }}
</th> </td>
{% endfor %} {% endfor %}
</tr> </tr>
</tfoot>
</table> </table>
{% endblock %} {% endblock %}
{% endembed %} {% endembed %}

View File

@@ -23,6 +23,7 @@
{% set absoluteTotals = 0 %} {% set absoluteTotals = 0 %}
{% set totals = {} %} {% set totals = {} %}
<table class="table table-bordered table-hover dataTable"> <table class="table table-bordered table-hover dataTable">
<thead>
<tr> <tr>
<th>&nbsp;</th> <th>&nbsp;</th>
<th>&nbsp;</th> <th>&nbsp;</th>
@@ -34,6 +35,8 @@
{% set totals = totals|merge({(day|report_date): 0}) %} {% set totals = totals|merge({(day|report_date): 0}) %}
{% endfor %} {% endfor %}
</tr> </tr>
</thead>
<tbody>
{% for userDay in stats %} {% for userDay in stats %}
{% set usersTotalDuration = 0 %} {% set usersTotalDuration = 0 %}
<tr class="user"> <tr class="user">
@@ -59,17 +62,20 @@
{% endfor %} {% endfor %}
</tr> </tr>
{% endfor %} {% endfor %}
<tr> </tbody>
<th>&nbsp;</th> <tfoot>
<th class="text-center text-nowrap"> <tr class="summary">
<td>{{ 'stats.durationTotal'|trans }}</td>
<td class="text-center text-nowrap">
{{ absoluteTotals|duration }} {{ absoluteTotals|duration }}
</th> </td>
{% for id, duration in totals %} {% for id, duration in totals %}
<th class="text-center text-nowrap"> <td class="text-center text-nowrap">
{{ duration|duration }} {{ duration|duration }}
</th> </td>
{% endfor %} {% endfor %}
</tr> </tr>
</tfoot>
</table> </table>
{% endif %} {% endif %}
{% endblock %} {% endblock %}

View File

@@ -22,6 +22,7 @@
{% else %} {% else %}
{% set totals = {} %} {% set totals = {} %}
<table class="table table-bordered table-hover dataTable"> <table class="table table-bordered table-hover dataTable">
<thead>
<tr> <tr>
<th>&nbsp;</th> <th>&nbsp;</th>
<th>&nbsp;</th> <th>&nbsp;</th>
@@ -35,6 +36,8 @@
{% set totals = totals|merge({(month|report_date): 0}) %} {% set totals = totals|merge({(month|report_date): 0}) %}
{% endfor %} {% endfor %}
</tr> </tr>
</thead>
<tbody>
{% for userYear in stats|filter(row => row.user is not null) %} {% for userYear in stats|filter(row => row.user is not null) %}
{% set usersTotalDuration = 0 %} {% set usersTotalDuration = 0 %}
<tr class="user"> <tr class="user">
@@ -61,15 +64,18 @@
{% endfor %} {% endfor %}
</tr> </tr>
{% endfor %} {% endfor %}
<tr> </tbody>
<th>&nbsp;</th> <tfoot>
<th>&nbsp;</th> <tr class="summary">
<td>{{ 'stats.durationTotal'|trans }}</td>
<td>&nbsp;</td>
{% for id, total in totals %} {% for id, total in totals %}
<th class="text-center text-nowrap"> <td class="text-center text-nowrap">
{{ total|duration }} {{ total|duration }}
</th> </td>
{% endfor %} {% endfor %}
</tr> </tr>
</tfoot>
</table> </table>
{% endif %} {% endif %}
{% endblock %} {% endblock %}