Exemplo n.º 1
0
        private void FillData()
        {
            Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum);

            textName.Text        = referral.LName + ", " + referral.FName + " " + referral.MName;
            checkPatient.Checked = referral.PatNum > 0;
            textNotes.Text       = referral.Note;
            if (RefAttachCur.IsFrom)
            {
                radioFrom.Checked = true;
            }
            else
            {
                radioTo.Checked = true;
            }
            if (RefAttachCur.RefDate.CompareTo(new DateTime(1880, 1, 1)) < 0)
            {
                textRefDate.Text = "";
            }
            else
            {
                textRefDate.Text = RefAttachCur.RefDate.ToShortDateString();
            }
            textOrder.Text = RefAttachCur.ItemOrder.ToString();
        }
Exemplo n.º 2
0
        private void butSlip_Click(object sender, EventArgs e)
        {
            int idx = gridMain.GetSelectedIndex();

            if (idx == -1)
            {
                MsgBox.Show(this, "Please select a referral first");
                return;
            }
            Referral referral = Referrals.GetReferral(RefAttachList[idx].ReferralNum);
            SheetDef sheetDef;

            if (referral.Slip == 0)
            {
                sheetDef = SheetsInternal.GetSheetDef(SheetInternalType.ReferralSlip);
            }
            else
            {
                sheetDef = SheetDefs.GetSheetDef(referral.Slip);
            }
            Sheet sheet = SheetUtil.CreateSheet(sheetDef, PatNum);

            SheetParameter.SetParameter(sheet, "PatNum", PatNum);
            SheetParameter.SetParameter(sheet, "ReferralNum", referral.ReferralNum);
            SheetFiller.FillFields(sheet);
            SheetUtil.CalculateHeights(sheet, this.CreateGraphics());
            FormSheetFillEdit FormS = new FormSheetFillEdit(sheet);

            FormS.ShowDialog();
            //grid will not be refilled, so no need to reselect.
        }
Exemplo n.º 3
0
        private void FillData()
        {
            Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum);

            textName.Text          = referral.LName + ", " + referral.FName + " " + referral.MName;
            checkPatient.Checked   = referral.PatNum > 0;
            textReferralNotes.Text = referral.Note;
            if (RefAttachCur.IsFrom)
            {
                radioFrom.Checked = true;
            }
            else
            {
                radioTo.Checked = true;
            }
            if (RefAttachCur.RefDate.CompareTo(new DateTime(1880, 1, 1)) < 0)
            {
                textRefDate.Text = "";
            }
            else
            {
                textRefDate.Text = RefAttachCur.RefDate.ToShortDateString();
            }
            textOrder.Text = RefAttachCur.ItemOrder.ToString();
            comboRefToStatus.Items.Clear();
            for (int i = 0; i < Enum.GetNames(typeof(ReferralToStatus)).Length; i++)
            {
                comboRefToStatus.Items.Add(Lan.g("enumReferralToStatus", Enum.GetNames(typeof(ReferralToStatus))[i]));
                if ((int)RefAttachCur.RefToStatus == i)
                {
                    comboRefToStatus.SelectedIndex = i;
                }
            }
            textNote.Text = RefAttachCur.Note;
        }
Exemplo n.º 4
0
        private void butEdit_Click(object sender, System.EventArgs e)
        {
            Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum);
            //if(referral.PatNum > 0){//moved to inside the class
            //	FormRE.IsPatient=true;
            //}
            FormReferralEdit FormRE = new FormReferralEdit(referral);

            FormRE.ShowDialog();
            Referrals.Refresh();
            FillData();
        }
