netgescon-master/_DUPLICATES_MOVED/resources/views/admin/voci-spesa/show.blade.php

277 lines
17 KiB
PHP

@extends('admin.layouts.netgescon')
@section('title', 'Voce di Spesa - ' . $voceSpesa->denominazione)
@section('content')
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header d-flex justify-content-between align-items-center">
<h3 class="card-title">
<i class="fas fa-receipt"></i> {{ $voceSpesa->denominazione }}
<span class="badge bg-{{ $voceSpesa->stato == 'attiva' ? 'success' : ($voceSpesa->stato == 'inattiva' ? 'warning' : 'secondary') }}">
{{ ucfirst($voceSpesa->stato) }}
</span>
</h3>
<div class="btn-group">
<a href="{{ route('admin.voci-spesa.edit', $voceSpesa) }}" class="btn btn-warning">
<i class="fas fa-edit"></i> Modifica
</a>
<form method="POST" action="{{ route('admin.voci-spesa.duplicate', $voceSpesa) }}" style="display: inline;">
@csrf
<button type="submit" class="btn btn-info">
<i class="fas fa-copy"></i> Duplica
</button>
</form>
<a href="{{ route('admin.voci-spesa.index') }}" class="btn btn-secondary">
<i class="fas fa-arrow-left"></i> Torna all'elenco
</a>
</div>
</div>
<div class="card-body">
<div class="row">
<!-- Informazioni Base -->
<div class="col-md-6">
<div class="card mb-3">
<div class="card-header">
<h5 class="card-title mb-0">
<i class="fas fa-info-circle"></i> Informazioni Base
</h5>
</div>
<div class="card-body">
<table class="table table-borderless">
<tr>
<td class="fw-bold">Codice:</td>
<td><code>{{ $voceSpesa->codice_spesa }}</code></td>
</tr>
<tr>
<td class="fw-bold">Stabile:</td>
<td>{{ $voceSpesa->stabile->denominazione }}</td>
</tr>
<tr>
<td class="fw-bold">Categoria:</td>
<td>
<span class="badge bg-info">{{ $voceSpesa->categoria }}</span>
@if($voceSpesa->sottocategoria)
<br><small class="text-muted">{{ $voceSpesa->sottocategoria }}</small>
@endif
</td>
</tr>
<tr>
<td class="fw-bold">Importo Previsto:</td>
<td>
@if($voceSpesa->importo_previsto)
<span class="text-success">€ {{ number_format($voceSpesa->importo_previsto, 2, ',', '.') }}</span>
@else
<span class="text-muted">Non specificato</span>
@endif
</td>
</tr>
<tr>
<td class="fw-bold">Periodicità:</td>
<td>
@if($voceSpesa->periodicita)
<span class="badge bg-secondary">{{ ucfirst(str_replace('_', ' ', $voceSpesa->periodicita)) }}</span>
@else
<span class="text-muted">Non specificata</span>
@endif
</td>
</tr>
<tr>
<td class="fw-bold">Ripartizione Personalizzata:</td>
<td>
@if($voceSpesa->ripartizione_personalizzata)
<span class="badge bg-warning">Sì</span>
@else
<span class="badge bg-success">No</span>
@endif
</td>
</tr>
</table>
</div>
</div>
</div>
<!-- Configurazione Ripartizione -->
<div class="col-md-6">
<div class="card mb-3">
<div class="card-header">
<h5 class="card-title mb-0">
<i class="fas fa-chart-pie"></i> Configurazione Ripartizione
</h5>
</div>
<div class="card-body">
<table class="table table-borderless">
<tr>
<td class="fw-bold">Tabella Millesimale Default:</td>
<td>
<strong>{{ $voceSpesa->tabellaMillesimaleDefault->denominazione }}</strong>
<br><small class="text-muted">{{ $voceSpesa->tabellaMillesimaleDefault->tipo_tabella }}</small>
</td>
</tr>
<tr>
<td class="fw-bold">Ripartizioni Create:</td>
<td>
<span class="badge bg-primary">{{ $voceSpesa->ripartizioniSpese->count() }}</span>
@if($voceSpesa->ripartizioniSpese->count() > 0)
<br><small class="text-muted">
Ultima: {{ $voceSpesa->ripartizioniSpese->first()->created_at->format('d/m/Y') }}
</small>
@endif
</td>
</tr>
<tr>
<td class="fw-bold">Totale Ripartito:</td>
<td>
@php
$totaleRipartito = $voceSpesa->ripartizioniSpese->sum('importo_totale');
@endphp
@if($totaleRipartito > 0)
<span class="text-success">€ {{ number_format($totaleRipartito, 2, ',', '.') }}</span>
@else
<span class="text-muted">€ 0,00</span>
@endif
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
<!-- Descrizione e Note -->
@if($voceSpesa->descrizione || $voceSpesa->note || $voceSpesa->tags)
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">
<h5 class="card-title mb-0">
<i class="fas fa-sticky-note"></i> Descrizione e Note
</h5>
</div>
<div class="card-body">
@if($voceSpesa->descrizione)
<div class="mb-3">
<strong>Descrizione:</strong>
<p class="mt-2">{{ $voceSpesa->descrizione }}</p>
</div>
@endif
@if($voceSpesa->tags)
<div class="mb-3">
<strong>Tags:</strong>
<div class="mt-2">
@foreach(explode(',', $voceSpesa->tags) as $tag)
<span class="badge bg-light text-dark me-1">{{ trim($tag) }}</span>
@endforeach
</div>
</div>
@endif
@if($voceSpesa->note)
<div class="mb-3">
<strong>Note:</strong>
<p class="mt-2">{{ $voceSpesa->note }}</p>
</div>
@endif
</div>
</div>
</div>
</div>
@endif
<!-- Ripartizioni Associate -->
@if($voceSpesa->ripartizioniSpese->count() > 0)
<div class="row mt-4">
<div class="col-12">
<div class="card">
<div class="card-header d-flex justify-content-between align-items-center">
<h5 class="card-title mb-0">
<i class="fas fa-chart-pie"></i> Ripartizioni Associate
</h5>
<a href="{{ route('admin.ripartizioni-spesa.create', ['voce_spesa_id' => $voceSpesa->id]) }}" class="btn btn-primary btn-sm">
<i class="fas fa-plus"></i> Nuova Ripartizione
</a>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th>Codice</th>
<th>Descrizione</th>
<th>Importo</th>
<th>Data</th>
<th>Stato</th>
<th>Azioni</th>
</tr>
</thead>
<tbody>
@foreach($voceSpesa->ripartizioniSpese as $ripartizione)
<tr>
<td><code>{{ $ripartizione->codice_ripartizione }}</code></td>
<td>{{ $ripartizione->descrizione }}</td>
<td>€ {{ number_format($ripartizione->importo_totale, 2, ',', '.') }}</td>
<td>{{ $ripartizione->data_ripartizione->format('d/m/Y') }}</td>
<td>
<span class="badge bg-{{ $ripartizione->stato == 'confermata' ? 'success' : 'warning' }}">
{{ ucfirst($ripartizione->stato) }}
</span>
</td>
<td>
<a href="{{ route('admin.ripartizioni-spesa.show', $ripartizione) }}" class="btn btn-sm btn-outline-primary">
<i class="fas fa-eye"></i>
</a>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
@endif
<!-- Informazioni Sistema -->
<div class="row mt-4">
<div class="col-12">
<div class="card">
<div class="card-header">
<h5 class="card-title mb-0">
<i class="fas fa-info-circle"></i> Informazioni Sistema
</h5>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<small class="text-muted">
<strong>Creato:</strong> {{ $voceSpesa->created_at->format('d/m/Y H:i:s') }}
@if($voceSpesa->createdBy)
da {{ $voceSpesa->createdBy->name }}
@endif
</small>
</div>
<div class="col-md-6">
<small class="text-muted">
<strong>Ultimo aggiornamento:</strong> {{ $voceSpesa->updated_at->format('d/m/Y H:i:s') }}
@if($voceSpesa->updatedBy)
da {{ $voceSpesa->updatedBy->name }}
@endif
</small>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection