@extends('layouts.dashboard.inface', ['section' => 'finance']) @section('content')
@include('realEstates.finance.nav',['title' => 'Administración · '.($agreement->agreement_number ?? '#'.$agreement->id)])

{{ $agreement->owner_name }} · {{ $agreement->development->name }}

{{ config('finance.management_statuses.'.$agreement->status) }} · {{ $agreement->currency }} · {{ $agreement->start_date }} / {{ $agreement->end_date ?? 'Vigencia abierta' }}

{{ $agreement->project?->name ?? 'Sin proyecto asociado' }}

{{ $agreement->notes }}

Creado por {{ $agreement->created_by }} · Aprobado por {{ $agreement->approved_by ?? '—' }} · {{ $agreement->approved_at }}

@can('management_agreements.manage')Editar / cambiar estado@if(in_array($agreement->status,['draft','active'],true))Agregar compensación@endif @endcan @can('financial_reports.view')Descargar estado CSV@endcan
@foreach(['recognized' => 'Honorarios reconocidos','paid' => 'Honorarios cobrados','pending' => 'Pendiente de cobro'] as $key => $label)

{{ $label }} · {{ $agreement->currency }}

{{ \App\Domain\Finance\Money::format($totals[$key]) }}

@endforeach

Compensaciones pactadas

Los grupos mixtos organizan componentes: no se suman otra vez. Revisa cada componente para registrar liquidaciones, cobros, asignaciones o recepciones.

@forelse($rows as $row)@php($comp = $row['compensation'])@foreach(['recognized','paid','pending'] as $key)@endforeach@empty@endforelse
Concepto / grupoTipo / pactadoReconocidoCobradoPendiente
{{ $comp->description }}

{{ $comp->parent?->description }} {{ $comp->active ? '' : '· Inactivo' }}

{{ config('finance.management_compensation_types.'.$comp->type) }}

@if($comp->fixed_amount !== null){{ \App\Domain\Finance\Money::format($comp->fixed_amount) }}@elseif($comp->percentage !== null){{ \App\Domain\Finance\FinanceNumber::format($comp->percentage) }}%@elseif($comp->amount_per_lot !== null){{ \App\Domain\Finance\Money::format($comp->amount_per_lot) }} / lote @elseif($row['physical']){{ \App\Domain\Finance\FinanceNumber::format($row['physical']['agreed']) }} {{ $comp->type === 'lots' ? 'lotes' : 'm²' }}@else Grupo de componentes @endif

{{ \App\Domain\Finance\Money::format($row[$key]) }}
Agrega una compensación o un grupo mixto.
@foreach($rows as $row)@if($row['physical'])@php($p = $row['physical'])

{{ $row['compensation']->description }} · {{ $row['compensation']->type === 'lots' ? 'lotes' : 'm²' }}

@foreach(['agreed'=>'Pactado','assigned'=>'Asignado (incluye recibido)','received'=>'Recibido','pending_assignment'=>'Por asignar','pending_receipt'=>'Por recibir'] as $key=>$label)

{{ $label }}

{{ \App\Domain\Finance\FinanceNumber::format($p[$key]) }}

@endforeach

Valuación registrada: {{ \App\Domain\Finance\Money::format($p['valuation']) }} {{ $agreement->currency }} · {{ $p['unvalued'] }} asignaciones sin valuación. Es una estimación, no ingreso de caja.

@endif @endforeach

Evidencias privadas

Adjunta acuerdos, bases aprobadas, recibos y actas. Usa la misma referencia del movimiento para localizarlos.

@forelse($agreement->evidences as $e)@empty@endforelse
ArchivoReferenciaUsuario / fecha
{{ $e->file->original_name }}{{ $e->reference }}{{ $e->created_by }} · {{ $e->created_at }}
Sin comprobantes adjuntos.
@can('management_agreements.manage')
@csrf
@endcan
@endsection