Exemplo n.º 5
0
        private void FillData()
        {
            Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum);

            textName.Text          = referral.GetNameFL();
            labelPatient.Visible   = referral.PatNum > 0;
            textReferralNotes.Text = referral.Note;
            if (RefAttachCur.IsFrom)
            {
                listFromTo.SelectedIndex = 0;
            }
            else
            {
                listFromTo.SelectedIndex = 1;
            }
            if (RefAttachCur.RefDate.Year < 1880)
            {
                textRefDate.Text = "";
            }
            else
            {
                textRefDate.Text = RefAttachCur.RefDate.ToShortDateString();
            }
            textOrder.Text = RefAttachCur.ItemOrder.ToString();
            comboRefToStatus.Items.Clear();
            for (int i = 0; i < Enum.GetNames(typeof(ReferralToStatus)).Length; i++)
            {
                comboRefToStatus.Items.Add(Lan.g("enumReferralToStatus", Enum.GetNames(typeof(ReferralToStatus))[i]));
                if ((int)RefAttachCur.RefToStatus == i)
                {
                    comboRefToStatus.SelectedIndex = i;
                }
            }
            textNote.Text = RefAttachCur.Note;
            checkIsTransitionOfCare.Checked = RefAttachCur.IsTransitionOfCare;
            textProc.Text = "";
            if (RefAttachCur.ProcNum != 0)
            {
                Procedure proc = Procedures.GetOneProc(RefAttachCur.ProcNum, false);
                textProc.Text = Procedures.GetDescription(proc);
            }
            if (RefAttachCur.DateProcComplete.Year < 1880)
            {
                textDateProcCompleted.Text = "";
            }
            else
            {
                textDateProcCompleted.Text = RefAttachCur.DateProcComplete.ToShortDateString();
            }
        }
Exemplo n.º 6
0
        private void butEdit_Click(object sender, System.EventArgs e)
        {
            try{
                SaveData();
            }
            catch (ApplicationException ex) {
                MessageBox.Show(ex.Message);
                return;
            }
            Referral         referral = Referrals.GetReferral(RefAttachCur.ReferralNum);
            FormReferralEdit FormRE   = new FormReferralEdit(referral);

            FormRE.ShowDialog();
            Referrals.Refresh();
            FillData();
        }
Exemplo n.º 7
0
        ///<summary>Pass in all the refattaches for the patient.  This funtion finds the first referral from a Dr and returns that Dr's name.  Used in specialty practices.  Function is only used right now in the Dr. Ceph bridge.</summary>
        public static string GetReferringDr(RefAttach[] attachList)
        {
            if (attachList.Length == 0)
            {
                return("");
            }
            if (!attachList[0].IsFrom)
            {
                return("");
            }
            Referral referral = Referrals.GetReferral(attachList[0].ReferralNum);

            if (referral.PatNum != 0)
            {
                return("");
            }
            string retVal = referral.FName + " " + referral.MName + " " + referral.LName;

            if (referral.Title != "")
            {
                retVal += ", " + referral.Title;
            }
            return(retVal);
        }
