/** * rules para escenario estado * @param int $estado * @return bool */ function com_estado($estado) { if ($this->isNewRecord) { $existe = LocalizacionAccVariable::find()->where(['id_variable' => $this->id_variable])->andWhere(['id_estado' => $this->id_estado])->One(); if ($existe != null) { $this->addError($estado, "Error, Ya Se Agregó Este Estado"); } } }
/** * Displays a single AccionCentralizadaVariables model. * @param integer $id * @return mixed */ public function actionView($id) { $model = $this->findModel($id); $ambito = $model->localizacion; if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { //Tablas relacionadas $localizacion = new ActiveDataProvider(['query' => LocalizacionAccVariable::find()->where(['id_variable' => $model->id]), 'pagination' => ['pageSize' => 5]]); $usuarios_variables = new AccionCentralizadaVariablesUsuarios(); $usuarios = $usuarios_variables->obtener_usuario_variables($model->id); return $this->render('view', ['model' => $model, 'localizacion' => $localizacion, 'ambito' => $ambito, 'usuarios' => $usuarios]); } }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = LocalizacionAccVariable::find(); // add conditions that should always apply here $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; } // grid filtering conditions $query->andFilterWhere(['id' => $this->id, 'id_variable' => $this->id_variable, 'id_pais' => $this->id_pais, 'id_estado' => $this->id_estado, 'id_municipio' => $this->id_municipio, 'id_parroquia' => $this->id_parroquia]); return $dataProvider; }
public function LocalizacionVariables($id) { $ace = LocalizacionAccVariable::find()->select("estados.nombre as nombre_estados, id_variable, localizacion_acc_variable.id, accion_centralizada_variables.nombre_variable as nombre")->innerjoin("accion_centralizada_variables", "localizacion_acc_variable.id_variable=accion_centralizada_variables.id")->innerjoin("estados", 'localizacion_acc_variable.id_estado=estados.id')->where(['localizacion_acc_variable.id_variable' => $id])->asArray()->All(); $provider = new ArrayDataProvider(['allModels' => $ace, 'sort' => ['attributes' => ['nombre']], 'pagination' => ['pageSize' => 10]]); return $provider; }
/** * Cuenta cuantas localizaciones han sido cargadas * @return bool */ public function getLocal_variable_estados() { $count = LocalizacionAccVariable::find()->where("id_variable=" . $this->id)->count(); if ($count <= 24) { return false; } else { return true; } }