<?php
use Illuminate\Http\Request;

Route::get('ListarEstadosPredio', 'EstadoPredioController@index')->name('ListarEstadosPredio');

Route::get('RegistrarEstadoPredio', 'EstadoPredioController@create')->name('RegistrarEstadoPredio');

Route::get('ModificarEstadoPredio/{id_unico}', 'EstadoPredioController@show')->name('ModificarEstadoPredio');

Route::post('GuardarCambiosEstadoPredio', 'EstadoPredioController@edit')->name('GuardarCambiosEstadoPredio');

Route::post('GuardarEstadoPredio', 'EstadoPredioController@store')->name('GuardarEstadoPredio');

Route::post('EliminarEstadoPredio/{id_unico}', 'EstadoPredioController@destroy')->name('EliminarEstadoPredio');

Route::get('ListarEstratoPredio', 'EstratoPredioController@index')->name('ListarEstratoPredio');

Route::get('RegistrarEstratoPredio', 'EstratoPredioController@create')->name('RegistrarEstratoPredio');

Route::get('ModificarEstratoPredio/{id_unico}', 'EstratoPredioController@show')->name('ModificarEstratoPredio');

Route::post('GuardarCambiosEstratoPredio', 'EstratoPredioController@edit')->name('GuardarCambiosEstratoPredio');

Route::post('GuardarEstratoPredio', 'EstratoPredioController@store')->name('GuardarEstratoPredio');

Route::post('EliminarEstratoPredio/{id_unico}', 'EstratoPredioController@destroy')->name('EliminarEstratoPredio');

Route::get('Predios', 'PredioController@index')->name('Predios');

Route::get('Barrios', function(Request $request){
    $ciudad = $request->ciudad;

    $data = DB::table('gp_barrio')
                ->select('id_unico', 'nombre')
                ->where('ciudad', '=', $ciudad)
                ->orderBy('nombre', 'asc')
                ->get();
    return Response::json($data);
})->name('Barrio');

Route::get('infoPredio/{id_unico}', 'PredioController@show')->name('infoPredio');

Route::post('GuardarPredio','PredioController@store')->name('GuardarPredio');

Route::get('AsignarPropietario/{predio}', 'PropietarioPredioController@index')->name('AsignarTercero');

Route::post('GuardarPropietarioPredio', 'PropietarioPredioController@store')->name('GuardarPropietarioPredio');

Route::post('EliminarPropietarioPredio/{predio}/{tercero}', 'PropietarioPredioController@destroy')->name('EliminarPropietarioPredio');

Route::post('GuardarCambiosPP', 'PropietarioPredioController@edit')->name('GuardarCambiosPP');

Route::get('ListarTipoBase', 'TipoBaseController@index')->name('ListarTipoBase');

Route::get('RegistrarTipoBase', 'TipoBaseController@create')->name('RegistrarTipoBase');

Route::post('GuardarTipoBase', 'TipoBaseController@store')->name('GuardarTipoBase');

Route::get('ModificarTipoBase/{id_unico}', 'TipoBaseController@show')->name('ModificarTipoBase');

Route::post('GuardarCambiosTipoBase', 'TipoBaseController@update')->name('GuardarCambiosTipoBase');

Route::post('EliminarTipoBase/{id_unico}', 'TipoBaseController@destroy')->name('EliminarTipoBase');

Route::get('ListarTipoConceptoPredial', 'TipoConceptoPredialController@index')->name('ListarTipoConceptoPredial');

Route::get('RegistrarTipoConceptoPredial', 'TipoConceptoPredialController@create')->name('RegistrarTipoConceptoPredial');

Route::get('VistaInformePrediosTipo', 'TipoPredioController@report')->name('VistaInformePrediosTipo');

Route::post('generarInformePrediosTipo', 'TipoPredioController@generate')->name('generarInformePrediosTipo');

Route::post('GuardarTipoConceptoPredial', 'TipoConceptoPredialController@store')->name('GuardarTipoConceptoPredial');

Route::get('ModificarTipoConceptoPredial/{id_unico}', 'TipoConceptoPredialController@show')->name('ModificarTipoConceptoPredial');