Exemplo n.º 8
0
        private void butPrint_Click(object sender, EventArgs e)
        {
            if (!TryToSaveData())
            {
                return;
            }
            SheetCur = Sheets.GetSheet(SheetCur.SheetNum);
            //whether this is a new sheet, or one pulled from the database,
            //it will have the extra parameter we are looking for.
            //A new sheet will also have a PatNum parameter which we will ignore.
            FormSheetOutputFormat FormS = new FormSheetOutputFormat();

            if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip ||
                SheetCur.SheetType == SheetTypeEnum.ReferralLetter)
            {
                FormS.PaperCopies = 2;
            }
            else
            {
                FormS.PaperCopies = 1;
            }
            if (SheetCur.PatNum != 0 &&
                SheetCur.SheetType != SheetTypeEnum.DepositSlip)
            {
                Patient pat = Patients.GetPat(SheetCur.PatNum);
                if (SheetCur.SheetType == SheetTypeEnum.LabSlip)
                {
                    FormS.IsForLab = true;                  //Changes label to "E-mail to Lab:"
                }
                else if (pat.Email != "")
                {
                    FormS.EmailPatOrLabAddress = pat.Email;
                    //No need to email to a patient for sheet types: LabelPatient (0), LabelCarrier (1), LabelReferral (2), ReferralSlip (3), LabelAppointment (4), Rx (5), Consent (6), ReferralLetter (8), ExamSheet (13), DepositSlip (14)
                    //The data is too private to email unencrypted for sheet types: PatientForm (9), RoutingSlip (10), MedicalHistory (11), LabSlip (12)
                    //A patient might want email for the following sheet types and the data is not very private: PatientLetter (7)
                    if (SheetCur.SheetType == SheetTypeEnum.PatientLetter)
                    {
                        //This just defines the default selection. The user can manually change selections in FormSheetOutputFormat.
                        FormS.EmailPatOrLab = true;
                        FormS.PaperCopies--;
                    }
                }
            }
            Referral referral = null;

            if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip ||
                SheetCur.SheetType == SheetTypeEnum.ReferralLetter)
            {
                FormS.Email2Visible = true;
                SheetParameter parameter = SheetParameter.GetParamByName(SheetCur.Parameters, "ReferralNum");
                if (parameter == null)              //it can be null sometimes because of old bug in db.
                {
                    FormS.Email2Visible = false;    //prevents trying to attach email to nonexistent referral.
                }
                else
                {
                    long referralNum = PIn.Long(parameter.ParamValue.ToString());
                    referral = Referrals.GetReferral(referralNum);
                    if (referral.EMail != "")
                    {
                        FormS.Email2Address = referral.EMail;
                        FormS.Email2        = true;
                        FormS.PaperCopies--;
                    }
                }
            }
            else
            {
                FormS.Email2Visible = false;
            }
            FormS.ShowDialog();
            if (FormS.DialogResult != DialogResult.OK)
            {
                return;
            }
            if (FormS.PaperCopies > 0)
            {
                SheetPrinting.Print(SheetCur, FormS.PaperCopies, RxIsControlled);
            }
            EmailMessage message;
            Random       rnd        = new Random();
            string       attachPath = EmailMessages.GetEmailAttachPath();
            string       fileName;
            string       filePathAndName;
            EmailAddress emailAddress;
            Patient      patCur = Patients.GetPat(SheetCur.PatNum);

            if (patCur == null)
            {
                emailAddress = EmailAddresses.GetByClinic(0);
            }
            else
            {
                emailAddress = EmailAddresses.GetByClinic(patCur.ClinicNum);
            }
            //Graphics g=this.CreateGraphics();
            if (FormS.EmailPatOrLab)
            {
                fileName        = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf";
                filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName);
                SheetPrinting.CreatePdf(SheetCur, filePathAndName);
                //Process.Start(filePathAndName);
                message             = new EmailMessage();
                message.PatNum      = SheetCur.PatNum;
                message.ToAddress   = FormS.EmailPatOrLabAddress;
                message.FromAddress = emailAddress.SenderAddress;              //Can be blank just as it could with the old pref.
                message.Subject     = SheetCur.Description.ToString();         //this could be improved
                EmailAttach attach        = new EmailAttach();
                string      shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w'@-_()&]", "");
                attach.DisplayedFileName = shortFileName + ".pdf";
                attach.ActualFileName    = fileName;
                message.Attachments.Add(attach);
                FormEmailMessageEdit FormE = new FormEmailMessageEdit(message);
                FormE.IsNew = true;
                FormE.ShowDialog();
            }
            if ((SheetCur.SheetType == SheetTypeEnum.ReferralSlip ||
                 SheetCur.SheetType == SheetTypeEnum.ReferralLetter) &&
                FormS.Email2)
            {
                //email referral
                fileName        = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf";
                filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName);
                SheetPrinting.CreatePdf(SheetCur, filePathAndName);
                //Process.Start(filePathAndName);
                message             = new EmailMessage();
                message.PatNum      = SheetCur.PatNum;
                message.ToAddress   = FormS.Email2Address;
                message.FromAddress = emailAddress.SenderAddress;                                         //Can be blank just as it could with the old pref.
                message.Subject     = Lan.g(this, "RE: ") + Patients.GetLim(SheetCur.PatNum).GetNameLF(); //works even if patnum invalid
                //SheetCur.Description.ToString()+" to "+Referrals.GetNameFL(referral.ReferralNum);//this could be improved
                EmailAttach attach        = new EmailAttach();
                string      shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w,'@-_()&]", "");
                attach.DisplayedFileName = shortFileName + ".pdf";
                attach.ActualFileName    = fileName;
                message.Attachments.Add(attach);
                FormEmailMessageEdit FormE = new FormEmailMessageEdit(message);
                FormE.IsNew = true;
                FormE.ShowDialog();
            }
            //g.Dispose();
            DialogResult = DialogResult.OK;
        }
