/** * Muestra una transferencia especifica * * @param int $id * @return \Illuminate\Http\Response */ public function verTransferencia($id) { try { $transferencia = Transferencia::find($id); if ($transferencia == null) { abort(404); } $presupuesto_partidaDe = Presupuesto_Partida::find($transferencia->tPresupuestoPartidaDe); $presupuesto_partidaA = Presupuesto_Partida::find($transferencia->tPresupuestoPartidaA); $usuario = User::find($transferencia->tUsuario_idUsuario); $partidaDe = Partida::find($presupuesto_partidaDe->tPartida_idPartida); $presupuestoDe = Presupuesto::find($presupuesto_partidaDe->tPresupuesto_idPresupuesto); $coordinacionDe = Coordinacion::find($presupuestoDe->tCoordinacion_idCoordinacion); $partidaA = Partida::find($presupuesto_partidaA->tPartida_idPartida); $presupuestoA = Presupuesto::find($presupuesto_partidaA->tPresupuesto_idPresupuesto); $coordinacionA = Coordinacion::find($presupuestoA->tCoordinacion_idCoordinacion); $presupuesto_partidaDe->presupuestoModificado(); $presupuesto_partidaDe->calcularSaldo(); $presupuesto_partidaDe->calcularGasto(); $presupuesto_partidaDe->save(); $presupuesto_partidaA->presupuestoModificado(); $presupuesto_partidaA->calcularSaldo(); $presupuesto_partidaA->calcularGasto(); $presupuesto_partidaA->save(); return view('/transferencia/verTransferencia', ['presupuesto_partidaDe' => $presupuesto_partidaDe, 'presupuesto_partidaA' => $presupuesto_partidaA, 'coordinacionDe' => $coordinacionDe, 'presupuestoDe' => $presupuestoDe, 'partidaDe' => $partidaDe, 'coordinacionA' => $coordinacionA, 'presupuestoA' => $presupuestoA, 'partidaA' => $partidaA, 'transferencia' => $transferencia, 'usuario' => $usuario]); } catch (Exception $e) { //return abort(404); } }
Route::get('auth/login', 'Auth\\AuthController@getLogin'); Route::post('auth/login', 'Auth\\AuthController@postLogin'); Route::get('auth/logout', 'Auth\\AuthController@getLogout'); // Turas de Registro... Route::get('auth/register', 'Auth\\AuthController@getRegister'); Route::post('auth/register', 'Auth\\AuthController@postRegister'); // Rutas de reestablecimiento de contraseña... Route::get('password/email', 'Auth\\PasswordController@getEmail'); Route::post('password/email', 'Auth\\PasswordController@postEmail'); // Password reset routes... Route::get('password/reset/{token}', 'Auth\\PasswordController@getReset'); Route::post('password/reset', 'Auth\\PasswordController@postReset'); //angular model routes Route::get('/partidas', function () { $config = DB::table('tconfiguracion')->select('iValor')->where('vConfiguracion', '=', 'Periodo')->where('tUsuario_idUsuario', '=', Auth::user()->id)->first(); $p = Presupuesto_Partida::all(); foreach ($p as $x) { $x->presupuestoModificado(); $x->calcularReserva(); $x->calcularGasto(); $x->calcularSaldo(); } $presupuestoPartida = DB::table('tpresupuesto_tpartida')->join('tpresupuesto', 'idPresupuesto', '=', 'tPresupuesto_idPresupuesto')->join('tpartida', 'idPartida', '=', 'tPartida_idPartida')->join('tcoordinacion', 'idCoordinacion', '=', 'tCoordinacion_idCoordinacion')->join('tusuario_tcoordinacion', 'tCoordi_idCoordinacion', '=', 'idCoordinacion')->select('idCoordinacion', 'anno', 'vNombreCoordinacion', 'vNombrePresupuesto', 'codPartida', 'vNombrePartida', 'idPartida', 'id', 'tPresupuesto_idPresupuesto', 'tpresupuesto_tpartida.iPresupuestoInicial', 'tpresupuesto_tpartida.iPresupuestoModificado', 'tpresupuesto_tpartida.iGasto', 'tpresupuesto_tpartida.iReserva', 'tpresupuesto_tpartida.iSaldo')->where('tUsuario_idUsuario', '=', Auth::user()->id)->where('anno', '=', $config->iValor)->orderBy('codPartida')->get(); return $presupuestoPartida; }); Route::get('/transaccionesReporte', function () { $transacciones = Factura::all(); return $transacciones; }); Route::get('/reservas', function () { $reservas = DB::table('treserva')->where('deleted_at', null)->get();
/** * Guarda una nueva factura creada * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $input = $request->all(); $count = 0; $campo = 1; $tipo = $request->vTipoFactura; $documento = $request->vDocumento; $fecha = $request->dFechaFactura; $descripcion = $request->vDescripcionFactura; $listaFactura = []; $listaPartida = []; foreach ($input as $in) { if ($count > 4) { if ($campo == 1) { $partida = $in; } if ($campo == 2) { $detalle = $in; } if ($campo == 3) { $monto = $in; if ($monto <= 0) { return redirect('transaccion/create')->withErrors('El monto de una transacción no puede ser igual a 0'); } $factura = new Factura(); $factura->vTipoFactura = $tipo; $factura->vDocumento = $documento; $factura->dFechaFactura = $fecha; $factura->vDescripcionFactura = $descripcion; $factura->tPartida_idPartida = $partida; $factura->vDetalleFactura = $detalle; $factura->iMontoFactura = $monto; if (in_array($partida, $listaPartida)) { return redirect('transaccion/create')->withErrors('Solo se puede agregar una linea por Partida'); } else { array_push($listaPartida, $partida); } array_push($listaFactura, $factura); $campo = 0; } $campo++; } $count++; } // return dd($listaPartida); $listaPartida; // return dd($listaFactura); foreach ($listaFactura as $fac) { if ($fac->vTipoFactura == 'Pases Anulacion' || $fac->vTipoFactura == 'Cancelacion GECO') { $presupuesto_partida = Presupuesto_Partida::find($fac->tPartida_idPartida); array_push($listaPartida, $presupuesto_partida); $reserva = DB::table('treserva')->where('vReserva', $fac->vDetalleFactura)->first(); //return dd($reserva); if ($reserva == null) { return redirect('transaccion/create')->withErrors('Debe seleccionar una reserva válida'); } if ($reserva->iMontoFactura < $fac->iMontoFactura) { return redirect('transaccion/create')->withErrors('El monto de una partida excede el limite posible'); } } else { $presupuesto_partida = Presupuesto_Partida::find($fac->tPartida_idPartida); array_push($listaPartida, $presupuesto_partida); if ($presupuesto_partida->iSaldo < $fac->iMontoFactura) { return redirect('transaccion/create')->withErrors('El monto de una partida excede el limitesd posible'); } } } foreach ($listaFactura as $fac) { $fac->save(); if ($tipo == "Solicitud GECO") { DB::table('treserva')->insert(['vReserva' => $fac->idFactura, 'vDocumento' => $fac->vDocumento, 'vDetalle' => $fac->vDetalleFactura, 'iMontoFactura' => $fac->iMontoFactura, 'tPartida_idPartida' => $fac->tPartida_idPartida]); $fac->tReserva_vReserva = $fac->idFactura; } if ($tipo == "Pases Adicionales") { $fac->tReserva_vReserva = $fac->vDetalleFactura; // DB::table('treserva')->where('vReserva', $fac->vDetalleFactura) //->increment('iMontoFactura', $fac->iMontoFactura); $reserva = DB::table('treserva')->where('vReserva', $fac->vDetalleFactura)->first(); $fac->vDetalleFactura = 'Aumento en la reserva ' . $reserva->vDocumento . ' ' . $reserva->vDetalle; } if ($tipo == "Pases Anulacion") { $fac->tReserva_vReserva = $fac->vDetalleFactura; // DB::table('treserva')->where('vReserva', $fac->vDetalleFactura)->decrement('iMontoFactura', $fac->iMontoFactura); $reserva = DB::table('treserva')->where('vReserva', $fac->vDetalleFactura)->first(); $fac->vDetalleFactura = 'Reduccion en la reserva ' . $reserva->vDocumento . ' ' . $reserva->vDetalle; } if ($tipo == "Cancelacion GECO") { $fac->tReserva_vReserva = $fac->vDetalleFactura; $date = date('Y/m/d h:i:s'); $reserva = DB::table('treserva')->where('vReserva', $fac->vDetalleFactura)->first(); // DB::table('treserva')->update('deleted_at', $date)->where('vReserva', $fac->vDetalleFactura); $fac->vDetalleFactura = 'Cancelacion de la reserva ' . $reserva->vDocumento . ' ' . $reserva->vDetalle; } $fac->save(); $this->calcularReserva(); } return redirect('transaccion/create')->with('mensaje', 's'); }
/** * Consulta el Presupuesto_Partida de una Transferencia * * @return App\Presupuesto_Partida */ public function getPresupuestoPartidaTransferencia($id) { $presupuesto = Presupuesto_Partida::find($id); return $presupuesto; }