Ejemplo n.º 1
0
        private static void MapPatientsData(string userid)
        {
            int patientsCount = _db.Patients.Count();
            int skip          = 0;
            int take          = 5;
            int LDeepanID     = _db.Liaisons.Where(x => x.FirstName == "Deepan" && x.IsTranslator == false).Select(x => x.Id).FirstOrDefault();
            int TDeepanID     = _db.Liaisons.Where(x => x.FirstName == "Deepan" && x.IsTranslator == true).Select(x => x.Id).FirstOrDefault();

            for (int i = skip; i <= patientsCount; i = +skip)
            {
                var patients = _db.Patients.Where(x => x.EnrollmentStatus == "Enrolled" && x.EnrollmentSubStatus == "Active Enrolled").OrderBy(x => x.Id).Skip(skip).Take(take).ToList();
                foreach (var p in patients)
                {
                    //enrolling in ccm
                    //liasion
                    if (p.LiaisonId > 0)
                    {
                        try
                        {
                            var LPatientBilling = new Patients_BillingCategories();
                            LPatientBilling.PatientId         = p.Id;
                            LPatientBilling.BillingCategoryId = BillingCodeHelper.cmmBillingCatagoryid;
                            LPatientBilling.CreatedOn         = DateTime.Now;
                            LPatientBilling.CreatedBy         = userid;
                            LPatientBilling.EnrolledOn        = DateTime.Now;
                            LPatientBilling.Status            = true;
                            LPatientBilling.LiaisonId         = Convert.ToInt32(p.LiaisonId);
                            LPatientBilling.IsTranslator      = false;
                            _db.Patients_BillingCategories.Add(LPatientBilling);
                            _db.SaveChanges();
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                    }
                    //Translator
                    if (p.TranslatorId > 0)
                    {
                        try
                        {
                            var TPatientBilling = new Patients_BillingCategories();
                            TPatientBilling.PatientId         = p.Id;
                            TPatientBilling.BillingCategoryId = BillingCodeHelper.cmmBillingCatagoryid;
                            TPatientBilling.CreatedOn         = DateTime.Now;
                            TPatientBilling.CreatedBy         = userid;
                            TPatientBilling.EnrolledOn        = DateTime.Now;
                            TPatientBilling.Status            = true;
                            TPatientBilling.LiaisonId         = Convert.ToInt32(p.TranslatorId);
                            TPatientBilling.IsTranslator      = true;
                            _db.Patients_BillingCategories.Add(TPatientBilling);
                            _db.SaveChanges();
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                    }

                    //enrolling in g0506
                    //Liasion
                    if (LDeepanID > 0)
                    {
                        try
                        {
                            var LPatientBilling1 = new Patients_BillingCategories();
                            LPatientBilling1.PatientId         = p.Id;
                            LPatientBilling1.BillingCategoryId = BillingCodeHelper.G0506BillingCatagoryid;
                            LPatientBilling1.CreatedOn         = DateTime.Now;
                            LPatientBilling1.CreatedBy         = userid;
                            LPatientBilling1.EnrolledOn        = DateTime.Now;
                            LPatientBilling1.Status            = true;
                            LPatientBilling1.LiaisonId         = Convert.ToInt32(LDeepanID);
                            LPatientBilling1.IsTranslator      = false;
                            _db.Patients_BillingCategories.Add(LPatientBilling1);
                            _db.SaveChanges();
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                    }

                    //Translator
                    if (TDeepanID > 0)
                    {
                        try
                        {
                            var TPatientBilling1 = new Patients_BillingCategories();
                            TPatientBilling1.PatientId         = p.Id;
                            TPatientBilling1.BillingCategoryId = BillingCodeHelper.G0506BillingCatagoryid;
                            TPatientBilling1.CreatedOn         = DateTime.Now;
                            TPatientBilling1.CreatedBy         = userid;
                            TPatientBilling1.EnrolledOn        = DateTime.Now;
                            TPatientBilling1.Status            = true;
                            TPatientBilling1.LiaisonId         = Convert.ToInt32(TDeepanID);
                            TPatientBilling1.IsTranslator      = true;
                            _db.Patients_BillingCategories.Add(TPatientBilling1);
                            _db.SaveChanges();
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                    }

                    //changing pre-liaison
                    if (p.LiaisonId > 0 || p.TranslatorId > 0)
                    {
                        try
                        {
                            var Patients_PreLiaison = new Patients_PreLiaisons();
                            Patients_PreLiaison.LiaisonId    = p.LiaisonId;
                            Patients_PreLiaison.TranslatorId = p.TranslatorId;
                            Patients_PreLiaison.Status       = false;
                            Patients_PreLiaison.CreatedOn    = DateTime.Now.Date;
                            Patients_PreLiaison.CreatedBy    = userid;
                            _db.Patients_PreLiaisons.Add(Patients_PreLiaison);
                            _db.SaveChanges();
                            p.Patients_PreLiaisonsId = Patients_PreLiaison.Id;
                            p.Patients_PreLiaisons   = Patients_PreLiaison;
                            _db.Entry(p).State       = EntityState.Modified;
                            _db.SaveChanges();
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                    }
                }


                skip = skip + take;
            }
            skip = 0;
            take = 5;
            for (int j = skip; j < patientsCount; j = +skip)
            {
                var patient2 = _db.Patients.Where(x => x.EnrollmentStatus != "Enrolled" && x.EnrollmentSubStatus != "Active Enrolled").OrderBy(x => x.Id).Skip(skip).Take(take).ToList();

                foreach (var x in patient2)
                {
                    if (x.LiaisonId > 0)
                    {
                        try
                        {
                            var Patients_PreLiaison = new Patients_PreLiaisons();
                            Patients_PreLiaison.LiaisonId    = x.LiaisonId;
                            Patients_PreLiaison.TranslatorId = x.TranslatorId;
                            Patients_PreLiaison.Status       = true;
                            Patients_PreLiaison.CreatedOn    = DateTime.Now.Date;
                            Patients_PreLiaison.CreatedBy    = userid;
                            _db.Patients_PreLiaisons.Add(Patients_PreLiaison);
                            _db.SaveChanges();
                            x.Patients_PreLiaisonsId = Patients_PreLiaison.Id;
                            x.LiaisonId        = null;
                            x.TranslatorId     = null;
                            _db.Entry(x).State = EntityState.Modified;
                            _db.SaveChanges();
                        }
                        catch (Exception E)
                        {
                            throw E;
                        }
                    }
                }
                skip = skip + take;
            }
        }
Ejemplo n.º 2
0
        private static void UpdatePatients()
        {
            var patients = _DBb.Patients.Where(x => x.EnrollmentSubStatus == "Active Enrolled").AsQueryable().ToList();

            foreach (var x in patients)
            {
                //CheckDatabaseStateOpenIfClosed();
                var transection = _DBb.Database.BeginTransaction();

                try
                {
                    Console.WriteLine("Patient Id" + x.Id + " Cycle is " + x.Cycle);
                    //CheckDatabaseStateOpenIfClosed();
                    var exiting = _DBb.Patients_BillingCategories.Where(c => c.PatientId == x.Id && c.BillingCategoryId == 2 && c.Status == true && c.IsTranslator == false).FirstOrDefault();
                    if (exiting == null)
                    {
                        var PatientBilling = new Patients_BillingCategories();
                        PatientBilling.PatientId         = x.Id;
                        PatientBilling.BillingCategoryId = 2;
                        PatientBilling.CreatedOn         = DateTime.Now;
                        PatientBilling.CreatedBy         = "bcbfb545-1d9e-40a5-b823-3616c5fc4050";//standadmin
                        PatientBilling.EnrolledOn        = DateTime.Now;
                        PatientBilling.Status            = true;
                        PatientBilling.LiaisonId         = 1125;//bruk auston
                        PatientBilling.IsTranslator      = false;
                        _DBb.Patients_BillingCategories.Add(PatientBilling);
                        Console.WriteLine("Billing Category Added");
                    }
                    else
                    {
                        Console.WriteLine("Billing Category Already Exit");
                    }
                    //var exiting1 = _DBb.Patients_BillingCategories.Where(c => c.PatientId == x.Id && c.BillingCategoryId == 2 && c.Status == true && c.IsTranslator == true).FirstOrDefault();
                    //if (exiting1 == null)
                    //{
                    //    var PatientBilling1 = new Patients_BillingCategories();
                    //    PatientBilling1.PatientId = x.Id;
                    //    PatientBilling1.BillingCategoryId = 2;
                    //    PatientBilling1.CreatedOn = DateTime.Now;
                    //    PatientBilling1.CreatedBy = "bcbfb545-1d9e-40a5-b823-3616c5fc4050";//standadmin
                    //    PatientBilling1.EnrolledOn = DateTime.Now;
                    //    PatientBilling1.Status = true;
                    //    PatientBilling1.LiaisonId = 1106;//ahmad
                    //    PatientBilling1.IsTranslator = true;
                    //    _DBb.Patients_BillingCategories.Add(PatientBilling1);
                    //}

                    //_DBb.SaveChanges();

                    var existing = _DBb.CategoriesStatuses.Where(c => c.PatientId == x.Id && c.Cycle == x.Cycle && c.BillingCategoryId == 2 && c.Status == "Enrolled").FirstOrDefault();
                    if (existing == null)
                    {
                        var CategoriesStatus = new CategoriesStatuses();
                        CategoriesStatus.PatientId         = x.Id;
                        CategoriesStatus.Status            = "Enrolled";
                        CategoriesStatus.Cycle             = x.Cycle;
                        CategoriesStatus.CreatedOn         = DateTime.Now;
                        CategoriesStatus.CreatedBy         = "bcbfb545-1d9e-40a5-b823-3616c5fc4050";
                        CategoriesStatus.BillingCategoryId = 2;
                        _DBb.CategoriesStatuses.Add(CategoriesStatus);
                        Console.WriteLine("Category Status Already Exit");
                    }
                    else
                    {
                        Console.WriteLine("Category Status Already Exit");
                    }

                    _DBb.SaveChanges();
                    transection.Commit();
                    Console.WriteLine(x.Id + " Successfully");
                }
                catch (Exception e)
                {
                    transection.Rollback();
                    Console.WriteLine("=========================Error" + x.Id + e + " =============================");
                }


                transection.Dispose();
            }
        }