Route::post('GuardarCambiosTipoConceptoPredial', 'TipoConceptoPredialController@edit')->name('GuardarCambiosTipoConceptoPredial');

Route::post('EliminarTipoConceptoPredial/{id_unico}', 'TipoConceptoPredialController@destroy')->name('EliminarTipoConceptoPredial');

Route::get('ListarTipoDI', 'TipoDIController@index')->name('ListarTipoDI');

Route::get('RegistrarTipoDI', 'TipoDIController@create')->name('RegistrarTipoDI');

Route::post('GuardarTipoDI', 'TipoDIController@store')->name('GuardarTipoDI');

Route::get('ModificarTipoDI/{id_unico}', 'TipoDIController@show')->name('ModificarTipoDI');

Route::post('GuardarCambiosTipoDI', 'TipoDIController@edit')->name('GuardarCambiosTipoDI');

Route::post('EliminarTipoDI/{id_unico}', 'TipoDIController@destroy')->name('EliminarTipoDI');

Route::get('ListarTipoExcension', 'TipoExcensionController@index')->name('ListarTipoExcension');

Route::get('RegistrarTipoExcension', 'TipoExcensionController@create')->name('RegistrarTipoExcension');

Route::post('GuardarTipoExcension', 'TipoExcensionController@store')->name('GuardarTipoExcension');

Route::get('ModificarTipoExcension/{id_unico}', 'TipoExcensionController@show')->name('ModificarTipoExcension');

Route::post('GuardarCambiosTipoExcension', 'TipoExcensionController@edit')->name('GuardarCambiosTipoExcension');

Route::post('EliminarTipoExcension/{id_unico}', 'TipoExcensionController@destroy')->name('EliminarTipoExcension');

Route::get('ListarTipoModificacion', 'TipoModificacionController@index')->name('ListarTipoModificacion');

Route::get('RegistrarTipoModificacion', 'TipoModificacionController@create')->name('RegistrarTipoModificacion');

Route::post('GuardarTipoModificacion', 'TipoModificacionController@store')->name('GuardarTipoModificacion');

Route::get('ModificarTipoModificacion/{id_unico}', 'TipoModificacionController@show')->name('ModificarTipoModificacion');

Route::post('GuardarCambiosTipoModificacion', 'TipoModificacionController@edit')->name('GuardarCambiosTipoModificacion');

Route::post('EliminarTipoModificacion/{id_unico}', 'TipoModificacionController@destroy')->name('EliminarTipoModificacion');

Route::get('ListarUnidadArea', 'UnidadAreaController@index')->name('ListarUnidadArea');

Route::get('RegistrarUnidadArea', 'UnidadAreaController@create')->name('RegistrarUnidadArea');

Route::post('GuardarUnidadArea', 'UnidadAreaController@store')->name('GuardarUnidadArea');

Route::get('ModificarUnidadArea/{id_unico}', 'UnidadAreaController@show')->name('ModificarUnidadArea');

Route::post('GuardarCambiosUnidadArea', 'UnidadAreaController@edit')->name('GuardarCambiosUnidadArea');

Route::post('EliminarUnidadArea/{id_unico}', 'UnidadAreaController@destroy')->name('EliminarUnidadArea');

Route::get('ListarTipoArea', 'TipoAreaController@index')->name('ListarTipoArea');

Route::get('RegistrarTipoArea', 'TipoAreaController@create')->name('RegistrarTipoArea');

Route::post('GuardarTipoArea', 'TipoAreaController@store')->name('GuardarTipoArea');

Route::get('ModificarTipoArea/{id_unico}', 'TipoAreaController@show')->name('ModificarTipoArea');

Route::post('GuardarCambiosTipoArea', 'TipoAreaController@edit')->name('GuardarCambiosTipoArea');

Route::post('EliminarTipoArea/{id_unico}', 'TipoAreaController@destroy')->name('EliminarTipoArea');

Route::get('ListarEstadoResolucion', 'EstadoResolucionController@index')->name('ListarEstadoResolucion');

