public function actionLocalidades() { $id = Yii::app()->request->getParam('id'); $proyecto = Proyecto::model()->findByPk($id); $empresa = Empresa::model()->findByPk($proyecto->empresa_id); $criteria = new CDbCriteria(); $criteria->condition = "proyecto_id = :value "; $criteria->params = array(":value" => $id); $dataProvider = new CActiveDataProvider('Localidad', array('criteria' => $criteria, 'pagination' => array('pageSize' => 10))); $this->render('localidades_proyecto', array('model' => $dataProvider, 'proyecto' => $proyecto, 'empresa' => $empresa)); }
public function actionIndex() { $usuarioActual = Usuario::model()->find('usuario=:x', array(':x' => Yii::app()->user->name)); $detalleProyectos = DetalleProyecto::model()->findAll('responsable_did =' . $usuarioActual->id . '&& ayuda_did = 3'); if (isset($usuarioActual) && $usuarioActual->tipoUsuario_did == 1) { $actividades = Actividad::model()->findAll(array('order' => 'id DESC')); $proyectos = Proyecto::model()->findAll(array("order" => "responsable_did ASC", "condition" => "estatus_did = 1")); $this->render('administracion', array("actividades" => $actividades, 'proyectos' => $proyectos, 'detalleProyectos' => $detalleProyectos, 'usuarioActual' => $usuarioActual)); } else { if (isset($usuarioActual) && $usuarioActual->tipoUsuario_did == 2) { $model = new LoginForm(); // if it is ajax validation request if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') { echo CActiveForm::validate($model); Yii::app()->end(); } // collect user input data if (isset($_POST['LoginForm'])) { $model->attributes = $_POST['LoginForm']; Yii::app($model->username . ' se ha logueado', 'info', 'application.*'); // validate user input and redirect to the previous page if valid if ($model->validate() && $model->login()) { Yii::app()->db->createCommand("insert into Actividad (mensaje, usuario) \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tValues ('Ha iniciado sesión', \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'" . $model->username . "')")->execute(); $this->redirect(Yii::app()->user->returnUrl); } } // display the login form $this->render('login', array('model' => $model)); } else { if (isset($usuarioActual) && $usuarioActual->tipoUsuario_did != 2 || isset($usuarioActual) && $usuarioActual->tipoUsuario_did != 1) { $proyectos = Proyecto::model()->findAll("responsable_did = " . $usuarioActual->id); $this->render('staff', array('usuarioActual' => $usuarioActual, 'proyectos' => $proyectos, 'detalleProyectos' => $detalleProyectos)); } } } }
/** * Returns the data model based on the primary key given in the GET variable. * If the data model is not found, an HTTP exception will be raised. * @param integer $id the ID of the model to be loaded * @return Proyecto the loaded model * @throws CHttpException */ public function loadModel($id) { $model = Proyecto::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
public function actionCreateGrafic() { $ids = Yii::app()->request->getParam('proyectos'); $barra = array(); $torta = array(); foreach ($ids as $index1 => $id) { $proyecto = Proyecto::model()->findByPk($id); $proyectos[$index1] = $proyecto->nombre; foreach ($proyecto->localidads as $index => $localidad) { $barra[$index1]['localidad']['nombre'][$index] = $localidad->comuna->nombre; $checklist = Checklist::model()->findAllByAttributes(array('localidad_id' => $localidad->id)); $pendiente = 0; $iniciado = 0; $terminado = 0; foreach ($checklist as $check) { switch ($check->estado_id) { case 1: $pendiente++; break; case 2: $iniciado++; break; case 3: $terminado++; break; } } $barra[$index1]['localidad']['pendiente'][$index] = $pendiente; $barra[$index1]['localidad']['iniciado'][$index] = $iniciado; $barra[$index1]['localidad']['terminado'][$index] = $terminado; } foreach ($proyecto->localidads as $index => $localidad) { $torta[$index1][$index]['localidad'] = $localidad->comuna->nombre; $count = count($localidad->checklists); $precio = 0; $costo = 0; foreach ($proyecto->tareas as $tarea) { $precio = $precio + $tarea->precio; $costo = $costo + $tarea->costo; } $precio = $precio * $count; $costo = $costo * $count; //$barra2[$index1]['localidad'][$index] = $localidad->comuna->nombre; $barra2[$index1]['precio'][$index] = $precio; $barra2[$index1]['costo'][$index] = $costo; $barra2[$index1]['ganancia'][$index] = $precio - $costo; foreach ($localidad->checklists as $checklist) { if (isset($checklist->usuario_id)) { $cant = 1; if (isset($torta[$index1][$index]['checklist'][$checklist->usuario_id]['cant'])) { $cant = $torta[$index1][$index]['checklist'][$checklist->usuario_id]['cant']; $cant++; } $torta[$index1][$index]['checklist'][$checklist->usuario_id]['id'] = $checklist->usuario_id; $torta[$index1][$index]['checklist'][$checklist->usuario_id]['nombre'] = $checklist->usuario->nombre; $torta[$index1][$index]['checklist'][$checklist->usuario_id]['cant'] = $cant; } else { $cant = 1; if (isset($torta[$index1][$index]['checklist']['otros']['cant'])) { $cant = $torta[$index1][$index]['checklist']['otros']['cant']; $cant++; } $torta[$index1][$index]['checklist']['otros']['id'] = 'otros'; $torta[$index1][$index]['checklist']['otros']['nombre'] = 'sin asignar'; $torta[$index1][$index]['checklist']['otros']['cant'] = $cant; } } } } Yii::app()->clientScript->scriptMap['jquery.js'] = false; Yii::app()->clientScript->scriptMap['jquery.min.js'] = false; Yii::app()->clientScript->scriptMap['highcharts.js'] = false; Yii::app()->clientScript->scriptMap['exporting.js'] = false; header("Content-type: application/json"); echo CJSON::encode(array('div' => $this->renderPartial('graficos', array('barras' => $barra, 'tortas' => $torta, 'proyectos' => $proyectos, 'barras2' => $barra2), true, true))); exit; }
$this->pageTitle=Yii::app()->name . ' - ' . $this->pageCaption; $this->pageDescription='documento'; $this->breadcrumbs=array( 'Documento'=>array('index'), 'Adminsitrar', ); $this->menu=array( array('label'=>'Listar Documento','url'=>array('index')), array('label'=>'Crear Documento','url'=>array('create')), ); $this->widget('bootstrap.widgets.TbGridView',array( 'id'=>'documento-grid', 'dataProvider'=>$model->search(), 'filter'=>$model, 'columns'=>array( 'id', array('name'=>'proyecto_did', 'value'=>'$data->proyecto->nombre', 'filter'=>CHtml::listData(Proyecto::model()->findAll(), 'id', 'nombre'),), 'ruta', array('name'=>'estatus_did', 'value'=>'$data->estatus->nombre', 'filter'=>CHtml::listData(Estatus::model()->findAll(), 'id', 'nombre'),), array( 'class'=>'bootstrap.widgets.TbButtonColumn', ), ), )); ?>
<?php $proyectos = Proyecto::model()->findAll(); foreach($proyectos as $proyecto){ echo $proyecto->nombre . " - " . $proyecto->responsable->nombre . "<br/>"; } ?>
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm',array( 'id'=>'documento-form', 'type'=>'horizontal', 'enableAjaxValidation'=>false, )); ?> <div class="alert alert-info"> <button type="button" class="close" data-dismiss="alert">×</button> <h4>Instrucciones</h4> Los campos con <span class="required">*</span> son requeridos. </div> <?php echo $form->errorSummary($model); ?> <div class="form-group"> <?php echo $form->labelEx($model,'proyecto_did',array('class'=>'control-label col-lg-2')); ?> <div class="col-lg-3"> <?php echo $form->dropDownList($model,'proyecto_did',CHtml::listData(Proyecto::model()->findAll(), "id", "nombre"),array("class"=>"form-control")); ?> <?php echo $form->error($model,'proyecto_did'); ?> </div> </div> <div class="form-group"> <?php echo $form->labelEx($model,'ruta',array('class'=>'control-label col-lg-2')); ?> <div class="col-lg-3"> <?php echo $form->textField($model,'ruta',array('size'=>60,'maxlength'=>100,'class'=>'form-control')); ?> <?php echo $form->error($model,'ruta'); ?> </div> </div> <div class="form-group"> <?php echo $form->labelEx($model,'estatus_did',array('class'=>'control-label col-lg-2')); ?> <div class="col-lg-3"> <?php echo $form->dropDownList($model,'estatus_did',CHtml::listData(Estatus::model()->findAll(), "id", "nombre"),array("class"=>"form-control")); ?> <?php echo $form->error($model,'estatus_did'); ?> </div> </div>
<div class="clearfix"> <?php echo $form->label($model,'nombre'); ?> <div class="input"> <?php echo $form->textField($model,'nombre',array('size'=>60,'maxlength'=>100,'class'=>'form-control')); ?> </div> </div> <div class="clearfix"> <?php echo $form->label($model,'proyecto_did'); ?> <div class="input"> <?php echo $form->dropDownList($model,"proyecto_did",CHtml::listData(Proyecto::model()->findAll(), 'id', 'nombre')); ?> </div> </div> <div class="clearfix"> <?php echo $form->label($model,'peso'); ?> <div class="input"> <?php echo $form->textField($model,'peso'); ?> </div> </div> <div class="clearfix"> <?php echo $form->label($model,'estatus_did'); ?> <div class="input">
<?php $proyecto = Proyecto::model()->find("id = " . $_GET["id"]); $this->pageCaption=$proyecto->nombre; $this->pageTitle=Yii::app()->name . ' - ' . $this->pageCaption; $this->pageDescription= ""; $this->breadcrumbs=array( 'Actividad'=>array('index'), 'Crear', ); $this->menu=array( array('label'=>'Todos los proyectos','url'=>array('proyecto/index')), array('label'=>'Ver ' . $proyecto->nombre,'url'=>array('proyecto/view',"id"=>$_GET["id"])), ); ?> <?php echo $this->renderPartial('_form', array('model'=>$model)); ?>
public function actionImprimir($id) { $proyecto = Proyecto::model()->findByPk($id); $actividades = DetalleProyecto::model()->findAll('proyecto_did=' . $id); $this->layout = "pdf"; $mPDF1 = Yii::app()->ePdf->mpdf(); $stylesheet = file_get_contents(Yii::getPathOfAlias('webroot.themes.bootstrap.css') . '/print.css'); $mPDF1->WriteHTML($stylesheet, 1); $mPDF1->AddPage('P'); $mPDF1->WriteHTML($this->renderPartial('imprimir', array('proyecto' => $proyecto, 'actividades' => $actividades), true), 2); $mPDF1->Output(); }
<?php } ?> </ul> </li> <?php } ?> </ul> <?php } else if($usuarioActual->tipoUsuario_did == 3){ ?> <ul> <li class="active"><?php echo CHtml::link('<i class="fa fa-dashboard"></i> Cuadro de mando',array('site/index')); ?></li> <?php foreach($categorias as $cat){ ?> <li> <a href="#"> <i class="fa fa-lg fa-fw fa-folder"></i> <span class="menu-item-parent"><?php echo $cat->nombre; ?></span> <b class="collapse-sign"><em class="fa fa-collapse-o"></em></b> </a> <?php $proyectos = Proyecto::model()->findAll("categoria_did = " . $cat->id); ?> <ul> <?php foreach($proyectos as $proyecto){ ?> <li><?php echo CHtml::link($proyecto->nombre,array('proyecto/view','id'=>$proyecto->id)); ?></li> <?php } ?> </ul> </li> <?php } ?> </ul> <?php } ?> </nav> </aside> <!-- MAIN PANEL --> <div id="main"> <!-- RIBBON -->
<div class="col-xs-6 text-right"> <i class="fa fa-arrow-circle-right"></i> </div> </div> </div>',array('proyecto/index')); ?> </div> </div> <div class="col-lg-3"> <div class="panel panel-success"> <div class="panel-heading"> <div class="row"> <div class="col-xs-6"> <i class="fa fa-comments fa-5x"></i> </div> <div class="col-xs-6 text-right"> <h1 style="font-size:40pt;"><strong><?php echo Proyecto::model()->count("estatus_did = 3");?></strong></h1> <p class="announcement-text">Proyectos Cancelados!</p> </div> </div> </div> <?php echo CHtml::link(' <div class="panel-footer announcement-bottom"> <div class="row"> <div class="col-xs-6"> Ver... </div> <div class="col-xs-6 text-right"> <i class="fa fa-arrow-circle-right"></i> </div> </div> </div>',array('proyecto/index')); ?>
<i class="fa fa-arrow-circle-right"></i> </div> </div> </div> </a> </div> </div> <div class="col-lg-3"> <div class="panel panel-success"> <div class="panel-heading"> <div class="row"> <div class="col-xs-6"> <i class="fa fa-comments fa-5x"></i> </div> <div class="col-xs-6 text-right"> <h1 style="font-size:40pt;"><strong><?php echo Proyecto::model()->count("estatus_did = 3 && responsable_did = " . $usuarioActual->id);?></strong></h1> <p class="announcement-text">Proyectos Cancelados!</p> </div> </div> </div> <a href="#"> <div class="panel-footer announcement-bottom"> <div class="row"> <div class="col-xs-6"> Ver... </div> <div class="col-xs-6 text-right"> <i class="fa fa-arrow-circle-right"></i> </div> </div> </div>
public function actionCambiar($id) { if (isset($_GET["estatus"])) { $model = $this->loadModel($id); $model->estatus_did = $_GET["estatus"]; if ($_GET["estatus"] == 2) { $model->fechaFinalizado = date('Y-m-d H:i:s'); } elseif ($_GET["estatus"] == 1) { $model->fechaFinalizado = NULL; } if ($model->save()) { if ($model->estatus_did == 1) { Yii::app()->user->setFlash("warning", "No se ha realizado la actividad: " . $model->nombre . " del Proyecto " . $model->proyecto->nombre); $proyecto = Proyecto::model()->find("id = " . $model->proyecto_did); if ($proyecto->estatus_did == 2) { $proyecto->estatus_did = 1; if ($proyecto->save()) { Yii::app()->user->setFlash("info", "El proyecto: " . $proyecto->nombre . " se volvió a poner en Proceso, debido a que tiene más de 1 actividad en pendiente"); } } } else { Yii::app()->user->setFlash("info", "Se realizó la actividad: " . $model->nombre . " del Proyecto " . $model->proyecto->nombre); $criteria = new CDbCriteria(); $criteria->condition = "estatus_did = 2 && proyecto_did = " . $model->proyecto_did; $actividadesTotales = DetalleProyecto::model()->count("proyecto_did = " . $model->proyecto_did); $actividadesRealizadas = DetalleProyecto::model()->count($criteria); if ($actividadesTotales == $actividadesRealizadas) { $proyecto = Proyecto::model()->find("id = " . $model->proyecto_did); $proyecto->estatus_did = 2; if ($proyecto->save()) { Yii::app()->user->setFlash("info", "Se completó el proyecto: " . $proyecto->nombre); Yii::app()->db->createCommand("insert into Actividad (mensaje, usuario) Values ('Se completó el proyecto: " . $proyecto->nombre . "', '" . Yii::app()->user->name . "')")->execute(); } } } Yii::app()->db->createCommand("insert into Actividad (mensaje, usuario) Values ('Cambió de Estatus de la actividad " . $model->nombre . " del Proyecto " . $model->proyecto->nombre . " a " . $model->estatus->nombre . "', '" . Yii::app()->user->name . "')")->execute(); if (isset($_GET["ver"])) { $this->redirect(array("proyecto/view", 'id' => $model->proyecto_did)); } if (isset($_GET["accion"])) { $this->redirect(array("proyecto/otros")); } else { $this->redirect(array("proyecto/index")); } } } }
</a> </h4> </div> <div id="collapse2" class="panel-collapse collapse"> <div class="panel-body"> <div class="col-md-6"> <?php echo $form->textFieldGroup($usuario, 'nombre', array('wrapperHtmlOptions' => array('class' => 'col-sm-5'))); ?> </div> <!--<div class="col-md-6"> <?php echo $form->dropDownListGroup($usuario, 'proyecto_id', array('wrapperHtmlOptions' => array('class' => 'col-sm-5'), 'widgetOptions' => array('data' => CHtml::listData(Proyecto::model()->findAll(), 'id', 'nombre'), 'htmlOptions' => array('prompt' => 'Seleccione Proyecto')))); ?> </div> --> <div class="col-md-6"> <div class="form-group"> <label class="control-label" for="IdentificacionUsuario_proyecto_id">Proyecto</label> <?php echo CHtml::textField('departamento', $model->localidad->proyecto->nombre, array('disabled' => 'disabled', 'class' => 'form-control')); ?> </div> </div> <div class="col-md-6"> <?php echo $form->textFieldGroup($usuario, 'email', array('wrapperHtmlOptions' => array('class' => 'col-sm-5')));