Updated TheTool Frontend Framework & Table

This commit is contained in:
Luca Haid
2024-05-08 12:54:26 +00:00
parent 1e57d983b7
commit 58e124a461
46 changed files with 1364 additions and 2535 deletions
+54 -17
View File
@@ -16,12 +16,23 @@ $JSGlobals = ["BASE_URL" => self::getUrl("Domain"),
"HISTORIC_TICKET_API_URL" => self::getUrl("HistoricTicket/api"),
];
$additionalJS = ["plugins/vue/vue.js",
$additionalJS = [
"plugins/vue/vue.js",
"plugins/axios/axios.min.js",
"plugins/vue/tt-components/tt-page-title.js",
"plugins/moment/moment.min.js",
"plugins/daterangepicker/daterangepicker.js",
"plugins/xlsx/xlsx.min.js",
"plugins/vue/tt-components/tt-table.js",
"plugins/vue/tt-components/tt-page-title.js",
"plugins/vue/tt-components/tt-select.js",
"plugins/vue/tt-components/tt-datepicker.js",
"plugins/vue/tt-components/tt-input.js",
"plugins/vue/tt-components/tt-autocomplete.js",
"plugins/vue/tt-components/tt-icon-select.js",
"plugins/vue/tt-components/tt-number-range.js",
];
$additionalCSS = [
"plugins/daterangepicker/daterangepicker.css",
'plugins/vue/tt-components/css/tt-table.css',
];
@@ -32,8 +43,8 @@ include(realpath(dirname(__FILE__) . "/../../$mfLayoutPackage") . "/header.php")
<tt-page-title :title="window['TT_CONFIG']['PAGE_TITLE']" :path="window['TT_CONFIG']['PATH']"></tt-page-title>
<tt-table :fetch-url="window['TT_CONFIG']['HISTORIC_TICKET_API_URL'] + '?do=getHistoricTickets'"
:table-config="historicTicketTableConfig"
small ref="table">
:config="historicTicketTableConfig"
small ssr ref="table">
<template v-slot:top-buttons>
<!-- add input for global search with label and bootstrap class-->
<div class="input-group mb-3">
@@ -74,11 +85,11 @@ include(realpath(dirname(__FILE__) . "/../../$mfLayoutPackage") . "/header.php")
<div class="modal-body">
<tt-table
:fetch-url="`${window['TT_CONFIG']['HISTORIC_TICKET_API_URL']}?do=findHistoricTicket&query=${globalSearch}`"
:table-config="globalSearchModalTableConfig"
:config="globalSearchModalTableConfig"
small ref="table">
<template v-slot:ctime="{ row }">
{{ new Date(row.ctime * 1000).toLocaleString() }}
{{ window.moment(row.ctime * 1000).format('DD.MM.YYYY HH:mm') }}
</template>
<template v-slot:ticket_number="{ row }">
@@ -136,26 +147,52 @@ include(realpath(dirname(__FILE__) . "/../../$mfLayoutPackage") . "/header.php")
globalSearchModal: false,
globalSearchModalTableConfig: {
headers: [
{text: 'Ticket Number', key: 'ticket_number', filter: false},
{text: 'Erstellt', key: 'ctime', filter: false},
{text: 'Subject', key: 'ticket_subject', filter: false},
{text: 'Message', key: 'ticket_message', filter: false},
{text: 'Ticket Number', key: 'ticket_number', filter: false, sortable: false},
{text: 'Erstellt', key: 'ctime', filter: false, sortable: false},
{text: 'Subject', key: 'ticket_subject', filter: false, sortable: false},
{text: 'Message', key: 'ticket_message', filter: false, sortable: false},
],
tableHeader: 'Suchergebnisse',
key: 'HistoricTicketGlobalSearch',
},
historicTicketTableConfig: {
headers: [
{text: 'Ticket Number', key: 'ticket_number', filter: 'search'},
{text: 'Erstellt', key: 'ctime', filter: false},
{text: 'Subject', key: 'subject', filter: 'search'},
{text: 'Type', key: 'type', filter: 'search'},
{text: 'Status', key: 'status', filter: 'search'},
{text: 'Name', key: 'first_name', filter: 'search'},
{text: 'Email', key: 'email', filter: 'search'},
{text: 'Phone', key: 'phone', filter: 'search'},
{text: 'Subject', key: 'subject', filter: 'search', sortable: false},
{text: 'Type', key: 'type', filter: 'select', filterOptions: [
{value: 'BACKOFFICE', text: 'BACKOFFICE'},
{value: 'KUNDENANFRAGEN', text: 'KUNDENANFRAGEN'},
{value: 'STÖRUNGEN', text: 'STÖRUNGEN'},
{value: 'ALLGEMEINES', text: 'ALLGEMEINES'},
{value: 'TERMIN VEREINBART', text: 'TERMIN VEREINBART'},
{value: 'VERRECHNEN AB DATUM', text: 'VERRECHNEN AB DATUM'},
{value: 'ONLINE-TICKETS', text: 'ONLINE-TICKETS'},
{value: 'KÜNDIGUNG', text: 'KÜNDIGUNG'},
{value: 'BESTELLUNGEN', text: 'BESTELLUNGEN'},
{value: 'PORTIERUNG', text: 'PORTIERUNG'},
{value: 'KABEL-TV', text: 'KABEL-TV'},
{value: 'TIEFBAU', text: 'TIEFBAU'},
{value: 'ENERGIE STEIERMARK', text: 'ENERGIE STEIERMARK'},
{value: 'INTERN', text: 'INTERN'},
{value: 'FELIX', text: 'FELIX'},
{value: '0', text: '0'},
{value: 'JETTEN', text: 'JETTEN'},
]},
{text: 'Status', key: 'status', filter: 'select', filterOptions: [
{value: 'Geschlossen', text: 'Geschlossen'},
{value: 'In Evidenz', text: 'In Evidenz'},
{value: 'In Bearbeitung', text: 'In Bearbeitung'},
{value: 'Business In Bearbeitung', text: 'Business In Bearbeitung'},
{value: 'Business Angebot gelegt', text: 'Business Angebot gelegt'},
]},
{text: 'Name', key: 'first_name', filter: 'search', sortable: false},
{text: 'Email', key: 'email', filter: 'search', sortable: false},
{text: 'Phone', key: 'phone', filter: 'search', sortable: false},
],
defaultPageSize: 25,
tableHeader: 'Bestellungen',
tableHeader: 'Historische Tickets',
key: 'HistoricTicket',
}
},
methods: {