feat: dedicated dashboard widgets for contracts and invoices
This commit is contained in:
@@ -53,31 +53,68 @@
|
||||
</div>
|
||||
<div class="bg-gray-100 border border-gray-200 rounded-md px-4 py-2">
|
||||
<h2 class="flex justify-between pb-2">
|
||||
<span class="font-bold text-lg">Neue Dokumente</span>
|
||||
{% if newDocumentsCount > 0 or pendingDocumentsCount > 0 %}
|
||||
<span>{{ newDocumentsCount }} neu, {{ pendingDocumentsCount }} in Bearbeitung</span>
|
||||
<span class="font-bold text-lg">Neue Honorarverträge</span>
|
||||
{% if newContractsCount > 0 or pendingContractsCount > 0 %}
|
||||
<span>{{ newContractsCount }} neu, {{ pendingContractsCount }} in Bearbeitung</span>
|
||||
{% endif %}
|
||||
</h2>
|
||||
<ul class="divide-y divide-gray-200">
|
||||
{% for document in documents %}
|
||||
<li class="py-2 first:pt-0 last:pb-0">
|
||||
<button type="button"
|
||||
class="flex items-center space-x-1 truncate"
|
||||
hx-get="{{ path('app_administrative_document_check', { 'uuid': document.uuid, 'r': return_url() }) }}"
|
||||
hx-target="body"
|
||||
hx-swap="beforeend">
|
||||
{{ icon('download', 'w-4 h-4 shrink-0') }}
|
||||
<span>{{ document.owner.teamer.fullName(true) }}</span>
|
||||
{% include '_partials/_dot.html.twig' %}
|
||||
<span>{{ document.typeLabel }}</span>
|
||||
</button>
|
||||
</li>
|
||||
{% else %}
|
||||
<li class="py-2 first:pt-0 last:pb-0">
|
||||
-
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<div class="max-h-64 overflow-y-scroll overflow-x-hidden">
|
||||
<ul class="divide-y divide-gray-200">
|
||||
{% for document in newContracts %}
|
||||
{% set assignment = document.disposition.assignment %}
|
||||
<li class="py-2 first:pt-0 last:pb-0">
|
||||
<button type="button"
|
||||
class="flex items-center space-x-1 truncate"
|
||||
hx-get="{{ path('app_administrative_document_check', { 'uuid': document.uuid, 'r': return_url() }) }}"
|
||||
hx-target="body"
|
||||
hx-swap="beforeend">
|
||||
{{ icon('download', 'w-4 h-4 shrink-0') }}
|
||||
<span>{{ document.owner.teamer.fullName(true) }}</span>
|
||||
{% include '_partials/_dot.html.twig' %}
|
||||
<span class="whitespace-nowrap">{{ assignment.effectivePeriod.start|date('d.m.y') }} - {{ assignment.effectivePeriod.end|date('d.m.y') }}</span>
|
||||
{% include '_partials/_dot.html.twig' %}
|
||||
<span class="whitespace-nowrap">{{ assignment.destination.hotel }}</span>
|
||||
</button>
|
||||
</li>
|
||||
{% else %}
|
||||
<li class="py-2 first:pt-0 last:pb-0">
|
||||
-
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bg-gray-100 border border-gray-200 rounded-md px-4 py-2">
|
||||
<h2 class="flex justify-between pb-2">
|
||||
<span class="font-bold text-lg">Neue Honorarnoten</span>
|
||||
{% if newInvoicesCount > 0 or pendingInvoicesCount > 0 %}
|
||||
<span>{{ newInvoicesCount }} neu, {{ pendingInvoicesCount }} in Bearbeitung</span>
|
||||
{% endif %}
|
||||
</h2>
|
||||
<div class="max-h-64 overflow-y-scroll overflow-x-hidden">
|
||||
<ul class="divide-y divide-gray-200">
|
||||
{% for document in newInvoices %}
|
||||
{% set assignment = document.disposition.assignment %}
|
||||
<li class="py-2 first:pt-0 last:pb-0">
|
||||
<button type="button"
|
||||
class="flex items-center space-x-1 truncate"
|
||||
hx-get="{{ path('app_administrative_document_check', { 'uuid': document.uuid, 'r': return_url() }) }}"
|
||||
hx-target="body"
|
||||
hx-swap="beforeend">
|
||||
{{ icon('download', 'w-4 h-4 shrink-0') }}
|
||||
<span>{{ document.owner.teamer.fullName(true) }}</span>
|
||||
<span class="whitespace-nowrap">{{ assignment.effectivePeriod.start|date('d.m.y') }} - {{ assignment.effectivePeriod.end|date('d.m.y') }}</span>
|
||||
{% include '_partials/_dot.html.twig' %}
|
||||
<span class="whitespace-nowrap">{{ assignment.destination.hotel }}</span>
|
||||
</button>
|
||||
</li>
|
||||
{% else %}
|
||||
<li class="py-2 first:pt-0 last:pb-0">
|
||||
-
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bg-gray-100 border border-gray-200 rounded-md px-4 py-2">
|
||||
<h2 class="font-bold text-lg pb-2">
|
||||
@@ -166,7 +203,7 @@
|
||||
<span>{{ overdueFeedbacksCount }} überfälllig</span>
|
||||
{% endif %}
|
||||
</h2>
|
||||
<div class="max-h-64 overflow-y-scroll">
|
||||
<div class="max-h-64 overflow-y-scroll overflow-x-hidden">
|
||||
<ul class="divide-y divide-gray-200">
|
||||
{% for disposition in overdueFeedbacks %}
|
||||
{% set assignment = disposition.assignment %}
|
||||
@@ -201,7 +238,7 @@
|
||||
<span>{{ overdueContractsCount }} überfälllig</span>
|
||||
{% endif %}
|
||||
</h2>
|
||||
<div class="max-h-64 overflow-y-scroll">
|
||||
<div class="max-h-64 overflow-y-scroll overflow-x-hidden">
|
||||
<ul class="divide-y divide-gray-200">
|
||||
{% for disposition in overdueContracts %}
|
||||
{% set assignment = disposition.assignment %}
|
||||
|
||||
Reference in New Issue
Block a user