예제 #1
0
        public object GetData(string _view)
        {
            if (Helpers.Session.GetSession(_view) == null)
            {
                using (StrawmanDBLibray.Entities.godzillaDBLibraryEntity db = new StrawmanDBLibray.Entities.godzillaDBLibraryEntity())
                {
                    switch (_view)
                    {
                    case Constants.V_TMP_STRWM_DATA:
                        var s = db.v_TMP_STRWM_DATA.Where(m => m.YEAR_PERIOD == Helpers.PeriodUtil.Year && m.MONTH_PERIOD == Helpers.PeriodUtil.Month).Select(m => m);
                        Helpers.Session.SetSession(_view, s.ToList());
                        break;

                    case Constants.V_TMP_NTS_DATA:
                        var n = db.v_TMP_NTS_DATA.Where(m => m.YEAR_PERIOD == Helpers.PeriodUtil.Year && m.MONTH_PERIOD == Helpers.PeriodUtil.Month).Select(m => m);
                        Helpers.Session.SetSession(_view, n.ToList());
                        break;

                    case Constants.V_TMP_MASTER_DATA:
                        var q = db.v_TMP_MASTER_DATA.Select(m => m);
                        Helpers.Session.SetSession(_view, q.ToList());
                        break;

                    case Constants.ROSETTA_LOADER:
                        var rl = db.ROSETTA_LOADER;
                        Helpers.Session.SetSession(_view, rl.ToList());
                        break;

                    case Constants.ROSETTA_STONE:
                        var rs = db.ROSETTA_STONE;
                        Helpers.Session.SetSession(_view, rs.ToList());
                        break;
                    }
                }
            }

            return(Helpers.Session.GetSession(_view));
        }
예제 #2
0
        private List <Entities.KpiModel> GetKPIModel(string table_name, bool?cache)
        {
            List <Entities.KpiModel> lst = null;

            if (GetSessionObject(table_name) != null && (cache ?? true))
            {
                return((List <Entities.KpiModel>)GetSessionObject(table_name));
            }
            else
            {
                switch (table_name)
                {
                case BRAND_CONTRIBUTION:
                    List <StrawmanDBLibray.Entities.BRAND_CONTRIBUTION> bcdata = (List <StrawmanDBLibray.Entities.BRAND_CONTRIBUTION>)Helpers.StrawmanDBLibrayData.Get(StrawmanDBLibray.Classes.StrawmanDataTables.BRAND_CONTRIBUTION, false);
                    List <StrawmanDBLibray.Entities.KPI_MASTER>         mster  = (List <StrawmanDBLibray.Entities.KPI_MASTER>)Helpers.StrawmanDBLibrayData.Get(StrawmanDBLibray.Classes.StrawmanDataTables.KPI_MASTER);
                    return(mster.GroupJoin(bcdata.Where(m => (m.YEAR_PERIOD == Helpers.PeriodUtil.Year && m.MONTH_PERIOD == Helpers.PeriodUtil.Month)).AsEnumerable(), m => new { _id = m.ID }, b => new { _id = b.ID }, (m, b) => new { m = m, b = b }).AsEnumerable()
                           .SelectMany(f => f.b.DefaultIfEmpty(), (m, b) => new { m = m.m, b = b }).AsEnumerable()
                           .Select(m => new Entities.KpiModel
                    {
                        NAME = m.m.NAME,
                        COL1 = m.b == null?0: m.b.COL1 ?? 0,
                        COL2 = m.b == null?0: m.b.COL2 ?? 0,
                        COL3 = m.b == null?0: m.b.COL3 ?? 0,
                        ID = m.m.ID,
                        KPI_COLUMN = BRAND_CONTRIBUTION,
                        KPI = m.m.ID
                    }).ToList());

                case v_WRK_KPI:
                    using (Models.DataClasses1DataContext db = new Models.DataClasses1DataContext())
                    {
                        db.CommandTimeout = 50000;
                        var q = db.v_WRK_KPI
                                .Where(m => (m.YEAR_PERIOD == Helpers.PeriodUtil.Year && m.MONTH_PERIOD == Helpers.PeriodUtil.Month) ||
                                       (m.YEAR_PERIOD == null && m.MONTH_PERIOD == null))
                                .Select(m => new Entities.KpiModel
                        {
                            NAME       = m.NAME,
                            COL1       = m.COL1,
                            COL2       = (decimal?)m.COL2,
                            COL3       = (decimal?)m.COL3,
                            COLPC1     = m.COL1,
                            COLPC2     = (decimal?)m.COL2,
                            COLPC3     = (decimal?)m.COL3,
                            GROUP      = m.GROUP,
                            KPI        = m.KPI,
                            KPI_COLUMN = m.KPI_COLUMN,
                            ID         = m.ID
                        });
                        lst = q.ToList();
                    }
                    break;

                case MASTER_DATA:
                    using (StrawmanDBLibray.Entities.godzillaDBLibraryEntity db = new StrawmanDBLibray.Entities.godzillaDBLibraryEntity())
                    {
                        var t = db.KPI_MASTER.OrderBy(m => m.ORDER).Select(m => new Entities.KpiModel
                        {
                            NAME   = m.NAME,
                            GROUP  = m.GROUP,
                            KPI    = m.ID,
                            isHead = m.GROUP == 0 || m.NAME.Equals("MASS") || m.NAME.Equals("OTC") || m.NAME.Equals("BEAUTY")
                        });
                        lst = t.ToList();
                    }
                    break;
                }
                SetSessionObject(table_name, lst);
            }
            return(lst);
        }