コード例 #1
0
ファイル: CheckIn.cs プロジェクト: YNSANEF/PatientManagement
        public void SubmitService(CheckInsForm checkInsForm, TimeSpan timeSpan)
        {
            var checkTemp = _db.TempWaits.Any();
            var patientId = checkInsForm.Patient.Id;

            CheckMedicalRecord(patientId);
            var getVisit = CheckVisitCount(patientId);

            if (checkTemp)
            {
                var getlastWaiting = _db.WaitingLists.OrderByDescending(v => v.Number).FirstOrDefault();
                if (getlastWaiting != null)
                {
                    var insertWaitingList = new Hospital_Entity_Framework.WaitingList()
                    {
                        PatientId = patientId, Date = DateTime.Today.Date, Time = timeSpan, VisitId = getVisit.Id, VisitCount = getVisit.VisitCount, Visit = getVisit, Number = getlastWaiting.Number + 1
                    };
                    _db.WaitingLists.Add(insertWaitingList);
                }
                else
                {
                    var insertWaitingList = new Hospital_Entity_Framework.WaitingList()
                    {
                        PatientId = patientId, Date = DateTime.Today.Date, Time = timeSpan, VisitId = getVisit.Id, VisitCount = getVisit.VisitCount, Visit = getVisit, Number = 1
                    };
                    _db.WaitingLists.Add(insertWaitingList);
                }
                _db.SaveChanges();
                var checkTempWait = _db.TempWaits.Where(v => v.PatientId == patientId).ToList();

                foreach (var item in checkTempWait)
                {
                    if (item.ServiceName == "Consultation")
                    {
                        var insert = _db.ConsultationCategories.First(v => v.Id == item.CategoryId);

                        _db.WaitingLists.First(v => v.PatientId == patientId).ConsultationCategories.Add(insert);
                    }
                    if (item.ServiceName == "Laboratory")
                    {
                        var insert = _db.LaboratoryCategories.First(v => v.Id == item.CategoryId);

                        _db.WaitingLists.First(v => v.PatientId == patientId).LaboratoryCategories.Add(insert);
                    }
                    if (item.ServiceName == "MedicalImaging")
                    {
                        var insert = _db.MedicalImagingCategories.First(v => v.Id == item.CategoryId);

                        _db.WaitingLists.First(v => v.PatientId == patientId).MedicalImagingCategories.Add(insert);
                    }
                    if (item.ServiceName == "Prescription")
                    {
                        var insert = _db.PrescriptionCategories.First(v => v.Id == item.CategoryId);

                        _db.WaitingLists.First(v => v.PatientId == patientId).PrescriptionCategories.Add(insert);
                    }
                    if (item.ServiceName == "VariousDocument")
                    {
                        var insert = _db.VariousDocumentCategories.First(v => v.Id == item.CategoryId);

                        _db.WaitingLists.First(v => v.PatientId == patientId).VariousDocumentCategories.Add(insert);
                    }
                }
                _db.SaveChanges();
                ClearTemp(patientId);
                CheckVisitCount(patientId);
                checkInsForm.Show();
                checkInsForm.ClearControl();
                checkInsForm.WaitingList = _db.WaitingLists.Where(v => v.VisitId == getVisit.Id).Single(v => v.PatientId == patientId);
            }
            else
            {
                MessageBox.Show(@"Please select any category and service.", @"Error selection");
            }
        }
