Exemplo n.º 1
0
 public function nuevoAction()
 {
     $request = $this->getRequest();
     //Intanciamos nuestro formulario
     $pacienteForm = new PacienteForm();
     if ($request->isPost()) {
         //Si hicieron POST
         //Instanciamos nuestro filtro
         $pacienteFilter = new PacienteFilter();
         //Le ponemos nuestro filtro a nuesto fromulario
         $pacienteForm->setInputFilter($pacienteFilter->getInputFilter());
         //Le ponemos los datos a nuestro formulario
         $pacienteForm->setData($request->getPost());
         //Validamos nuestro formulario
         if ($pacienteForm->isValid()) {
             //Instanciamos un nuevo objeto de nuestro objeto Paciente
             $paciente = new Paciente();
             //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Paciente
             foreach ($pacienteForm->getData() as $pacienteKey => $pacienteValue) {
                 if ($pacienteKey != 'pacientefacturacion_rfc') {
                     $paciente->setByName($pacienteKey, $pacienteValue, \BasePeer::TYPE_FIELDNAME);
                 }
             }
             //Guardamos en nuestra base de datos
             $paciente->save();
             // Si nos mandan RFC
             if ($request->getPost()->pacientefacturacion_rfc != null) {
                 $pacientefacturacion = new \Pacientefacturacion();
                 $pacientefacturacion->setIdpaciente($paciente->getIdpaciente());
                 $pacientefacturacion->setPacientefacturacionCalle($paciente->getPacienteCalle());
                 $pacientefacturacion->setPacientefacturacionNoexterior($paciente->getPacienteNoexterior());
                 $pacientefacturacion->setPacientefacturacionNointerior($paciente->getPacienteNointerior());
                 $pacientefacturacion->setPacientefacturacionColonia($paciente->getPacienteColonia());
                 $pacientefacturacion->setPacientefacturacionCiudad($paciente->getPacienteCiudad());
                 $pacientefacturacion->setPacientefacturacionCodigopostal($paciente->getPacienteCodigopostal());
                 $pacientefacturacion->setPacientefacturacionEstado($paciente->getPacienteEstado());
                 $pacientefacturacion->setPacientefacturacionPais($paciente->getPacientePais());
                 $pacientefacturacion->setPacientefacturacionRfc($request->getPost()->pacientefacturacion_rfc);
                 $pacientefacturacion->save();
             }
             //Agregamos un mensaje
             $this->flashMessenger()->addMessage('Paciente guardado exitosamente!');
             $pacienteQuery = PacienteQuery::create()->filterByIdpaciente($paciente->getIdpaciente())->findOne();
             return new ViewModel(array('pacienteQuery' => $pacienteQuery, 'pacienteForm' => $pacienteForm, 'flashMessages' => $this->flashMessenger()->getMessages()));
             //Redireccionamos a nuestro list
             //return $this->redirect()->toRoute('pacientes');
         }
     }
     return new ViewModel(array('pacienteForm' => $pacienteForm));
 }