Location: PHPKode > projects > Castor (medical information manager) > castorV2030-3/castor-ss/captura_consulta_enfermera.php
<?php
/*
----------------------------------------------------------------------------------------
Castor is a system to manage medical information.

Copyright (C) 2002, 2007 INTTELMEX/CCD hide@address.com, hide@address.com

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-----------------------------------------------------------------------------------------

Castor es un sistema para el manejo de información médica
Copyright (C) 2002, 2007 INTTELMEX/CCD hide@address.com, hide@address.com

Este programa es Software Libre; usted puede redistribuirlo
y/o modificarlo bajo los términos de la "GNU General Public
License" como lo publica la "FSF Free Software Foundation" version 2,
o de cualquier versión posterior.

Este programa es distribuido con la esperanza de que le será
útil, pero SIN NINGUNA GARANTIA; incluso sin la garantía
implícita por el MERCADEO o EJERCICIO DE ALGUN PROPOSITO en
particular. Vea la "GNU General Public License" para más
detalles.

Usted debe haber recibido una copia de la "GNU General Public
License" junto con este programa, si no, escriba a la "FSF
Free Software Foundation, Inc.", 59 Temple Place - Suite 330,
Boston, MA  02111-1307, USA.
----------------------------------------------------------------------------------------------
*/


/**  Captura de Consulta para Usuario Enfermera.
 *   Si la consulta es en modo multiusuario, la consulta inici&oacute; en RECEPCION, por lo que solo 
 *   se actualizan los datos de hora y se capturan los SV, DET y NOTA.<br />
 *   Si la consulta es en modo monousuario, entonces se tiene que capturar la consulta desde cero, 
 *   y capturar la DH, FOLIO, SV, DET y NOTA.
 *   <b>Archivos incluidos:</b>classTconsulta.php, classTrel_derechohabiente.php, captura_detecciones.php
 *   
 *   @file captura_consulta_enfermera.php
 *   @see regis_consulta_enfermera.php
 *   @see usuarios.php
 */


  $idconsultaA = $_POST["idconsultaA"];
  $presion_sistolica = $_POST["presion_sistolica"];
  $presion_distolica = $_POST["presion_distolica"];
  $peso = $_POST["peso"];
  $talla = $_POST["talla"];
  $frecuencia = $_POST["frecuencia"];
  $temperatura = $_POST["temperatura"];
  $frecuencia_resp = $_POST["frecuencia_resp"];
  $nota_enf = $_POST["nota_enf"];
  $dia_consulta = $_POST["dia_consulta"];
  $mes_consulta = $_POST["mes_consulta"];
  $anio_consulta = $_POST["anio_consulta"];
  $medico_asignado = $_POST["medico_asignado"];
  $sexo = $_POST[ "Tsexos" ];
  $idpaciente = $_POST[ "rfc" ];

  $Anteriores = $_POST["Anteriores"] ;
  $hora_consulta = $_POST["hora_consulta"] ;
  $minuto_consulta = $_POST["minuto_consulta"] ;

