/** * Función que devuelve una vistra u otra con los parametros necesarios para modificar o calle * o panteones * @param $idCalle es el id de la calle a editar * @return View es la vista a devolver. */ function editarView($idCalle) { $calle = Calle::find($idCalle); if ($calle->tipo_calle == 1) { //Obtenemos las tramadas de la calle $tramadas = Tramada::where('GC_CALLE_id', "=", $idCalle)->get(); return view('modificar_calle_nichos', compact('calle', 'tramadas')); } else { //Obtenemos las parcelas de la calle panteon. $parcelas = Parcela::where('GC_CALLE_id', "=", $idCalle)->get(); //Obtenemos las tramadas de cada parcela para pasarlas a la vista. $tramadas = array(); $titulares = array(); foreach ($parcelas as $parcela) { $tramada = Tramada::where('GC_PARCELA_id', '=', $parcela->id)->get(); if ($parcela->GC_TITULAR_id != null) { $titular = Titular::where('id', '=', $parcela->GC_TITULAR_id)->get(['nombre_titular', 'dni_titular']); $elemento1 = array($parcela->id, $titular[0]); array_push($titulares, $elemento1); } $elemento = array($parcela->id, $tramada); array_push($tramadas, $elemento); } return view('modificar_calle_panteon', compact('calle', 'parcelas', 'tramadas', 'titulares')); } }
public function fcpP($titular, $parcela) { //fecha de hoy $hoy = Carbon::now(); //busco si hay una factura de una parcela para la serie P, osea si alguna vez se ha generado una factura $aux = Factura::where('idparcela', $parcela)->where('serie', 'P')->first(); //obtener el numero de factura maximo //$numero = Factura::where('serie','P')->whereYear('inicio','=',$hoy->year)->max('numero'); $numero = Factura::where('serie', 'P')->whereYear('created_at', '=', $hoy->year)->max('numero'); //Obtener el tamanyo de la parcela $tamanyo = Parcela::where('id', $parcela)->get()[0]->tamanyo; $tarifa = Tcp_parcelas2::first(); $iva = Iva2::first()->tipo; $precio = $tarifa->tarifa * $tamanyo; //valores que se establecen solo una vez if ($aux == null) { $titularinfo = Titular::find($titular); $infoparcela = Parcela::find($parcela); $infopanteon = VPanteones::where('parcela_id', $parcela)->first(); $factura = new Factura(); $factura->numero = $numero + 1; $factura->inicio = $hoy; $factura->fin = $hoy; $factura->idparcela = $parcela; $factura->serie = 'P'; $factura->idtitular = $titular; $factura->base = $precio; $factura->iva = $precio * ($iva / 100); $factura->total = $precio + $precio * ($iva / 100); //nuevos campos $factura->tipo_adquisicion = 1; $factura->calle = $infopanteon->calle; $factura->parcela = $infopanteon->numero; $factura->metros_parcela = $infopanteon->tamanyo; $factura->cesion = 0; //titular $factura->nombre_titular = $titularinfo->nombre_titular; $factura->dni_titular = $titularinfo->dni_titular; $factura->domicilio_del_titular = $titularinfo->dom_titular; $factura->cp_titular = $titularinfo->cp_titular; $factura->poblacion_titular = $titularinfo->pob_titular; $factura->provincia_titular = $titularinfo->pro_titular; //facturado $factura->nombre_facturado = $infoparcela->nom_facturado; $factura->dni_facturado = $infoparcela->nif_facturado; $factura->domicilio_facturado = $infoparcela->dir_facturado; $factura->cp_facturado = $infoparcela->cp_facturado; $factura->poblacion_facturado = $infoparcela->pob_facturado; $factura->provincia_facturado = $infoparcela->pro_facturado; $factura->cesion = 0; $factura->save(); //$this->Mantenimiento1Parcela($parcela, $titular); } }