Ejemplo n.º 1
0
 public function actionBuscaPersonas($grupo, $id_vehiculo)
 {
     // recupera las personas que utilizaron el vehiculo alguna vez,
     // el parametro false se refiere a $ultimasPersonas, es decir, que traiga todas las personas
     $personas = Accesos::getPersonasPorVehiculo($id_vehiculo, false);
     // Si el vehiculo es nuevo o nunca tuvo accesos devuelve una bandera para que no se muestre el modal
     if (count($personas) == 0) {
         return 'notFound';
     }
     $aux = [];
     foreach ($personas as $persona) {
         $aux[] = ['id_persona' => $persona['id_persona'], 'desc_persona' => Personas::formateaPersonaSelect2($persona['id_persona'], false)];
     }
     // el parametro true se refiere a $ultimasPersonas, es decir, que traiga las personas del último ingreso del vehic.
     // esto se hace para armar la seleccion
     $ultPersonas = Accesos::getPersonasPorVehiculo($id_vehiculo, true);
     // ultPersonas es un array de arrays [idPersona=>valor]
     $seleccion = [];
     foreach ($ultPersonas as $p) {
         foreach ($p as $key => $valor) {
             $seleccion[] = $valor;
         }
     }
     if ($grupo == 'ingvehiculos') {
         return $this->renderAjax('_ingpersonas', ['personas' => $aux, 'seleccion' => $seleccion]);
     } else {
         return $this->renderAjax('_egrpersonas', ['personas' => $aux, 'seleccion' => $seleccion]);
     }
 }
Ejemplo n.º 2
0
 public function actionApellidoslist($q = null, $id = null)
 {
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     $out = ['results' => ['id' => '', 'text' => '']];
     if (!is_null($q)) {
         if (is_numeric($q)) {
             $sp = 'CALL personas_busca_nrosdoc(:query)';
         } else {
             $q = str_replace(' ', '%', $q);
             $sp = 'CALL personas_busca_nombres(:query)';
         }
         $command = Yii::$app->db->createCommand($sp);
         $q = trim($q);
         $command->bindParam(":query", $q);
         $data = $command->queryAll();
         // el command devuelve un array de arrays con forma id=>n,text=>''
         // se recorre todo el array, se detecta el key id y con su valor se busca la persona
         // y se agrega a un nuevo array para despues ordenarlo por text y devolverlo
         $aux = ['id' => '', 'text' => ''];
         foreach ($data as $cadauno) {
             foreach ($cadauno as $key => $valor) {
                 if ($key == 'id') {
                     $t = Personas::formateaPersonaSelect2($valor, is_numeric($q));
                     $aux[] = ['id' => $valor, 'text' => $t];
                 }
             }
         }
         asort($aux);
         $out['results'] = array_values($aux);
     } elseif ($id > 0) {
         $out['results'] = ['id' => $id, 'text' => Personas::formateaPersonaSelect2($id, false)];
     }
     return $out;
 }
Ejemplo n.º 3
0
$porID = Yii::$app->urlManager->createUrl(['accesos/busca-por-id']);
$personasAddon = ['prepend' => ['content' => '<span class="glyphicon glyphicon-user" title="Buscar Personas"></span>'], 'append' => ['content' => Html::a('<span class="glyphicon glyphicon-barcode btn btn-primary"></span>', $porID, ['title' => Yii::t('app', 'Ingresa por ID'), 'tabindex' => -1, 'onclick' => '$.ajax({
							type     :"POST",
							cache    : false,
							url  : $(this).attr("href"),
							success  : function(response) {
										console.log(response);
										$("#divporid").html(response);
										$("#modalporid").modal("show");
										$("#idPersonaPorId").focus();
										}
						});
						return false;']), 'asButton' => true]];
echo $form->field($model, 'idPersonaDesde')->label('Persona a reemplazar')->widget(Select2::classname(), ['initValueText' => $personaDescDesde, 'options' => ['id' => 'selectorPersonas', 'placeholder' => 'Buscar por documento o nombre (Indique la persona a reemplazar)', 'title' => 'Buscar personas'], 'addon' => $personasAddon, 'pluginOptions' => ['allowClear' => true, 'minimumInputLength' => 3, 'ajax' => ['url' => \yii\helpers\Url::to(['personas/apellidoslist']), 'dataType' => 'json', 'data' => new JsExpression('function(params) { return {q:params.term}; }')], 'escapeMarkup' => new JsExpression('function (markup) { return markup; }'), 'templateResult' => new JsExpression('function(idpersona) { return idpersona.text; }'), 'templateSelection' => new JsExpression('function (idpersona) { return idpersona.text; }')]]);
// -------------------Selector de personas c/botón de alta ----------------------------------------
$personaDescHasta = empty($model->idPersonaHasta) ? '' : Personas::formateaPersonaSelect2($model->idPersonaHasta, false);
$personasUrl = Yii::$app->urlManager->createUrl(['personas/create-ajax', 'selector' => 'selectorPersonasH']);
$porID = Yii::$app->urlManager->createUrl(['accesos/busca-por-id', 'selector' => 'selectorPersonasH']);
$personasAddon = ['prepend' => ['content' => '<span class="glyphicon glyphicon-user" title="Buscar Personas"></span>'], 'append' => ['content' => Html::a('<span class="glyphicon glyphicon-plus-sign btn btn-primary"></span>', $personasUrl, ['title' => Yii::t('app', 'Nueva Persona'), 'tabindex' => -1, 'onclick' => '$.ajax({
											type     :"POST",
											cache    : false,
											url  : $(this).attr("href"),
											success  : function(response) {
														$("#divpersonanueva").html(response);
														$("#modalpersonanueva").modal("show");
														$("#personas-apellido").focus();
														}
										});
										return false;']) . Html::a('<span class="glyphicon glyphicon-barcode btn btn-primary"></span>', $porID, ['title' => Yii::t('app', 'Ingresa por ID'), 'tabindex' => -1, 'onclick' => '$.ajax({
							type     :"POST",
							cache    : false,
Ejemplo n.º 4
0
<div class="autorizantes-form">

    <?php 
$form = ActiveForm::begin();
?>

    <?php 
echo $form->field($model, 'id_uf')->textInput();
?>

   
    
	<?php 
// -------------------Selector de personas c/botón de alta ----------------------------------------
$personaDesc = empty($model->id_persona) ? '' : Personas::formateaPersonaSelect2($model->id_persona, false);
//$personaDesc='';
$personasUrl = Yii::$app->urlManager->createUrl(['personas/create-ajax']);
$porID = Yii::$app->urlManager->createUrl(['accesos/busca-por-id']);
$personasAddon = ['prepend' => ['content' => '<span class="glyphicon glyphicon-user" title="Buscar Personas"></span>'], 'append' => ['content' => Html::a('<span class="glyphicon glyphicon-plus-sign btn btn-primary"></span>', $personasUrl, ['title' => Yii::t('app', 'Nueva Persona'), 'tabindex' => -1, 'onclick' => '$.ajax({
											type     :"POST",
											cache    : false,
											url  : $(this).attr("href"),
											success  : function(response) {
														$("#divpersonanueva").html(response);
														$("#modalpersonanueva").modal("show");
														$("#personas-apellido").focus();
														}
										});
										return false;']) . Html::a('<span class="glyphicon glyphicon-barcode btn btn-primary"></span>', $porID, ['title' => Yii::t('app', 'Ingresa por ID'), 'tabindex' => -1, 'onclick' => '$.ajax({
							type     :"POST",