if( $_POST["consulta_externa"] != 1 ) {
  
  /*  MULTIUSUARIO
   *  Primero revisamos si la consulta sigue abierta para el usuario enfermera
   */
  $sql_cons = new Tquery ( "SELECT * FROM consulta 
                             WHERE   idconsulta=$idconsultaA 
                               AND   escritura=1 ;" );
  $res_cons = $sql_cons->consulta( );
  
  if( @pg_num_rows( $res_cons ) >= 1 ){	    
        $captura_datos = true;

	$hora_enf = date("H").":".date("i"); // la hora de fin de Enfermeria
	//$idconsulta=calcula_consulta($rfc,"$anio_consulta-$mes_consulta-$dia_consulta",$idunidad);
	$C=$idconsultaA;
	$cadena="update consulta set idenfermeria='$idmedico', escritura=2,idmedico='$medico_asignado',
                                     hora_captura='$hora_enf' 
			where idconsulta=$C and
                              escritura<=1 ;";
	$sql=new Tquery($cadena);
	$ejecuta=$sql->consulta();
  
        // UPDATE: guardar hora de enfermeria en horas_captura
	$cadena_hora = "update horas_captura set hora_enf='$hora_enf'
	                where idconsulta=$C;";
	$sql_hora = new Tquery( $cadena_hora );
	$sql_hora->consulta( );
  }
 } else {  

  /*  INICIO DE CONSULTA EN ENFERMERIA
   *  A b r i r    C o n s u l t a
   */
  include_once( "classTconsulta.php" );
  include_once( "classTrel_derechohabiente.php" );

  $fecha=$_POST['anio_consulta']."-".$_POST['mes_consulta']."-".$_POST['dia_consulta'];  
  $fecha_captura=date("Y")."-". date("m")."-".date("d");
  if( $Anteriores == 1 )
    $hora_enf = $hora_consulta.":".$minuto_consulta;  //Hora predefinida intermedio.php: SOLO PARA CONSULTAS con fecha anterior
  else
    $hora_enf = date("H").":".date("i"); // hora de la enfermeria
  $idunidad=chop($idunidad);
  $sql_verifica=new Tquery("select * from consulta where
							fecha='$fecha' and
							idpaciente='$idpaciente' and
							idunidad='$idunidad' and
							sobres_promocion=0 and
							fecha_captura='$fecha_captura';");
  
  $tabla_ve=$sql_verifica->consulta();
  
  if( !( $existe=@pg_fetch_array($tabla_ve,0) ) ){
    
    $consulta=new Tconsulta();
    $consulta->Tconsulta_p($fecha_captura,$idpaciente,$idmedico,chop($idunidad)," ",0,$fecha,$hora_enf,null,$idmedico,2,"");
    $consulta->add_record();
    if ( $consulta->get_record() ){
	$C = $consulta->id;
	$captura_datos = true;
    }
    // INSERT: guardar hora de enfermeria en horas_captura
    $sql = new Tquery( "INSERT INTO horas_captura(idconsulta,hora_enf) VALUES( '$C','$hora_enf' );" );
    $sql->consulta( );
    // Agrega la derechohabiencia
    $derecho=new Trel_derechohabiente($C,$_POST["derechohabiencia"],trim($_POST["folio"]));
    $derecho->add_record(); 
    
  }

 }


//  Se capturan los Signos Vitales, Detecciones, Nota de Enfermeria
if( $captura_datos && $C>0 ){	    
        if($presion_sistolica<1) $presion_sistolica=0;
	if($presion_distolica<1) $presion_distolica=0;
	if($talla<1) $talla=0;
	if($peso<1) $peso=0;
	if($frecuencia<1) $frecuencia=0;
	if($frecuencia_resp<1) $frecuencia_resp=0;
	if($temperatura<1) $temperatura=0;
	$signos="Insert into 
			signos_vitales
			(idhoja,
			idsecuencia,
			peso,
			talla,
			distolica,
			sistolica,
			frecuencia,
                        temperatura,
			frecuencia_respiratoria)
		 values
		 	(1,
			$C,
			$peso,
			$talla,
			$presion_distolica,
			$presion_sistolica,
			$frecuencia,
                        $temperatura,
			$frecuencia_resp
			)";
	$sql_signos=new Tquery($signos);
	$ejecuta=$sql_signos->consulta();
	
        /* Captura de detecciones  */
        include( "captura_detecciones.php" );
	
	/* Captura de la Nota de Enfermería */
	if( strcmp( trim( $nota_enf ), "" ) != 0 ){
	  $sql_nota = new Tquery( "INSERT INTO consulta_enfermera( idconsulta, nota ) 
                                             VALUES ( '$C', '$nota_enf' ); " );
	  $sql_nota->consulta( );
	}
    echo "<p>$Inf_se_capturo_la_consulta </p>";

  } else {

    echo "<p>$Inf_la_consulta_ya_ha_sido_cerrada_para_enfermera </p>";

  }

?>
Return current item: Castor (medical information manager)