Пример #1
0
    protected void Page_Init(object sender, EventArgs e)
    {
        ctx = new AriClinicContext("AriClinicContext");
        // security control, it must be a user logged
        if (Session["User"] == null)
            Response.Redirect("Default.aspx");
        else
        {
            user = (User)Session["User"];
            user = CntAriCli.GetUser(user.UserId, ctx);
            Process proc = (from p in ctx.Processes
                            where p.Code == "examinationassigned"
                            select p).FirstOrDefault<Process>();
            per = CntAriCli.GetPermission(user.UserGroup, proc, ctx);
            btnAccept.Visible = per.Modify;
        }

        // 
        if (Request.QueryString["AntSegmentId"] != null)
        {
            id = Int32.Parse(Request.QueryString["AntSegmentId"]);
            atsg = CntAriCli.GetAntSegment(id, ctx);
            oVisit = atsg.OphthalmologicVisit;
            LoadData(atsg);
        }
        if (Request.QueryString["OphVisitId"] != null)
        {
            id = int.Parse(Request.QueryString["OphVisitId"]);
            oVisit = (OphthalmologicVisit)CntAriCli.GetVisit(id, ctx);
            if (oVisit.AntSegments.Count > 0)
            {
                atsg = oVisit.AntSegments[0];
                LoadData(atsg);
            }
        }
    }
