public ActionResult AddConsultation(ConsultationView cv, int[] lstValue, string[] PresribedMed, int[] Test, int[] Testtype, int[] illness, int[] Procedures)
        {
            #region Commented code for Slecting multiple

            int id = Convert.ToInt32(Session["newid"]);
            try
            {
                foreach (var iteem in cv.Custs)
                {
                    if ((iteem.DrugId != null) && (iteem.Dosage != null) && (iteem.Quantity != 0))
                    {
                    }
                }


                //Method to add consultation
                db.AddConsultation(cv, id, lstValue, PresribedMed, Testtype, illness, Procedures);

                //return to this view
                return(RedirectToAction("MainIndex", "Consultations").WithNotification(Status.Success, "Consultation Created Successfully"));
            }

            catch (DataException e)
            {
                return(RedirectToAction("MainIndex", "Consultations").WithNotification(Status.Error, e.Message + " See Admin for more details"));
            }

            #endregion
        }
        public ConsultationView GetDrugs(string id)
        {
            ConsultationView cv = new ConsultationView();

            using (var deprepo = new ConsultationRepository())
            {
                Consultation _Consult = deprepo.GetById(id);


                cv.ConsultId   = _Consult.ConsultId;
                cv.collected   = _Consult.collected;
                cv.ConsultTime = _Consult.ConsultTime;
                cv.Description = _Consult.Description;
                //cv.illness = _Consult.illness;
                cv.Symptoms        = _Consult.Symptoms;
                cv.TotalPrice      = _Consult.TotalPrice;
                cv.patientfullname = _Consult.patientfullname;
                cv.ConsultDate     = _Consult.ConsultDate;
                cv.PatientId       = _Consult.PatientId;
                cv.Custs           = new List <ConsultationView.Cust>();
                foreach (var VARIABLE in _Consult.CustLis)
                {
                    ConsultationView.Cust obCust = new ConsultationView.Cust();
                    obCust.custId   = VARIABLE.custId;
                    obCust.Dosage   = VARIABLE.Dosage;
                    obCust.DrugId   = VARIABLE.DrugId;
                    obCust.Quantity = VARIABLE.Quantity;
                    cv.Custs.Add(obCust);
                }

                return(cv);
            }
        }
        public ConsultationView GETdeleteMethod(string id)
        {
            ConsultationView cv = new ConsultationView();

            using (var deprepo = new ConsultationRepository())
            {
                if (id != null)
                {
                    Consultation _consultation = deprepo.GetById(id);

                    cv.ConsultId = _consultation.ConsultId;
                    //cv.illness = _consultation.illness;
                    cv.Symptoms = _consultation.Symptoms;
                    cv.Symptoms = _consultation.Symptoms;
                    //cv.PatientSname = _consultation.PatientSname;
                    cv.ConsultDate = _consultation.ConsultDate;
                    //cv.PatientFname = _consultation.PatientFname;
                    cv.PresribedMed = _consultation.PresribedMed;
                    cv.ConsultTime  = _consultation.ConsultTime;
                    cv.TotalPrice   = _consultation.TotalPrice;
                }

                return(cv);
            }
        }