Route::get('RegistrarEstadoResolucion', 'EstadoResolucionController@create')->name('RegistrarEstadoResolucion');

Route::post('GuardarEstadoResolucion', 'EstadoResolucionController@store')->name('GuardarEstadoResolucion');

Route::get('ModificarEstadoResolucion/{id_unico}', 'EstadoResolucionController@show')->name('ModificarEstadoResolucion');

Route::post('GuardarCambiosEstadoResolucion', 'EstadoResolucionController@edit')->name('GuardarCambiosEstadoResolucion');

Route::post('EliminarEstadoResolucion/{id_unico}', 'EstadoResolucionController@destroy')->name('EliminarEstadoResolucion');

Route::get('ListarLey44', 'Ley44Controller@index')->name('ListarLey44');

Route::get('RegistrarLey44', 'Ley44Controller@create')->name('RegistrarLey44');

Route::post('GuardarLey44', 'Ley44Controller@store')->name('GuardarLey44');

Route::get('ModificarLey44/{id_unico}', 'Ley44Controller@show')->name('ModificarLey44');

Route::post('GuardarCambiosLey44', 'Ley44Controller@edit')->name('GuardarCambiosLey44');

Route::post('EliminarLey44/{id_unico}', 'Ley44Controller@destroy')->name('EliminarLey44');

Route::get('ListarMotivoCambioArea', 'MotivoCambioAreaController@index')->name('ListarMotivoCambioArea');

Route::get('RegistrarMotivoCambioArea', 'MotivoCambioAreaController@create')->name('RegistrarMotivoCambioArea');

Route::post('GuardarMotivoCambioArea', 'MotivoCambioAreaController@store')->name('GuardarMotivoCambioArea');

Route::get('ModificarMotivoCambioArea/{id_unico}', 'MotivoCambioAreaController@show')->name('ModificarMotivoCambioArea');

Route::post('GuardarCambiosMotivoCambioArea', 'MotivoCambioAreaController@edit')->name('GuardarCambiosMotivoCambioArea');

Route::post('EliminarMotivoCambioArea/{id_unico}', 'MotivoCambioAreaController@destroy')->name('EliminarMotivoCambioArea');

Route::get("Pay/{paquete?}", "PagoPredialController@index")->name("Pago");

Route::get('ListarConceptoPredial', 'ConceptoController@index')->name('ListarConceptoPredial');

Route::get('RegistrarConceptoPredial', 'ConceptoController@create')->name('RegistrarConceptoPredial');

Route::post('GuardarConceptoPredial', 'ConceptoController@store')->name('GuardarConceptoPredial');

Route::get('ModificarConceptoPredial/{id_unico}', 'ConceptoController@show')->name('ModificarConceptoPredial');

Route::post('GuardarCambiosConceptoPredial', 'ConceptoController@edit')->name('GuardarCambiosConceptoPredial');

Route::post('EliminarConceptoPredial/{id_unico}', 'ConceptoController@destroy')->name('EliminarConceptoPredial');

Route::get('ListarConceptoPredio', 'ConceptoPredialController@index')->name('ListarConceptoPredio');

Route::get('RegistrarConceptoPredio', 'ConceptoPredialController@create')->name('RegistrarConceptoPredio');

Route::post('GuardarConceptoPredio', 'ConceptoPredialController@store')->name('GuardarConceptoPredio');

Route::get('ModificarConceptoPredio/{id_unico}', 'ConceptoPredialController@show')->name('ModificarConceptoPredio');

Route::post('GuardarCambiosConceptoPredio', 'ConceptoPredialController@edit')->name('GuardarCambiosConceptoPredio');

Route::post('EliminarConceptoPredio/{id_unico}', 'ConceptoPredialController@destroy')->name('EliminarConceptoPredio');

Route::get('ListarTipoPredio', 'TipoPredioController@index')->name('ListarTipoPredio');

Route::get('RegistrarTipoPredio', 'TipoPredioController@create')->name('RegistrarTipoPredio');

Route::post('GuardarTipoPredio', 'TipoPredioController@store')->name('GuardarTipoPredio');

Route::get('ModificarTipoPredio/{id_unico}', 'TipoPredioController@edit')->name('ModificarTipoPredio');

