public function deleteDestroy($id)
 {
     $Conf = Configuracion::findOrFail($id);
     $Conf->delete();
     return $Conf;
 }
 public function deleteDestroy($id)
 {
     $img = ImagenModel::findOrFail($id);
     $filename = 'images/perfil/' . $img->nombre;
     // Debería crear un código que impida borrar si la imagen es usada.
     if (File::exists($filename)) {
         File::delete($filename);
         $img->delete();
     } else {
         return 'No se encuentra la imagen a eliminar. ' . $img->nombre;
     }
     // Elimino cualquier referencia que otros tengan a esa imagen borrada.
     $pacientes = Paciente::where('image_id', $id)->get();
     foreach ($pacientes as $paci) {
         $paci->image_id = null;
         $paci->save();
     }
     $users = User::where('image_id', $id)->get();
     foreach ($users as $user) {
         $user->image_id = null;
         $user->save();
     }
     $confs = Configuracion::where('logo_id', $id)->get();
     foreach ($confs as $conf) {
         $conf->logo_id = null;
         $conf->save();
     }
     return $img;
 }
Beispiel #3
0
 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;
 }