示例#1
0
        /*private void buttonEmail_Click(object sender,EventArgs e) {
         *      int CurPatNum=CaseCur.PatNum;
         *      EmailMessage message=new EmailMessage();
         *      message.PatNum=CurPatNum;
         *      Patient pat=Patients.GetPat(CurPatNum);
         *      message.ToAddress="";//pat.Email;
         *      message.FromAddress=PrefC.GetString(PrefName.EmailSenderAddress");
         *      message.Subject=Lan.g(this,"RE: ")+pat.GetNameFL();
         *      FormEmailMessageEdit FormE=new FormEmailMessageEdit(message);
         *      FormE.IsNew=true;
         *      FormE.ShowDialog();
         *
         * }*/

        private void butSlip_Click(object sender, EventArgs e)
        {
            if (sheet == null)           //create new
            {
                if (!SaveToDb())
                {
                    return;
                }
                Laboratory lab = ListLabs[listLab.SelectedIndex];
                SheetDef   sheetDef;
                if (lab.Slip == 0)
                {
                    sheetDef = SheetsInternal.GetSheetDef(SheetInternalType.LabSlip);
                }
                else
                {
                    sheetDef = SheetDefs.GetSheetDef(lab.Slip);
                }
                sheet = SheetUtil.CreateSheet(sheetDef, CaseCur.PatNum);
                SheetParameter.SetParameter(sheet, "PatNum", CaseCur.PatNum);
                SheetParameter.SetParameter(sheet, "LabCaseNum", CaseCur.LabCaseNum);
                SheetFiller.FillFields(sheet);
                SheetUtil.CalculateHeights(sheet, this.CreateGraphics());
                FormSheetFillEdit FormS = new FormSheetFillEdit(sheet);
                FormS.ShowDialog();
                //if(FormS.DialogResult!=DialogResult.OK) {
                //	sheet=null;
                //	return;
                //}
            }
            else              //edit existing
            {
                SheetFields.GetFieldsAndParameters(sheet);
                FormSheetFillEdit FormS = new FormSheetFillEdit(sheet);
                FormS.ShowDialog();
                //if(FormS.DialogResult!=DialogResult.OK) {
                //	return;
                //}
            }
            //refresh
            sheet = Sheets.GetLabSlip(CaseCur.PatNum, CaseCur.LabCaseNum);
            if (sheet == null)
            {
                butSlip.Text = Lan.g(this, "New Slip");
            }
            else
            {
                butSlip.Text = Lan.g(this, "Edit Slip");
            }
        }
示例#2
0
        /*private void buttonEmail_Click(object sender,EventArgs e) {
         *      int CurPatNum=CaseCur.PatNum;
         *      EmailMessage message=new EmailMessage();
         *      message.PatNum=CurPatNum;
         *      Patient pat=Patients.GetPat(CurPatNum);
         *      message.ToAddress="";//pat.Email;
         *      message.FromAddress=PrefC.GetString(PrefName.EmailSenderAddress");
         *      message.Subject=Lan.g(this,"RE: ")+pat.GetNameFL();
         *      FormEmailMessageEdit FormE=new FormEmailMessageEdit(message);
         *      FormE.IsNew=true;
         *      FormE.ShowDialog();
         *
         * }*/

        private void butSlip_Click(object sender, EventArgs e)
        {
            if (sheet == null)           //create new
            {
                if (!SaveToDb())
                {
                    return;
                }
                Laboratory lab = ListLabs[listLab.SelectedIndex];
                SheetDef   sheetDef;
                if (lab.Slip == 0)
                {
                    sheetDef = SheetsInternal.GetSheetDef(SheetInternalType.LabSlip);
                }
                else
                {
                    sheetDef = SheetDefs.GetSheetDef(lab.Slip);
                }
                sheet = SheetUtil.CreateSheet(sheetDef, CaseCur.PatNum);
                SheetParameter.SetParameter(sheet, "PatNum", CaseCur.PatNum);
                SheetParameter.SetParameter(sheet, "LabCaseNum", CaseCur.LabCaseNum);
                SheetFiller.FillFields(sheet);
                SheetUtil.CalculateHeights(sheet, this.CreateGraphics());
                FormSheetFillEdit FormS = new FormSheetFillEdit(sheet);
                FormS.ShowDialog();
            }
            else              //edit existing
            {
                SheetFields.GetFieldsAndParameters(sheet);
                FormSheetFillEdit FormS = new FormSheetFillEdit(sheet);
                FormS.ShowDialog();
            }
            //refresh
            sheet = Sheets.GetLabSlip(CaseCur.PatNum, CaseCur.LabCaseNum);
            if (sheet == null)
            {
                butSlip.Text = Lan.g(this, "New Slip");
            }
            else
            {
                butSlip.Text      = Lan.g(this, "Edit Slip");
                butCancel.Enabled = false;              //user can still click X to close window, but we do handle that as well.
            }
        }