예제 #4
0
    public void TestMethod1()
    {
        var objForTesting    = new TheConsultationClass(new MyTestFactory());
        var consultationView = new ConsultationView();

        objForTesting.AddConsultation(consultationView, 123);
        var consultation = objForTesting.GetById(...);

        Assert.AreEqual(123, consultation.U_Id);
    }
        public SelectList GetUser()
        {
            ConsultationView             con      = new ConsultationView();
            IEnumerable <SelectListItem> userlist =
                (from m in pb.GetPatients() where m.PatientId != 0 select m).AsEnumerable()
                .Select(m => new SelectListItem()
            {
                Text = m.FullName + " " + m.Surname, Value = m.PatientId.ToString()
            });

            return(new SelectList(userlist, "Value", "Text"));//,con.UserId);
        }
        public ConsultationView CreateMethod(ConsultationView cv, int id)
        {
            var pro  = new PatientRepository();
            var name = pb.GetAllPatients().Find(x => x.userId == id);

            cv.PatientId       = id;
            cv.patientfullname = name.FullName + " " + name.Surname;
            cv.Description     = name.PatientAllergy;
            cv.FileName        = pro.GetById(id).FileName;
            cv.FileType        = pro.GetById(id).FileType;
            cv.resultFile      = pro.GetById(id).File;

            return(cv);
        }
        public ActionResult Procedures(ConsultationView Model)
        {
            Model.procedures = new List <ConsultationView.procedure>();
            List <Procedure> procedures = da.Procedures.ToList();

            ConsultationView.procedure proprocedure = new ConsultationView.procedure();
            foreach (var item in procedures)
            {
                proprocedure.procedureid    = item.procedureId;
                proprocedure.procedurename  = item.procedureName;
                proprocedure.procedureprice = item.procedurePrice;
                Model.procedures.Add(proprocedure);
            }

            return(PartialView(Model));
        }
        public ActionResult Create(int id)
        {
            ConsultationView cv = new ConsultationView();
            // List<string> i = Session["illness"].ToString();

            // foreach(var add in Convert.ToInt32(Session["illness"]))
            // {
            //     i.Add(add);
            // }


            // illness = yourInt.ToString().Select(o=> Convert.ToInt32(o)).ToArray()
            //  illness=Array.ConvertAll(Session["illness"]);
            //lstValue= Session["lstValue"] ;
            //ViewBag.Selected = new MultiSelectList(da.Symptomses.ToList(), "Symptomsid", "symptomsname", lstValue);



            var patient = da.Patients.ToList().Find(x => x.PatientId == id);
            var name    = pb.GetAllPatients().Find(x => x.userId == id);

            if (patient != null)
            {
                cv.procedures = new List <ConsultationView.procedure>();

                Session["newid"] = id;
                //cv = db.CreateMethod(cv, id);

                //cv = new ConsultationView()
                //{
                cv.PatientId       = id;
                cv.patientfullname = patient.FullName + " " + patient.Surname;
                cv.FileName        = patient.FileName;
                cv.FileType        = patient.FileType;
                cv.resultFile      = patient.File;
                cv.Description     = patient.PatientAllergy;
                //};
                cv.CreateCusts(1);
                cv.CreateProcedure(1);
                return(View(cv));
            }
            else
            {
                return(RedirectToAction("MainIndex")
                       .WithNotification(Status.Error, "Sorry We could not find the patient you're looking for "));
            }
        }
        public ActionResult Procedures(ConsultationView Model, int[] procedures)
        {
            int Uid = Convert.ToInt32(Session["newid"]);
            ConsultationView newcv = new ConsultationView();

            ConsultationView.procedure ob = new ConsultationView.procedure();
            foreach (var item in procedures)
            {
                Procedure pro = da.Procedures.Find(item);
                ob.procedureid    = pro.procedureId;
                ob.procedurename  = pro.procedureName;
                ob.procedureprice = pro.procedurePrice;
                Model.procedures.Add(ob);
            }
            TempData["tempModel"] = Model;
            return(RedirectToAction("Create", new { id = Model.PatientId }));
        }
        public ConsultationView PostEditMethod(ConsultationView cv)
        {
            using (var deprepo = new ConsultationRepository())
            {
                if (cv.ConsultId == null)
                {
                    Consultation _consultation = new Consultation
                    {
                        ConsultId = cv.ConsultId,
                        //illness = cv.illness,
                        Symptoms = cv.Symptoms,
                        //PatientSname = cv.PatientSname,
                        ConsultDate = cv.ConsultDate,
                        //PatientFname = cv.PatientFname,
                        PresribedMed = cv.PresribedMed,
                        ConsultTime  = cv.ConsultTime,
                        TotalPrice   = cv.TotalPrice,
                        Description  = cv.ConsultTime,
                    };

                    deprepo.Insert(_consultation);
                }

                else
                {
                    Consultation _consultation = deprepo.GetById(cv.ConsultId);

                    _consultation.ConsultId = cv.ConsultId;
                    //_consultation.illness = cv.illness;
                    _consultation.Symptoms = cv.Symptoms;
                    _consultation.Symptoms = cv.Symptoms;
                    //_consultation.PatientSname = cv.PatientSname;
                    _consultation.ConsultDate = cv.ConsultDate;
                    // _consultation.PatientFname = cv.PatientFname;
                    _consultation.PresribedMed = cv.PresribedMed;
                    _consultation.ConsultTime  = cv.ConsultTime;
                    _consultation.TotalPrice   = cv.TotalPrice;
                    _consultation.ConsultTime  = cv.ConsultTime;
                    deprepo.Update(_consultation);
                }

                return(cv);
            }
        }
        public List <ConsultationView> Last2Consultations(int?Patientid)
        {
            List <ConsultationView> cv = new List <ConsultationView>();

            var listss = consultrep.GetAll().FindAll(x => x.PatientId == Patientid).TakeLast(3).Reverse().ToList();

            foreach (var ite in listss)
            {
                ConsultationView cvob = new ConsultationView();
                cvob.ConsultDate = ite.ConsultDate;
                cvob.ConsultId   = ite.ConsultId;
                cvob.ConsultTime = ite.ConsultTime;
                cvob.Notes       = ite.Notes;
                //vob.illness = ite.illness;
                cvob.PatientId = ite.PatientId;
                cvob.Custs     = new List <ConsultationView.Cust>();
                cvob.Illnesses = new List <ConsultationView.Illness>();

                foreach (var item in ite.CustLis)
                {
                    ConsultationView.Cust obCust = new ConsultationView.Cust();
                    obCust.custId   = item.custId;
                    obCust.Dosage   = item.Dosage;
                    obCust.DrugId   = item.DrugId;
                    obCust.Quantity = item.Quantity;
                    cvob.Custs.Add(obCust);
                }
                foreach (var illness in ite.Illness)
                {
                    ConsultationView.Illness obillness = new ConsultationView.Illness();
                    obillness.Illnessid   = illness.Illnessid;
                    obillness.Illnessname = illness.Illnessname;
                    cvob.Illnesses.Add(obillness);
                }
                cv.Add(cvob);
            }
            return(cv);
        }
 public void AddConsultation(ConsultationView cv, int patientid)
 {
     using (var deprepo = Factory.Create())
     {
         if (cv.ConsultId == 0)
         {
             var          curr          = DateTime.Now;
             string       date          = curr.ToString("d");
             string       time          = curr.ToString("t");
             var          patient       = da.Patients.ToList().Find(x => x.PatientId == patientid);
             Consultation _consultation = new Consultation
             {
                 ConsultId    = cv.ConsultId,
                 ConsultDate  = date,
                 ConsultTime  = time,
                 illness      = cv.illness,
                 PresribedMed = cv.PresribedMed,
                 Symptoms     = cv.Symptoms,
                 U_Id         = patient.PatientId,
             };
             deprepo.Insert(_consultation);
         }
     }
 }
        public List <ConsultationView> GetAllConsultations()
        {
            using (var consultrepo = new ConsultationRepository())
            {
                List <ConsultationView>           consviewlist     = new List <ConsultationView>();
                List <ConsultationView.Cust>      conscustlist     = new List <ConsultationView.Cust>();
                ConsultationView.Illness          consillness      = new ConsultationView.Illness();
                List <ConsultationView.Illness>   consillnesslist  = new List <ConsultationView.Illness>();
                ConsultationView.procedure        conprocedure     = new ConsultationView.procedure();
                List <ConsultationView.procedure> conprocedurelist = new List <ConsultationView.procedure>();

                ConsultationView.TestType constexttype = new ConsultationView.TestType();
                var user = consultrepo.GetAll().ToList();

                foreach (var newitem in user)
                {
                    ConsultationView consview = new ConsultationView();
                    consview.symptomses = new List <SymptomsModel>();
                    consview.Illnesses  = new List <ConsultationView.Illness>();
                    consview.Custs      = new List <ConsultationView.Cust>();
                    consview.ConsultId  = newitem.ConsultId;
                    //illness = x.illness,
                    consview.PatientId   = newitem.PatientId;
                    consview.Symptoms    = newitem.Symptoms;
                    consview.Description = newitem.Description;
                    //PatientSname = x.PatientSname,
                    consview.ConsultDate = newitem.ConsultDate;
                    //PatientFname = x.PatientFname,
                    consview.PresribedMed    = newitem.PresribedMed;
                    consview.ConsultTime     = newitem.ConsultTime;
                    consview.TotalPrice      = newitem.TotalPrice;
                    consview.Notes           = newitem.Notes;
                    consview.patientfullname = newitem.patientfullname;
                    consview.resultFile      = pr.GetById(newitem.PatientId).File;
                    consview.FileName        = pr.GetById(newitem.PatientId).FileName;
                    consview.FileType        = pr.GetById(newitem.PatientId).FileType;
                    foreach (var cust in newitem.CustLis)
                    {
                        ConsultationView.Cust conscust = new ConsultationView.Cust();
                        var custtoadd = custrepo.Getall().Find(x => x.custId == cust.custId);
                        conscust.DrugId   = custtoadd.DrugId;
                        conscust.Dosage   = custtoadd.Dosage;
                        conscust.custId   = custtoadd.custId;
                        conscust.Quantity = custtoadd.Quantity;
                        consview.Custs.Add(conscust);
                    }
                    foreach (var symptom in newitem.Symptomses)
                    {
                        SymptomsModel Symptomsmodel = new SymptomsModel();
                        var           symotomstoadd = symptomrtepo.GetById(symptom.Symptomsid);
                        Symptomsmodel.symptomsname = symotomstoadd.symptomsname;
                        Symptomsmodel.Symptomsid   = symotomstoadd.Symptomsid;
                        consview.symptomses.Add(Symptomsmodel);
                    }
                    newitem.Illness = new List <Illness>();
                    foreach (var ill in newitem.Illness)
                    {
                        ConsultationView.Illness conill = new ConsultationView.Illness();
                        var symotomstoadd = illrepo.GetById(ill.Illnessid);
                        conill.Illnessname = symotomstoadd.Illnessname;
                        conill.Illnessid   = symotomstoadd.Illnessid;
                        consview.Illnesses.Add(conill);
                    }
                    consviewlist.Add(consview);
                }

                return(consviewlist);
            }
        }
 public void AddConsultation(ConsultationView cv)
 {
     throw new NotImplementedException();
 }
        public void AddConsultation(ConsultationView cv, int id, int[] Symptoms, string[] PresribedMed, int[] Testtype, int[] illness, int[] procedures)
        {
            //Objects

            var ob   = new List <Cust>();
            var cust = new Cust();
            ConsultationPriceBusiness cons = new ConsultationPriceBusiness();

            bool collected = false;

            using (var deprepo = new ConsultationRepository())
            {
                var newdb = deprepo.DbContext();
                if (cv.ConsultId == null)
                {
                    cv.PatientId = id;


                    //Set the date and time for consultation
                    var    curr = DateTime.Now;
                    string date = curr.ToString("D");
                    string time = curr.ToString("hh:m:s: tt");
                    cv.ConsultDate = curr.Date;
                    cv.ConsultTime = time;

                    //find the patient you're creating consultation for
                    var patient = da.Patients.ToList().Find(x => x.PatientId == id);



                    Guid   consul    = Guid.NewGuid();
                    string consultid = consul.ToString("N");
                    cv.ConsultId = consultid;

                    cv.patientfullname = patient.FullName + " " + patient.Surname;
                    cv.TotalPrice      = 400;

                    Consultation consultation = new Consultation()
                    {
                        ConsultId   = cv.ConsultId,
                        collected   = cv.collected,
                        ConsultTime = cv.ConsultTime,
                        Description = cv.Description,
                        //illness = cv.illness,
                        Symptoms        = cv.Symptoms,
                        TotalPrice      = cv.TotalPrice,
                        patientfullname = cv.patientfullname,
                        ConsultDate     = cv.ConsultDate,
                        PatientId       = cv.PatientId,
                        Notes           = cv.Notes
                    };

                    consultation.TestTypes = new List <TestType>();

                    var custlistitem      = cv.Custs.ToList().Count;
                    var procedurelistitem = cv.procedures.ToList().Count;


                    consultation.CustLis = new List <Cust>();
                    if (custlistitem != 0)
                    {
                        foreach (var iteem in cv.Custs)
                        {
                            if ((iteem.DrugId != null) && (iteem.Dosage != null) && (iteem.Quantity != 0))
                            {
                                var obs = new Cust();

                                Guid   m     = Guid.NewGuid();
                                string custi = m.ToString("N");
                                obs.custId   = custi;
                                obs.DrugId   = iteem.DrugId;
                                obs.Quantity = iteem.Quantity;
                                obs.Dosage   = iteem.Dosage;
                                ob.Add(obs);
                                consultation.CustLis.Add(obs);
                            }

                            //da.Custs.Add(obs);
                            //custrep.Create(obs);S
                        }
                        //foreach (var item in ob)
                        //{
                        //    var find = newdb.Drugs.ToList().Find(x => Convert.ToString(x.DrugId) == item.DrugId);
                        //    find.DrugQuantity -= item.Quantity;
                        //    consultation.TotalPrice += find.DrugPrice;
                        //}
                    }
                    if (Testtype != null)
                    {
                        var testResults = new List <TestType>();


                        var TestTyp = new TestType();
                        foreach (var item in Testtype)
                        {
                            var symptomstoadd = newdb.TestTypes.Find(item);
                            //TestTyp.Name = symptomstoadd.Name;
                            //TestTyp.Price = symptomstoadd.Price;
                            //TestTyp.Description = symptomstoadd.Description;
                            testResults.Add(symptomstoadd);
                            ////TestTyp.Consultations.Add(consultation);
                            newdb.TestTypes.Attach(symptomstoadd);
                            consultation.TestTypes.Add(symptomstoadd);
                        }
                        foreach (var item in testResults)
                        {
                            consultation.TotalPrice    += item.Price;
                            consultation.TestTypePrice += item.Price;
                        }
                    }
                    if (illness != null)
                    {
                        var Illn = new Illness();
                        consultation.Illness = new List <Illness>();
                        foreach (var item in illness)
                        {
                            var symptomstoadd = newdb.Illness.Find(item);
                            //Illn.Illnessid = symptomstoadd.Illnessid;
                            //Illn.Illnessname = symptomstoadd.Illnessname;
                            newdb.Illness.Attach(symptomstoadd);
                            consultation.Illness.Add(symptomstoadd);
                        }
                    }
                    if (Symptoms != null)
                    {
                        var sympto = new Symptoms();
                        consultation.Symptomses = new List <Symptoms>();
                        foreach (var item in Symptoms)
                        {
                            var symptomstoadd = newdb.Symptomses.Find(item);
                            //sympto.symptomsname = symptomstoadd.symptomsname;
                            //consultation.Symptomses = new List<Symptoms> { symptomstoadd };
                            newdb.Symptomses.Attach(symptomstoadd);
                            consultation.Symptomses.Add(symptomstoadd);
                        }
                    }
                    if (procedurelistitem != 0)
                    {
                        consultation.Procedures = new List <Procedure>();
                        foreach (var item in cv.procedures)
                        {
                            if (item.procedurename != null && item.procedureQuantity != 0)
                            {
                                var symptomstoadd = newdb.Procedures.ToList().Find(x => x.procedureName == item.procedurename);
                                //sympto.symptomsname = symptomstoadd.symptomsname;
                                //consultation.Symptomses = new List<Symptoms> { symptomstoadd };
                                newdb.Procedures.Attach(symptomstoadd);
                                consultation.Procedures.Add(symptomstoadd);
                                consultation.TotalPrice      += symptomstoadd.procedurePrice * item.procedureQuantity;
                                consultation.ProcedurePricee += symptomstoadd.procedurePrice * item.procedureQuantity;
                            }
                        }
                    }
                    consultation.TotalPrice += consultation.TotalPrice * Convert.ToDecimal(0.14);
                    newdb.Consultations.Add(consultation);
                    newdb.SaveChanges();
                    //dab.SaveChanges();
                    //consultrep.Insert(consultation);
                    //var delete = testresult.GetById(TestTyp.TestTypeID);
                    //testresult.Delete(delete);

                    //var repo=deprepo.GetById(consultid);



                    //da.SaveChangesAsync();
                    //deprepo.Update(repo);


                    //cv.ConsultDate = date;
                    //if (Symptoms != null)
                    //{
                    //    cv.Symptomses = new List<Symptoms>();
                    //    foreach (var item in Symptoms)
                    //    {
                    //        var symptomstoadd = da.Symptomses.Find(int.Parse(item));
                    //        cv.Symptomses.Add(symptomstoadd);
                    //    }

                    //}


                    //foreach (var VARIABLE in cv.CustModell.CustList)
                    //{
                    //    VARIABLE.Quantity;
                    //    VARIABLE.DrugName;
                    //}


                    //if (PresribedMed != null)
                    //{
                    //    var m = _collection.CustList;
                    //    cv.Drugs = new List<Drug>();
                    //    foreach (var item in cv.)
                    //    {

                    //        var drugstoadd = da.Custs.Find(int.Parse(item));
                    //        m.Add(new Cust({DrugName = item.D} ));
                    //        _collection.CustList.Add(cv.custList);
                    //        cv.Drugs.Add(drugstoadd);


                    //    }
                    //}
                    //da.CollectionDrugs.Add(_collection);
                    //deprepo.Insert(cv);
                    // da.Consultations.Add(coc);

                    // da.SaveChanges();
                }
            }
        }