Пример #1
0
        public CommonSearchView <MasterMenuView> Search(MasterMenuSearchView model)
        {
            using (var ctx = new ConXContext())
            {
                //define model view
                CommonSearchView <MasterMenuView> view = new ModelViews.CommonSearchView <ModelViews.MasterMenuView>()
                {
                    pageIndex   = model.pageIndex - 1,
                    itemPerPage = model.itemPerPage,
                    totalItem   = 0,

                    datas = new List <ModelViews.MasterMenuView>()
                };

                //query data
                //List<su_menu> menu = ctx.menu
                //    .Where(x => (x.MENU_ID.Contains(model.menuFunctionId) || model.menuFunctionId == "")
                //    && (x.MENU_NAME.Contains(model.menuFunctionName) || model.menuFunctionName == "")
                //    && (x.MENU_ID.Contains("MOB"))
                //    )
                //    .OrderBy(o => o.MENU_ID)
                //    .ToList();

                string sql = "select  menu_id, menu_name , menu_type, link_name , main_menu , icon_name from su_menu where menu_id like '%'||:p_menu_id||'%' and menu_name like '%'||:p_menu_name||'%' and menu_id  like 'MOB%' order by menu_id";


                List <menuView> menu = ctx.Database.SqlQuery <menuView>(sql, new OracleParameter("p_menu_id", model.menuFunctionId), new OracleParameter("p_menu_name", model.menuFunctionName)).ToList();



                //count , select data from pageIndex, itemPerPage
                view.totalItem = menu.Count;
                menu           = menu.Skip(view.pageIndex * view.itemPerPage)
                                 .Take(view.itemPerPage)
                                 .ToList();

                //prepare model to modelView
                foreach (var i in menu)
                {
                    view.datas.Add(new ModelViews.MasterMenuView()
                    {
                        menuFunctionId      = i.menu_id,
                        menuFunctionGroupId = i.main_menu,
                        menuFunctionName    = i.menu_name,
                        iconName            = i.icon_name,
                        menuURL             = i.link_name,
                    });
                }

                //return data to contoller
                return(view);
            }
        }
Пример #2
0
        public HttpResponseMessage postSearch(MasterMenuSearchView model)
        {
            try
            {
                var result = menuSvc.Search(model);

                return(Request.CreateResponse(HttpStatusCode.OK, result));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.ToString()));
            }
        }
Пример #3
0
        public CommonSearchView <MasterMenuView> Search(MasterMenuSearchView model)
        {
            using (var ctx = new ConXContext())
            {
                //define model view
                CommonSearchView <MasterMenuView> view = new ModelViews.CommonSearchView <ModelViews.MasterMenuView>()
                {
                    pageIndex   = model.pageIndex - 1,
                    itemPerPage = model.itemPerPage,
                    totalItem   = 0,

                    datas = new List <ModelViews.MasterMenuView>()
                };

                //query data
                List <MenuFunction> MenuFunctions = ctx.MenuFunctions
                                                    .Where(x => (x.menuFunctionGroupId.Contains(model.menuFunctionGroupId) || model.menuFunctionGroupId == "") &&
                                                           (x.menuFunctionId.Contains(model.menuFunctionId) || model.menuFunctionId == "") &&
                                                           (x.menuFunctionName.Contains(model.menuFunctionName) || model.menuFunctionName == "")
                                                           )
                                                    .OrderBy(o => o.menuFunctionGroupId)
                                                    .ToList();

                //count , select data from pageIndex, itemPerPage
                view.totalItem = MenuFunctions.Count;
                MenuFunctions  = MenuFunctions.Skip(view.pageIndex * view.itemPerPage)
                                 .Take(view.itemPerPage)
                                 .ToList();

                //prepare model to modelView
                foreach (var i in MenuFunctions)
                {
                    view.datas.Add(new ModelViews.MasterMenuView()
                    {
                        menuFunctionId      = i.menuFunctionId,
                        menuFunctionGroupId = i.menuFunctionGroupId,
                        menuFunctionName    = i.menuFunctionName,
                        iconName            = i.iconName,
                        menuURL             = i.menuURL,
                        orderDisplay        = i.orderDisplay
                    });
                }

                //return data to contoller
                return(view);
            }
        }