@extends('layouts.app')

@section('title', 'Modifica Ripartizione Spesa')

@section('content')
<div class="container-fluid">
    <div class="row">
        <div class="col-12">
            <div class="card">
                <div class="card-header">
                    <h3 class="card-title">Modifica Ripartizione Spesa</h3>
                    <div class="card-tools">
                        <a href="{{ route('admin.ripartizioni-spesa.show', $ripartizione->id) }}" class="btn btn-info btn-sm">
                            <i class="fas fa-eye"></i> Visualizza
                        </a>
                        <a href="{{ route('admin.ripartizioni-spesa.index') }}" class="btn btn-default btn-sm">
                            <i class="fas fa-arrow-left"></i> Torna all'elenco
                        </a>
                    </div>
                </div>

                <form action="{{ route('admin.ripartizioni-spesa.update', $ripartizione->id) }}" method="POST">
                    @csrf
                    @method('PUT')
                    <div class="card-body">
                        <div class="row">
                            <div class="col-md-6">
                                <div class="form-group">
                                    <label for="voce_spesa_id">Voce di Spesa *</label>
                                    <select class="form-control select2 @error('voce_spesa_id') is-invalid @enderror" 
                                            id="voce_spesa_id" name="voce_spesa_id" required>
                                        <option value="">Seleziona una voce di spesa</option>
                                        @foreach($voci_spesa as $voce)
                                            <option value="{{ $voce->id }}" 
                                                {{ old('voce_spesa_id', $ripartizione->voce_spesa_id) == $voce->id ? 'selected' : '' }}>
                                                {{ $voce->codice }} - {{ $voce->descrizione }}
                                            </option>
                                        @endforeach
                                    </select>
                                    @error('voce_spesa_id')
                                        <div class="invalid-feedback">{{ $message }}</div>
                                    @enderror
                                </div>
                            </div>

                            <div class="col-md-6">
                                <div class="form-group">
                                    <label for="stabile_id">Stabile *</label>
                                    <select class="form-control select2 @error('stabile_id') is-invalid @enderror" 
                                            id="stabile_id" name="stabile_id" required>
                                        <option value="">Seleziona uno stabile</option>
                                        @foreach($stabili as $stabile)
                                            <option value="{{ $stabile->id }}" 
                                                {{ old('stabile_id', $ripartizione->stabile_id) == $stabile->id ? 'selected' : '' }}>
                                                {{ $stabile->denominazione }}
                                            </option>
                                        @endforeach
                                    </select>
                                    @error('stabile_id')
                                        <div class="invalid-feedback">{{ $message }}</div>
                                    @enderror
                                </div>
                            </div>
                        </div>

                        <div class="row">
                            <div class="col-md-6">
                                <div class="form-group">
                                    <label for="tabella_millesimale_id">Tabella Millesimale *</label>
                                    <select class="form-control select2 @error('tabella_millesimale_id') is-invalid @enderror" 
                                            id="tabella_millesimale_id" name="tabella_millesimale_id" required>
                                        <option value="">Seleziona una tabella millesimale</option>
                                        @foreach($tabelle_millesimali as $tabella)
                                            <option value="{{ $tabella->id }}" 
                                                {{ old('tabella_millesimale_id', $ripartizione->tabella_millesimale_id) == $tabella->id ? 'selected' : '' }}>
                                                {{ $tabella->descrizione }}
                                            </option>
                                        @endforeach
                                    </select>
                                    @error('tabella_millesimale_id')
                                        <div class="invalid-feedback">{{ $message }}</div>
                                    @enderror
                                </div>
                            </div>

                            <div class="col-md-6">
                                <div class="form-group">
                                    <label for="importo_totale">Importo Totale *</label>
                                    <div class="input-group">
                                        <input type="number" step="0.01" min="0" 
                                               class="form-control @error('importo_totale') is-invalid @enderror" 
                                               id="importo_totale" name="importo_totale" 
                                               value="{{ old('importo_totale', $ripartizione->importo_totale) }}" required>
                                        <div class="input-group-append">
                                            <span class="input-group-text">€</span>
                                        </div>
                                        @error('importo_totale')
                                            <div class="invalid-feedback">{{ $message }}</div>
                                        @enderror
                                    </div>
                                </div>
                            </div>
                        </div>

                        <div class="row">
                            <div class="col-md-4">
                                <div class="form-group">
                                    <label for="data_ripartizione">Data Ripartizione *</label>
                                    <input type="date" class="form-control @error('data_ripartizione') is-invalid @enderror" 
                                           id="data_ripartizione" name="data_ripartizione" 
                                           value="{{ old('data_ripartizione', $ripartizione->data_ripartizione->format('Y-m-d')) }}" required>
                                    @error('data_ripartizione')
                                        <div class="invalid-feedback">{{ $message }}</div>
                                    @enderror
                                </div>
                            </div>

                            <div class="col-md-4">
                                <div class="form-group">
                                    <label for="stato">Stato</label>
                                    <select class="form-control @error('stato') is-invalid @enderror" 
                                            id="stato" name="stato">
                                        <option value="bozza" {{ old('stato', $ripartizione->stato) == 'bozza' ? 'selected' : '' }}>Bozza</option>
                                        <option value="definitiva" {{ old('stato', $ripartizione->stato) == 'definitiva' ? 'selected' : '' }}>Definitiva</option>
                                        <option value="annullata" {{ old('stato', $ripartizione->stato) == 'annullata' ? 'selected' : '' }}>Annullata</option>
                                    </select>
                                    @error('stato')
                                        <div class="invalid-feedback">{{ $message }}</div>
                                    @enderror
                                </div>
                            </div>

                            <div class="col-md-4">
                                <div class="form-group">
                                    <label for="anno_competenza">Anno Competenza *</label>
                                    <input type="number" min="2000" max="2099" 
                                           class="form-control @error('anno_competenza') is-invalid @enderror" 
                                           id="anno_competenza" name="anno_competenza" 
                                           value="{{ old('anno_competenza', $ripartizione->anno_competenza) }}" required>
                                    @error('anno_competenza')
                                        <div class="invalid-feedback">{{ $message }}</div>
                                    @enderror
                                </div>
                            </div>
                        </div>

                        <div class="row">
                            <div class="col-12">
                                <div class="form-group">
                                    <label for="note">Note</label>
                                    <textarea class="form-control @error('note') is-invalid @enderror" 
                                              id="note" name="note" rows="3" 
                                              placeholder="Note aggiuntive sulla ripartizione...">{{ old('note', $ripartizione->note) }}</textarea>
                                    @error('note')
                                        <div class="invalid-feedback">{{ $message }}</div>
                                    @enderror
                                </div>
                            </div>
                        </div>

                        @if($ripartizione->dettagli->count() > 0)
                        <div class="row">
                            <div class="col-12">
                                <div class="card">
                                    <div class="card-header">
                                        <h5>Dettagli Ripartizione</h5>
                                    </div>
                                    <div class="card-body">
                                        <div class="table-responsive">
                                            <table class="table table-bordered table-striped">
                                                <thead>
                                                    <tr>
                                                        <th>Unità Immobiliare</th>
                                                        <th>Millesimi</th>
                                                        <th>Importo</th>
                                                        <th>Stato</th>
                                                    </tr>
                                                </thead>
                                                <tbody>
                                                    @foreach($ripartizione->dettagli as $dettaglio)
                                                    <tr>
                                                        <td>{{ $dettaglio->unitaImmobiliare->denominazione }}</td>
                                                        <td>{{ $dettaglio->millesimi }}</td>
                                                        <td>€ {{ number_format($dettaglio->importo, 2, ',', '.') }}</td>
                                                        <td>
                                                            <span class="badge badge-{{ $dettaglio->stato == 'pagato' ? 'success' : ($dettaglio->stato == 'sospeso' ? 'warning' : 'info') }}">
                                                                {{ ucfirst($dettaglio->stato) }}
                                                            </span>
                                                        </td>
                                                    </tr>
                                                    @endforeach
                                                </tbody>
                                            </table>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                        @endif
                    </div>

                    <div class="card-footer">
                        <button type="submit" class="btn btn-primary">
                            <i class="fas fa-save"></i> Aggiorna Ripartizione
                        </button>
                        <a href="{{ route('admin.ripartizioni-spesa.show', $ripartizione->id) }}" class="btn btn-info">
                            <i class="fas fa-eye"></i> Visualizza
                        </a>
                        <a href="{{ route('admin.ripartizioni-spesa.index') }}" class="btn btn-default">
                            <i class="fas fa-times"></i> Annulla
                        </a>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>
@endsection

@section('scripts')
<script>
$(document).ready(function() {
    // Initialize Select2
    $('.select2').select2({
        theme: 'bootstrap4',
        width: '100%'
    });

    // Handle stabile change to filter tabelle millesimali
    $('#stabile_id').on('change', function() {
        var stabileId = $(this).val();
        var tabellaSelect = $('#tabella_millesimale_id');
        
        if (stabileId) {
            $.ajax({
                url: '{{ route("admin.stabili.tabelle-millesimali", ":id") }}'.replace(':id', stabileId),
                type: 'GET',
                success: function(data) {
                    tabellaSelect.empty();
                    tabellaSelect.append('<option value="">Seleziona una tabella millesimale</option>');
                    $.each(data, function(index, tabella) {
                        tabellaSelect.append('<option value="' + tabella.id + '">' + tabella.descrizione + '</option>');
                    });
                }
            });
        } else {
            tabellaSelect.empty();
            tabellaSelect.append('<option value="">Seleziona una tabella millesimale</option>');
        }
    });
});
</script>
@endsection