Пример #2
0
        public static void ImportVisits(OleDbConnection con, AriClinicContext ctx)
        {
            int id = 0;
            // (0) Borra tipos previos
            ctx.Delete(ctx.MotAppends);
            ctx.Delete(ctx.AntSegments);
            ctx.Delete(ctx.Fundus);
            ctx.Delete(ctx.OphthalmologicVisits);
            ctx.Delete(ctx.BaseVisits);
            ctx.SaveChanges();

            // (1) Dar de alta las visitas importadas
            string sql = "SELECT * FROM HistVisitas";
            cmd = new OleDbCommand(sql, con);
            da = new OleDbDataAdapter(cmd);
            DataSet ds = new DataSet();
            da.Fill(ds, "ConVisitas");
            int nreg = ds.Tables["ConVisitas"].Rows.Count;
            int reg = 0;
            foreach (DataRow dr in ds.Tables["ConVisitas"].Rows)
            {
                reg++;
                Boolean newVisit = false;
                Console.WriteLine("Visitas {0:#####0} de {1:#####0} {2}", reg, nreg, "VISITAS");
                BaseVisit visit = (from v in ctx.BaseVisits
                                   where v.OftRefVisita == (int)dr["RefVisita"]
                                   select v).FirstOrDefault<BaseVisit>();
                if (visit == null)
                {
                    visit = new BaseVisit();
                    newVisit = true;
                }
                visit.OftRefVisita = (int)dr["RefVisita"];
                visit.VisitDate = (DateTime)dr["Fecha"];
                id = (int)dr["IdTipCit"];
                visit.AppointmentType = (from apt in ctx.AppointmentTypes
                                         where apt.OftId == id
                                         select apt).FirstOrDefault<AppointmentType>();
                id = (int)dr["IdMot"];
                visit.VisitReason = (from vr in ctx.VisitReasons
                                     where vr.OftId == id
                                     select vr).FirstOrDefault<VisitReason>();
                id = (int)dr["IdMed"];
                visit.Professional = (from p in ctx.Professionals
                                      where p.OftId == id
                                      select p).FirstOrDefault<Professional>();
                id = (int)dr["NumHis"];
                visit.Patient = (from p in ctx.Patients
                                 where p.OftId == id
                                 select p).FirstOrDefault<Patient>();
                if (dr["Observaciones"] != DBNull.Value)
                    visit.Comments = (string)dr["Observaciones"];
                if ((decimal)(float)dr["TOOD"] != 0 || (decimal)(float)dr["TOOI"] != 0)
                {
                    OphthalmologicVisit ophVisit;
                    if (newVisit)
                    {
                        ophVisit = new OphthalmologicVisit();
                    }
                    else
                    {
                        ophVisit = (OphthalmologicVisit)visit;
                    }
                    ophVisit.OftRefVisita = visit.OftRefVisita;
                    ophVisit.AppointmentType = visit.AppointmentType;
                    ophVisit.VisitReason = visit.VisitReason;
                    ophVisit.VisitDate = visit.VisitDate;
                    ophVisit.Patient = visit.Patient;
                    ophVisit.Professional = visit.Professional;
                    ophVisit.Comments = visit.Comments;
                    ophVisit.VType = "ophvisit";
                    if (newVisit) ctx.Add(ophVisit);
                    ctx.SaveChanges();

                    // Motilidad y anejos
                    MotAppend mot;
                    if (newVisit)
                    {
                        mot = new MotAppend();
                    }
                    else
                    {
                        mot = ophVisit.MotAppends[0];
                    }
                    if (dr["MotOcular"] != DBNull.Value)
                        mot.EyeMotility = (string)dr["MotOcular"];
                    if (dr["cejas"] != DBNull.Value)
                        mot.Eyebrows = (string)dr["Cejas"];
                    if (dr["AreaPeriocular"] != DBNull.Value)
                        mot.PeriocularArea = (string)dr["AreaPeriocular"];
                    mot.C1RE = (decimal)(float)dr["C1OD"];
                    mot.C1LE = (decimal)(float)dr["C1OI"];
                    mot.C2RE = (decimal)(float)dr["C2OD"];
                    mot.C2LE = (decimal)(float)dr["C2OI"];
                    mot.C3RE = (decimal)(float)dr["C3OD"];
                    mot.C3LE = (decimal)(float)dr["C3OI"];
                    mot.C4RE = (decimal)(float)dr["C4OD"];
                    mot.C4LE = (decimal)(float)dr["C4OI"];
                    mot.C5RE = (decimal)(float)dr["C5OD"];
                    mot.C5LE = (decimal)(float)dr["C5OI"];
                    mot.C6RE = (decimal)(float)dr["C6OD"];
                    mot.C6LE = (decimal)(float)dr["C6OI"];
                    mot.C7RE = (decimal)(float)dr["C7OD"];
                    mot.C7LE = (decimal)(float)dr["C7OI"];
                    mot.C8RE = (decimal)(float)dr["C8OD"];
                    mot.C8LE = (decimal)(float)dr["C8OI"];
                    mot.C9RE = (decimal)(float)dr["C9OD"];
                    mot.C9LE = (decimal)(float)dr["C9OI"];
                    mot.C10RE = (decimal)(float)dr["C10OD"];
                    mot.C10LE = (decimal)(float)dr["C10OI"];
                    mot.C11RE = (decimal)(float)dr["C11OD"];
                    mot.C11LE = (decimal)(float)dr["C11OI"];
                    mot.C12RE = (decimal)(float)dr["C12OD"];
                    mot.C12LE = (decimal)(float)dr["C12OI"];
                    mot.OphthalmologicVisit = ophVisit;
                    if (newVisit) ctx.Add(mot);
                    ctx.SaveChanges();

                    // Segmento anterior
                    AntSegment ant;
                    if (newVisit)
                    {
                        ant = new AntSegment();
                    }
                    else
                    {
                        ant = ophVisit.AntSegments[0];
                    }
                    if (dr["ObsParpados"] != DBNull.Value)
                        ant.EyebrowsComments = (string)dr["ObsParpados"];
                    if (dr["Conjuntiva"].GetType() == typeof(DBNull))
                    {
                    }
                    if (dr["Conjuntiva"] != DBNull.Value)
                        ant.Conjunctiva = (string)dr["Conjuntiva"];
                    if (dr["Cornea"] != DBNull.Value)
                        ant.Cornea = (string)dr["Cornea"];
                    if (dr["Camara"] != DBNull.Value)
                        ant.Chamber = (string)dr["Camara"];
                    if (dr["Tyndall"] != DBNull.Value)
                        ant.Tyndall = (string)dr["Tyndall"];
                    if (dr["Pupila"] != DBNull.Value)
                        ant.Pupil = (string)dr["Pupila"];
                    if (dr["Cristalino"] != DBNull.Value)
                        ant.Crystalline = (string)dr["Cristalino"];
                    ant.EyestrainLE = (decimal)(float)dr["TOOI"];
                    ant.EyestrainRE = (decimal)(float)dr["TOOD"];
                    ant.OphthalmologicVisit = ophVisit;
                    if (newVisit) ctx.Add(ant);
                    ctx.SaveChanges();

                    // Fondo de ojo
                    Fundus fundus;
                    if (newVisit)
                    {
                        fundus = new Fundus();
                    }
                    else
                    {
                        fundus = ophVisit.Fundus[0];
                    }
                    if (dr["NervioOptico"] != DBNull.Value)
                        fundus.OpticNerve = (string)dr["NervioOptico"];
                    if (dr["Vasos"] != DBNull.Value)
                        fundus.Vessels = (string)dr["Vasos"];
                    if (dr["Macula"] != DBNull.Value)
                        fundus.Macula = (string)dr["Macula"];
                    if (dr["Vitreo"] != DBNull.Value)
                        fundus.Vitreous = (string)dr["Vitreo"];
                    if (dr["Periferia"] != DBNull.Value)
                        fundus.Periphery = (string)dr["Periferia"];
                    fundus.OphthalmologicVisit = ophVisit;
                    if (newVisit) ctx.Add(fundus);
                    ctx.SaveChanges();
                }
                else
                {
                    visit.VType = "general";
                    if (newVisit) ctx.Add(visit);
                    ctx.SaveChanges();
                }
            }
        }
