Ejemplo n.º 1
0
        private void timerCerrar_Tick(object sender, EventArgs e)
        {
            try
            {
                posicion     -= 5;
                this.Location = new Point(Screen.PrimaryScreen.Bounds.Right - posicion, posVertical);

                if (posicion <= 0)
                {
                    this.Opacity = 0.3;
                    listaSlots.Remove(posVertical);
                    this.Close();

                    if (grouper1.BackgroundGradientColor == Color.Red)
                    {
                        frmRecordatorios ofrmRecordatorios = new frmRecordatorios(Mensaje, id_Cita, Color.Red, IdCliente, true);
                        ofrmRecordatorios.Show();
                        Program.contRecordatorios++;
                    }
                    else if (grouper1.BackgroundGradientColor == Color.Yellow)
                    {
                        frmRecordatorios ofrmRecordatorios = new frmRecordatorios(Mensaje, id_Cita, Color.Yellow, IdCliente, false);
                        ofrmRecordatorios.Show();
                        Program.contRecordatorios++;
                    }
                }
            }
            catch
            {
                //Atrapa el error en caso de que el objeto form haya sido eliminado
            }
        }
Ejemplo n.º 2
0
        public void MuestraRecordatoriosAltaPrioridad()
        {
            try
            {
                string Sentencia = "";
                Sentencia = "Select * from Citas where cast(convert(varchar, fecha_inicial_record ,112) as datetime) <= '" + System.DateTime.Today.ToShortDateString() + "' and estado_recordatorio != 2 and prioridad_recordatorio = 'Alta'";

                DataSet ds = Program.oPersistencia.ejecutarSQLListas(Sentencia, "Citas");

                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    //Verificamos que la fecha de la cita todavía no haya transcurrido, de lo contrario modificamos el estado de la cita
                    //para señarlarla como finalizada
                    if (Convert.ToDateTime(dr[3]) >= DateTime.Today)
                    {
                        //Verificamos que el día del recordatorio sea igual al día actual
                        if (Convert.ToDateTime(dr[7]).ToShortDateString() == DateTime.Today.ToShortDateString())
                        {
                            //Verificamos si la hora y minuto del recordatorio son menores a la hora actual del sistema
                            //así de esta forma si habíamos cerrado la aplicación durante el transcurso de un recordatorio pendiente
                            //este se muestre de igual forma para notificar el recordatorio
                            if (Convert.ToDateTime(dr[7]).Hour <= DateTime.Now.Hour)
                            {
                                //if (Convert.ToDateTime(dr[7]).Minute <= DateTime.Now.Minute)
                                //{
                                if (Convert.ToBoolean(dr[11]) == false)//Paciente Existente
                                {
                                    #region Selecciona el nombre del paciente

                                    DataSet ds2 = Program.oPersistencia.ejecutarSQLListas("Select num_expediente, nombre + ' ' + apellidos from Paciente where num_expediente = " + dr[1].ToString().Trim(), "Paciente");

                                    if (ds2 != null)
                                    {
                                        if (ds2.Tables[0].Rows.Count > 0)
                                        {
                                            foreach (DataRow dr2 in ds2.Tables[0].Rows)
                                            {
                                                oIdPaciente.Add(dr2[0].ToString().Trim());
                                                NombrePaciente = dr2[1].ToString().Trim();
                                                break;
                                            }
                                        }
                                    }
                                    ds2.Dispose();

                                    #endregion
                                }
                                else
                                {
                                    oIdPaciente.Add(0);
                                    NombrePaciente = dr[12].ToString().Trim();
                                }

                                #region Selecciona el nombre del doctor

                                DataSet ds3 = Program.oPersistencia.ejecutarSQLListas("Select nombre from Empleados where id_emp = " + dr[2].ToString().Trim(), "Empleados");

                                if (ds3 != null)
                                {
                                    if (ds3.Tables[0].Rows.Count > 0)
                                    {
                                        foreach (DataRow dr3 in ds3.Tables[0].Rows)
                                        {
                                            NombreDoctor = dr3[0].ToString().Trim();
                                            break;
                                        }
                                    }
                                }
                                ds3.Dispose();

                                #endregion

                                DateTime Fecha = new DateTime();
                                Fecha = Convert.ToDateTime(dr[3]);

                                string           Mensaje           = "El paciente: " + NombrePaciente + " posee una cita el día " + Fecha.ToLongDateString() + " a las " + Fecha.ToLongTimeString() + " con el doctor " + NombreDoctor + " por motivo de " + dr[5].ToString().Trim();
                                frmRecordatorios ofrmRecordatorios = new frmRecordatorios(Mensaje, dr[0].ToString(), Color.Red, dr[1].ToString().Trim(), true);
                                ofrmRecordatorios.Show();
                                Program.contRecordatorios++;
                                //}
                            }
                        }
                        else
                        {
                            //Si el día del recordatorio ya transcurrió y el recordatorio no ha sido finalizado se vuelve a mostrar, ya que se supone
                            //que cuando el sistema muestre los recordatorios el usuario debería de tomar las acciones necesarias y eliminar el recordatorio
                            #region Selecciona el nombre del paciente

                            DataSet ds2 = Program.oPersistencia.ejecutarSQLListas("Select num_expediente, nombre + ' ' + apellidos from Paciente where num_expediente = " + dr[1].ToString().Trim(), "Paciente");

                            if (ds2 != null)
                            {
                                if (ds2.Tables[0].Rows.Count > 0)
                                {
                                    foreach (DataRow dr2 in ds2.Tables[0].Rows)
                                    {
                                        oIdPaciente.Add(dr2[0].ToString().Trim());
                                        NombrePaciente = dr2[1].ToString().Trim();
                                        break;
                                    }
                                }
                            }
                            ds2.Dispose();

                            #endregion

                            #region Selecciona el nombre del doctor

                            DataSet ds3 = Program.oPersistencia.ejecutarSQLListas("Select nombre from Empleados where id_emp = " + dr[2].ToString().Trim(), "Empleados");

                            if (ds3 != null)
                            {
                                if (ds3.Tables[0].Rows.Count > 0)
                                {
                                    foreach (DataRow dr3 in ds3.Tables[0].Rows)
                                    {
                                        NombreDoctor = dr3[0].ToString().Trim();
                                        break;
                                    }
                                }
                            }
                            ds3.Dispose();

                            #endregion

                            DateTime Fecha = new DateTime();
                            Fecha = Convert.ToDateTime(dr[3]);

                            string           Mensaje           = "El paciente: " + NombrePaciente + " posee una cita el día " + Fecha.ToLongDateString() + " a las " + Fecha.ToLongTimeString() + " con el doctor " + NombreDoctor + " por motivo de " + dr[5].ToString().Trim();
                            frmRecordatorios ofrmRecordatorios = new frmRecordatorios(Mensaje, dr[0].ToString(), Color.Red, dr[1].ToString().Trim(), true);
                            ofrmRecordatorios.Show();
                            Program.contRecordatorios++;
                        }
                    }
                    else
                    {
                        //Finaliza la cita ya que la fecha establecida para la misma ya caducó.
                        ModificarEstadoCita("1", dr[0].ToString().Trim());

                        //Finaliza el recordatorio con la cita ya que la fecha de la cita ya caducó.
                        ModificarEstadoRecordatorios("2", dr[0].ToString().Trim());
                    }
                }
                ds.Dispose();
            }
            catch { }
        }