Exemplo n.º 9
0
        private void FillGrid()
        {
            RefAttachList = RefAttaches.RefreshFiltered(PatNum, checkShowAll.Checked, ProcNum);
            gridMain.BeginUpdate();
            gridMain.Columns.Clear();
            ODGridColumn col = new ODGridColumn(Lan.g("TableRefList", "From/To"), 50);

            gridMain.Columns.Add(col);
            col = new ODGridColumn(Lan.g("TableRefList", "Name"), 120);
            gridMain.Columns.Add(col);
            col = new ODGridColumn(Lan.g("TableRefList", "Date"), 70);
            gridMain.Columns.Add(col);
            col = new ODGridColumn(Lan.g("TableRefList", "Status"), 90);
            gridMain.Columns.Add(col);
            col = new ODGridColumn(Lan.g("TableRefList", "Proc"), 120);
            gridMain.Columns.Add(col);
            col = new ODGridColumn(Lan.g("TableRefList", "Note"), 200);
            gridMain.Columns.Add(col);
            col = new ODGridColumn(Lan.g("TableRefList", "Email"), 120);
            gridMain.Columns.Add(col);
            gridMain.Rows.Clear();
            ODGridRow row;

            //Referral referral;
            for (int i = 0; i < RefAttachList.Count; i++)
            {
                row = new ODGridRow();
                if (RefAttachList[i].IsFrom)
                {
                    row.Cells.Add(Lan.g(this, "From"));
                }
                else
                {
                    row.Cells.Add(Lan.g(this, "To"));
                }
                row.Cells.Add(Referrals.GetNameFL(RefAttachList[i].ReferralNum));
                //referral=ReferralL.GetReferral(RefAttachList[i].ReferralNum);
                if (RefAttachList[i].RefDate.Year < 1880)
                {
                    row.Cells.Add("");
                }
                else
                {
                    row.Cells.Add(RefAttachList[i].RefDate.ToShortDateString());
                }
                row.Cells.Add(Lan.g("enumReferralToStatus", RefAttachList[i].RefToStatus.ToString()));
                if (RefAttachList[i].ProcNum == 0)
                {
                    row.Cells.Add("");
                }
                else
                {
                    Procedure proc = Procedures.GetOneProc(RefAttachList[i].ProcNum, false);
                    string    str  = Procedures.GetDescription(proc);
                    row.Cells.Add(str);
                }
                row.Cells.Add(RefAttachList[i].Note);
                Referral referral = Referrals.GetReferral(RefAttachList[i].ReferralNum);
                row.Cells.Add(referral.EMail);
                gridMain.Rows.Add(row);
            }
            gridMain.EndUpdate();
        }
