@extends('layouts.enterprise') @section('title', 'Oficinas') @section('content')

Oficinas

ABM de oficinas y carga masiva desde archivo de oficinas vigentes.

@if(session('ok'))
{{ session('ok') }}
@endif @if($errors->any())
@endif @php $indexRoute = request()->routeIs('accountant.*') ? route('accountant.incomes.offices.index') : route('admin.incomes.offices.index'); $storeRoute = request()->routeIs('accountant.*') ? route('accountant.incomes.offices.store') : route('admin.incomes.offices.store'); $importRoute = request()->routeIs('accountant.*') ? route('accountant.incomes.offices.import') : route('admin.incomes.offices.import'); $hasActiveFilters = (($filters['q'] ?? '') !== '') || (($filters['active'] ?? 'all') !== 'all') || (($filters['status'] ?? '') !== '') || (($filters['client_id'] ?? null) !== null); $importStats = session('office_import_stats'); @endphp @if(is_array($importStats))
{{ $importStats['file'] ?? '-' }}
Insertados: {{ $importStats['inserted'] ?? 0 }} Actualizados: {{ $importStats['updated'] ?? 0 }} Omitidos: {{ $importStats['skipped'] ?? 0 }}
@endif
Filtros @if($hasActiveFilters) Activos @endif
Limpiar Resultados: {{ $offices->total() }}

Carga masiva

Columnas requeridas: ESTATUS OFICINA, OFICINA, LOCALIZACION.
Si una oficina ya existe (por código o nombre), se actualiza.
@csrf

Alta manual

@csrf
@forelse($offices as $office) @php $updateRoute = request()->routeIs('accountant.*') ? route('accountant.incomes.offices.update', $office) : route('admin.incomes.offices.update', $office); @endphp @empty @endforelse
ID Cliente Código Oficina Estatus Activo Localización Archivo Última carga Acciones
{{ $office->id }} {{ $office->client?->name ?: '-' }} {{ $office->office_code ?: '-' }} {{ $office->name }} {{ $office->status }} {{ $office->is_active ? 'Activo' : 'Inactivo' }} {{ $office->location ?: '-' }} {{ $office->source_file_name ?: '-' }} {{ $office->last_imported_at?->format('Y-m-d H:i') ?: '-' }}
Editar
@csrf @method('PATCH')
No hay oficinas registradas.
{{ $offices->onEachSide(1)->links('vendor.pagination.enterprise') }}
@endsection @push('styles') @endpush