Exemple #1
0
        public void setASCRate(Rate_ASCRateBO in_ASCRate)
        {
            ascRate = in_ASCRate;

            codesLbl.Text = "";
            if (ascRate.StandardCPTs)
            {	codesLbl.Text = "CPT: 10000 - 69999; ";	}

            codesLbl.Text += ascRate.Codes.ToString();

            loadGroupDisplay();

            loadEtcDisplay();
        }
        public Rate_Collection getRates(ref CodesManager codesMngr, int rateScheduleID)
        {
            // Fill out Rate Collection

            DataSet oDataSet = base.GetDataSet("SELECT * FROM Rate WHERE RateSchedSeqNum=" + rateScheduleID);

            Rate_Collection Rates = new Rate_Collection();
            RateDAL rateData = new RateDAL(ref codesMngr, rateScheduleID);

            Rate_ASCRateBO ascRate = new Rate_ASCRateBO();

            foreach(DataRow dRow in oDataSet.Tables[0].Rows)
            {
                // ASC Rates are handled as an exception
                if (dRow["RateCatgryDescr"].ToString() == "ASC")
                {
                    switch(dRow["RateTypeDescr"].ToString())
                    {
                        case "Main" :
                            ascRate.ID = Convert.ToInt32(dRow["RateSeqNum"]);
                            ascRate.RateScheduleID = Convert.ToInt32(dRow["RateSchedSeqNum"]);
                            ascRate.Name = "ASC Rates";

                            ascRate.RateCategory = dRow["RateCatgryDescr"].ToString();
                            ascRate.RateType = dRow["RateTypeDescr"].ToString();

                            ascRate.GroupTableID = Convert.ToInt16(dRow["RateValue"]);
                            ascRate.GroupName = dRow["RateName"].ToString();

                            ascRate.Priority = Convert.ToInt32(dRow["LOSNum"]);
                            ascRate.Threshold = Convert.ToDouble(dRow["ThreshldNum"]);

                            if (Convert.ToInt16(dRow["AddtnlDayRate"])==1)
                            {	ascRate.StandardCPTs = true;		}
                            else
                            {	ascRate.StandardCPTs = false;		}

                            ascRate.Codes = rateData.CodesData.getCodes(ref codesMngr, ascRate.ID);

                            break;

                        case "Group" :

                            ascRate.addASCRate(dRow["RateName"].ToString(), Convert.ToDouble(dRow["RateValue"]), Convert.ToDouble(dRow["ThreshldNum"]));

                            break;

                        case "Rate" :

                            ascRate.addRateReimbursement(Convert.ToDouble(dRow["RateValue"]));

                            break;

                        default: break;
                    }
                }
                else	// Load rate normally
            {	Rates.addRate(rateData.getRate(dRow));		}
            }

            if ( ! (ascRate.ID==0) )
            {	Rates.addRate(ascRate);		}

            return Rates;
        }