/// <summary> /// Guarda el hisotirial clinico de un paciente /// </summary> /// <param name="entHistorialClinico"></param> /// <returns></returns> public IMDResponse <bool> BSaveHistorialClinico(EntHistorialClinico entHistorialClinico) { IMDResponse <bool> response = new IMDResponse <bool>(); string metodo = nameof(this.BSaveHistorialClinico); logger.Info(IMDSerialize.Serialize(67823458583671, $"Inicia {metodo}(EntHistorialClinico entHistorialClinico)", entHistorialClinico)); try { if (entHistorialClinico == null) { response.Code = -65766123898345; response.Message = "No se ingresó información del historial clínico."; return(response); } //Guardar el historila clínico de la consulta actual IMDResponse <bool> resSaveHistorial = datConsulta.DSaveHistorialMedico( entHistorialClinico.iIdConsulta, entHistorialClinico.iIdUsuarioMod, entHistorialClinico.sSintomas, entHistorialClinico.sDiagnostico, entHistorialClinico.sTratamiento, entHistorialClinico.fPeso, entHistorialClinico.fAltura, entHistorialClinico.sAlergias, entHistorialClinico.sComentarios); if (resSaveHistorial.Code != 0) { return(resSaveHistorial); } response.Code = 0; response.Message = "El historial clínico se guardó correctamente."; response.Result = true; } catch (Exception ex) { response.Code = 67823458584448; response.Message = "Ocurrió un error inesperado al guardar el historial clínico del paciente."; logger.Error(IMDSerialize.Serialize(67823458584448, $"Error en {metodo}(EntHistorialClinico entHistorialClinico): {ex.Message}", entHistorialClinico, ex, response)); } return(response); }
public IMDResponse <bool> CSaveHistorialClinico([FromBody] EntHistorialClinico entHistorialClinico) { IMDResponse <bool> response = new IMDResponse <bool>(); string metodo = nameof(this.CSaveHistorialClinico); logger.Info(IMDSerialize.Serialize(67823458585225, $"Inicia {metodo}([FromBody]EntHistorialClinico entHistorialClinico)", entHistorialClinico)); try { BusConsulta busConsulta = new BusConsulta(); response = busConsulta.BSaveHistorialClinico(entHistorialClinico); } catch (Exception ex) { response.Code = 67823458586002; response.Message = "Ocurrió un error inesperado en el servicio al guardar el historial clínico del paciente."; logger.Error(IMDSerialize.Serialize(67823458586002, $"Error en {metodo}([FromBody]EntHistorialClinico entHistorialClinico): {ex.Message}", entHistorialClinico, ex, response)); } return(response); }
/// <summary> /// Obtiene el historial clínico del paciente /// </summary> /// <param name="piIdHistorialClinico"></param> /// <param name="piIdConsulta"></param> /// <param name="piIdPaciente"></param> /// <param name="piIdColaborador"></param> /// <param name="piIdFolio"></param> /// <param name="psIdTipoDoctor"></param> /// <returns></returns> public IMDResponse <List <EntHistorialClinico> > BGetHistorialMedico(int?piIdHistorialClinico = null, int?piIdConsulta = null, int?piIdPaciente = null, int?piIdColaborador = null, int?piIdFolio = null, string psIdTipoDoctor = null) { IMDResponse <List <EntHistorialClinico> > response = new IMDResponse <List <EntHistorialClinico> >(); string metodo = nameof(this.BGetHistorialMedico); logger.Info(IMDSerialize.Serialize(67823458524619, $"Inicia {metodo}(int? piIdHistorialClinico = null, int? piIdConsulta = null, int? piIdPaciente = null, int? piIdColaborador = null, int? piIdFolio = null)", piIdHistorialClinico, piIdConsulta, piIdPaciente, piIdColaborador, piIdFolio)); try { IMDResponse <DataTable> resGetHistorialClinico = datConsulta.DGetHistorialMedico(piIdHistorialClinico, piIdConsulta, piIdPaciente, piIdColaborador, piIdFolio, psIdTipoDoctor); if (resGetHistorialClinico.Code != 0) { return(resGetHistorialClinico.GetResponse <List <EntHistorialClinico> >()); } List <EntHistorialClinico> lstHistorial = new List <EntHistorialClinico>(); foreach (DataRow drHistorial in resGetHistorialClinico.Result.Rows) { IMDDataRow dr = new IMDDataRow(drHistorial); EntHistorialClinico entHistorialClinico = new EntHistorialClinico { dtFechaCreacion = dr.ConvertTo <DateTime?>("dtFechaCreacion"), dtFechaConsultaFin = dr.ConvertTo <DateTime?>("dtFechaConsultaFin"), dtFechaConsultaInicio = dr.ConvertTo <DateTime?>("dtFechaConsultaInicio"), fAltura = dr.ConvertTo <double>("fAltura"), fPeso = dr.ConvertTo <double>("fPeso"), iIdConsulta = dr.ConvertTo <int>("iIdConsulta"), iIdHistorialClinico = dr.ConvertTo <int>("iIdHistorialClinico"), sAlergias = dr.ConvertTo <string>("sAlergias"), sComentarios = dr.ConvertTo <string>("sComentarios"), sDiagnostico = dr.ConvertTo <string>("sDiagnostico"), sFechaCreacion = string.Empty, sSintomas = dr.ConvertTo <string>("sSintomas"), sTratamiento = dr.ConvertTo <string>("sTratamiento"), }; entHistorialClinico.sFechaCreacion = entHistorialClinico.dtFechaCreacion?.ToString("ddd dd/MM/yyyy hh:mm tt"); entHistorialClinico.sFechaConsultaInicio = entHistorialClinico.dtFechaConsultaInicio?.ToString("ddd dd/MM/yyyy hh:mm tt"); entHistorialClinico.sFechaConsultaFin = entHistorialClinico.dtFechaConsultaFin?.ToString("ddd dd/MM/yyyy hh:mm tt"); //Calcular la duración de la consulta TimeSpan?dff = entHistorialClinico.dtFechaConsultaFin - entHistorialClinico.dtFechaConsultaInicio; entHistorialClinico.sDuracionConsulta = dff?.ToString(@"hh\:mm\:ss"); lstHistorial.Add(entHistorialClinico); } response.Code = 0; response.Message = "Se ha consultado el historial clínico."; response.Result = lstHistorial; } catch (Exception ex) { response.Code = 67823458525396; response.Message = "Ocurrió un error inesperado al consultar el historial clínico."; logger.Error(IMDSerialize.Serialize(67823458525396, $"Error en {metodo}(int? piIdHistorialClinico = null, int? piIdConsulta = null, int? piIdPaciente = null, int? piIdColaborador = null, int? piIdFolio = null): {ex.Message}", piIdHistorialClinico, piIdConsulta, piIdPaciente, piIdColaborador, piIdFolio, ex, response)); } return(response); }