/** * Performs the work of inserting or updating the row in the database. * * If the object is new, it inserts it; otherwise an update is performed. * All related objects are also updated in this method. * * @param PropelPDO $con * @return int The number of rows affected by this insert/update and any referring fk objects' save() operations. * @throws PropelException * @see save() */ protected function doSave(PropelPDO $con) { $affectedRows = 0; // initialize var to track total num of affected rows if (!$this->alreadyInSave) { $this->alreadyInSave = true; // We call the save method on the following object(s) if they // were passed to this object by their corresponding set // method. This object relates to these object(s) by a // foreign key reference. if ($this->aConsulta !== null) { if ($this->aConsulta->isModified() || $this->aConsulta->isNew()) { $affectedRows += $this->aConsulta->save($con); } $this->setConsulta($this->aConsulta); } if ($this->isNew() || $this->isModified()) { // persist changes if ($this->isNew()) { $this->doInsert($con); } else { $this->doUpdate($con); } $affectedRows += 1; $this->resetModified(); } $this->alreadyInSave = false; } return $affectedRows; }
/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCreate() { $model = new Consulta(); // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if (isset($_POST['Consulta'])) { $model->attributes = $_POST['Consulta']; if ($model->save()) { $this->redirect(array('view', 'id' => $model->id)); } } $this->render('create', array('model' => $model)); }
public function asignarAction() { $request = $this->getRequest(); // Start Alta paciente - consulta alta_consultorio = true if ($request->getPost()->alta_consultorio == "true") { if (\ConsultorioQuery::create()->filterByIdconsultorio($request->getPost()->idconsultorio)->exists()) { $consultorioActualizar = \ConsultorioQuery::create()->filterByIdconsultorio($request->getPost()->idconsultorio)->findOne(); $consultorioActualizar->setConsultorioEnuso(0)->save(); $consultorioArray = $consultorioActualizar->toArray(BasePeer::TYPE_FIELDNAME); return new JsonModel(array('consultorioArray' => $consultorioArray)); } } // End Alta paciente - consulta alta_consultorio = true // Start Alta paciente - admision alta_cuarto = true if ($request->getPost()->alta_cuarto == "true") { if (\CuartoQuery::create()->filterByIdcuarto($request->getPost()->idcuarto)->exists()) { $cuartoActualizar = \CuartoQuery::create()->filterByIdcuarto($request->getPost()->idcuarto)->findOne(); $cuartoActualizar->setCuartoEnuso(0)->save(); $cuartoArray = $cuartoActualizar->toArray(BasePeer::TYPE_FIELDNAME); if (\AdmisionQuery::create()->filterByIdadmision($request->getPost()->idadmision)->exists()) { $admisionActualizarStatus = \AdmisionQuery::create()->filterByIdadmision($request->getPost()->idadmision)->findOne(); $admisionActualizarStatus->setAdmisionFechasalida(date('Y-m-d H:i:s'))->save(); $admisionArray = $admisionActualizarStatus->toArray(BasePeer::TYPE_FIELDNAME); } else { $admisionArray = null; } return new JsonModel(array('cuartoArray' => $cuartoArray, 'admisionArray' => $admisionArray)); } } // End Alta paciente - consulta alta_cuarto = true // Start Actualizar admision_status = pagada if ($request->getPost()->subTotalAdmision == "0") { if (\AdmisionQuery::create()->filterByIdadmision($request->getPost()->idadmision)->exists()) { $admisionActualizarStatus = \AdmisionQuery::create()->filterByIdadmision($request->getPost()->idadmision)->findOne(); $admisionActualizarStatus->setAdmisionStatus($request->getPost()->admision_status)->setAdmisionTipodepago($request->getPost()->admision_tipodepago)->setAdmisionPagadaen(date('Y-m-d H:i:s'))->setAdmisionFacturada(0)->setAdmisionTotal($request->getPost()->admision_total)->setAdmisionReferenciapago($request->getPost()->admision_referenciapago)->save(); $admisionArray = $admisionActualizarStatus->toArray(BasePeer::TYPE_FIELDNAME); return new JsonModel(array('admisionArray' => $admisionArray)); } } // End Actualizar admision_status = pagada // Start Actualizar consulta_status = pagada if ($request->getPost()->subTotalConsulta == "0") { if (\ConsultaQuery::create()->filterByIdconsulta($request->getPost()->idconsulta)->exists()) { $consultaActualizarStatus = \ConsultaQuery::create()->filterByIdconsulta($request->getPost()->idconsulta)->findOne(); $consultaActualizarStatus->setConsultaStatus($request->getPost()->consulta_status)->setConsultaReferenciapago($request->getPost()->consulta_referenciapago)->setConsultaTipodepago($request->getPost()->consulta_tipodepago)->setConsultaFacturada(0)->setConsultaTotal($request->getPost()->consulta_total)->save(); $consultaArray = $consultaActualizarStatus->toArray(BasePeer::TYPE_FIELDNAME); return new JsonModel(array('consultaArray' => $consultaArray)); } } // End Actualizar consulta_status = pagada // Start Eliminar cargoadmision if ($request->getPost()->idcargoadmision) { if ($request->getPost()->eliminar_cargoadmision_tipo == 'articulo') { if (\CargoadmisionQuery::create()->filterByIdcargoadmision($request->getPost()->idcargoadmision)->exists()) { $cargoadmisionEliminado = \CargoadmisionQuery::create()->filterByIdcargoadmision($request->getPost()->idcargoadmision)->findOne(); $lugarinventarioEntity = $cargoadmisionEliminado->getLugarinventario(); $cantidad = $lugarinventarioEntity->getLugarinventarioCantidad(); $lugarinventarioEntity->setLugarinventarioCantidad($cantidad + $request->getPost()->cantidad); $lugarinventarioEntity->save(); $cargoadmisionEliminadoArray = array(); if ($cargoadmisionEliminado->getIdlugarinventario() != null) { $articulovarianteEliminado = $cargoadmisionEliminado->getLugarinventario()->getOrdencompradetalle()->getArticulovariante(); $propiedadvalorNombreEliminado = null; foreach ($articulovarianteEliminado->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEliminado) { $propiedadEliminadoQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEliminado->getIdpropiedad())->findOne(); $propiedadvalorEliminadoQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEliminado->getIdpropiedadvalor())->findOne(); $propiedadvalorNombreEliminado .= $propiedadEliminadoQuery->getPropiedadNombre() . " " . $propiedadvalorEliminadoQuery->getPropiedadvalorNombre() . " "; } $cargoadmisionEliminado = array('idcargoadmision' => $cargoadmisionEliminado->getIdcargoadmision(), 'idadmision' => $cargoadmisionEliminado->getIdadmision(), 'status' => $cargoadmisionEliminado->getAdmision()->getAdmisionStatus(), 'cargoadmision_cantidad' => $cargoadmisionEliminado->getCargoadmisionCantidad(), 'articulo' => $cargoadmisionEliminado->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulo()->getArticuloNombre(), 'descripcion' => utf8_encode($propiedadvalorNombreEliminado), 'salida' => $cargoadmisionEliminado->getLugarinventario()->getLugar()->getLugarNombre(), 'fechahora' => $cargoadmisionEliminado->getCargoadmisionFecha(), 'precio' => $cargoadmisionEliminado->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(), 'subtotal' => $cargoadmisionEliminado->getCargoadmisionMonto()); array_push($cargoadmisionEliminadoArray, $cargoadmisionEliminado); } \CargoadmisionQuery::create()->filterByIdcargoadmision($request->getPost()->idcargoadmision)->delete(); $cargoadmisionQuery = \CargoadmisionQuery::create()->filterByIdadmision($request->getPost()->idadmision)->find(); if ($cargoadmisionQuery->getArrayCopy()) { $cargoadmisionArray = array(); foreach ($cargoadmisionQuery as $cargoadmisionEntity) { if ($cargoadmisionEntity->getIdlugarinventario() != null) { $articulovarianteEntity = $cargoadmisionEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante(); foreach ($articulovarianteEntity->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity) { $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadNombre = $propiedadQuery->getPropiedadNombre(); } foreach ($articulovarianteEntity->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity) { $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre = $propiedadvalorQuery->getPropiedadvalorNombre(); } $cargoadmision = array('idcargoadmision' => $cargoadmisionEntity->getIdcargoadmision(), 'idadmision' => $cargoadmisionEntity->getIdadmision(), 'status' => $cargoadmisionEntity->getAdmision()->getAdmisionStatus(), 'cargoadmision_cantidad' => $cargoadmisionEntity->getCargoadmisionCantidad(), 'articulo' => $cargoadmisionEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulo()->getArticuloNombre(), 'descripcion' => utf8_encode($propiedadNombre . " " . $propiedadvalorNombre), 'salida' => $cargoadmisionEntity->getLugarinventario()->getLugar()->getLugarNombre(), 'fechahora' => $cargoadmisionEntity->getCargoadmisionFecha(), 'precio' => $cargoadmisionEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(), 'subtotal' => $cargoadmisionEntity->getCargoadmisionMonto()); array_push($cargoadmisionArray, $cargoadmision); } } } return new JsonModel(array('cargoadmisionArray' => $cargoadmisionArray, 'cargoadmisionEliminadoArray' => $cargoadmisionEliminadoArray)); } } if ($request->getPost()->eliminar_cargoadmision_tipo == 'servicio') { if (\CargoadmisionQuery::create()->filterByIdcargoadmision($request->getPost()->idcargoadmision)->exists()) { $cargoadmisionEliminado = \CargoadmisionQuery::create()->filterByIdcargoadmision($request->getPost()->idcargoadmision)->findOne(); $cargoadmisionEliminadoArray = array(); if ($cargoadmisionEliminado->getIdservicio() != null) { $cargoadmisionEliminado = array('idcargoadmision' => $cargoadmisionEliminado->getIdcargoadmision(), 'idadmision' => $cargoadmisionEliminado->getIdadmision(), 'status' => $cargoadmisionEliminado->getAdmision()->getAdmisionStatus(), 'cargoadmision_cantidad' => $cargoadmisionEliminado->getCargoadmisionCantidad(), 'servicio' => $cargoadmisionEliminado->getServicio()->getServicioNombre(), 'descripcion' => $cargoadmisionEliminado->getServicio()->getServicioDescripcion(), 'precio' => $cargoadmisionEliminado->getServicio()->getServicioPrecio(), 'subtotal' => $cargoadmisionEliminado->getCargoadmisionMonto(), 'fechahora' => $cargoadmisionEliminado->getCargoadmisionFecha()); array_push($cargoadmisionEliminadoArray, $cargoadmisionEliminado); } \CargoadmisionQuery::create()->filterByIdcargoadmision($request->getPost()->idcargoadmision)->delete(); $cargoadmisionQuery = \CargoadmisionQuery::create()->filterByIdadmision($request->getPost()->idadmision)->find(); if ($cargoadmisionQuery->getArrayCopy()) { $cargoadmisionArray = array(); foreach ($cargoadmisionQuery as $cargoadmisionEntity) { if ($cargoadmisionEntity->getIdservicio() != null) { $cargoadmision = array('idcargoadmision' => $cargoadmisionEntity->getIdcargoadmision(), 'idadmision' => $cargoadmisionEntity->getIdadmision(), 'status' => $cargoadmisionEntity->getAdmision()->getAdmisionStatus(), 'cargoadmision_cantidad' => $cargoadmisionEntity->getCargoadmisionCantidad(), 'servicio' => $cargoadmisionEntity->getServicio()->getServicioNombre(), 'descripcion' => $cargoadmisionEntity->getServicio()->getServicioDescripcion(), 'precio' => $cargoadmisionEntity->getServicio()->getServicioPrecio(), 'subtotal' => $cargoadmisionEntity->getCargoadmisionMonto(), 'fechahora' => date('Y-m-d H:i:s')); array_push($cargoadmisionArray, $cargoadmision); } } } return new JsonModel(array('cargoadmisionArray' => $cargoadmisionArray, 'cargoadmisionEliminadoArray' => $cargoadmisionEliminadoArray)); } } } // End Eliminar cargoadmision // Start Ver admisionanticipo if ($request->getPost()->ver_admisionanticipo == "true") { $admisionanticipoQuery = \AdmisionanticipoQuery::create()->filterByIdadmision($request->getPost()->idadmision)->find(); if ($admisionanticipoQuery->count() != 0) { $admisionanticipoArray = array(); foreach ($admisionanticipoQuery as $admisionanticipoEntity) { $admisionanticipo = array('idadmisionanticipo' => $admisionanticipoEntity->getIdadmisionanticipo(), 'idadmision' => $admisionanticipoEntity->getIdadmision(), 'admisionanticipo_fecha' => $admisionanticipoEntity->getAdmisionanticipoFecha(), 'admisionanticipo_cantidad' => $admisionanticipoEntity->getAdmisionanticipoCantidad(), 'admisionanticipo_nota' => $admisionanticipoEntity->getAdmisionanticipoNota(), 'admisionanticipo_tipo' => $admisionanticipoEntity->getAdmisionanticipoTipo()); array_push($admisionanticipoArray, $admisionanticipo); } } return new JsonModel(array('admisionanticipoArray' => $admisionanticipoArray)); } // End Ver admisionanticipo // Start Eliminar admisionanticipo if ($request->getPost()->eliminar_admisionanticipo == "true") { if (\AdmisionanticipoQuery::create()->filterByIdadmisionanticipo($request->getPost()->idadmisionanticipo)->exists()) { $admisionanticipoEliminado = \AdmisionanticipoQuery::create()->filterByIdadmisionanticipo($request->getPost()->idadmisionanticipo)->findOne(); $admisionanticipoEliminadoArray = array(); $admisionanticipoEliminado = array('idadmisionanticipo' => $admisionanticipoEliminado->getIdadmisionanticipo(), 'idadmision' => $admisionanticipoEliminado->getIdadmision(), 'admisionanticipo_fecha' => $admisionanticipoEliminado->getAdmisionanticipoFecha(), 'admisionanticipo_cantidad' => $admisionanticipoEliminado->getAdmisionanticipoCantidad(), 'admisionanticipo_nota' => $admisionanticipoEliminado->getAdmisionanticipoNota()); array_push($admisionanticipoEliminadoArray, $admisionanticipoEliminado); \AdmisionanticipoQuery::create()->filterByIdadmisionanticipo($request->getPost()->idadmisionanticipo)->delete(); $cargoadmisionQuery = \CargoadmisionQuery::create()->filterByIdadmision($request->getPost()->idadmision)->find(); if ($cargoadmisionQuery->getArrayCopy()) { $cargoadmisionArray = array(); foreach ($cargoadmisionQuery as $cargoadmisionEntity) { if ($cargoadmisionEntity->getIdservicio() != null) { $cargoadmision = array('subtotal' => $cargoadmisionEntity->getCargoadmisionMonto()); array_push($cargoadmisionArray, $cargoadmision); } } } return new JsonModel(array('cargoadmisionArray' => $cargoadmisionArray, 'admisionanticipoEliminadoArray' => $admisionanticipoEliminadoArray)); } } // End Eliminar admisionanticipo // Start Eliminar cargoconsulta if ($request->getPost()->idcargoconsulta) { if ($request->getPost()->eliminar_cargoconsulta_tipo == 'articulo') { if (\CargoconsultaQuery::create()->filterByIdcargoconsulta($request->getPost()->idcargoconsulta)->exists()) { $cargoconsultaEliminado = \CargoconsultaQuery::create()->filterByIdcargoconsulta($request->getPost()->idcargoconsulta)->findOne(); $lugarinventarioEntity = $cargoconsultaEliminado->getLugarinventario(); $cantidad = $lugarinventarioEntity->getLugarinventarioCantidad(); $lugarinventarioEntity->setLugarinventarioCantidad($cantidad + $request->getPost()->cantidad); $lugarinventarioEntity->save(); $cargoconsultaEliminadoArray = array(); if ($cargoconsultaEliminado->getIdlugarinventario() != null) { $articulovarianteEliminado = $cargoconsultaEliminado->getLugarinventario()->getOrdencompradetalle()->getArticulovariante(); $propiedadvalorNombreEliminado = null; foreach ($articulovarianteEliminado->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEliminado) { $propiedadEliminadoQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEliminado->getIdpropiedad())->findOne(); $propiedadvalorEliminadoQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEliminado->getIdpropiedadvalor())->findOne(); $propiedadvalorNombreEliminado .= $propiedadEliminadoQuery->getPropiedadNombre() . " " . $propiedadvalorEliminadoQuery->getPropiedadvalorNombre() . " "; } $cargoconsultaEliminado = array('idcargoconsulta' => $cargoconsultaEliminado->getIdcargoconsulta(), 'idconsulta' => $cargoconsultaEliminado->getIdconsulta(), 'status' => $cargoconsultaEliminado->getConsulta()->getConsultaStatus(), 'cantidad' => $cargoconsultaEliminado->getCantidad(), 'articulo' => $cargoconsultaEliminado->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulo()->getArticuloNombre(), 'descripcion' => utf8_encode($propiedadvalorNombreEliminado), 'salida' => $cargoconsultaEliminado->getLugarinventario()->getLugar()->getLugarNombre(), 'fechahora' => $cargoconsultaEliminado->getCargoconsultaFecha(), 'precio' => $cargoconsultaEliminado->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(), 'subtotal' => $cargoconsultaEliminado->getMonto()); array_push($cargoconsultaEliminadoArray, $cargoconsultaEliminado); } \CargoconsultaQuery::create()->filterByIdcargoconsulta($request->getPost()->idcargoconsulta)->delete(); $cargoconsultaQuery = \CargoconsultaQuery::create()->filterByIdconsulta($request->getPost()->idconsulta)->find(); if ($cargoconsultaQuery->getArrayCopy()) { $cargoconsultaArray = array(); foreach ($cargoconsultaQuery as $cargoconsultaEntity) { if ($cargoconsultaEntity->getIdlugarinventario() != null) { $articulovarianteEntity = $cargoconsultaEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante(); $propiedadvalorNombre = null; foreach ($articulovarianteEntity->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity) { $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre .= $propiedadQuery->getPropiedadNombre() . " " . $propiedadvalorQuery->getPropiedadvalorNombre() . " "; } $cargoconsulta = array('idcargoconsulta' => $cargoconsultaEntity->getIdcargoconsulta(), 'idconsulta' => $cargoconsultaEntity->getIdconsulta(), 'status' => $cargoconsultaEntity->getConsulta()->getConsultaStatus(), 'cantidad' => $cargoconsultaEntity->getCantidad(), 'articulo' => $cargoconsultaEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulo()->getArticuloNombre(), 'descripcion' => utf8_encode($propiedadvalorNombre), 'salida' => $cargoconsultaEntity->getLugarinventario()->getLugar()->getLugarNombre(), 'fechahora' => $cargoconsultaEntity->getCargoconsultaFecha(), 'precio' => $cargoconsultaEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(), 'subtotal' => $cargoconsultaEntity->getMonto()); array_push($cargoconsultaArray, $cargoconsulta); } } } return new JsonModel(array('cargoconsultaArray' => $cargoconsultaArray, 'cargoconsultaEliminadoArray' => $cargoconsultaEliminadoArray)); } } if ($request->getPost()->eliminar_cargoconsulta_tipo == 'servicio') { if (\CargoconsultaQuery::create()->filterByIdcargoconsulta($request->getPost()->idcargoconsulta)->exists()) { $cargoconsultaEliminado = \CargoconsultaQuery::create()->filterByIdcargoconsulta($request->getPost()->idcargoconsulta)->findOne(); $cargoconsultaEliminadoArray = array(); if ($cargoconsultaEliminado->getIdservicio() != null) { $cargoconsultaEliminado = array('idcargoconsulta' => $cargoconsultaEliminado->getIdcargoconsulta(), 'idconsulta' => $cargoconsultaEliminado->getIdconsulta(), 'status' => $cargoconsultaEliminado->getConsulta()->getConsultaStatus(), 'cantidad' => $cargoconsultaEliminado->getCantidad(), 'servicio' => $cargoconsultaEliminado->getServicio()->getServicioNombre(), 'descripcion' => $cargoconsultaEliminado->getServicio()->getServicioDescripcion(), 'precio' => $cargoconsultaEliminado->getServicio()->getServicioPrecio(), 'subtotal' => $cargoconsultaEliminado->getMonto(), 'fechahora' => $cargoconsultaEliminado->getCargoconsultaFecha()); array_push($cargoconsultaEliminadoArray, $cargoconsultaEliminado); } \CargoconsultaQuery::create()->filterByIdcargoconsulta($request->getPost()->idcargoconsulta)->delete(); $cargoconsultaQuery = \CargoconsultaQuery::create()->filterByIdconsulta($request->getPost()->idconsulta)->find(); if ($cargoconsultaQuery->getArrayCopy()) { $cargoconsultaArray = array(); foreach ($cargoconsultaQuery as $cargoconsultaEntity) { if ($cargoconsultaEntity->getIdservicio() != null) { $cargoconsulta = array('idcargoconsulta' => $cargoconsultaEntity->getIdcargoconsulta(), 'idconsulta' => $cargoconsultaEntity->getIdconsulta(), 'status' => $cargoconsultaEntity->getConsulta()->getConsultaStatus(), 'cantidad' => $cargoconsultaEntity->getCantidad(), 'servicio' => $cargoconsultaEntity->getServicio()->getServicioNombre(), 'descripcion' => $cargoconsultaEntity->getServicio()->getServicioDescripcion(), 'precio' => $cargoconsultaEntity->getServicio()->getServicioPrecio(), 'subtotal' => $cargoconsultaEntity->getMonto(), 'fechahora' => date('Y-m-d H:i:s')); array_push($cargoconsultaArray, $cargoconsulta); } } } return new JsonModel(array('cargoconsultaArray' => $cargoconsultaArray, 'cargoconsultaEliminadoArray' => $cargoconsultaEliminadoArray)); } } } // End Eliminar cargoconsulta // Inicio Anticipo Admision //Intanciamos nuestro formulario admisionanticipo $admisionanticipoForm = new AdmisionanticipoForm(); //Instanciamos nuestro filtro $admisionanticipoFilter = new AdmisionanticipoFilter(); //Le ponemos nuestro filtro a nuesto fromulario $admisionanticipoForm->setInputFilter($admisionanticipoFilter->getInputFilter()); //Le ponemos los datos a nuestro formulario $admisionanticipoForm->setData($request->getPost()); //Validamos nuestro formulario if ($admisionanticipoForm->isValid()) { $admisionanticipo = new \Admisionanticipo(); //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Admisionanticipo foreach ($admisionanticipoForm->getData() as $admisionanticipoKey => $admisionanticipoValue) { $admisionanticipo->setByName($admisionanticipoKey, $admisionanticipoValue, \BasePeer::TYPE_FIELDNAME); } $admisionanticipo->setAdmisionanticipoFecha(date('Y-m-d H:i:s')); //Guardamos en nuestra base de datos $admisionanticipo->save(); $admisionanticipoArray = \AdmisionanticipoQuery::create()->filterByIdadmisionanticipo($admisionanticipo->getIdadmisionanticipo())->findOne()->toArray(\BasePeer::TYPE_FIELDNAME); return new JsonModel(array('admisionanticipoArray' => $admisionanticipoArray)); } // Fin Anticipo Admision // Inicio Pago Admision //Intanciamos nuestro formulario admisionanticipo $admisionanticipoForm = new AdmisionanticipoForm(); //Instanciamos nuestro filtro $admisionanticipoFilter = new AdmisionanticipoFilter(); //Le ponemos nuestro filtro a nuesto fromulario $admisionanticipoForm->setInputFilter($admisionanticipoFilter->getInputFilter()); //Le ponemos los datos a nuestro formulario $admisionanticipoForm->setData($request->getPost()); //Validamos nuestro formulario if ($admisionanticipoForm->isValid()) { $admisionanticipo = new \Admisionanticipo(); //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Admisionanticipo foreach ($admisionanticipoForm->getData() as $admisionanticipoKey => $admisionanticipoValue) { $admisionanticipo->setByName($admisionanticipoKey, $admisionanticipoValue, \BasePeer::TYPE_FIELDNAME); } $admisionanticipo->setAdmisionanticipoFecha(date('Y-m-d H:i:s')); //Guardamos en nuestra base de datos $admisionanticipo->save(); $admisionanticipoArray = \AdmisionanticipoQuery::create()->filterByIdadmisionanticipo($admisionanticipo->getIdadmisionanticipo())->findOne()->toArray(\BasePeer::TYPE_FIELDNAME); return new JsonModel(array('admisionanticipoArray' => $admisionanticipoArray)); } // Fin Pago Admision // Inicio Pago Consulta //Intanciamos nuestro formulario consultaanticipo $consultaanticipoForm = new ConsultaanticipoForm(); //Instanciamos nuestro filtro $consultaanticipoFilter = new ConsultaanticipoFilter(); //Le ponemos nuestro filtro a nuesto fromulario $consultaanticipoForm->setInputFilter($consultaanticipoFilter->getInputFilter()); //Le ponemos los datos a nuestro formulario $consultaanticipoForm->setData($request->getPost()); //Validamos nuestro formulario if ($consultaanticipoForm->isValid()) { $consultaanticipo = new \Consultaanticipo(); //Recorremos nuestro formulario y seteamos los valores a nuestro objeto consultaanticipo foreach ($consultaanticipoForm->getData() as $consultaanticipoKey => $consultaanticipoValue) { $consultaanticipo->setByName($consultaanticipoKey, $consultaanticipoValue, \BasePeer::TYPE_FIELDNAME); } $consultaanticipo->setConsultaanticipoFecha(date('Y-m-d H:i:s')); //Guardamos en nuestra base de datos $consultaanticipo->save(); $consultaanticipoArray = \ConsultaanticipoQuery::create()->filterByIdconsultaanticipo($consultaanticipo->getIdconsultaanticipo())->findOne()->toArray(\BasePeer::TYPE_FIELDNAME); return new JsonModel(array('consultaanticipoArray' => $consultaanticipoArray)); } // Fin Pago Consulta $id = (int) $this->params()->fromRoute('id', 0); if ($id) { $paciente = PacienteQuery::create()->filterByIdpaciente($id)->findOne(); $fechaNacimiento = date('m/d/Y', strtotime($paciente->getPacienteFechanacimiento())); // Inicio Preparando Form Admision // Almacenamos en un array los registros de todos los medicos existentes en la base de datos $medicoCollection = \MedicoQuery::create()->find(); $medicoArray = array(); foreach ($medicoCollection as $medicoEntity) { $medicoArray[$medicoEntity->getIdmedico()] = $medicoEntity->getMedicoNombre() . " " . $medicoEntity->getMedicoApellidopaterno() . " " . $medicoEntity->getMedicoApellidomaterno(); } // Almacenamos en un array los registros de todos los cuartos existentes en la base de datos $cuartoCollection = \CuartoQuery::create()->filterByCuartoEnuso(false)->find(); $cuartoArray = array(); foreach ($cuartoCollection as $cuartoEntity) { $cuartoArray[$cuartoEntity->getIdcuarto()] = $cuartoEntity->getCuartoNombre(); } //Intanciamos nuestro formulario admision y le mandamos por parametro los medicos y cuartos existentes $admisionForm = new AdmisionForm($medicoArray, $cuartoArray); //Instanciamos un nuevo objeto de nuestro objeto Paciente $admision = new \Admision(); // Fin Preparando Form Admision // Inicio Preparando Form Consultorio // Almacenamos en un array los registros de todos los consultorios existentes en la base de datos $consultorioCollection = \ConsultorioQuery::create()->filterByConsultorioEnuso(false)->find(); $consultorioArray = array(); foreach ($consultorioCollection as $consultorioEntity) { $consultorioArray[$consultorioEntity->getIdconsultorio()] = $consultorioEntity->getConsultorioNombre(); } //Intanciamos nuestro formulario consulta y le mandamos por parametro los medicos y consultorios existentes $consultaForm = new ConsultaForm($medicoArray, $consultorioArray); //Instanciamos un nuevo objeto de nuestro objeto Paciente $consulta = new \Consulta(); // Fin Preparando Form Consultorio //Intanciamos nuestro formulario cargoconsulta "SIN PARAMETROS" $cargoconsultaForm = new CargoconsultaForm(); if ($request->getPost()->cargoconsultaarticulo_by != null) { if ($request->getPost()->cargoconsultaarticulo_by == 'nombre') { if ($request->getPost()->busquedaArticulo != null) { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->useArticulovarianteQuery()->useArticuloQuery()->filterBy(BasePeer::translateFieldname('articulo', 'articulo_nombre', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaArticulo . '%', \Criteria::LIKE)->endUse()->endUse()->find(); } else { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->find(); } } if ($request->getPost()->cargoconsultaarticulo_by == 'código de barras') { if ($request->getPost()->busquedaArticulo != null) { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->useArticulovarianteQuery()->filterBy(BasePeer::translateFieldname('articulovariante', 'articulovariante_codigobarras', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaArticulo . '%', \Criteria::LIKE)->endUse()->find(); } else { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->find(); } } if ($request->getPost()->cargoconsultaarticulo_by == 'proveedor') { if ($request->getPost()->busquedaArticulo != null) { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->useOrdencompraQuery()->useProveedorQuery()->filterBy(BasePeer::translateFieldname('proveedor', 'proveedor_nombre', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaArticulo . '%', \Criteria::LIKE)->endUse()->endUse()->find(); } else { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->find(); } } if ($ordencompradetalleQuery->getArrayCopy()) { $ordencompradetalleArray = array(); $lugarNombre = null; foreach ($ordencompradetalleQuery as $ordencompradetalleEntity) { /* foreach($ordencompradetalleEntity->getLugarinventarios()->getArrayCopy() as $lugarinventarioEntity){ $idlugarinventario = $lugarinventarioEntity->getIdlugarinventario(); $lugarNombre = $lugarinventarioEntity->getLugar()->getLugarNombre(); $lugarinventarioCantidad = $lugarinventarioEntity->getLugarinventarioCantidad(); $articuloNombre = $ordencompradetalleEntity->getArticulovariante()->getArticulo()->getArticuloNombre(); foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadNombre = $propiedadQuery->getPropiedadNombre(); } foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre = $propiedadvalorQuery->getPropiedadvalorNombre(); } } */ foreach ($ordencompradetalleEntity->getLugarinventarios()->getArrayCopy() as $lugarinventarioEntity) { $idlugarinventario = $lugarinventarioEntity->getIdlugarinventario(); $lugarNombre = $lugarinventarioEntity->getLugar()->getLugarNombre(); $lugarinventarioCantidad = $lugarinventarioEntity->getLugarinventarioCantidad(); $articuloNombre = $ordencompradetalleEntity->getArticulovariante()->getArticulo()->getArticuloNombre(); /* foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadNombre = $propiedadQuery->getPropiedadNombre(); array_push($propiedadArray, $propiedadNombre); } foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre = $propiedadvalorQuery->getPropiedadvalorNombre(); array_push($propiedadValorArray, $propiedadvalorNombre); } */ $propiedadvalorNombre = null; foreach ($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity) { $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre .= $propiedadQuery->getPropiedadNombre() . " " . $propiedadvalorQuery->getPropiedadvalorNombre() . " "; } } $ordencompradetalle = array('idordencompradetalle' => $ordencompradetalleEntity->getIdordencompradetalle(), 'idlugarinventario' => $idlugarinventario, 'cargoconsulta_tipo' => 'articulo', 'cargoconsulta_fecha' => date('Y-m-d H:i:s'), 'ordencompradetalle_caducidad' => $ordencompradetalleEntity->getOrdencompradetalleCaducidad(), 'existencia' => $lugarinventarioCantidad, 'articulo' => $articuloNombre, 'descripcion' => utf8_encode($propiedadvalorNombre), 'precio' => $ordencompradetalleEntity->getArticulovariante()->getArticulovariantePrecio(), 'salida' => $lugarNombre); array_push($ordencompradetalleArray, $ordencompradetalle); } } return new JsonModel(array('ordencompradetalleArray' => $ordencompradetalleArray)); } if ($request->getPost()->cargoconsultaservicio_by != null) { if ($request->getPost()->cargoconsultaservicio_by == 'nombre') { if ($request->getPost()->busquedaServicio != null) { $servicioQuery = \ServicioQuery::create()->filterBy(BasePeer::translateFieldname('servicio', 'servicio_nombre', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaServicio . '%', \Criteria::LIKE)->find(); } else { $servicioQuery = \ServicioQuery::create()->find(); } } if ($servicioQuery->getArrayCopy()) { $servicioArray = array(); foreach ($servicioQuery as $servicioEntity) { $servicio = array('idservicio' => $servicioEntity->getIdservicio(), 'cargoconsulta_tipo' => 'servicio', 'cargoconsulta_fecha' => date('Y-m-d H:i:s'), 'servicio_nombre' => $servicioEntity->getServicioNombre(), 'servicio_descripcion' => $servicioEntity->getServicioDescripcion(), 'servicio_precio' => $servicioEntity->getServicioPrecio()); array_push($servicioArray, $servicio); } } return new JsonModel(array('servicioArray' => $servicioArray)); } // Fin Preparando Form Cargoconsulta //Intanciamos nuestro formulario cargoadmision "SIN PARAMETROS" $cargoadmisionForm = new CargoadmisionForm(); if ($request->getPost()->cargoadmisionarticulo_by != null) { if ($request->getPost()->cargoadmisionarticulo_by == 'nombre') { if ($request->getPost()->busquedaAdmisionArticulo != null) { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->useArticulovarianteQuery()->useArticuloQuery()->filterBy(BasePeer::translateFieldname('articulo', 'articulo_nombre', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaAdmisionArticulo . '%', \Criteria::LIKE)->endUse()->endUse()->find(); } else { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->find(); } } if ($request->getPost()->cargoadmisionarticulo_by == 'código de barras') { if ($request->getPost()->busquedaAdmisionArticulo != null) { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->useArticulovarianteQuery()->filterBy(BasePeer::translateFieldname('articulovariante', 'articulovariante_codigobarras', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaAdmisionArticulo . '%', \Criteria::LIKE)->endUse()->find(); } else { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->find(); } } if ($request->getPost()->cargoadmisionarticulo_by == 'proveedor') { if ($request->getPost()->busquedaAdmisionArticulo != null) { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->useOrdencompraQuery()->useProveedorQuery()->filterBy(BasePeer::translateFieldname('proveedor', 'proveedor_nombre', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaAdmisionArticulo . '%', \Criteria::LIKE)->endUse()->endUse()->find(); } else { $ordencompradetalleQuery = \OrdencompradetalleQuery::create()->find(); } } if ($ordencompradetalleQuery->getArrayCopy()) { $ordencompradetalleArray = array(); $lugarNombre = null; foreach ($ordencompradetalleQuery as $ordencompradetalleEntity) { /* foreach($ordencompradetalleEntity->getLugarinventarios()->getArrayCopy() as $lugarinventarioEntity){ $idlugarinventario = $lugarinventarioEntity->getIdlugarinventario(); $lugarNombre = $lugarinventarioEntity->getLugar()->getLugarNombre(); $lugarinventarioCantidad = $lugarinventarioEntity->getLugarinventarioCantidad(); $articuloNombre = $ordencompradetalleEntity->getArticulovariante()->getArticulo()->getArticuloNombre(); foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadNombre = $propiedadQuery->getPropiedadNombre(); } foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre = $propiedadvalorQuery->getPropiedadvalorNombre(); } } */ foreach ($ordencompradetalleEntity->getLugarinventarios()->getArrayCopy() as $lugarinventarioEntity) { $idlugarinventario = $lugarinventarioEntity->getIdlugarinventario(); $lugarNombre = $lugarinventarioEntity->getLugar()->getLugarNombre(); $lugarinventarioCantidad = $lugarinventarioEntity->getLugarinventarioCantidad(); $articuloNombre = $ordencompradetalleEntity->getArticulovariante()->getArticulo()->getArticuloNombre(); /* foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadNombre = $propiedadQuery->getPropiedadNombre(); array_push($propiedadArray, $propiedadNombre); } foreach($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity){ $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre = $propiedadvalorQuery->getPropiedadvalorNombre(); array_push($propiedadValorArray, $propiedadvalorNombre); } */ $propiedadvalorNombre = null; foreach ($ordencompradetalleEntity->getArticulovariante()->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity) { $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre .= $propiedadQuery->getPropiedadNombre() . " " . $propiedadvalorQuery->getPropiedadvalorNombre() . " "; } } $ordencompradetalle = array('idordencompradetalle' => $ordencompradetalleEntity->getIdordencompradetalle(), 'idlugarinventario' => $idlugarinventario, 'cargoadmision_tipo' => 'articulo', 'cargoadmision_fecha' => date('Y-m-d H:i:s'), 'ordencompradetalle_caducidad' => $ordencompradetalleEntity->getOrdencompradetalleCaducidad(), 'existencia' => $lugarinventarioCantidad, 'articulo' => $articuloNombre, 'descripcion' => utf8_encode($propiedadvalorNombre), 'precio' => $ordencompradetalleEntity->getArticulovariante()->getArticulovariantePrecio(), 'salida' => $lugarNombre); array_push($ordencompradetalleArray, $ordencompradetalle); } } return new JsonModel(array('ordencompradetalleArray' => $ordencompradetalleArray)); } if ($request->getPost()->cargoadmisionservicio_by != null) { if ($request->getPost()->cargoadmisionservicio_by == 'nombre') { if ($request->getPost()->busquedaAdmisionServicio != null) { $servicioQuery = \ServicioQuery::create()->filterBy(BasePeer::translateFieldname('servicio', 'servicio_nombre', BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_PHPNAME), '%' . $request->getPost()->busquedaAdmisionServicio . '%', \Criteria::LIKE)->find(); } else { $servicioQuery = \ServicioQuery::create()->find(); } } if ($servicioQuery->getArrayCopy()) { $servicioArray = array(); foreach ($servicioQuery as $servicioEntity) { $servicio = array('idservicio' => $servicioEntity->getIdservicio(), 'cargoadmision_tipo' => 'servicio', 'cargoadmision_fecha' => date('Y-m-d H:i:s'), 'servicio_nombre' => $servicioEntity->getServicioNombre(), 'servicio_descripcion' => $servicioEntity->getServicioDescripcion(), 'servicio_precio' => $servicioEntity->getServicioPrecio()); array_push($servicioArray, $servicio); } } else { $servicioArray = null; } return new JsonModel(array('servicioArray' => $servicioArray)); } // Fin Preparando Form Cargoadmision if ($request->isPost()) { //Si hicieron POST //Instanciamos nuestro filtro $consultaFilter = new ConsultaFilter(); //Le ponemos nuestro filtro a nuesto fromulario $consultaForm->setInputFilter($consultaFilter->getInputFilter()); //Le ponemos los datos a nuestro formulario $consultaForm->setData($request->getPost()); //Validamos nuestro formulario if ($consultaForm->isValid()) { //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Consulta foreach ($consultaForm->getData() as $consultaKey => $consultaValue) { $consulta->setByName($consultaKey, $consultaValue, \BasePeer::TYPE_FIELDNAME); $consulta->setConsultaStatus('no pagada'); } //Guardamos en nuestra base de datos $consulta->save(); $consultorio = $consulta->getConsultorio(); $consultorio->setConsultorioEnuso(1); $consultorio->save(); $consultaArray = \ConsultaQuery::create()->filterByIdconsulta($consulta->getIdconsulta())->findOne()->toArray(BasePeer::TYPE_FIELDNAME); return new JsonModel(array('consultaArray' => $consultaArray)); //Redireccionamos a nuestro list //return $this->redirect()->toRoute('pacientes'); } //Instanciamos nuestro filtro $cargoconsultaFilter = new CargoconsultaFilter(); //Le ponemos nuestro filtro a nuesto fromulario $cargoconsultaForm->setInputFilter($cargoconsultaFilter->getInputFilter()); //Le ponemos los datos a nuestro formulario $cargoconsultaForm->setData($request->getPost()); //Validamos nuestro formulario if ($cargoconsultaForm->isValid()) { $cargoconsultaArray = array(); if ($request->getPost()->cargoconsulta_tipo == 'articulo') { //Instanciamos un nuevo objeto de nuestro objeto Paciente $cargoconsulta = new \Cargoconsulta(); //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Consulta foreach ($cargoconsultaForm->getData() as $cargoconsultaKey => $cargoconsultaValue) { if ($cargoconsultaKey != 'cargoconsultaarticulo_by' && $cargoconsultaKey != 'cargoconsultaservicio_by' && $cargoconsultaKey != 'busquedaArticulo' && $cargoconsultaKey != 'busquedaServicio') { $cargoconsulta->setByName($cargoconsultaKey, $cargoconsultaValue, \BasePeer::TYPE_FIELDNAME); } } // Validar precio, caducidad y existencia de ordencompradetalle $existencia = $cargoconsulta->getLugarinventario()->getLugarinventarioCantidad(); $caducidad = $cargoconsulta->getLugarinventario()->getOrdencompradetalle()->getOrdencompradetalleCaducidad(); $precio = $cargoconsulta->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(); if ($existencia > 0) { if ($caducidad < date('Y-m-d')) { $cargoconsulta->setMonto($request->getPost()->cantidad * $precio); } } //Guardamos en nuestra base de datos $cargoconsulta->save(); $lugarinventarioQuery = $cargoconsulta->getLugarinventario(); $lugarinventarioQuery->setLugarinventarioCantidad($lugarinventarioQuery->getLugarinventarioCantidad() - $cargoconsulta->getCantidad()); $lugarinventarioQuery->save(); $cargoconsultaQuery = \CargoconsultaQuery::create()->filterByIdconsulta($cargoconsulta->getIdconsulta())->find(); if ($cargoconsultaQuery->getArrayCopy()) { foreach ($cargoconsultaQuery as $cargoconsultaEntity) { if ($cargoconsultaEntity->getIdlugarinventario() != null) { $articulovarianteEntity = $cargoconsultaEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante(); $propiedadvalorNombre = null; foreach ($articulovarianteEntity->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity) { $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre .= $propiedadQuery->getPropiedadNombre() . " " . $propiedadvalorQuery->getPropiedadvalorNombre() . " "; } $cargoconsulta = array('idcargoconsulta' => $cargoconsultaEntity->getIdcargoconsulta(), 'idconsulta' => $cargoconsultaEntity->getIdconsulta(), 'status' => $cargoconsultaEntity->getConsulta()->getConsultaStatus(), 'cantidad' => $cargoconsultaEntity->getCantidad(), 'articulo' => $cargoconsultaEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulo()->getArticuloNombre(), 'descripcion' => utf8_encode($propiedadvalorNombre), 'salida' => $cargoconsultaEntity->getLugarinventario()->getLugar()->getLugarNombre(), 'fechahora' => $cargoconsultaEntity->getCargoconsultaFecha(), 'precio' => $cargoconsultaEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(), 'subtotal' => $cargoconsultaEntity->getMonto()); array_push($cargoconsultaArray, $cargoconsulta); } } } } if ($request->getPost()->cargoconsulta_tipo == 'servicio') { //Instanciamos un nuevo objeto de nuestro objeto Paciente $cargoconsulta = new \Cargoconsulta(); //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Consulta foreach ($cargoconsultaForm->getData() as $cargoconsultaKey => $cargoconsultaValue) { if ($cargoconsultaKey != 'cargoconsultaarticulo_by' && $cargoconsultaKey != 'cargoconsultaservicio_by' && $cargoconsultaKey != 'busquedaArticulo' && $cargoconsultaKey != 'busquedaServicio') { $cargoconsulta->setByName($cargoconsultaKey, $cargoconsultaValue, \BasePeer::TYPE_FIELDNAME); } } $precio = $cargoconsulta->getServicio()->getServicioPrecio(); $cargoconsulta->setMonto($request->getPost()->cantidad * $precio); //Guardamos en nuestra base de datos $cargoconsulta->save(); $cargoconsultaQuery = \CargoconsultaQuery::create()->filterByIdconsulta($cargoconsulta->getIdconsulta())->find(); if ($cargoconsultaQuery->getArrayCopy()) { foreach ($cargoconsultaQuery as $cargoconsultaEntity) { if ($cargoconsultaEntity->getIdservicio() != null) { $cargoconsulta = array('idcargoconsulta' => $cargoconsultaEntity->getIdcargoconsulta(), 'idconsulta' => $cargoconsultaEntity->getIdconsulta(), 'status' => $cargoconsultaEntity->getConsulta()->getConsultaStatus(), 'cantidad' => $cargoconsultaEntity->getCantidad(), 'servicio' => $cargoconsultaEntity->getServicio()->getServicioNombre(), 'descripcion' => $cargoconsultaEntity->getServicio()->getServicioDescripcion(), 'precio' => $cargoconsultaEntity->getServicio()->getServicioPrecio(), 'subtotal' => $cargoconsultaEntity->getMonto(), 'fechahora' => date('Y-m-d H:i:s')); array_push($cargoconsultaArray, $cargoconsulta); } } } } return new JsonModel(array('cargoconsultaArray' => $cargoconsultaArray)); } /* else { $messageArray = array(); foreach ($cargoconsultaForm->getMessages() as $key => $value){ foreach($value as $val){ //Obtenemos el valor de la columna con error $message = $key.' '.$val; array_push($messageArray, $message); } } var_dump($messageArray); return new ViewModel(array( 'input_error' => $messageArray )); }*/ //Instanciamos nuestro filtro $admisionFilter = new AdmisionFilter(); //Le ponemos nuestro filtro a nuesto fromulario $admisionForm->setInputFilter($admisionFilter->getInputFilter()); //Le ponemos los datos a nuestro formulario $admisionForm->setData($request->getPost()); //Validamos nuestro formulario if ($admisionForm->isValid()) { //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Admision foreach ($admisionForm->getData() as $admisionKey => $admisionValue) { $admision->setByName($admisionKey, $admisionValue, \BasePeer::TYPE_FIELDNAME); if ($admisionKey == 'admision_fechaadmision') { $admision->setAdmisionFechaadmision($admisionValue . " " . date('H:i:s')); } $admision->setAdmisionStatus('no pagada'); } //Guardamos en nuestra base de datos $admision->save(); $cuarto = $admision->getCuarto(); $cuarto->setCuartoEnuso(1); $cuarto->save(); $admisionArray = \AdmisionQuery::create()->filterByIdadmision($admision->getIdadmision())->findOne()->toArray(BasePeer::TYPE_FIELDNAME); return new JsonModel(array('admisionArray' => $admisionArray)); //Redireccionamos a nuestro list //return $this->redirect()->toRoute('pacientes'); } /*else { $messageArray = array(); foreach ($cargoadmisionForm->getMessages() as $key => $value){ foreach($value as $val){ //Obtenemos el valor de la columna con error $message = $key.' '.$val; array_push($messageArray, $message); } } var_dump($messageArray); return new JsonModel(array( 'error' => $messageArray, )); }*/ //Instanciamos nuestro filtro $cargoadmisionFilter = new CargoadmisionFilter(); //Le ponemos nuestro filtro a nuesto fromulario $cargoadmisionForm->setInputFilter($cargoadmisionFilter->getInputFilter()); //Le ponemos los datos a nuestro formulario $cargoadmisionForm->setData($request->getPost()); //Validamos nuestro formulario if ($cargoadmisionForm->isValid()) { $cargoadmisionArray = array(); if ($request->getPost()->cargoadmision_tipo == 'articulo') { //Instanciamos un nuevo objeto de nuestro objeto Paciente $cargoadmision = new \Cargoadmision(); //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Admision foreach ($cargoadmisionForm->getData() as $cargoadmisionKey => $cargoadmisionValue) { if ($cargoadmisionKey != 'cargoadmisionarticulo_by' && $cargoadmisionKey != 'cargoadmisionservicio_by' && $cargoadmisionKey != 'busquedaAdmisionArticulo' && $cargoadmisionKey != 'busquedaAdmisionServicio') { $cargoadmision->setByName($cargoadmisionKey, $cargoadmisionValue, \BasePeer::TYPE_FIELDNAME); } } // Validar precio, caducidad y existencia de ordencompradetalle $existencia = $cargoadmision->getLugarinventario()->getLugarinventarioCantidad(); $caducidad = $cargoadmision->getLugarinventario()->getOrdencompradetalle()->getOrdencompradetalleCaducidad(); $precio = $cargoadmision->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(); if ($existencia > 0) { if ($caducidad < date('Y-m-d')) { $cargoadmision->setCargoadmisionMonto($request->getPost()->cargoadmision_cantidad * $precio); } } //Guardamos en nuestra base de datos $cargoadmision->save(); $lugarinventarioQuery = $cargoadmision->getLugarinventario(); $lugarinventarioQuery->setLugarinventarioCantidad($lugarinventarioQuery->getLugarinventarioCantidad() - $cargoadmision->getCargoadmisionCantidad()); $lugarinventarioQuery->save(); $cargoadmisionQuery = \CargoadmisionQuery::create()->filterByIdadmision($cargoadmision->getIdadmision())->find(); if ($cargoadmisionQuery->getArrayCopy()) { foreach ($cargoadmisionQuery as $cargoadmisionEntity) { if ($cargoadmisionEntity->getIdlugarinventario() != null) { $articulovarianteEntity = $cargoadmisionEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante(); $propiedadvalorNombre = null; foreach ($articulovarianteEntity->getArticulovariantevalors()->getArrayCopy() as $articulovariantevalorEntity) { $propiedadQuery = \PropiedadQuery::create()->filterByIdpropiedad($articulovariantevalorEntity->getIdpropiedad())->findOne(); $propiedadvalorQuery = \PropiedadvalorQuery::create()->filterByIdpropiedadvalor($articulovariantevalorEntity->getIdpropiedadvalor())->findOne(); $propiedadvalorNombre .= $propiedadQuery->getPropiedadNombre() . " " . $propiedadvalorQuery->getPropiedadvalorNombre() . " "; } $cargoadmision = array('idcargoadmision' => $cargoadmisionEntity->getIdcargoadmision(), 'idadmision' => $cargoadmisionEntity->getIdadmision(), 'status' => $cargoadmisionEntity->getAdmision()->getAdmisionStatus(), 'cargoadmision_cantidad' => $cargoadmisionEntity->getCargoadmisionCantidad(), 'articulo' => $cargoadmisionEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulo()->getArticuloNombre(), 'descripcion' => utf8_encode($propiedadvalorNombre), 'salida' => $cargoadmisionEntity->getLugarinventario()->getLugar()->getLugarNombre(), 'fechahora' => $cargoadmisionEntity->getCargoadmisionFecha(), 'precio' => $cargoadmisionEntity->getLugarinventario()->getOrdencompradetalle()->getArticulovariante()->getArticulovariantePrecio(), 'subtotal' => $cargoadmisionEntity->getCargoadmisionMonto()); array_push($cargoadmisionArray, $cargoadmision); } } } } if ($request->getPost()->cargoadmision_tipo == 'servicio') { //Instanciamos un nuevo objeto de nuestro objeto Paciente $cargoadmision = new \Cargoadmision(); //Recorremos nuestro formulario y seteamos los valores a nuestro objeto Admision foreach ($cargoadmisionForm->getData() as $cargoadmisionKey => $cargoadmisionValue) { if ($cargoadmisionKey != 'cargoadmisionarticulo_by' && $cargoadmisionKey != 'cargoadmisionservicio_by' && $cargoadmisionKey != 'busquedaAdmisionArticulo' && $cargoadmisionKey != 'busquedaAdmisionServicio') { $cargoadmision->setByName($cargoadmisionKey, $cargoadmisionValue, \BasePeer::TYPE_FIELDNAME); } } $precio = $cargoadmision->getServicio()->getServicioPrecio(); $cargoadmision->setCargoadmisionMonto($request->getPost()->cargoadmision_cantidad * $precio); //Guardamos en nuestra base de datos $cargoadmision->save(); $cargoadmisionQuery = \CargoadmisionQuery::create()->filterByIdadmision($cargoadmision->getIdadmision())->find(); if ($cargoadmisionQuery->getArrayCopy()) { foreach ($cargoadmisionQuery as $cargoadmisionEntity) { if ($cargoadmisionEntity->getIdservicio() != null) { $cargoadmision = array('idcargoadmision' => $cargoadmisionEntity->getIdcargoadmision(), 'idadmision' => $cargoadmisionEntity->getIdadmision(), 'status' => $cargoadmisionEntity->getAdmision()->getAdmisionStatus(), 'cargoadmision_cantidad' => $cargoadmisionEntity->getCargoadmisionCantidad(), 'servicio' => $cargoadmisionEntity->getServicio()->getServicioNombre(), 'descripcion' => $cargoadmisionEntity->getServicio()->getServicioDescripcion(), 'precio' => $cargoadmisionEntity->getServicio()->getServicioPrecio(), 'subtotal' => $cargoadmisionEntity->getCargoadmisionMonto(), 'fechahora' => date('Y-m-d H:i:s')); array_push($cargoadmisionArray, $cargoadmision); } } } } return new JsonModel(array('cargoadmisionArray' => $cargoadmisionArray)); } /* else { $messageArray = array(); foreach ($cargoadmisionForm->getMessages() as $key => $value){ foreach($value as $val){ //Obtenemos el valor de la columna con error $message = $key.' '.$val; array_push($messageArray, $message); } } return new JsonModel(array( 'error' => $messageArray, )); }*/ } return new ViewModel(array('pacienteEntity' => $paciente, 'edad' => $this->calculaEdad($fechaNacimiento), 'consultaForm' => $consultaForm, 'admisionForm' => $admisionForm, 'cargoconsultaForm' => $cargoconsultaForm, 'cargoadmisionForm' => $cargoadmisionForm)); } else { return $this->redirect()->toRoute('pacientes'); } }