public double getMaxYoyCostRefValueBefore(string stockID, string year, string quarter) { string cacheID = makeUpCacheID(stockID, year, quarter); if (!m_yoyCostPerfCache.ContainsKey(cacheID)) { int maxYear = 0; double maxCostRefVal = CostPerfYoyFilter.getMaxCostYoyRefValueBefore(stockID, year, quarter, out maxYear); m_yoyCostPerfCache.Add(cacheID, maxCostRefVal); m_bestYoyCostPerfQuarter.Add(stockID, maxYear.ToString() + "q" + quarter.ToString()); } return(m_yoyCostPerfCache[cacheID]); }
protected IStockFilter generateCostFilter() { IStockFilter filter = null; AppCostFilterSubType cfType = (AppCostFilterSubType)m_subType; string year = GlobalConfig.getInstance().curYear; string quarter = GlobalConfig.getInstance().curQuarter; switch (cfType) { case AppCostFilterSubType.CFST_Annual: filter = new AnnualCostPerfFilter(year, quarter, m_param1); break; case AppCostFilterSubType.CFST_Dynamic: filter = new CostPerfFilter(year, quarter, m_param1); break; case AppCostFilterSubType.CFST_Quarter: filter = new QuarterCostPerfFilter(year, quarter, m_param1); break; case AppCostFilterSubType.CFST_Spec: string refYear = GlobalConfig.getInstance().defaultRefYear; filter = new SpecifiedCostPerfFilter(refYear, quarter, year, quarter, m_param1); break; case AppCostFilterSubType.CFST_Yoy: filter = new CostPerfYoyFilter(year, quarter, m_param1); break; default: break; } return(filter); }