|
|
@@ -29,10 +29,10 @@
|
|
|
<b>Periodo</b>
|
|
|
</div>
|
|
|
<div class="col-12 mb-2">
|
|
|
- <input id="dateFrom" type="date" class="form-control filterFrom" wire:model="filterFrom" >
|
|
|
+ <input id="dateFrom" type="date" class="form-control filterFrom">
|
|
|
</div>
|
|
|
<div class="col-12">
|
|
|
- <input id="dateTo" type="date" class="form-control filterTo" wire:model="filterTo" >
|
|
|
+ <input id="dateTo" type="date" class="form-control filterTo" >
|
|
|
</div>
|
|
|
<div class="col-6 mt-2">
|
|
|
<button class="btn--ui" onclick="setToday('{{date("Y-m-d")}}')">OGGI</button>
|
|
|
@@ -48,7 +48,7 @@
|
|
|
<b>Stato</b>
|
|
|
</div>
|
|
|
<div class="col-12">
|
|
|
- <select class="form-select" wire:model="filterStatus" onchange="destroyDataTable()">
|
|
|
+ <select class="form-select filterStatus">
|
|
|
<option value="">--Seleziona--
|
|
|
<option value="1">Attiva
|
|
|
<option value="99">Annullata
|
|
|
@@ -59,8 +59,8 @@
|
|
|
</div>
|
|
|
<div class="row g-3">
|
|
|
<div class="col-md-12" style="text-align:right">
|
|
|
- <button class="btn--ui lightGrey" wire:click.prevent="disableSearch()" onclick="destroyDataTable()">Reset</button>
|
|
|
- <button class="btn--ui" wire:click.prevent="search()" onclick="destroyDataTable()">FILTRA</button>
|
|
|
+ <button class="btn--ui_outline light" onclick="reset()">CANCELLA</button>
|
|
|
+ <button class="btn--ui" onclick="loadDataTable()">FILTRA</button>
|
|
|
</div>
|
|
|
</div>
|
|
|
<hr size="1">
|
|
|
@@ -83,27 +83,28 @@
|
|
|
</tr>
|
|
|
</thead>
|
|
|
<tbody id="checkall-target">
|
|
|
- @foreach($records as $record)
|
|
|
- <tr>
|
|
|
- <td>{{$record->year}}</td>
|
|
|
- <td>{{$record->number}}</td>
|
|
|
- <td>{{$record->type == 'IN' ? ($record->member->last_name) : 'Uscita'}}</td>
|
|
|
- <td>{{$record->type == 'IN' ? ($record->member->first_name) : ''}}</td>
|
|
|
- <td>
|
|
|
- <span class="tablesaw-cell-content">
|
|
|
- <span class="badge tessera-badge {{$record->status == 1 ? 'active' : 'suspended'}}">{{$record->status == 1 ? 'Attivo' : 'Annullata'}}</span>
|
|
|
- </span>
|
|
|
- </td>
|
|
|
- <td>{{date("d/m/Y", strtotime($record->date))}}</td>
|
|
|
- <td>{{formatPrice($record->rows->sum('amount'))}}</td>
|
|
|
- <td>
|
|
|
- <button type="button" class="btn u" onclick="document.location.href='/in?id={{$record->record_id}}'" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="visualizza ricevuta"><i class="fa-regular fa-eye"></i></button>
|
|
|
- <a target="_blank" class="btn u" href="/receipt/{{$record->id}}" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="stampa ricevuta"><i class="fa-regular fa-file-lines"></i></a>
|
|
|
- <a target="_blank" class="btn u" onclick="sendMail({{$record->id}})"><i class="fa-regular fa-envelope" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="invia email"></i></a>
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- @endforeach
|
|
|
-
|
|
|
+ @if(false)
|
|
|
+ @foreach($records as $record)
|
|
|
+ <tr>
|
|
|
+ <td>{{$record->year}}</td>
|
|
|
+ <td>{{$record->number}}</td>
|
|
|
+ <td>{{$record->type == 'IN' ? ($record->member->last_name) : 'Uscita'}}</td>
|
|
|
+ <td>{{$record->type == 'IN' ? ($record->member->first_name) : ''}}</td>
|
|
|
+ <td>
|
|
|
+ <span class="tablesaw-cell-content">
|
|
|
+ <span class="badge tessera-badge {{$record->status == 1 ? 'active' : 'suspended'}}">{{$record->status == 1 ? 'Attivo' : 'Annullata'}}</span>
|
|
|
+ </span>
|
|
|
+ </td>
|
|
|
+ <td>{{date("d/m/Y", strtotime($record->date))}}</td>
|
|
|
+ <td>{{formatPrice($record->rows->sum('amount'))}}</td>
|
|
|
+ <td>
|
|
|
+ <button type="button" class="btn u" onclick="document.location.href='/in?id={{$record->record_id}}'" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="visualizza ricevuta"><i class="fa-regular fa-eye"></i></button>
|
|
|
+ <a target="_blank" class="btn u" href="/receipt/{{$record->id}}" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="stampa ricevuta"><i class="fa-regular fa-file-lines"></i></a>
|
|
|
+ <a target="_blank" class="btn u" onclick="sendMail({{$record->id}})"><i class="fa-regular fa-envelope" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="invia email"></i></a>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ @endforeach
|
|
|
+ @endif
|
|
|
</tbody>
|
|
|
</table>
|
|
|
|
|
|
@@ -111,9 +112,87 @@
|
|
|
|
|
|
</div>
|
|
|
|
|
|
+
|
|
|
+@push('scripts')
|
|
|
+ <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
|
|
|
+ <style>
|
|
|
+ .select2-container--default .select2-selection--single{
|
|
|
+ background-color: #E9F0F5;
|
|
|
+ border: 0.0625rem solid #DFE5EB;
|
|
|
+ font-size: 0.75rem;
|
|
|
+ }
|
|
|
+ .select2-selection
|
|
|
+ {
|
|
|
+ height: 38px !important;
|
|
|
+ }
|
|
|
+ .select2-selection__rendered
|
|
|
+ {
|
|
|
+ padding-top:3px;
|
|
|
+ }
|
|
|
+ .select2 {
|
|
|
+ width:100% !important;
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+ <script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
|
|
|
+ <script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
|
|
+@endpush
|
|
|
+
|
|
|
@push('scripts')
|
|
|
<link href="/css/datatables.css" rel="stylesheet" />
|
|
|
<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
|
|
|
+
|
|
|
+
|
|
|
+ <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
|
|
|
+ <style>
|
|
|
+ .select2-container--default .select2-selection--single{
|
|
|
+ background-color: #E9F0F5;
|
|
|
+ border: 0.0625rem solid #DFE5EB;
|
|
|
+ font-size: 0.75rem;
|
|
|
+ }
|
|
|
+ .select2-selection
|
|
|
+ {
|
|
|
+ height: 38px !important;
|
|
|
+ }
|
|
|
+ .select2-selection__rendered
|
|
|
+ {
|
|
|
+ padding-top:3px;
|
|
|
+ }
|
|
|
+ .select2 {
|
|
|
+ width:100% !important;
|
|
|
+ }
|
|
|
+ .select2-selection--multiple{
|
|
|
+ overflow: hidden !important;
|
|
|
+ height: auto !important;
|
|
|
+ }
|
|
|
+ .select2-container {
|
|
|
+ box-sizing: border-box;
|
|
|
+ display: inline-block;
|
|
|
+ margin: 0;
|
|
|
+ position: relative;
|
|
|
+ vertical-align: middle;
|
|
|
+ }
|
|
|
+ .select2-container .select2-selection--single {
|
|
|
+ box-sizing: border-box;
|
|
|
+ cursor: pointer;
|
|
|
+ display: block;
|
|
|
+ height: 38px;
|
|
|
+ user-select: none;
|
|
|
+ -webkit-user-select: none;
|
|
|
+ }
|
|
|
+ .select2-container .select2-selection--single .select2-selection__rendered {
|
|
|
+ display: block;
|
|
|
+ padding-left: 8px;
|
|
|
+ padding-right: 20px;
|
|
|
+ overflow: hidden;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ white-space: nowrap;
|
|
|
+ }
|
|
|
+ .select2-selection__choice__display{
|
|
|
+ color:#000000 !important;
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+ <script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
|
|
|
+ <script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
|
|
<script src="/assets/js/datatables.js"></script>
|
|
|
<script src="https://cdn.datatables.net/buttons/3.0.2/js/buttons.dataTables.js"></script>
|
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.10.1/jszip.min.js"></script>
|
|
|
@@ -128,6 +207,13 @@
|
|
|
loadDataTable();
|
|
|
} );
|
|
|
|
|
|
+ $('.filterStatus').select2();
|
|
|
+
|
|
|
+ Livewire.on('load-data-table', () => {
|
|
|
+ $('.filterStatus').select2();
|
|
|
+ loadDataTable();
|
|
|
+ });
|
|
|
+
|
|
|
Livewire.on('load-data-table', () => {
|
|
|
setTimeout(function() {loadDataTable()}, 100);
|
|
|
});
|
|
|
@@ -164,12 +250,78 @@
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+ function reset()
|
|
|
+ {
|
|
|
+ $('.filterStatus').val(null).trigger("change");
|
|
|
+ $('.filterFrom').val('');
|
|
|
+ $('.filterTo').val('');
|
|
|
+ destroyDataTable();
|
|
|
+ loadDataTable();
|
|
|
+ }
|
|
|
+
|
|
|
function loadDataTable(){
|
|
|
+
|
|
|
+ if ( $.fn.DataTable.isDataTable('#tablesaw-350') ) {
|
|
|
+ $('#tablesaw-350').DataTable().destroy();
|
|
|
+ }
|
|
|
+
|
|
|
+ var filterStatus = $('.filterStatus').val();
|
|
|
+ var filterFrom = $('.filterFrom').val();
|
|
|
+ var filterTo = $('.filterTo').val();
|
|
|
+
|
|
|
$('#tablesaw-350').DataTable({
|
|
|
fixedHeader: true,
|
|
|
+ serverSide: true,
|
|
|
+ ajax: {
|
|
|
+ url : '/get_receipts?filterStatus=' + filterStatus + '&filterFrom=' + filterFrom + '&filterTo=' + filterTo,
|
|
|
+ dataSrc: function (json){
|
|
|
+ if(json.totals){
|
|
|
+ totals = json.totals;
|
|
|
+ }
|
|
|
+ return json.data;
|
|
|
+ }
|
|
|
+ },
|
|
|
thead: {
|
|
|
'th': {'background-color': 'blue'}
|
|
|
},
|
|
|
+ columns: [
|
|
|
+ {
|
|
|
+ data: 'year'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ data: 'number'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ data: 'last_name'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ data: 'first_name'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ data: "status",
|
|
|
+ render: function (data){
|
|
|
+ // Split class and text
|
|
|
+ var ret = '<span class="tablesaw-cell-content"><span class="badge tessera-badge ' + (data == 1 ? 'active' : 'suspended') + '">' + (data == 1 ? 'Attiva' : 'Annullata') + '</span></span>';
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ data: 'date'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ data: 'totals'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ data: "action",
|
|
|
+ render: function (data){
|
|
|
+ // Split class and text
|
|
|
+ var ret = '<button type="button" class="btn u" onclick="document.location.href=' + "'" + '/in?id=' + data + "'" + '" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="visualizza ricevuta"><i class="fa-regular fa-eye"></i></button>';
|
|
|
+ ret += '<a target="_blank" class="btn u" href="/receipt/' + data + '" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="stampa ricevuta"><i class="fa-regular fa-file-lines"></i></a>';
|
|
|
+ ret += '<a target="_blank" class="btn u" onclick="sendMail(' + data + ')"><i class="fa-regular fa-envelope" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-placement="bottom" data-bs-content="invia email"></i></a>';
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ],
|
|
|
layout: {
|
|
|
topStart : null,
|
|
|
topEnd : null,
|
|
|
@@ -213,7 +365,6 @@
|
|
|
},
|
|
|
top1C :'search',
|
|
|
},
|
|
|
- order: [[0, 'desc'], [1, 'desc']],
|
|
|
pagingType: 'numbers',
|
|
|
"language": {
|
|
|
"url": "/assets/js/Italian.json"
|