@php $c = $data->invoice_colors ?? []; $cPrimary = $c['primary'] ?? $data->reports_color ?? '#7B2032'; $cHeader = $c['header'] ?? '#3C3C3C'; $cFooter = $c['footer'] ?? '#3C3C3C'; $cFolio = $c['folio'] ?? $cPrimary; $cText = $c['text'] ?? '#222222'; $cTableHdr = $c['table_header'] ?? $cPrimary; // Alias compatibilidad $wineColor = $cPrimary; // Helper: mayúsculas sin acentos if (!function_exists('strUp')) { function strUp($str) { $a = ['á','é','í','ó','ú','ü','ñ','Á','É','Í','Ó','Ú','Ü','Ñ']; $b = ['a','e','i','o','u','u','n','a','e','i','o','u','u','n']; return strtoupper(str_replace($a, $b, $str ?? '')); } } @endphp {{-- New-Unity ERP | Mexico/invoices/invoice1_pdf.blade.php | v5.0 | 14/06/2026 --}} {{-- v4.6 — Pie fijo position:fixed bottom:0, se repite en cada página. --}} {{-- v4.5 — Renglones vacíos con 9 celdas individuales para mostrar líneas de columnas. --}} {{-- v4.3 — Espacio arriba del nombre emisor en header, líneas verticales en columnas condiciones. --}} {{-- v3.3 — Fix charset tildes/ñ con html_entity_decode, Lugar Expedición CP, sponsor logo tamaño. --}} {{-- v3.2 — Fix QR: usa $invoice_cfdi->qr (blob BD) con base64_encode. --}} {{-- Formato 1: LIMPIO — Carta, 5mm márgenes, acento borgoña {{ $data->reports_color }}. --}}
|
@if(!empty($data->company_logo))
|
{{-- Datos empresa --}}
{!! strtoupper(html_entity_decode($data->company_name ?? '', ENT_QUOTES, 'UTF-8')) !!}
RFC: {{ $data->contributor->rfc ?? '' }}
@if(!empty($data->contributor->street ?? '')) {{ $data->contributor->street ?? '' }} @endif @php $parts = array_filter([ strUp($data->contributor->city), strUp($data->contributor->state), strUp($data->contributor->country) ]); @endphp {{ implode(', ', $parts) }} @if(!empty($data->contributor->postal_code ?? '')) CP {{ $data->contributor->postal_code }}@endif Lugar Expedición: {{ $data->contributor->postal_code ?? '' }} |
{{-- Sponsor Logo --}}
@if(!empty($data->sponsor_logo_1))
|
{{-- Folio --}}
@if(!empty($data->tdf['TipoDeComprobante']))
{{ __('invoices.cfdi_tipo_'.$data->tdf['TipoDeComprobante']) }}
@else
Factura
@endif
{{ $data->folio }}
@if(!empty($data->serie))
Serie: {{ $data->serie }}
@endif
{{ $data->date ?? '' }}
|
|
Datos de Certificación CFDI
|
Receptor
{{ $data->customer_name }}
|
|
Tipo Comprobante
@if(!empty($data->tdf['TipoDeComprobante']))
{{ __('invoices.cfdi_tipo_'.$data->tdf['TipoDeComprobante']) }}
@else Ingreso @endif
|
Uso CFDI
{{ $data->cfdi_uso ?? '—' }}
|
Forma de Pago
{{ $data->payment_way ?? '—' }}
|
Método de Pago
{{ $data->payment_method ?? '—' }}
|
Condiciones
{{ $data->condition_pay ?? '—' }}
|
|
Orden de Compra
{{ $data->purchase_order ?: '—' }}
|
Fecha Vencimiento
{{ $data->expiration_date ?? '—' }}
|
Moneda
{{ $data->currency ?? 'MXN' }}
|
|
Tipo Relación
{{ array_key_first($data->tdf['CfdiRelacionados']) }}
|
UUID Relacionado
@foreach($data->tdf['CfdiRelacionados'] as $rela => $UUIDs)
@foreach($UUIDs as $UUID){{ $UUID }} @endforeach
@endforeach
|
| Cant. | Unidad | Cve. Unidad | No. Parte | Cve. SAT | Concepto | Precio Unit. | Desc. | Importe |
|---|---|---|---|---|---|---|---|---|
| {{ $detail->quantity }} | {{ $detail->unity_name ?? $detail->unity }} | {{ $detail->unity }} | {{ $detail->product_id ?? '—' }} | {{ $detail->tax_code }} |
{!! html_entity_decode($detail->product_name, ENT_QUOTES, 'UTF-8') !!}
@php $totalProducts = count($details); @endphp
@if($totalProducts === 1 && !empty($detail->description))
{!! html_entity_decode($detail->description, ENT_QUOTES, 'UTF-8') !!} @endif |
${{ number_format((float)$detail->sales_price,2,'.',',') }} | {{ $detail->disc_per ?? 0 }}% | ${{ number_format((float)$detail->amount,2,'.',',') }} |
|
Total con letra:
{{ strtoupper($data->total_letter ?? '') }} {{ $data->total_letter_decimal ?? '' }}
@if(!empty($data->observations))
Observaciones:
{{ $data->observations }}
@endif
|
{{-- Totales --}}
|