示例#3
0
        private void FormLabCaseEdit_Load(object sender, System.EventArgs e)
        {
            textPatient.Text = Patients.GetPat(CaseCur.PatNum).GetNameFL();
            ListLabs         = Laboratories.Refresh();
            for (int i = 0; i < ListLabs.Count; i++)
            {
                listLab.Items.Add(ListLabs[i].Description + " " + ListLabs[i].Phone);
                if (ListLabs[i].LaboratoryNum == CaseCur.LaboratoryNum)
                {
                    listLab.SelectedIndex = i;
                }
            }
            for (int i = 0; i < ProviderC.ListShort.Count; i++)
            {
                comboProv.Items.Add(ProviderC.ListShort[i].Abbr);
                if (ProviderC.ListShort[i].ProvNum == CaseCur.ProvNum)
                {
                    comboProv.SelectedIndex = i;
                }
            }
            Appointment apt = Appointments.GetOneApt(CaseCur.AptNum);

            if (apt != null)
            {
                if (apt.AptStatus == ApptStatus.UnschedList)
                {
                    textAppointment.Text = Lan.g(this, "Unscheduled");
                }
                else
                {
                    textAppointment.Text = apt.AptDateTime.ToShortDateString() + " " + apt.AptDateTime.ToShortTimeString();
                }
                textAppointment.Text += ", " + apt.ProcDescript;
            }
            apt = Appointments.GetOneApt(CaseCur.PlannedAptNum);
            if (apt != null)
            {
                textPlanned.Text = apt.ProcDescript;
                if (textPlanned.Text == "")
                {
                    textPlanned.Text = Lan.g(this, "Attached");
                }
            }
            if (CaseCur.DateTimeCreated.Year > 1880)
            {
                textDateCreated.Text = CaseCur.DateTimeCreated.ToString();
            }
            if (CaseCur.DateTimeSent.Year > 1880)
            {
                textDateSent.Text = CaseCur.DateTimeSent.ToString();
            }
            if (CaseCur.DateTimeRecd.Year > 1880)
            {
                textDateRecd.Text = CaseCur.DateTimeRecd.ToString();
            }
            if (CaseCur.DateTimeChecked.Year > 1880)
            {
                textDateChecked.Text = CaseCur.DateTimeChecked.ToString();
            }
            if (CaseCur.DateTimeDue.Year > 1880)
            {
                textDateDue.Text = CaseCur.DateTimeDue.ToShortDateString() + " " + CaseCur.DateTimeDue.ToShortTimeString();
            }
            textInstructions.Text = CaseCur.Instructions;
            sheet = Sheets.GetLabSlip(CaseCur.PatNum, CaseCur.LabCaseNum);
            if (sheet == null)
            {
                butSlip.Text = Lan.g(this, "New Slip");
            }
            else
            {
                butSlip.Text = Lan.g(this, "Edit Slip");
            }
        }
