예제 #1
0
 function aumentarNichosParcela($r, $numNichos)
 {
     $countTramadas = Tramada::where('GC_PARCELA_id', '=', $r->input('idParcela'))->get();
     //Obtenemos la última tramada de esta calle para averiguar luego el id del ultimo nicho
     $ultimaTramada = $countTramadas[count($countTramadas) - 1];
     if ($ultimaTramada != null) {
         //Cogemos el último nicho insertado en la última tramada de esta parcela para saber por dónde empezar a
         // incrementar de nuevo en caso de que tenga alguna tramada la parcela.
         $ultimoNicho = Nicho::where("GC_Tramada_id", '=', $ultimaTramada->id)->orderBy('id', 'desc')->first();
         //Si $ultimoNicho es distinto de null cogemos su id
         if ($ultimoNicho != null) {
             $ultimoNicho = $ultimoNicho->numero + 1;
         } else {
             $ultimoNicho = 1;
         }
     } else {
         $ultimoNicho = 1;
     }
     for ($i = 1; $i <= count($countTramadas); $i++) {
         //Obtenemos tramada existente
         $tramada = Tramada::where('GC_PARCELA_id', '=', $r->input('idParcela'))->where('tramada', '=', $r->input('tra') . $i)->get();
         $tramada = $tramada[0];
         //Actualizamos las propiedades del objeto tramada
         $tramada->nichos = $numNichos;
         $tramada->GC_PARCELA_id = $r->input('idParcela');
         $tramada->save();
         $this->guardarNichos(count($countTramadas) * $numNichos, $tramada->id, (int) $ultimoNicho, count($countTramadas), 2);
         $ultimoNicho++;
     }
 }