コード例 #2
0
ファイル: Login.cs プロジェクト: YNSANEF/PatientManagement
        private void OpenForm(object sender, EventArgs e)
        {
            var btn  = (Button)sender;
            var text = btn.Text;

            CatelogForm form = null;

            if (Application.OpenForms.OfType <CatelogForm>().Count() != 0)
            {
                form = Application.OpenForms.OfType <CatelogForm>().LastOrDefault();
            }
            if (form != null)
            {
                var gbo = form.pnlFill;
                form.Skip = true;
                gbo.Controls.Clear();

                if (text == "Worker")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <WorkerListForm>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <WorkerListForm>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                            var selectionForm = new WorkerListForm()
                            {
                                TopLevel    = false,
                                Dock        = DockStyle.Fill,
                                AutoScroll  = true,
                                CatelogForm = form
                            };
                            gbo.Controls.Add(selectionForm);
                            selectionForm.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new WorkerListForm()
                        {
                            TopLevel    = false,
                            Dock        = DockStyle.Fill,
                            AutoScroll  = true,
                            CatelogForm = form
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "Category")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <Category>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <Category>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                        }
                        var selectionForm = new Category()
                        {
                            TopLevel   = false,
                            Dock       = DockStyle.Fill,
                            AutoScroll = true
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new Category()
                        {
                            TopLevel   = false,
                            Dock       = DockStyle.Fill,
                            AutoScroll = true
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "Patient")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <PatientListForm>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <PatientListForm>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                            var selectionForm = new PatientListForm()
                            {
                                TopLevel    = false,
                                Dock        = DockStyle.Fill,
                                AutoScroll  = true,
                                Account     = _account,
                                CatelogForm = form
                            };
                            gbo.Controls.Add(selectionForm);
                            selectionForm.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}

                    else
                    {
                        var selectionForm = new PatientListForm()
                        {
                            TopLevel    = false,
                            Dock        = DockStyle.Fill,
                            AutoScroll  = true,
                            Account     = _account,
                            CatelogForm = form
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "CheckIn")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <CheckInsForm>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <CheckInsForm>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                            var selectionForm = new CheckInsForm
                            {
                                TopLevel   = false,
                                Dock       = DockStyle.Fill,
                                AutoScroll = true
                            };
                            gbo.Controls.Add(selectionForm);
                            selectionForm.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new CheckInsForm
                        {
                            TopLevel   = false,
                            Dock       = DockStyle.Fill,
                            AutoScroll = true
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "Sample")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <SamplesForm>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <SamplesForm>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                            var selectionForm = new SamplesForm()
                            {
                                TopLevel   = false,
                                Dock       = DockStyle.Fill,
                                AutoScroll = true,
                                Account    = _account
                            };
                            gbo.Controls.Add(selectionForm);
                            selectionForm.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new SamplesForm()
                        {
                            TopLevel   = false,
                            Dock       = DockStyle.Fill,
                            AutoScroll = true,
                            Account    = _account
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "Management")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <Managements>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <Managements>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                            var selectionForm = new Managements()
                            {
                                TopLevel   = false,
                                Dock       = DockStyle.Fill,
                                AutoScroll = true
                            };
                            gbo.Controls.Add(selectionForm);
                            selectionForm.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new Managements()
                        {
                            TopLevel   = false,
                            Dock       = DockStyle.Fill,
                            AutoScroll = true
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "Medical")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <MedicalsForm>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <MedicalsForm>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            gbo.Controls.Add(firstOrDefault);
                            firstOrDefault.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new MedicalsForm()
                        {
                            TopLevel    = false,
                            Dock        = DockStyle.Fill,
                            AutoScroll  = true,
                            Account     = _account,
                            CatelogForm = form
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "WaitingList")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <WaitingForm>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <WaitingForm>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                            var selectionForm = new WaitingForm()
                            {
                                TopLevel    = false,
                                Dock        = DockStyle.Fill,
                                AutoScroll  = true,
                                Account     = _account,
                                CatelogForm = form
                            };
                            gbo.Controls.Add(selectionForm);
                            selectionForm.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new WaitingForm()
                        {
                            TopLevel    = false,
                            Dock        = DockStyle.Fill,
                            AutoScroll  = true,
                            Account     = _account,
                            CatelogForm = form
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
                if (text == "Report")
                {
                    if (Application.OpenForms.OfType <HistorysForm>().Count() != 0)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <HistorysForm>().LastOrDefault();
                        if (firstOrDefault != null)
                        {
                            if (firstOrDefault.NewMedical || firstOrDefault.Editing)
                            {
                                var result = MessageBox.Show(@"Do you really want to leave this? leaving this document will delete all your current work.", @"Leave", MessageBoxButtons.YesNo);
                                if (result == DialogResult.No)
                                {
                                    gbo.Controls.Add(firstOrDefault);
                                    firstOrDefault.CatelogForm.Skip = false;
                                    firstOrDefault.Show();
                                    return;
                                }
                                if (result == DialogResult.Yes)
                                {
                                    firstOrDefault.Close();
                                }
                            }
                        }
                    }
                    if (Application.OpenForms.OfType <WaitingForm>().Count() == 1)
                    {
                        var firstOrDefault = Application.OpenForms.OfType <WaitingForm>().FirstOrDefault();
                        if (firstOrDefault != null)
                        {
                            firstOrDefault.Close();
                            var selectionForm = new Report()
                            {
                                TopLevel   = false,
                                Dock       = DockStyle.Fill,
                                AutoScroll = true,
                            };
                            gbo.Controls.Add(selectionForm);
                            selectionForm.Show();
                        }
                    }
                    //if (Application.OpenForms.OfType<MedicalsForm>().Count() == 1)
                    //{
                    //    var firstOrDefault = Application.OpenForms.OfType<MedicalsForm>().FirstOrDefault();
                    //    if (firstOrDefault != null)
                    //    {
                    //        firstOrDefault.Clear();
                    //        firstOrDefault.Close();
                    //    }
                    //}
                    else
                    {
                        var selectionForm = new Report()
                        {
                            TopLevel   = false,
                            Dock       = DockStyle.Fill,
                            AutoScroll = true,
                        };
                        gbo.Controls.Add(selectionForm);
                        selectionForm.Show();
                    }
                }
            }
        }