Exemplo n.º 10
0
        private void butPrint_Click(object sender, EventArgs e)
        {
            if (!TryToSaveData())
            {
                return;
            }
            SheetCur = Sheets.GetSheet(SheetCur.SheetNum);
            //whether this is a new sheet, or one pulled from the database,
            //it will have the extra parameter we are looking for.
            //A new sheet will also have a PatNum parameter which we will ignore.
            FormSheetOutputFormat FormS = new FormSheetOutputFormat();

            if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip ||
                SheetCur.SheetType == SheetTypeEnum.ReferralLetter)
            {
                FormS.PaperCopies = 2;
            }
            else
            {
                FormS.PaperCopies = 1;
            }
            if (SheetCur.PatNum != 0 &&
                SheetCur.SheetType != SheetTypeEnum.DepositSlip)
            {
                Patient pat = Patients.GetPat(SheetCur.PatNum);
                if (SheetCur.SheetType == SheetTypeEnum.LabSlip)
                {
                    FormS.IsForLab = true;                  //Changes label to "E-mail to Lab:"
                }
                else if (pat.Email != "")
                {
                    FormS.EmailPatOrLabAddress = pat.Email;
                    FormS.EmailPatOrLab        = true;
                    FormS.PaperCopies--;
                }
            }
            Referral referral = null;

            if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip ||
                SheetCur.SheetType == SheetTypeEnum.ReferralLetter)
            {
                FormS.Email2Visible = true;
                SheetParameter parameter = SheetParameter.GetParamByName(SheetCur.Parameters, "ReferralNum");
                if (parameter == null)              //it can be null sometimes because of old bug in db.
                {
                    FormS.Email2Visible = false;    //prevents trying to attach email to nonexistent referral.
                }
                else
                {
                    long referralNum = PIn.Long(parameter.ParamValue.ToString());
                    referral = Referrals.GetReferral(referralNum);
                    if (referral.EMail != "")
                    {
                        FormS.Email2Address = referral.EMail;
                        FormS.Email2        = true;
                        FormS.PaperCopies--;
                    }
                }
            }
            else
            {
                FormS.Email2Visible = false;
            }
            FormS.ShowDialog();
            if (FormS.DialogResult != DialogResult.OK)
            {
                return;
            }
            if (FormS.PaperCopies > 0)
            {
                SheetPrinting.Print(SheetCur, FormS.PaperCopies, RxIsControlled);
            }
            EmailMessage message;
            Random       rnd        = new Random();
            string       attachPath = FormEmailMessageEdit.GetAttachPath();
            string       fileName;
            string       filePathAndName;

            //Graphics g=this.CreateGraphics();
            if (FormS.EmailPatOrLab)
            {
                fileName        = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf";
                filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName);
                SheetPrinting.CreatePdf(SheetCur, filePathAndName);
                //Process.Start(filePathAndName);
                message             = new EmailMessage();
                message.PatNum      = SheetCur.PatNum;
                message.ToAddress   = FormS.EmailPatOrLabAddress;
                message.FromAddress = PrefC.GetString(PrefName.EmailSenderAddress);
                message.Subject     = SheetCur.Description.ToString();          //this could be improved
                EmailAttach attach        = new EmailAttach();
                string      shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w'@-_()&]", "");
                attach.DisplayedFileName = shortFileName + ".pdf";
                attach.ActualFileName    = fileName;
                message.Attachments.Add(attach);
                FormEmailMessageEdit FormE = new FormEmailMessageEdit(message);
                FormE.IsNew = true;
                FormE.ShowDialog();
            }
            if ((SheetCur.SheetType == SheetTypeEnum.ReferralSlip ||
                 SheetCur.SheetType == SheetTypeEnum.ReferralLetter) &&
                FormS.Email2)
            {
                //email referral
                fileName        = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf";
                filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName);
                SheetPrinting.CreatePdf(SheetCur, filePathAndName);
                //Process.Start(filePathAndName);
                message             = new EmailMessage();
                message.PatNum      = SheetCur.PatNum;
                message.ToAddress   = FormS.Email2Address;
                message.FromAddress = PrefC.GetString(PrefName.EmailSenderAddress);
                message.Subject     = SheetCur.Description.ToString() + " to " + Referrals.GetNameFL(referral.ReferralNum);      //this could be improved
                EmailAttach attach        = new EmailAttach();
                string      shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w,'@-_()&]", "");
                attach.DisplayedFileName = shortFileName + ".pdf";
                attach.ActualFileName    = fileName;
                message.Attachments.Add(attach);
                FormEmailMessageEdit FormE = new FormEmailMessageEdit(message);
                FormE.IsNew = true;
                FormE.ShowDialog();
            }
            //g.Dispose();
            DialogResult = DialogResult.OK;
        }