예제 #1
0
 /**
  * Iniciar Traspaso
  */
 public function actionCreate()
 {
     date_default_timezone_set('America/Caracas');
     $fecha = date('Y-m-d H:i:s');
     $bien = new Bienmueble();
     $user_id = Yii::app()->user->getId();
     $user = Usuario::model()->findbyPk($user_id);
     $dp_id = $user->dependencia_id;
     $emisores = Responsable::model()->findByDp($dp_id, 0);
     $receptores = Responsable::model()->findByDp($dp_id, 1);
     if (!isset(Yii::app()->session['tid'])) {
         $model = new BmTraspaso();
         $model->dependencia_id = $dp_id;
         $model->status_id = 1;
         $model->fecha = $fecha;
         $model->emisor_id = $emisores['id'];
         if ($model->save()) {
             Yii::app()->session['tid'] = $model->id;
             $this->render('create', array('model' => $model, 'bien' => $bien, 'emisores' => $emisores, 'receptores' => $receptores));
         } else {
             // Flujo en caso de error fatal
             $dataProvider = new CActiveDataProvider('BmTraspaso');
             $this->render('index', array('dataProvider' => $dataProvider));
         }
     } else {
         $model = $this->loadModel(Yii::app()->session['tid']);
         if (isset($_POST['BmTraspaso'])) {
             $model->scenario = 'update';
             $model->attributes = $_POST['BmTraspaso'];
             $data = BmTraspaso::model()->getTotal($model->id);
             $model->cantidad_total = $data['cantidad_total'];
             $model->total = $data['total'];
             if ($model->validate() && $model->update()) {
                 $this->redirect(array('enviar', 'id' => $model->id));
             }
         }
         $this->render('create', array('model' => $model, 'bien' => $bien, 'emisores' => $emisores, 'receptores' => $receptores));
     }
 }