private dynamic GetDataByType(string NTSType, int?cad) { int _year = cad == null? 0:(int)cad; List <StrawmanDBLibray.Entities.WRK_NTS_VIEW_DATA> data = (List <StrawmanDBLibray.Entities.WRK_NTS_VIEW_DATA>)GetSessionData(NTSTables.WRK_NTS_VIEW_DATA); List <StrawmanDBLibray.Entities.v_WRK_FRANCHISE_MASTER> mster = (List <StrawmanDBLibray.Entities.v_WRK_FRANCHISE_MASTER>)Helpers.StrawmanDBLibrayData.Get(StrawmanDBLibray.Classes.StrawmanDataTables.v_WRK_FRANCHISE_MASTER, true); var q = data.Where(m => m.YEAR_PERIOD == Helpers.PeriodUtil.Year - _year && m.MONTH_PERIOD == Helpers.PeriodUtil.Month && m.BRAND < 9000 && m.MARKET < 9000 && m.TYPE == NTSType).AsEnumerable() .Join(mster.Where(m => m.TYPE == Classes.StrawmanViews.MARKET).AsEnumerable() , d => new { _channel = d.CHANNEL, _market = d.MARKET, _brand = d.BRAND }, m => new { _channel = m.CHANNEL, _market = m.MARKET, _brand = (decimal?)m.BRAND }, (d, m) => new { d = d, m = m }) .AsEnumerable() .Select(p => new Models.MarketViewChannelModels { col1 = (decimal?)p.d.AMOUNT * p.m.CFG, col2 = 0, col3 = 0, col4 = 0, col5 = 0, col6 = 0, vid = (decimal)p.m.FRANCHISE_ID, vparent = p.m.PARENT_ID }) .AsEnumerable(); var fdata = new MarketViewFranchiseController().GetFormatedData(q, Classes.StrawmanColumns.NTS); //List<StrawmanDBLibray.Entities.v_WRK_NTS_DATA_FRANCHISE> data = (List<StrawmanDBLibray.Entities.v_WRK_NTS_DATA_FRANCHISE>)GetSessionData(NTSTables.v_WRK_NTS_DATA_FRANCHISE); return(fdata .Select(p => new Models.StrawmanViewSTDModel { vid = p.vid, vorder = p.vorder, vparent = p.vparent, col1 = p.col1 }) .ToList()); }
private List <Models.ChartByChannelModels> GetChartByChannelData(string type) { var typ = ((List <StrawmanDBLibray.Entities.WRK_VIEWS_VARIABLES>)Helpers.StrawmanDBLibrayData.Get(StrawmanDBLibray.Classes.StrawmanDataTables.WRK_VIEWS_VARIABLES)) .Where(m => m.VIEW == "CHART BY CONFIG" && m.NAME == type).Select(m => m.VALUE).FirstOrDefault(); if (typ == null) { return(null); } var grp = (List <StrawmanDBLibray.Entities.GROUP_MASTER>)Helpers.StrawmanDBLibrayData.Get(StrawmanDBLibray.Classes.StrawmanDataTables.GROUP_MASTER); var grpd = grp.Join(((List <StrawmanDBLibray.Entities.GROUP_CONFIG>)Helpers.StrawmanDBLibrayData.Get(StrawmanDBLibray.Classes.StrawmanDataTables.GROUP_CONFIG)) .Where(m => m.TYPE_ID == int.Parse(typ)).AsEnumerable(), m => new { _id = m.ID }, c => new { _id = (decimal)c.GROUP_ID }, (m, c) => new { order = c.ID, id = c.BRAND, name = m.NAME, source = c.SOURCE, brand = c.BRAND, market = c.MARKET }); if (grpd == null) { return(null); } MarketViewFranchiseController mfranchise = new MarketViewFranchiseController(); BrandViewFranchiseController bfranchise = new BrandViewFranchiseController(); MarketViewChannelController mchannel = new MarketViewChannelController(); BrandViewChannelController bchannel = new BrandViewChannelController(); MarketViewController mstrawm = new MarketViewController(); BrandViewController bstrawm = new BrandViewController(); string vtype = Classes.StrawmanViews.MAT; var f_data_market_MAT = mfranchise.GetMarketViewData(vtype); var f_data_brand_MAT = bfranchise.GetBrandViewData(vtype); var c_data_market_MAT = mchannel.GetMarketViewData(vtype); var c_data_brand_MAT = bchannel.GetBrandViewData(vtype); var s_data_market_MAT = (List <Models.StrawmanViewSTDModel>)mstrawm.GetMarketViewData(StrawmanDBLibray.Classes.StrawmanDataTables.WRK_MARKET_MAT); var s_data_brand_MAT = (List <Models.StrawmanViewSTDModel>)bstrawm.GetBrandViewData(StrawmanDBLibray.Classes.StrawmanDataTables.WRK_BRAND_MAT); var fdata_MAT = GetCalcChartData(f_data_market_MAT, f_data_brand_MAT); var cdata_MAT = GetCalcChartData(c_data_market_MAT, c_data_brand_MAT); var sdata_MAT = GetCalcChartData(s_data_market_MAT, s_data_brand_MAT, "STRAWMAN"); vtype = Classes.StrawmanViews.YTD; var f_data_market_YTD = mfranchise.GetMarketViewData(vtype); var f_data_brand_YTD = bfranchise.GetBrandViewData(vtype); var c_data_market_YTD = mchannel.GetMarketViewData(vtype); var c_data_brand_YTD = bchannel.GetBrandViewData(vtype); var fdata_YTD = GetCalcChartData(f_data_market_YTD, f_data_brand_YTD); var cdata_YTD = GetCalcChartData(c_data_market_YTD, c_data_brand_YTD); vtype = Classes.StrawmanViews.MONTH; var f_data_market_LM = mfranchise.GetMarketViewData(vtype); var f_data_brand_LM = bfranchise.GetBrandViewData(vtype); var c_data_market_LM = mchannel.GetMarketViewData(vtype); var c_data_brand_LM = bchannel.GetBrandViewData(vtype); var fdata_LM = GetCalcChartData(f_data_market_LM, f_data_brand_LM); var cdata_LM = GetCalcChartData(c_data_market_LM, c_data_brand_LM); vtype = Classes.StrawmanViews.BOY; var f_data_market_BOY = mfranchise.GetMarketViewData(vtype); var f_data_brand_BOY = bfranchise.GetBrandViewData(vtype); var c_data_market_BOY = mchannel.GetMarketViewData(vtype); var c_data_brand_BOY = bchannel.GetBrandViewData(vtype); vtype = Classes.StrawmanViews.TOTAL; var f_data_market_PBP = mfranchise.GetMarketViewData(vtype).Join(f_data_market_BOY, t => new{ _id = t.vid }, b => new{ _id = b.vid }, (t, b) => new Models.MarketViewChannelModels { vid = t.vid, col1 = t.col3, col2 = b._le }).ToList(); var f_data_brand_PBP = bfranchise.GetBrandViewData(vtype).Join(f_data_brand_BOY, t => new { _id = t.vid }, b => new { _id = b.vid }, (t, b) => new Models.MarketViewChannelModels { vid = t.vid, col1 = t.col3, col2 = b._le }).ToList(); var c_data_market_PBP = mchannel.GetMarketViewData(vtype).Join(c_data_market_BOY, t => new { _id = t.vid }, b => new { _id = b.vid }, (t, b) => new Models.StrawmanViewSTDModel { vid = t.vid, col1 = t.col3, col2 = b._le }).ToList(); var c_data_brand_PBP = bchannel.GetBrandViewData(vtype).Join(c_data_brand_BOY, t => new { _id = t.vid }, b => new { _id = b.vid }, (t, b) => new Models.StrawmanViewSTDModel { vid = t.vid, col1 = t.col3, col2 = b._le }).ToList(); var fdata_PBP = GetCalcChartData(f_data_market_PBP, f_data_brand_PBP); var cdata_PBP = GetCalcChartData(c_data_market_PBP, c_data_brand_PBP); return(grpd.Select(p => new Models.ChartByChannelModels { channel_name = p.name, vid = (decimal)p.id, mat_market_size = p.source == "FRANCHISE"? fdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().market_size: p.source == "STRAWMAN"? sdata_MAT.Where(m => m.brand == p.brand && m.market == p.market).FirstOrDefault().market_size: cdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().market_size, mat_market_share_l = p.source == "FRANCHISE" ? fdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().market_share_l : cdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().market_share_l, mat_market_share_p = p.source == "FRANCHISE" ? fdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().market_share_p : cdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().market_share_p, ytd_market_share_l = p.source == "FRANCHISE" ? fdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().market_share_l : cdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().market_share_l, ytd_market_share_p = p.source == "FRANCHISE" ? fdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().market_share_p : cdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().market_share_p, lm_market_share_l = p.source == "FRANCHISE" ? fdata_LM.Where(m => m.vid == p.id).FirstOrDefault().market_share_l : cdata_LM.Where(m => m.vid == p.id).FirstOrDefault().market_share_l, lm_market_share_p = p.source == "FRANCHISE" ? fdata_LM.Where(m => m.vid == p.id).FirstOrDefault().market_share_p : cdata_LM.Where(m => m.vid == p.id).FirstOrDefault().market_share_p, mat_grouth_c = p.source == "FRANCHISE" ? fdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().grouth_c : cdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().grouth_c, mat_grouth_jj = p.source == "FRANCHISE" ? fdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj : cdata_MAT.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj, ytd_grouth_c = p.source == "FRANCHISE" ? fdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().grouth_c : cdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().grouth_c, ytd_grouth_jj = p.source == "FRANCHISE" ? fdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj : cdata_YTD.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj, lm_grouth_c = p.source == "FRANCHISE" ? fdata_LM.Where(m => m.vid == p.id).FirstOrDefault().grouth_c : cdata_LM.Where(m => m.vid == p.id).FirstOrDefault().grouth_c, lm_grouth_jj = p.source == "FRANCHISE" ? fdata_LM.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj : cdata_LM.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj, pbp_market_size = p.source == "FRANCHISE" ? (double)fdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().market_size : (double)cdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().market_size, pbp_grouth_c = p.source == "FRANCHISE" ? fdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().grouth_c : cdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().grouth_c, pbp_grouth_jj = p.source == "FRANCHISE" ? fdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj : cdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().grouth_jj, pbp_share_p = p.source == "FRANCHISE" ? fdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().market_share_p: cdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().market_share_p, pbp_share_l = p.source == "FRANCHISE" ? fdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().market_share_l : cdata_PBP.Where(m => m.vid == p.id).FirstOrDefault().market_share_l, }).ToList()); }