Пример #3
0
    protected void LoadData(AntSegment atsg)
    {
        txtConjunctiva.Text = atsg.Conjunctiva;
        txtCornea.Text = atsg.Cornea;
        txtChamber.Text = atsg.Chamber;
        txtTyndall.Text = atsg.Tyndall;
        txtIris.Text = atsg.Iris;
        txtPupil.Text = atsg.Pupil;
        txtCrystalline.Text = atsg.Crystalline;

        if (atsg.EyestrainRE != null) txtEyestrainRE.Value = (double)atsg.EyestrainRE;
        if (atsg.EyestrainLE != null) txtEyestrainLE.Value = (double)atsg.EyestrainLE;

    }
Пример #4
0
    protected void UnloadData(AntSegment atsg)
    {
        atsg.Conjunctiva = txtConjunctiva.Text;
        atsg.Cornea = txtCornea.Text;
        atsg.Chamber =txtChamber.Text;
        atsg.Tyndall = txtTyndall.Text ;
        atsg.Iris = txtIris.Text ;
        atsg.Pupil = txtPupil.Text ;
        atsg.Crystalline = txtCrystalline.Text ;

        if (txtEyestrainRE.Value != null) atsg.EyestrainRE = (decimal)txtEyestrainRE.Value;
        if (txtEyestrainLE.Value != null) atsg.EyestrainLE = (decimal)txtEyestrainLE.Value;

    }
Пример #5
0
 protected bool CreateChange()
 {
     if (!DataOk())
         return false;
     if (atsg == null)
     {
         atsg = new AntSegment();
         atsg.OphthalmologicVisit = oVisit;
         UnloadData(atsg);
         ctx.Add(atsg);
     }
     else
     {
         atsg = CntAriCli.GetAntSegment(atsg.Id, ctx);
         UnloadData(atsg);
     }
     ctx.SaveChanges();
     RadAjaxManager1.ResponseScripts.Add(String.Format("showDialog('{0}','{1}','success',null,0,0)"
             ,Resources.GeneralResource.Success
             ,Resources.GeneralResource.CorrectlyStored));
     Response.Redirect(String.Format("AntSegmentForm.aspx?AntSegmentId={0}",atsg.Id));
     return true;
 }