Route::post('GuardarCambiosTipoPredio', 'TipoPredioController@update')->name('GuardarCambiosTipoPredio');

Route::post('EliminarTipoPredio/{id_unico}', 'TipoPredioController@destroy')->name('EliminarTipoPredio');

Route::get('/', function(){
    $terceros = DB::table('gf_tercero as ter')
                    ->select(
                        'ter.id_unico             as id_unico',
                        'ter.razonsocial          as nombre',
                        'ti.nombre                as nom_tipo',
                        'ter.numeroidentificacion as numdoc',
                        'ter.digitoverficacion    as digito'
                    )
                    ->leftJoin('gf_tipo_identificacion as ti', 'ti.id_unico', '=', 'ter.tipoidentificacion')
                    ->leftJoin('gf_perfil_tercero as prt', 'ter.id_unico', '=', 'prt.tercero')
                    ->where('prt.perfil','=',1)
                    ->get();
    $vigencias = DB::select(
                            "select id_unico, anno
                             from    gf_parametrizacion_anno
                             where   compania = 1
                             order by anno desc"
                             );
    return view('usuario.login')->with('terceros', $terceros)->with('vigencias', $vigencias);
})->name('/');

Route::get("Vigencias",function(Request $request){
    $tercero   = $request->compania;
    $vigencias = DB::select(
                        "select id_unico, anno
                        from    gf_parametrizacion_anno
                        where   compania = $tercero
                        order by anno desc");
    return Response::json($vigencias);
})->name("Vigencias");

Route::post("ValidarInicio", "LoginController@validar")->name("ValidarInicio");

Route::get("CerrarSesion", "LoginController@salir")->name("CerrarSesion");

Route::get("ListarResolucion", "ResolucionController@index")->name("ListarResolucion");

Route::get("RegistrarResolucion", "ResolucionController@create")->name("RegistrarResolucion");

Route::post("GuardarResolucion", "ResolucionController@store")->name("GuardarResolucion");

Route::get("ModificarResolucion/{id_unico}", "ResolucionController@edit")->name("ModificarResolucion");

Route::post("GuardarCambiosResolucion", "ResolucionController@update")->name("GuardarCambiosResolucion");

Route::post("EliminarResolucion/{id_unico}", "ResolucionController@destroy")->name("EliminarResolucion");

Route::get("ListarConceptoResolucion", "ResolucionController@index")->name("ListarResolucion");

Route::get("RegistrarConceptoResolucion", "ResolucionController@create")->name('RegistrarConceptoResolucion');

Route::post("GuardarConceptoResolucion", "ResolucionController@store")->name("GuardarConceptoResolucion");

Route::get("ModificarConceptoResolucion", "ResolucionController@edit")->name("ModificarConceptoResolucion");

Route::post("GuardarCambiosConceptoResolucion", "ResolucionController@update")->name("GuardarCambiosConceptoResolucion");

Route::post("EliminarConceptoResolucion", "ResolucionController@destroy")->name("EliminarConceptoResolucion");

Route::get("RegistrarArea/{id_unico}", "AreaController@index")->name("RegistrarArea");

Route::post("GuardarArea", "AreaController@store")->name("GuardarArea");

Route::get("ListarTarifasPredio", "TarifaController@index")->name("ListarTarifasPredio");

Route::get("RegistrarTarifasPredio", "TarifaController@create")->name("RegistrarTarifasPredio");

Route::post("GuardarTarifaPredio", "TarifaController@store")->name("GuardarTarifaPredio");

Route::get("ModificarTarifaPredio/{id_unico}", "TarifaController@edit")->name("ModificarTarifaPredio");

Route::post("GuardarCambiosTarifaPredio", "TarifaController@update")->name("GuardarCambiosTarifaPredio");

Route::post("EliminarTarifaPredio/{id_unico}", "TarifaController@destroy")->name("EliminarTarifaPredio");

Route::get("RegistrarAvaluo/{id_unico}", "AvaluoController@index")->name("RegistrarAvaluo");

Route::post("GuardarAvaluo", "AvaluoController@store")->name("GuardarAvaluo");

Route::get("RegistrarExcension/{id_unico}", "ExcensionesController@index")->name("RegistrarExcension");

Route::post("GuardarExcesion", "ExcensionesController@store")->name("GuardarExcesion");

Route::get("Inicio", "LoginController@index")->name("Inicio");

Route::get("RegistrarResolucionPredio/{id_unico}", "ResolucionPredioController@index")->name("RegistrarResolucionPredio");

Route::post("GuardarResolucionPredio", "ResolucionPredioController@store")->name("GuardarResolucionPredio");

Route::get("Liquidador", "LiquidadorInteresesController@index")->name("Liquidador");

Route::get("ListarInteresDescuento", "InteresDescuentoController@index")->name("ListarInteresDescuento");

Route::get("RegistrarInteresDescuento", "InteresDescuentoController@create")->name("RegistrarInteresDescuento");

Route::post("GuardarInteresDescuento", "InteresDescuentoController@store")->name("GuardarInteresDescuento");

Route::get("ActualizarInteresDescuento/{id_unico}", "InteresDescuentoController@edit")->name("ActualizarInteresDescuento");

Route::post("ModificarInteresDescuento", "InteresDescuentoController@update")->name("ModificarInteresDescuento");

Route::post("EliminarInteresDescuento/{id_unico}", "InteresDescuentoController@destroy")->name("EliminarInteresDescuento");

Route::post("MostrarIntereses", "LiquidadorInteresesController@getShowData")->name("MostrarIntereses");

Route::post("Factura", "FacturaPredialController@Generar")->name("Factura");

Route::get("ListarDestinos", "DestinoEconomicoController@index")->name("ListarDestinos");

Route::get("RegistrarDestino", "DestinoEconomicoController@create")->name("RegistrarDestino");

Route::post("GuardarDestino", "DestinoEconomicoController@store")->name("GuardarDestino");

Route::get("ModificarDestino/{id_unico}", "DestinoEconomicoController@edit")->name("ModificarDestino");

Route::post("GuardarCambiosDestino", "DestinoEconomicoController@update")->name("GuardarCambiosDestino");

Route::post("EliminarDestino/{id_unico}", "DestinoEconomicoController@destroy")->name("EliminarDestino");

Route::get("ListarVencimientos", "VencimientoController@index")->name("ListarVencimientos");

Route::post("GuardarVencimiento", "VencimientoController@store")->name("GuardarVencimiento");

Route::post("GuardarCambiosVencimiento", "VencimientoController@update")->name("GuardarCambiosVencimiento");

Route::post("EliminarVencimiento/{id_unico}", "VencimientoController@destroy")->name("EliminarVencimiento");

Route::get("Pago/{paquete?}", "PagoPredialController@index")->name("Pago");

Route::get("ListarTipoPago", "TipoPagoController@index")->name("ListarTipoPago");

Route::get("RegistrarTipoPago", "TipoPagoController@create")->name("RegistrarTipoPago");

Route::post("GuardarTipoPago", "TipoPagoController@store")->name("GuardarTipoPago");

Route::get("ModificarTipoPago/{id_unico}", "TipoPagoController@edit")->name("ModificarTipoPago");

Route::post("GuardarCambiosTipoPago", "TipoPagoController@update")->name("GuardarCambiosTipoPago");

Route::post("EliminarTipoPago/{id_unico}", "TipoPagoController@destroy")->name("EliminarTipoPago");

Route::get("TotalFactura", function(Request $request){
    if(!empty($request->factura)){
        $xxx = 0; $xvx = 0; $xannu = 0;
        #Consulta para obtner el total en facturas
        $dataF = DB::table('gr_detalle_factura_predial as dtf')
                ->select(DB::raw('SUM(dtf.valor) as valor'))
                ->where('dtf.factura', '=', $request->factura)
                ->groupBy('dtf.factura')
                ->distinct()
                ->get();
        foreach ($dataF as $rowF) {
            $xxx += (double) $rowF->valor;
        }
        #Consulta para obtner el total en pagos
        $dataP = DB::table('gr_detalle_factura_predial as dtf')
                ->select(DB::raw('SUM(dtp.valor) as valor'))
                ->leftJoin('gr_detalle_pago_predial as dtp', 'dtp.detallefactura', 'dtf.id_unico')
                ->leftJoin('gr_pago_predial as pag', 'dtp.pago', '=', 'pag.id_unico')
                ->where('dtf.factura', '=', $request->factura)
                ->whereIn('pag.tipopago', [ 1, 4 ])
                ->groupBy('dtf.factura')
                ->distinct()
                ->get();
        foreach ($dataP as $row) {
            $xvx += (double) $row->valor;
        }
        $x  = 0;
        #Consulta para obtener los pagos anulados
        $dataA = DB::table('gr_detalle_factura_predial as dtf')
                ->select(DB::raw('SUM(dtp.valor) as valor'))
                ->leftJoin('gr_detalle_pago_predial as dtp', 'dtp.detallefactura', 'dtf.id_unico')
                ->leftJoin('gr_pago_predial as pag', 'dtp.pago', '=', 'pag.id_unico')
                ->where('dtf.factura', '=', $request->factura)
                ->where('pag.tipopago', '=', 7)
                ->groupBy('dtf.factura')
                ->get();
        foreach ($dataA as $row) {
            $xannu += (double) $row->valor;
            $x++;
        }

        $xvpagos = 0;

        if($xannu < 0){
            $xannu = $xannu * -1;
        }

        $xvpagos = $xvx - $xannu;

        if($xvpagos < 0){
            $xvpagos = $xvpagos * -1;
        }

        if(!empty($xvpagos)){
            $valor = $xxx - $xvpagos;
        }else{
            $valor = $xxx;
        }
        if($valor < 0){
            $valor = 0;
        }
        return $valor;
    }else{
        return 0;
    }
})->name("TotalFactura");

Route::post("RegistrarPaquete", "PaqueteController@store")->name("RegistrarPaquete");

Route::post("RegistrarPago", "PagoPredialController@store")->name("RegistrarPago");

Route::get("obtnerCodigoPredio", function(Request $request){
    if(!empty($request->factura)){
        $data = DB::table('gr_factura_predial as fat')
                    ->select('pre.codigo_catastral as cod')
                    ->leftJoin('gp_predio1 as pre', 'fat.predio', '=', 'pre.id_unico')
                    ->where('fat.id_unico', '=', $request->factura)
                    ->first();
        return $data->cod;
    }else{
        return "";
    }
});

Route::get("predio/buscar", "PredioController@autoComplete");

Route::get("predio/buscarAsc", "PredioController@autoCompleteAsc");

Route::get("predio/buscarDesc", "PredioController@autoCompleteDesc");

Route::get("predio/buscar/Codigo", "PredioController@autoCompleteCode");

Route::get("predio/buscar/Nombre", "PredioController@autoCompleteName");

Route::get("predio/buscar/Igac", "PredioController@autoCompleteIgac");

Route::get("PlanoIgac", "ArchivoPlanoController@view_plano");

Route::post("EnvioArchivoPlano", "ArchivoPlanoController@cargarArchivoPlanoI")->name("EnvioArchivoPlano");

Route::get("copiarTarifa","TarifaController@copiarTarifa")->name("copiarTarifa");

Route::get("VistaFactura/{id}", "FacturaPredialController@index")->name("VistaFactura");

Route::get("HistoricoFacturas/{id}", "FacturaPredialController@historico")->name("HistoricoFacturas");

Route::get("PagoFacturado/{id}", "FacturaPredialController@pagoFacturado")->name("PagoFacturado");

Route::post("FacturaRecaudoP", "FacturaPredialController@generapagofactura")->name("FacturaRecaudoP");

Route::get("ValidarPeriodoPago","PagoPredialController@ValidarFechaPago")->name("ValidarPeriodoPago");

Route::get("PagoEspecial", "PagoPredialController@ViewSpecialPay")->name("PagoEspecial");

Route::post("RegistrarPagoEspecial", "FacturaPredialController@savePaySpecial")->name("RegistrarPagoEspecial");

//Rutas informes Nestor
Route::get("GenerarRecaudoInf", "RecaudosInfController@index")->name("GenerarRecaudoInf");

Route::post("InformeRecaudo", "RecaudosInfController@view_inf")->name("InformeRecaudo");

Route::get("GenerarPazySalvoInf", "PazySalvoInfController@index")->name("GenerarPazySalvoInf");

Route::post("InformePazySalvo", "PazySalvoInfController@view_inf")->name("InformePazySalvo");

Route::get("GenerarCertificadoCInf", "CertificadoCInfController@index")->name("GenerarCertificadoCInf");

Route::post("GenerarCertificadoC", "CertificadoCInfController@view_inf")->name("GenerarCertificadoC");

Route::get("Pay/{paquete?}", "PagoPredialController@view_pay")->name("Pay");

Route::get("GenerarFactura/{factura}/{predio}", "FacturaPredialController@generarVistaFactura")->name("generarVistaFactura");

Route::get("Prescrito/{predio}", "FacturaPredialController@vistaPrescrito")->name("Prescrito");

Route::post("Prescribir", "FacturaPredialController@procesarPrescripcion")->name("Prescribir");

Route::get("Extracto/{predio}", "ExtractoController@index")->name("Extracto");

Route::post("PagoAbono", "PagoPredialController@PagoAbono")->name("PagoAbono");

Route::get("ResolucionCobro", "ResolucionCobro@index")->name("ResolucionCobro");

Route::post("GenerarResolucionCobro", "ResolucionCobro@responseReq")->name("GenerarResolucionCobro");

Route::get("factura/buscar", "PagoPredialController@buscarFacturaNumero");

Route::get("AnnosDebe", "FacturaPredialController@obtenerAnosDebe")->name("AnnosDebe");

Route::get("AnularPagos", "AnulacionPagoController@index")->name("AnularPagos");

Route::post("GuardarAnulacionPago", "AnulacionPagoController@store")->name("GuardarAnulacionPago");

Route::get("DetallesResolucion/{res}", "ResolucionController@opendetails")->name("DetallesResolucion");

Route::post("SaveDetailsRes", "ResolucionController@storeDetails")->name("SaveDetailsRes");

Route::get("ViewDetailsRes/{id}", "ResolucionController@viewDataDetails")->name("ViewDetailsRes");

Route::get("FindRes", "ResolucionController@cacthinfo")->name("FindRes");

Route::post("SaveDetailsResInfo", "ResolucionController@storeInfo")->name("SaveDetailsResInfo");

Route::get("NivelarValorPagos", "ComprobanteIngreso@nivelarPagos")->name("NivelarValorPagos");

Route::get("NivelarValorFactura", "ComprobanteIngreso@nivelarFactura")->name("NivelarValorFactura");

Route::get("ListadoPredioDireccion", "ListadoPredioDirController@index")->name("ListadoPredioDireccion");

Route::post("ListadoRecaudosD", "RecaudosInfController@pdf")->name("ListadoRecaudosD");

Route::post("ListadoRecaudosDR", "RecaudosInfController@pdfR")->name("ListadoRecaudosDR");

Route::get("ListadoAdeudo", "ListadoPrediosControntroller@listadoAdeudo")->name("ListadoAdeudo");

Route::get("ComprobanteIngreso/{detalle}", "ComprobanteIngreso@index")->name("ComprobanteIngreso");

Route::get("ListadoConceptos", "ListadoPrediosControntroller@vistaListado")->name("ListadoConceptos");

Route::post("ListadoImpuesto", "ListadoPrediosControntroller@listadoImpuesto")->name("ListadoImpuesto");

Route::post("ListadoDebidoCobrar", "ListadoPrediosControntroller@listadoDebido")->name("ListadoDebidoCobrar");

Route::post("ListadoCorpRegion", "ListadoPrediosControntroller@listadoCorReg")->name("ListadoCorpRegion");

Route::get("FormaListados", "ListadoPagosController@index")->name("FormaListados");

Route::post("GenearListadoPagos", "ListadoPagosController@generate")->name("GenearListadoPagos");

Route::post("GenearListadoPagosR", "ListadoPagosController@generateR")->name("GenearListadoPagosR");

Route::get("VistaCartera", "CarteraController@index");

Route::post("GenerarCartera", "CarteraController@generate")->name("GenerarCartera");

Route::get("VistaInformeS", "CarteraController@vistaInformeS");

Route::post("ProcesarInforme", "CarteraController@procesarInforme")->name("ProcesarInforme");

Route::get("VistaResolucionExcel", "ResolucionController@VistaArchivo")->name("VistaResolucionExcel");

Route::post("LeerExcelResolucion", "ResolucionController@leerArchivo")->name("LeerExcelResolucion");

Route::get("VistaConceptosAdeudo", "ListadoPrediosControntroller@vistaConceptosAdeudo")->name("VistaConceptosAdeudo");

Route::post("InformeConceptosExcel", "ListadoPrediosControntroller@informeConceptosExl")->name("InformeConceptosExcel");

Route::post("informeConceptosPdf", "ListadoPrediosControntroller@informeConceptosPdf")->name("informeConceptosPdf");

Route::get("DebidoCobrarListado", "ListadoPrediosControntroller@listadoDebidoCobrar")->name("DebidoCobrarListado");

Route::post("ListadoDebidoCobrarExcel", "ListadoPrediosControntroller@listadoDebidoExcel")->name("ListadoDebidoCobrarExcel");

Route::get("VistaCobroCoactivo", "PagoPredialController@vistaCobroCoactivo")->name("VistaCobroCoactivo");

Route::post("GenerarInformeCobroCoactivo", "PagoPredialController@generateInf")->name("GenerarInformeCobroCoactivo");

Route::get("VistaInformeCartera", "CarteraController@vistaInformeCartera")->name("VistaInformeCartera");

Route::post("GenerarInformeCarteraObligada", "CarteraController@generarInfCarteraObl")->name("GenerarInformeCarteraObligada");

Route::get("BuscarPagosFactura", "AnulacionPagoController@obtenerPagoFactura")->name("BuscarPagosFactura");

Route::get("VistaPagosAnteriores", "PagosAnterioresController@index")->name("VistaPagosAnteriores");

Route::post("ProcesarPagoAnterior", "PagosAnterioresController@store")->name("ProcesarPagoAnterior");

Route::get("buscarPredioCodigo", "PagosAnterioresController@buscarPredioCodigo")->name("buscarPredioCodigo");

Route::get("VistaInformePrescritos", "PrescritoController@index")->name("VistaInformePrescritos");

Route::post("GenerarInformePrescritoPDf", "PrescritoController@generateInfPdf")->name("GenerarInformePrescritoPDf");

Route::post("GenerarInformePrescritoEXL", "PrescritoController@generateInfExl")->name("GenerarInformePrescritoEXL");

Route::get("DetalladoPago", "FacturaPredialController@detalladoPago")->name("DetalladoPago");

Route::post("InformePagoDetallado", "FacturaPredialController@InfDetalladoPago")->name("InformePagoDetallado");

Route::post("ListadoCorpRegionEx", "ListadoPrediosControntroller@informeConceptosExcel")->name("ListadoCorpRegionEx");

Route::post("InformeResolucionPdf", "ResolucionCobro@generatePdf")->name("InformeResolucionPdf");

Route::get("InformeCarteraV", "ListadoPrediosControntroller@vistaInformeCartera")->name("InformeCarteraV");

Route::post("InformeCarteraT", "ListadoPrediosControntroller@informeCartera")->name("InformeCarteraT");

Route::get('ListadoFacturaSinRecaudo', 'RecaudosInfController@listadoFacturaSinR')->name('ListadoFacturaSinRecaudo');

Route::post('GenerarFacturasSinR', 'RecaudosInfController@generarFacturaSinRecaudo')->name('GenerarFacturasSinR');

Route::get("ValidarPeriodoC","PagoPredialController@ValidarPeriodoC")->name("ValidarPeriodoC");

Route::get("ValidaAbono/{id}","PredioController@modalAbono")->name("ValidaAbono");