<?php /* @var $this yii\web\View */ /* @var $form yii\widgets\ActiveForm */ /* @var $generator yii\gii\generators\form\Generator */ use app\models\TiposTramite; use yii\helpers\ArrayHelper; echo $form->field($generator, 'tableName'); echo $form->field($generator, 'modelClass'); echo $form->field($generator, 'ns'); echo $form->field($generator, 'baseClass'); echo $form->field($generator, 'db'); echo $form->field($generator, 'useTablePrefix')->checkbox(); echo $form->field($generator, 'generateRelations')->checkbox(); echo $form->field($generator, 'generateLabelsFromComments')->checkbox(); echo $form->field($generator, 'generateQuery')->checkbox(); echo $form->field($generator, 'queryNs'); echo $form->field($generator, 'queryClass'); echo $form->field($generator, 'queryBaseClass'); echo $form->field($generator, 'enableI18N')->checkbox(); echo $form->field($generator, 'messageCategory'); $tipos=TiposTramite::find()->all(); $listData=ArrayHelper::map($tipos,'id','nombre'); echo $form->field($generator, 'especializado')->dropDownList( $listData,['prompt'=>'Select...','id'=>'nombre']);
/** * @return \yii\db\ActiveQuery */ public function getTipoTramite() { $this->tipoTramiteId = $this->tipoDeTramite(); return $this->hasOne(TiposTramite::className(), ['id' => 'tipoTramiteId']); }
public function actionTramiteroles($id) { if (isset($_POST['permisos'])) { $c = 1; foreach ($_POST['permisos'] as $permiso) { if (isset($permiso['id'])) { $modelttr = TipoTramitesRoles::find()->where('id = :id', ['id' => $permiso['id']])->one(); } else { $modelttr = new TipoTramitesRoles(); } $modelttr->roleId = $permiso['rolid']; $modelttr->tipoTramiteId = $permiso['ttid']; if (isset($permiso['leer'])) { $modelttr->leer = 1; } else { $modelttr->leer = 0; } if (isset($permiso['crear'])) { $modelttr->crear = 1; } else { $modelttr->crear = 0; } if (isset($permiso['actualizar'])) { $modelttr->actualizar = 1; } else { $modelttr->actualizar = 0; } if (isset($permiso['borrar'])) { $modelttr->borrar = 1; } else { $modelttr->borrar = 0; } $modelttr->save(); //echo "<pre>";print_r($permiso['ppt']);echo "</pre>";exit; if (isset($permiso['ppt'])) { foreach ($permiso['ppt'] as $ppt) { if (isset($ppt['leer']) or isset($ppt['crear']) or isset($ppt['actualizar']) or isset($ppt['borrar'])) { if (isset($ppt['id'])) { $modelppt = PermisosPasoTramite::find()->where('id = :id', ['id' => $ppt['id']])->one(); } else { $modelppt = new PermisosPasoTramite(); } $modelppt->pasoTramiteId = $ppt['ptid']; $modelppt->tipoTramiteRoleId = $modelttr->id; if (isset($ppt['leer'])) { $modelppt->leer = 1; } else { $modelppt->leer = 0; } if (isset($ppt['crear'])) { $modelppt->crear = 1; } else { $modelppt->crear = 0; } if (isset($ppt['actualizar'])) { $modelppt->actualizar = 1; } else { $modelppt->actualizar = 0; } if (isset($ppt['borrar'])) { $modelppt->borrar = 1; } else { $modelppt->borrar = 0; } $modelppt->save(); } } } $c++; } } $rol = Roles::find()->where('id = :id', ['id' => $id])->one(); $tiposTramite = TiposTramite::find()->all(); $pasosTramite = PasosTramite::find()->all(); return $this->render('tramiteroles', ['tiposTramite' => $tiposTramite, 'rol' => $rol, 'pasosTramite' => $pasosTramite]); }
public function actionImprimir() { // get your HTML raw content without any layouts or scrip $TiposTramite = TiposTramite::find()->all(); $content = $this->renderPartial('_imprimir', ['TiposTramite' => $TiposTramite]); $header = $this->renderPartial('_header', ['TiposTramite' => $TiposTramite]); $pdf = new Pdf(['format' => Pdf::FORMAT_A4, 'orientation' => Pdf::ORIENT_PORTRAIT, 'destination' => Pdf::DEST_BROWSER, 'content' => $content, 'cssFile' => '@vendor/kartik-v/yii2-mpdf/assets/kv-mpdf-bootstrap.min.css', 'cssInline' => '.kv-heading-1{font-size:18px}', 'options' => ['title' => 'Krajee Report Title'], 'methods' => ['SetHeader' => $header, 'SetFooter' => ['{PAGENO}']]]); return $pdf->render(); }
public function generateRulesEspeciales($paso) { $types = []; $lengths = []; if(empty($this->especializado)) return null; /*foreach ($table->columns as $column) { if ($column->autoIncrement) { continue; } if (!$column->allowNull && $column->defaultValue === null) { $types['required'][] = $column->name; } switch ($column->type) { case Schema::TYPE_SMALLINT: case Schema::TYPE_INTEGER: case Schema::TYPE_BIGINT: $types['integer'][] = $column->name; break; case Schema::TYPE_BOOLEAN: $types['boolean'][] = $column->name; break; case Schema::TYPE_FLOAT: case 'double': // Schema::TYPE_DOUBLE, which is available since Yii 2.0.3 case Schema::TYPE_DECIMAL: case Schema::TYPE_MONEY: $types['number'][] = $column->name; break; case Schema::TYPE_DATE: case Schema::TYPE_TIME: case Schema::TYPE_DATETIME: case Schema::TYPE_TIMESTAMP: $types['safe'][] = $column->name; break; default: // strings if ($column->size > 0) { $lengths[$column->size][] = $column->name; } else { $types['string'][] = $column->name; } } }*/ $tramite = TiposTramite::findOne($this->especializado); foreach ($tramite->atributos as $atributo) { if($atributo->pasoId==$paso) { $types[$atributo->tipoAtributo->nombre][]=$atributo->nombre; if($atributo->allowNull==0) $types['required'][] = $atributo->nombre; if($atributo->attrLength>0) $lengths[$atributo->attrLength][] = $atributo->nombre; } } $rules = []; foreach ($types as $type => $columns) { $rules[] = "[['" . implode("', '", $columns) . "'], '$type']"; } foreach ($lengths as $length => $columns) { $rules[] = "[['" . implode("', '", $columns) . "'], 'string', 'max' => $length]"; } // Unique indexes rules /* try { $db = $this->getDbConnection(); $uniqueIndexes = $db->getSchema()->findUniqueIndexes($table); foreach ($uniqueIndexes as $uniqueColumns) { // Avoid validating auto incremental columns if (!$this->isColumnAutoIncremental($table, $uniqueColumns)) { $attributesCount = count($uniqueColumns); if ($attributesCount == 1) { $rules[] = "[['" . $uniqueColumns[0] . "'], 'unique']"; } elseif ($attributesCount > 1) { $labels = array_intersect_key($this->generateLabels($table), array_flip($uniqueColumns)); $lastLabel = array_pop($labels); $columnsList = implode("', '", $uniqueColumns); $rules[] = "[['" . $columnsList . "'], 'unique', 'targetAttribute' => ['" . $columnsList . "'], 'message' => 'The combination of " . implode(', ', $labels) . " and " . $lastLabel . " has already been taken.']"; } } } } catch (NotSupportedException $e) { // doesn't support unique indexes information...do nothing }*/ return $rules; }
} /** * @inheritdoc */ public function attributeLabels() { return [ <?php foreach ($labels as $name => $label): ?> <?= "'$name' => " . $generator->generateString($label) . ",\n" ?> <?php endforeach; ?> ]; } <?php if (!empty($generator->especializado)): $tramite = TiposTramite::findOne($generator->especializado); foreach ($tramite->atributos as $atributo) : ?> public function get<?= Inflector::id2camel($atributo->nombre, '_') ?>() { <?php switch ($atributo->tipoAtributo->nombre) { case app\models\TiposAtributo::ENTERO: case app\models\TiposAtributo::BOLEANO: echo "return (int) \$this->retriveAttr({$atributo->id},{$atributo->pasoId})->valor;"; break; case app\models\TiposAtributo::FLOTANTE: echo "return (float) \$this->retriveAttr({$atributo->id},{$atributo->pasoId})->valor;"; break;
private function psalvar($paso) { $transaction = Yii::$app->db->beginTransaction(); $datos = []; try { $this->pasoActualId = $paso->id; $this->tipoTramiteId = $this->tipoDeTramite(); $datos['tipoTramiteId'] = $this->tipoDeTramite(); $this->scenario = $this->pasoActualId; if (!$this->save()) { print_r($this->errors); return false; } foreach ($paso->atributos as $atributo) { $valor = $this->retriveAttr($atributo->id, $paso->id); $valor->tramiteId = $this->id; if ($valor->isNewRecord && !$this->permisosPorPaso[$paso->id][USUARIOS::$CREAR]) { $transaction->rollBack(); throw new ForbiddenHttpException('No tiene Permiso para generar esta operacion'); return false; } if (!$valor->isNewRecord && !$this->permisosPorPaso[$paso->id][USUARIOS::$ACTUALIZAR]) { $transaction->rollBack(); throw new ForbiddenHttpException('No tiene Permiso para actualizar estos datos'); return false; } if (!$valor->save()) { print_r($this->errors); $transaction->rollBack(); return false; } $datos[$atributo->nombre] = $valor->valor; } $paso = $this->retriveSiguientePaso(); $this->pasoActualId = $paso->id; $datos['pasoActualId'] = $paso->id; $datos['id'] = $this->id; $datos['observaciones'] = $this->observaciones; TiposTramite::findOne($this->pasoActualId); if (empty($this->folio)) { $ciclo = $this->ciclo; if (empty($ciclo)) { $configuracion = Configuracion::findOne(1); //print_r($configuracion); $this->ciclo = $configuracion->cicloActual; } $folio = Folios::find()->where(['ciclo_id' => $this->ciclo, 'tipoTramite_id' => $this->tipoTramiteId])->one(); if (empty($folio)) { $folio = new Folios(); $folio->ciclo_id = $this->ciclo; $folio->tipoTramite_id = $this->tipoTramiteId; $folio->proximofolio = 1; } $this->folio = $folio->proximofolio; $folio->proximofolio = $folio->proximofolio + 1; if (!$folio->save()) { $transaction->rollBack(); //print_r($folio); return false; } } if (!$this->save()) { $transaction->rollBack(); return false; } $transaction->commit(); return $datos; } catch (Exception $e) { $transaction->rollBack(); return false; } return false; }