コード例 #1
0
        private void InitializeOverrideState()
        {
            // 2 provider boxes and insurance groups box

            claim searchObject = new claim();

            cmbOverrideStateProviderID.Items.Clear();
            cmbOverrideStateProviderID.Items.Add("All");
            cmbOverrideStateNewProviderID.Items.Clear();

            claim.OverrideProviderList().ForEach(p =>
            {
                cmbOverrideStateProviderID.Items.Add(p.doctor_provider_id);
                cmbOverrideStateNewProviderID.Items.Add(p.doctor_provider_id);
            });

            insurance_company_group icgs = new insurance_company_group();

            DataTable allGroups = icgs.Search(icgs.SearchSQL + " ORDER BY name");

            foreach (DataRow aRow in allGroups.Rows)
            {
                cmbOverrideStateInsurance.Items.Add(new insurance_company_group(aRow));
            }
        }
コード例 #2
0
        /// <summary>
        /// Returns a list of all Insurance Company Groups and all Insurance Companies not in a group
        /// </summary>
        /// <returns></returns>
        internal List <Claims_Primary.InsuranceCompanyGroups> GetInsuranceCompaniesAsGroup()
        {
            List <Claims_Primary.InsuranceCompanyGroups> allGroups = new List <Claims_Primary.InsuranceCompanyGroups>();
            List <company>          companiesInAGroup = new List <company>();
            insurance_company_group icg = new insurance_company_group();

            foreach (DataRow aRow in icg.GetAllData("name").Rows)
            {
                Claims_Primary.InsuranceCompanyGroups newGroup = new Claims_Primary.InsuranceCompanyGroups();
                icg = new insurance_company_group(aRow);
                List <company> matchingComps = icg.GetMatchingCompanies();

                newGroup.Name      = icg.name;
                newGroup.Companies = matchingComps;
                newGroup.Group     = icg;
                allGroups.Add(newGroup);

                companiesInAGroup.AddRange(matchingComps);
            }

            DataTable companiesNotInGroup = icg.Search(string.Format("SELECT * FROM companies WHERE ID NOT IN ({0}) ORDER BY name", ClaimTrackerCommon.CompaniesToInString(companiesInAGroup)));

            foreach (DataRow aRow in companiesNotInGroup.Rows)
            {
                company c = new company(aRow);
                Claims_Primary.InsuranceCompanyGroups newGroup = new Claims_Primary.InsuranceCompanyGroups(c.name, c);

                allGroups.Add(newGroup);
            }

            allGroups.Sort(SortInsuranceGroupsByName);

            return(allGroups);
        }
コード例 #3
0
        private string BuildBasicSQL()
        {
            string toReturn = "SELECT c.id AS CLAIMID, cmp.id AS COMPANYID, cmp.name AS NAME FROM claims c " +
                              "LEFT JOIN Companies cmp ON c.company_id = cmp.id " +
                              "LEFT JOIN users u ON c.owner_id = u.id WHERE c.[open] = 1 ";

            // WHERE
            if (cmbBasicCarrierGroup.SelectedIndex > 0) // 0 = ALL
            {
                string carrierSQL           = "";
                insurance_company_group icg = (insurance_company_group)cmbBasicCarrierGroup.SelectedItem;


                foreach (insurance_company_groups_filters icgf in icg.Filters)
                {
                    if (icgf.filter_text.StartsWith("NOT ", StringComparison.OrdinalIgnoreCase))
                    {
                        if (carrierSQL.Length > 0)
                        {
                            carrierSQL += " AND";
                        }

                        carrierSQL += string.Format(" cmp.name NOT LIKE '{0}'", icgf.filter_text.Substring(4));
                    }
                    else
                    {
                        if (carrierSQL.Length > 0)
                        {
                            carrierSQL += " OR";
                        }

                        carrierSQL += string.Format(" cmp.name LIKE '{0}'", icgf.filter_text);
                    }
                }

                carrierSQL = " AND (" + carrierSQL + ")";

                toReturn += carrierSQL;
            }

            toReturn += BuildWherePatientName(txtBasicPatientName.Text, DataTypes.Text);
            toReturn += BuildWhereSingle("c.subscriber_group_number", txtBasicGroupNumber.Text, DataTypes.Text);
            toReturn += BuildWhereSingle("c.subscriber_group_name", txtBasicGroupName.Text, DataTypes.Text);

            if (cmbBasicClinic.SelectedIndex > 0) // 0 = all clinics
            {
                toReturn += " AND c.clinic_id = " + ((clinic)cmbBasicClinic.SelectedItem).id;
            }

            toReturn += " ORDER BY cmp.name, c.subscriber_group_name, c.patient_last_name, c.patient_first_name";

            return(toReturn);
        }
コード例 #4
0
        private void InitializeCarrierGroups()
        {
            insurance_company_group icg = new insurance_company_group();
            DataTable dt = icg.Search(icg.SearchSQL + " ORDER BY name");

            cmbBasicCarrierGroup.Items.Clear();

            cmbBasicCarrierGroup.Items.Add("");

            foreach (DataRow aGroup in dt.Rows)
            {
                icg = new insurance_company_group();
                icg.Load(aGroup);

                cmbBasicCarrierGroup.Items.Add(icg);
            }
        }
 private void thisRecordChanged(object sender, RecordChangedEventArgs e)
 {
     _linkedInsuranceCompanyGroup = null;
 }