示例#4
0
        private void FormLabCaseEdit_Load(object sender, System.EventArgs e)
        {
            if (Plugins.HookMethod(this, "FormLabCaseEdit.Load_start", CaseCur, IsNew))
            {
                return;
            }
            if (CaseCur == null)
            {
                MsgBox.Show(this, "Lab case no longer exists.");
                DialogResult = DialogResult.Abort;              //Results in form closing logic
                return;
            }
            Patient pat = Patients.GetPat(CaseCur.PatNum);

            //If pat is null, this can trickle down and allow the user to create a lab sheet with a FK to an invalid Patient.
            if (pat == null)
            {
                MsgBox.Show(this, "There is no valid Patient attached to this Labcase.");
                DialogResult = DialogResult.Abort;              //Results in form closing logic
                return;
            }
            textPatient.Text = pat.GetNameFL();
            ListLabs         = Laboratories.Refresh();
            //Include the current lab, even if it is hidden.
            ListLabs = ListLabs.Where(x => x.LaboratoryNum == CaseCur.LaboratoryNum || !x.IsHidden).ToList();
            for (int i = 0; i < ListLabs.Count; i++)
            {
                listLab.Items.Add(ListLabs[i].Description + " " + ListLabs[i].Phone);
                if (ListLabs[i].LaboratoryNum == CaseCur.LaboratoryNum)
                {
                    listLab.SelectedIndex = i;
                }
            }
            _listProviders = Providers.GetDeepCopy(true);
            for (int i = 0; i < _listProviders.Count; i++)
            {
                comboProv.Items.Add(_listProviders[i].Abbr);
                if (_listProviders[i].ProvNum == CaseCur.ProvNum)
                {
                    comboProv.SelectedIndex = i;
                }
            }
            Appointment apt = Appointments.GetOneApt(CaseCur.AptNum);

            if (apt != null)
            {
                if (apt.AptStatus == ApptStatus.UnschedList)
                {
                    textAppointment.Text = Lan.g(this, "Unscheduled");
                }
                else
                {
                    textAppointment.Text = apt.AptDateTime.ToShortDateString() + " " + apt.AptDateTime.ToShortTimeString();
                }
                textAppointment.Text += ", " + apt.ProcDescript;
            }
            apt = Appointments.GetOneApt(CaseCur.PlannedAptNum);
            if (apt != null)
            {
                textPlanned.Text = apt.ProcDescript;
                if (textPlanned.Text == "")
                {
                    textPlanned.Text = Lan.g(this, "Attached");
                }
            }
            if (CaseCur.DateTimeCreated.Year > 1880)
            {
                textDateCreated.Text = CaseCur.DateTimeCreated.ToString();
            }
            if (CaseCur.DateTimeSent.Year > 1880)
            {
                textDateSent.Text = CaseCur.DateTimeSent.ToString();
            }
            if (CaseCur.DateTimeRecd.Year > 1880)
            {
                textDateRecd.Text = CaseCur.DateTimeRecd.ToString();
            }
            if (CaseCur.DateTimeChecked.Year > 1880)
            {
                textDateChecked.Text = CaseCur.DateTimeChecked.ToString();
            }
            if (CaseCur.DateTimeDue.Year > 1880)
            {
                textDateDue.Text = CaseCur.DateTimeDue.ToShortDateString() + " " + CaseCur.DateTimeDue.ToShortTimeString();
            }
            textInstructions.Text = CaseCur.Instructions;
            textLabFee.Text       = CaseCur.LabFee.ToString("n");
            sheet = Sheets.GetLabSlip(CaseCur.PatNum, CaseCur.LabCaseNum);
            if (sheet == null)
            {
                butSlip.Text = Lan.g(this, "New Slip");
            }
            else
            {
                butSlip.Text = Lan.g(this, "Edit Slip");
            }
            textInvoiceNumber.Text = CaseCur.InvoiceNum;
            Plugins.HookAddCode(this, "FormLabCaseEdit.Load_end", CaseCur, IsNew);
        }