WIP: Implement teamer document upload handling

This commit is contained in:
Björn Fromme
2023-10-12 19:50:08 +02:00
parent bfd18b21ce
commit 6df725edc4
25 changed files with 611 additions and 165 deletions
+71 -87
View File
@@ -6,94 +6,78 @@
<h1 class="text-2xl font-bold pb-8">
Dokumentenübersicht
</h1>
<div class="data-table-wrapper">
<div class="data-table-wrapper__inner">
<table class="data-table">
<thead>
<tr>
<th>
{{ knp_pagination_sortable(pagination, 'Dateiname', 'upload.originalFilename') }}
</th>
<th>
Dateigröße
</th>
<th>
Upload am
</th>
<th>
Upload von
</th>
<th></th>
</tr>
</thead>
<tbody>
{% for document in pagination %}
<div class="data-table-wrapper">
<div class="data-table-wrapper__inner">
<table class="data-table">
<thead>
<tr>
<td>
{{ document.displayName ? document.displayName : document.originalFilename }}
</td>
<td>
{{ document.size|file_size }}
</td>
<td>
{{ document.createdAt|date('d.m.Y') }}
</td>
<td>
{{ document.createdBy }}
</td>
<td>
<div class="flex items-center space-x-2 justify-end">
<button type="button"
class="text-red-500"
{{ stimulus_controller('modal-button', [], [], {'confirmation-modal': '#confirmation-modal'}) }}
{{ stimulus_action('modal-button', 'confirmation', null, {
'title': 'Bist du sicher?',
'content': 'Möchtest du das Dokument wirklich löschen?',
'target-url': path('app_admin_document_delete', { 'uuid': document.uuid })
}) }}>
{{ icon('delete') }}
</button>
<button type="button"
{{ stimulus_controller('modal-button', [], [], {'ajax-modal': '#ajax-modal'}) }}
{{ stimulus_action('modal-button', 'ajax', null, {
'title': 'Dokument ersetzen',
'url': path('app_admin_document_replace', { 'uuid': document.uuid })
}) }}>
{{ icon('refresh') }}
</button>
<button type="button"
{{ stimulus_controller('modal-button', [], [], {'ajax-modal': '#ajax-modal'}) }}
{{ stimulus_action('modal-button', 'ajax', null, {
'title': 'Dokument umbenennen',
'url': path('app_admin_document_rename', { 'uuid': document.uuid })
}) }}>
{{ icon('edit') }}
</button>
<a href="{{ path('app_common_download', { 'uuid': document.uuid }) }}"
title="Download">
{{ icon('download') }}
</a>
</div>
</td>
<th>
{{ knp_pagination_sortable(pagination, 'Einsatzzeitraum', 'destination.dateFrom') }}
</th>
<th>
{{ knp_pagination_sortable(pagination, 'Jobprofil', 'job_profile.name') }}
</th>
<th>
{{ knp_pagination_sortable(pagination, 'Destination', 'destination.product') }}
</th>
<th>
{{ knp_pagination_sortable(pagination, 'Dokument', 'upload.type') }}
</th>
<th>
{{ knp_pagination_sortable(pagination, 'Teamer', 'teamer.lastName') }}
</th>
<th>
{{ knp_pagination_sortable(pagination, 'Status', 'disposition.status') }}
</th>
<th></th>
</tr>
{% else %}
<tr>
<td colspan="7">
Keine Daten...
</td>
</tr>
{% endfor %}
</tbody>
</table>
</thead>
<tbody>
{% for upload in pagination %}
{% set disposition = upload.disposition %}
{% set assignment = disposition.assignment %}
<tr>
<td>
{{ assignment.destination.dateFrom|date('d.m.Y') }}
-
{{ assignment.destination.dateTo|date('d.m.Y') }}
</td>
<td>
{{ assignment.jobProfile.name }}
</td>
<td>
{{ assignment.destination.product }}
<br>
{{ assignment.destination.hotel }}
</td>
<td>
{{ ('label.document.type.' ~ upload.type)|trans }}
</td>
<td>
{{ disposition.teamer }}
</td>
<td>
{{ ('label.document.status.' ~ upload.status)|trans }}
</td>
<td>
<div class="flex items-center space-x-2">
<a href="{{ path('app_common_download', { 'uuid': upload.uuid }) }}"
title="Download"
target="_blank">
{{ icon('download') }}
</a>
</div>
</td>
</tr>
{% else %}
<tr>
<td colspan="7">
Keine Daten...
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<button type="button"
class="btn"
{{ stimulus_controller('modal-button', [], [], {'ajax-modal': '#ajax-modal'}) }}
{{ stimulus_action('modal-button', 'ajax', null, {
'title': 'Dokumente hinzufügen',
'url': path('app_admin_document_upload')
}) }}>
Dokumente hinzufügen
</button>
{% endblock %}
@@ -1,9 +0,0 @@
{{ form_start(form) }}
<div class="pb-4">
{{ form_row(form.displayName) }}
</div>
<button type="submit" class="btn">
aktualisieren
</button>
{{ form_rest(form) }}
{{ form_end(form) }}
@@ -1,14 +0,0 @@
{{ form_start(form) }}
<div class="pb-4">
{% include '_partials/_upload_collection_form.html.twig' with {
'endpoint_upload': path('_uploader_upload_document'),
'max_filesize': 5,
'max_files': 1,
'accepted_files': 'application/pdf',
} %}
</div>
<button type="submit" class="btn">
ersetzen
</button>
{{ form_rest(form) }}
{{ form_end(form) }}
-13
View File
@@ -1,13 +0,0 @@
{{ form_start(form) }}
<div class="pb-4">
{% include '_partials/_upload_collection_form.html.twig' with {
'endpoint_upload': path('_uploader_upload_document'),
'max_filesize': 5,
'accepted_files': 'application/pdf',
} %}
</div>
<button type="submit" class="btn">
Uploads speichern
</button>
{{ form_rest(form) }}
{{ form_end(form) }}