Example #1
0
 public function nuevoAction()
 {
     $this->layout('layout/conserje');
     $this->layout()->reclamo = "active";
     $this->layout()->reclamonuevo = "active";
     //$this->dbAdapter=$this->getServiceLocator()->get('Zend\Db\Adapter');
     $sid = new Container('base');
     $db_name = $sid->offsetGet('dbNombre');
     $id_db = $sid->offsetGet('id_db');
     $this->dbAdapter = $this->getServiceLocator()->get($db_name);
     $reclamo = new ReclamoTable($this->dbAdapter);
     //id =0 [Insertar  Reclamo]
     // id > 0 [Actualizar Reclamo]
     $id = (int) $this->params()->fromRoute('id', 0);
     if ($this->getRequest()->isPost()) {
         $lista = $this->request->getPost();
         //valor fijo, debe ser dinamico o recuperado de la sesion
         $lista['id_usuario'] = '1';
         $id_pk = (int) $lista['id_pk'];
         //Inserta o Actualizar Reclamo
         if ($id_pk > 0) {
             $reclamo->actualizarReclamo($id_pk, $lista);
         } else {
             $reclamo->nuevoReclamo($lista);
         }
         return $this->forward()->dispatch('Conserje\\Controller\\Reclamo', array('action' => 'respuesta'));
         //return $this->redirect()->toUrl($this->getRequest()->getBaseUrl().'/conserje/reclamo/consultar');
     } else {
         $form = new ReclamoForm("form");
         //cargamos el combobox de dpto
         $sid = new Container('base');
         $usuario_id = $sid->offsetGet('id_usuario');
         $dpto = new UnidadTable($this->dbAdapter);
         $nmrodpto = $dpto->getDptoUsuario($usuario_id);
         $form->get('id_dpto')->setAttribute('value', $nmrodpto['0']['nombre']);
         //cargamod el combobox de tipo asunto
         $asunto = new TipoAsuntoTable($this->dbAdapter);
         $form->get('id_tipo_asunto')->setAttribute('options', $asunto->getDatosActivos());
         if ($id > 0) {
             $titulo = "Actualizar Reclamo";
             $recuperaDatos = $reclamo->getReclamos($this->dbAdapter, $id);
             $form->get('id_pk')->setAttribute('value', $id);
             $form->get('id_dpto')->setAttribute('value', $recuperaDatos[0]['id_unidad']);
             $form->get('id_tipo_asunto')->setAttribute('value', $recuperaDatos[0]['id_tipo_asunto']);
             $form->get('receptor')->setAttribute('value', $recuperaDatos[0]['receptor']);
             $form->get('descripcion')->setAttribute('value', $recuperaDatos[0]['descripcion']);
         } else {
             $titulo = "Nuevo Reclamo";
         }
     }
     $valores = array('form' => $form, 'url' => $this->getRequest()->getBaseUrl(), "titulo" => $titulo);
     return new ViewModel($valores);
 }