コード例 #1
0
 public function actionView($id)
 {
     $rutaDelDia = array();
     $conjuntoRutas = ArrayHelper::toArray(Rutas::find()->all());
     foreach ($conjuntoRutas as $value) {
         if ($value["idRuta"] == $id) {
             $rutaDelDia = $value;
         }
     }
     return $this->render('view', ['rutaDelDia' => $rutaDelDia]);
 }
コード例 #2
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Rutas::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     $query->andFilterWhere(['idRuta' => $this->idRuta, 'idRelevador' => $this->idRelevador]);
     $query->andFilterWhere(['like', 'ordenComercios', $this->ordenComercios]);
     return $dataProvider;
 }
コード例 #3
0
 public function actionGetruta($id)
 {
     $array = array();
     $array = explode('-', $id);
     $ruta = array();
     $conjuntoRutas = ArrayHelper::toArray(Rutas::find()->all());
     $conjuntoRelevadores = ArrayHelper::toArray(Relevadores::find()->all());
     foreach ($conjuntoRelevadores as $value) {
         if ($value["idUsuario"] == $array[0]) {
             $Relevador = $value;
         }
     }
     foreach ($conjuntoRutas as $value) {
         if ($value["idRelevador"] == $Relevador['idRelevador'] && $value["diaDeRelevamiento"] == $array[1]) {
             array_push($ruta, $value);
         }
     }
     return JSON::encode($ruta);
 }
コード例 #4
0
 public function actionObtenernombrecomercios($dia, $id)
 {
     $Relevador = array();
     $comerciosParaRelevar = array();
     $buleano = true;
     $conjuntoComercios = ArrayHelper::toArray(Comercios::find()->all());
     //todos los comercios de la db
     $conjuntoRelevadores = ArrayHelper::toArray(Relevadores::find()->all());
     //todos los relevadores de la db
     $conjuntoRutas = ArrayHelper::toArray(Rutas::find()->all());
     foreach ($conjuntoRutas as $value) {
         if ($value["idRelevador"] == $id && $value['diaDeRelevamiento'] == $dia) {
             $buleano = false;
         }
     }
     if ($buleano == true) {
         //obtengo el relevador que seleccione en el dropdownlist
         foreach ($conjuntoRelevadores as $value) {
             if ($value["idRelevador"] == $id) {
                 $Relevador = $value;
             }
         }
         $distanciaMayorActual = 0;
         foreach ($conjuntoComercios as $value) {
             $latitudeFrom = $Relevador['latitud'];
             $longitudeFrom = $Relevador['longitud'];
             $latitudeTo = $value['latitud'];
             $longitudeTo = $value['longitud'];
             $theta = $longitudeFrom - $longitudeTo;
             $dist = sin(deg2rad($latitudeFrom)) * sin(deg2rad($latitudeTo)) + cos(deg2rad($latitudeFrom)) * cos(deg2rad($latitudeTo)) * cos(deg2rad($theta));
             $dist = acos($dist);
             $dist = rad2deg($dist);
             $miles = $dist * 60 * 1.1515;
             $distancia = $miles * 1.609344 . 'km';
             if ($distancia <= $Relevador['kmARecorrer']) {
                 $kk = array();
                 $kk = json_decode($value['diasParaRelevar']);
                 foreach ($kk as $value2) {
                     if ($value2 == $dia) {
                         array_push($comerciosParaRelevar, $value['nombre']);
                     }
                 }
             }
         }
         if (empty($comerciosParaRelevar)) {
             return "no existen comercios que esten dentro del rango de recorrido del relevador o de dias para relevarlo...";
         } else {
             echo JSON::encode($comerciosParaRelevar);
         }
     } else {
         return "Ya existe una ruta para este relevador este dia";
     }
 }