/// <summary> /// Guarda la información de una "Consulta" /// </summary> private void GuardarConsulta() { if (oConsulta == null) { oConsulta = new Business.Entities.Consulta(); } //llenamos oConsulta con la información ingresada/modificada oConsulta.Detalle = txtDetalleConsulta.Text.Trim(); oConsulta.Diagnostico = (Business.Entities.Diagnostico)cbxDiagnostico.SelectedItem; oConsulta.Practica = (Business.Entities.Practica)lstPracticas.SelectedItem; oConsulta.Fecha = dtpFechaConsulta.Value; if (oPaciente.Id == null) { //al ser un paciente nuevo, es necesario guardar el paciente para poder guardar la consulta. DialogResult RespuestaUsuario = MessageBox.Show( "Para guardar la consulta, primero debe guardar el nuevo Paciente. Deseea gardarlo?", this.Text, MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button3); if (RespuestaUsuario == System.Windows.Forms.DialogResult.Cancel) { return; } if (RespuestaUsuario == System.Windows.Forms.DialogResult.OK) { GuardarPaciente(); } } //Instanciamos la clase Paciente de la capa lógica. Business.Logic.Consulta oConsultaNegocio = new Business.Logic.Consulta(); //Actualizamos la base de datos. Si es un Consulta nuevo, devuelve el Id del Consulta. oConsulta.Id = oConsultaNegocio.Actualizar((int)oPaciente.Id, oConsulta); /* * //si la Consulta es tiene 1 o mas practicas: * if (oConsulta.Practicas != null && oConsulta.Practicas.Count > 0) * { * //ahora utlizaremos ei Id del Consulta para actualizar las Practicas del mismo. * Business.Logic.Practicas oPracticasNegocio = new Business.Logic.Practicas(); * oAfiliadoNegocio.Actualizar((int)oConsulta.Id, oConsulta.Practicas); * } * //*/ // Recargar listado de Consultas CargarConsultas(); SeHanRealizadoCambios = false; }
/// <summary> /// Recupera los "Consultas" de la Base de Datos (y llena el control) /// </summary> private void CargarConsultas() { //Instancio la clase Consulta de la capa de Negocios Business.Logic.Consulta oConsultaNegocio = new Business.Logic.Consulta(); try { // No actualizamos el control hasta que finalice la operación (carga mas rapido) lstConsultas.BeginUpdate(); if (oPaciente.Id != null) { //Recupero todos los Consultas y los almaceno en el objeto Consulta oConsultas = oConsultaNegocio.Listar((int)oPaciente.Id); // Vaciamos el Listado de Consultas lstConsultas.Items.Clear(); //Agrego los datos de cada Consulta al Listado de Consultas foreach (Business.Entities.Consulta oConsulta in oConsultas) { ListViewItem oItem; oItem = lstConsultas.Items.Add(oConsulta.Id.ToString()); oItem.SubItems.Add(oConsulta.Fecha.ToString()); oItem.SubItems.Add(oConsulta.Practica.Nombre); oItem.SubItems.Add(oConsulta.Diagnostico.Nombre); oItem.SubItems.Add(oConsulta.Detalle); } } else //Se trata de un nuevo Paciente { lstConsultas.Items.Clear(); } tabConsultas.SelectTab("tabListadoConsultas"); // Le indico a listview que puede renderizar el control lstConsultas.EndUpdate(); } catch (Exception ex) { // Si hay errores, mostrar: MessageBox.Show(ex.Message, this.Text + ": Error al Cargar Consultas", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { // Libero memoria de objetos oConsultaNegocio = null; } }
// Busca consultas en funcion de lo datos de filtro private void Buscar() { Business.Entities.Consultas oConsultas = new Business.Entities.Consultas(); Business.Logic.Consulta oConsultaNegocio = new Business.Logic.Consulta(); DateTime FechaInicial; DateTime FechaFinal; try { lblErrores.Visible = false; // Verifico si traigo todas o por fecha if (cmbTipoConsultas.Items[0].Selected) { // Todas oConsultas = oConsultaNegocio.Listar(IdPaciente); } else { // Por fecha FechaInicial = new DateTime(CalendarCtl.SelectedDate.Year, CalendarCtl.SelectedDate.Month, CalendarCtl.SelectedDate.Day, 0, 0, 0); FechaFinal = new DateTime(CalendarCtl.SelectedDate.Year, CalendarCtl.SelectedDate.Month, CalendarCtl.SelectedDate.Day, 23, 59, 59); oConsultas = oConsultaNegocio.ListarIntervalo(IdPaciente, FechaInicial, FechaFinal); } // Muestro la grilla si es la primera vez que busca if (!grdConsultas.Visible) { grdConsultas.Visible = true; } // Asigno data source grdConsultas.DataSource = oConsultas; grdConsultas.DataBind(); } catch (Exception ex) { lblErrores.Text = ex.Message; lblErrores.Visible = true; } finally { // Libero memoria oConsultas = null; oConsultaNegocio = null; } }
// Busca consultas en funcion de lo datos de filtro private void Buscar() { Business.Entities.Consultas oConsultas = new Business.Entities.Consultas(); Business.Logic.Consulta oConsultaNegocio = new Business.Logic.Consulta(); DateTime FechaInicial; DateTime FechaFinal; try { lblErrores.Visible = false; // Verifico si traigo todas o por fecha if (cmbTipoConsultas.Items[0].Selected) { // Todas oConsultas = oConsultaNegocio.Listar(IdPaciente); } else { // Por fecha FechaInicial = new DateTime(CalendarCtl.SelectedDate.Year, CalendarCtl.SelectedDate.Month, CalendarCtl.SelectedDate.Day, 0, 0, 0); FechaFinal = new DateTime(CalendarCtl.SelectedDate.Year, CalendarCtl.SelectedDate.Month, CalendarCtl.SelectedDate.Day, 23, 59, 59); oConsultas = oConsultaNegocio.ListarIntervalo(IdPaciente, FechaInicial, FechaFinal); } // Muestro la grilla si es la primera vez que busca if (!grdConsultas.Visible) grdConsultas.Visible = true; // Asigno data source grdConsultas.DataSource = oConsultas; grdConsultas.DataBind(); } catch (Exception ex) { lblErrores.Text = ex.Message; lblErrores.Visible = true; } finally { // Libero memoria oConsultas = null; oConsultaNegocio = null; } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // Almanceno en sesion el valor del paciente actual // utilizo el esquema de propiedades para simplificar y organizar el uso de la misma this.IdPaciente = Convert.ToInt32(Request.QueryString["Id"]); Business.Entities.Consultas oConsultas = new Business.Entities.Consultas(); Business.Logic.Consulta oConsultaNegocio = new Business.Logic.Consulta(); // Busco la información del paciente oConsultas = oConsultaNegocio.Listar(this.IdPaciente); lblConsultas.Text = "Consultas de " + IdPaciente.ToString(); oConsultas = null; oConsultas = null; } }
/// <summary> /// Guarda la información de una "Consulta" /// </summary> private void GuardarConsulta() { if (oConsulta == null) oConsulta = new Business.Entities.Consulta(); //llenamos oConsulta con la información ingresada/modificada oConsulta.Detalle = txtDetalleConsulta.Text.Trim(); oConsulta.Diagnostico = (Business.Entities.Diagnostico)cbxDiagnostico.SelectedItem; oConsulta.Practica = (Business.Entities.Practica)lstPracticas.SelectedItem; oConsulta.Fecha = dtpFechaConsulta.Value; if (oPaciente.Id == null) { //al ser un paciente nuevo, es necesario guardar el paciente para poder guardar la consulta. DialogResult RespuestaUsuario = MessageBox.Show( "Para guardar la consulta, primero debe guardar el nuevo Paciente. Deseea gardarlo?", this.Text, MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button3); if (RespuestaUsuario == System.Windows.Forms.DialogResult.Cancel) return; if (RespuestaUsuario == System.Windows.Forms.DialogResult.OK) GuardarPaciente(); } //Instanciamos la clase Paciente de la capa lógica. Business.Logic.Consulta oConsultaNegocio = new Business.Logic.Consulta(); //Actualizamos la base de datos. Si es un Consulta nuevo, devuelve el Id del Consulta. oConsulta.Id = oConsultaNegocio.Actualizar((int)oPaciente.Id, oConsulta); /* //si la Consulta es tiene 1 o mas practicas: if (oConsulta.Practicas != null && oConsulta.Practicas.Count > 0) { //ahora utlizaremos ei Id del Consulta para actualizar las Practicas del mismo. Business.Logic.Practicas oPracticasNegocio = new Business.Logic.Practicas(); oAfiliadoNegocio.Actualizar((int)oConsulta.Id, oConsulta.Practicas); } //*/ // Recargar listado de Consultas CargarConsultas(); SeHanRealizadoCambios = false; }