public function damezonas()
 {
     if (Request::ajax()) {
         //$usuarios=Usuario::all()->lists('nick');
         //return Response::json(array('usuarios' => $usuarios));
         $zonas = Zona::all();
         for ($i = 0; $i < count($zonas); $i++) {
             $array[$i] = array("nombre" => $zonas[$i]->nombre, "geolocalizacion" => $zonas[$i]->geolocalizacion_zona);
         }
         //$array[0] = array("mensaje" => "Hola desde otro punto de la red","numero"=>"1234");
         //$array[1] = array("mensaje" => "ff","numero"=>"3333333");
         echo json_encode($array);
     }
 }
 public function reportes()
 {
     $zonas = Zona::all();
     return View::make('administrador.farmacias.reportes')->with('zonas', $zonas);
 }
示例#3
0
			$geolocalizacion=Farmacia::find($farmacia->id)->geolocalizacion;
			$array[0]=array("nombre"=>$farmacia->nombre,
			"telefono"=>$farmacia->telefono,
			"direccion"=>$farmacia->direccion,
			"puntox"=>$geolocalizacion->puntox,
			"puntoy"=>$geolocalizacion->puntoy);
								
						echo json_encode($array);
							
		}
});*/
Route::get('/nrzonas', function () {
    if (Request::ajax()) {
        //$usuarios=Usuario::all()->lists('nick');
        //return Response::json(array('usuarios' => $usuarios));
        $zonas = Zona::all();
        for ($i = 0; $i < count($zonas); $i++) {
            $array[$i] = array("nombre" => $zonas[$i]->nombre, "geolocalizacion" => $zonas[$i]->geolocalizacion_zona);
        }
        //$array[0] = array("mensaje" => "Hola desde otro punto de la red","numero"=>"1234");
        //$array[1] = array("mensaje" => "ff","numero"=>"3333333");
        echo json_encode($array);
    }
});
//login de usuariosr
Route::get('/cerrarsession', 'UsuariosController@cerrarsession');
Route::get('/login', 'UsuariosController@get_login');
Route::post('/login', 'UsuariosController@controlar_ingreso');
//para el administrador
Route::group(array('before' => 'administrador'), function () {
    Route::resource('admin', 'AdministradorController');
 /**
  * Display a listing of the resource.
  *
  * @return Response
  */
 public function sorteoturnos()
 {
     $turnssss = Turno::all();
     if (count($turnssss) == 0) {
         $error = "Primer debe sortear los turnos";
         return View::make('administrador.turnos.errores')->with('error', $error);
     } else {
         $totalzonas = Zona::all();
         $totalcontazonas = count($totalzonas);
         if ($totalcontazonas == 0) {
             $error = "no esta inscrita ninguna zona, ninguna farmacia, primer asignelas y despues sortee";
             return View::make('administrador.turnos.errores')->with('error', $error);
         } else {
             $contadorzonas = 0;
             $comparador = 0;
             $frm = Farmacia::all();
             $trns = Farmacia::find($frm[0]->id)->turnos;
             while ($contadorzonas < $totalcontazonas) {
                 $za[$contadorzonas] = Zona::find($totalzonas[$contadorzonas]->id);
                 $fff = Farmacia::where('zona_id', '=', $za[$contadorzonas]->id)->get();
                 if (count($fff) != 0) {
                     $comparador++;
                 }
                 $contadorzonas++;
             }
             if ($comparador != $totalcontazonas || count($trns) != 0) {
                 $error = "no puede sortear los turnos por que existe una zona que no tene ninguna farmacia registrada o los turnos ya estan sorteados";
                 return View::make('administrador.turnos.errores')->with('error', $error);
             } else {
                 $año = date("Y");
                 $añosig = $año + 1;
                 $zonas = Zona::all();
                 $contadorzonas = count($zonas);
                 $ii = 0;
                 $prueba = 0;
                 while ($ii < $contadorzonas) {
                     $controlaño = "";
                     $alta = Farmacia::where('zona_id', '=', $zonas[$ii]->id)->get();
                     $dias = count($alta);
                     $diasestaticos = $dias;
                     if ($dias <= 31) {
                         $i = 1;
                         $empieazodesorteo = 1;
                         $diassorteados = array("a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a");
                         while ($dias <= 31) {
                             $sorteo;
                             $cont = true;
                             $j = $empieazodesorteo;
                             foreach ($alta as $a) {
                                 while ($cont == true) {
                                     $sorteo = rand($empieazodesorteo, $dias);
                                     while ($j <= $dias) {
                                         if ($diassorteados[$j] == $sorteo) {
                                             $cont = true;
                                             break;
                                         }
                                         $cont = false;
                                         $j++;
                                     }
                                     $j = $empieazodesorteo;
                                     if ($cont == false) {
                                         $diassorteados[$i] = $sorteo;
                                         $fec = $año . "-01-" . $sorteo;
                                         $farmacia = Farmacia::find($a->id);
                                         $diass = "";
                                         $farmacia->turnohabilitado = "si";
                                         $farmacia->save();
                                         //echo $farmacia->id." le todo el dia"." : ".$fec."<br>";
                                         while ($año != $añosig) {
                                             $tur = Turno::where('fechaturno', '=', $fec)->first();
                                             $controlaño = $fec[0] . $fec[1] . $fec[2] . $fec[3];
                                             if ($controlaño == $añosig) {
                                                 break;
                                             } else {
                                                 $farmacia->turnos()->attach($tur);
                                                 //echo $farmacia->id." le todo el dia"." : ".$tur->fechaturno."<br>";
                                                 $prueba++;
                                             }
                                             $fec = strtotime('+29 day', strtotime($fec));
                                             $fec = date('Y-m-j', $fec);
                                         }
                                         $i++;
                                     }
                                 }
                                 $cont = true;
                                 if ($i == 32) {
                                     $cont = false;
                                     break;
                                 }
                             }
                             $empieazodesorteo = $dias + 1;
                             $dias += $diasestaticos;
                             if ($dias > 31) {
                                 $restadias = $dias - 31;
                                 $dias -= $restadias;
                             }
                             if ($i == 32) {
                                 break;
                             }
                         }
                     } else {
                         $fe = "";
                         $mess = 1;
                         $diasdelmes = cal_days_in_month(CAL_GREGORIAN, $mess, $año);
                         $ddd = $diasdelmes;
                         $diassorteados = array();
                         for ($i = 1; $i <= $dias; $i++) {
                             $diassorteados[$i] = "a";
                         }
                         $sorteo;
                         $cont = true;
                         $i = 1;
                         $j = 1;
                         $p = 1;
                         $diasrestantes;
                         $inicio = 1;
                         foreach ($alta as $a) {
                             $j = $inicio;
                             while ($cont == true) {
                                 $sorteo = rand(1, $ddd);
                                 while ($j <= $dias) {
                                     if ($diassorteados[$j] == $sorteo) {
                                         $cont = true;
                                         break;
                                     }
                                     $cont = false;
                                     $j++;
                                 }
                                 $j = $inicio;
                                 if ($cont == false) {
                                     $diassorteados[$i] = $sorteo;
                                     $fec = $año . "-" . $mess . "-" . $sorteo;
                                     $farmacia = Farmacia::find($a->id);
                                     $farmacia->turnohabilitado = "si";
                                     $farmacia->save();
                                     turnoscadames($año, $añosig, $fec, $farmacia);
                                     //echo $farmacia->id." le todo el dia"." : ".$fec."<br>";
                                     while ($año != $añosig) {
                                         $tur = Turno::where('fechaturno', '=', $fec)->first();
                                         $controlaño = $fec[0] . $fec[1] . $fec[2] . $fec[3];
                                         if ($controlaño == $añosig) {
                                             break;
                                         } else {
                                             $farmacia->turnos()->attach($tur);
                                             //echo $farmacia->id." le todo el dia"." : ".$tur->fechaturno."<br>";
                                         }
                                         $fec = strtotime('+29 day', strtotime($fec));
                                         $fec = date('Y-m-j', $fec);
                                     }
                                 }
                             }
                             if ($p == $diasdelmes) {
                                 $mess++;
                                 $p = 1;
                                 $diasdelmes = cal_days_in_month(CAL_GREGORIAN, $mess, $año);
                                 $diasrestantes = $dias - $i;
                                 $inicio = $i + 1;
                                 if ($diasrestantes <= $diasdelmes) {
                                     $ddd = $diasrestantes;
                                 }
                             }
                             $i++;
                             $p++;
                             $cont = true;
                         }
                     }
                     $ii++;
                     //echo "<br>"."ZONA:+".$ii;
                 }
                 //echo "<br>"."ternimo";
                 //echo $prueba;
                 return Redirect::route('turno.index');
             }
         }
     }
 }