Ejemplo n.º 1
0
        protected void InitDDLShow(vRole vrole, string action)
        {
            InitDDL("RoleList", vrole, action);
            InitDDL("CERLMenuList", vrole, action);
            InitDDL("TestItemList", vrole, action);

            int RoleId = 0;
            int menuId = 0;

            RoleId = (vrole != null ? vrole.RoleId : -1);
            menuId = (vrole != null ? int.Parse(vrole.menuId.ToString()) : -1);
            IQueryable <vUserRole> vuserrole = db.vUserRole.Where(x => x.RoleId == RoleId).Take(100); //列出此角色下的人員

            if (Session["QryBadgeCode"] != null)
            {
                string BadgeCode = (string)Session["QryBadgeCode"];
                vuserrole = db.vUserRole.Where(x => x.RoleId == RoleId && x.BadgeCode.Contains(BadgeCode)).Take(100); //列出此角色下的人員
                Session["QryBadgeCode"] = null;
            }
            IQueryable <vRoleMenu> vrolemenu = db.vRoleMenu.Where(x => x.RoleId == RoleId); //列出此角色下使用中的目錄

            ViewData["RoleId"]    = RoleId;
            ViewData["menuId"]    = menuId;
            ViewData["vuserrole"] = vuserrole;
            ViewData["vrolemenu"] = vrolemenu;
        }
Ejemplo n.º 2
0
        //
        // GET: /mRole/Delete/5

        public ActionResult Delete(int id = 0)
        {
            vRole vrole = db.vRole.Find(id);

            if (vrole == null)
            {
                return(HttpNotFound());
            }
            return(View(vrole));
        }
Ejemplo n.º 3
0
        //
        // GET: /mRole/Edit/5

        public ActionResult Edit(int id = 0)
        {
            vRole vrole = db.vRole.Find(id);

            if (vrole == null)
            {
                return(HttpNotFound());
            }
            InitDDLShow(vrole, "Edit");
            return(View(vrole));
        }
Ejemplo n.º 4
0
        public ActionResult Edit(mRole mrole)
        {
            if (ModelState.IsValid)
            {
                db.Entry(mrole).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            vRole vrole = db.vRole.Find(mrole.id);

            return(View(vrole));
        }
Ejemplo n.º 5
0
        protected void InitDDL(string ddlName, vRole vrole, string Type)
        {
            int RoleId = 0;
            int menuId = 0;

            RoleId = (vrole != null ? vrole.RoleId : -1);
            menuId = (vrole != null ? int.Parse(vrole.menuId.ToString()) : -1);
            string[] RoleArray     = { "RoleList" };
            string[] CERLMenuArray = { "CERLMenuList" };
            string[] TestItemArray = { "TestItemList" };
            var      initlist      = Enumerable.Empty <object>().Select(r => new { Id = 0, Name = "" }).ToList();

            if (RoleArray.Contains(ddlName))
            {
                initlist = db.mRoles.Select(x => new { Id = x.RoleId, Name = x.RoleName }).ToList();
            }

            if (CERLMenuArray.Contains(ddlName))
            {
                var existslist = edb.FnRoleMenuFunction(RoleId).Select(x => x.menuId).ToList();
                initlist = edb.FnCERLMenuDropDownList("0").Where(x => !existslist.Contains(x.Id)).ToList().Select(x => new { Id = int.Parse(x.Id.ToString()), Name = x.Name }).ToList();
                //initlist = db.CERLMenu.Where(x=>!existslist.Contains(x.menuId)).Select(x => new { Id = x.menuId, Name = x.menuText }).ToList();
            }

            if (TestItemArray.Contains(ddlName))
            {
                initlist = edb.FnTestItemMenuDropDownList("0").Where(x => x.lvl == 1).ToList().Select(x => new { Id = int.Parse(x.Id.ToString()), Name = x.Name }).ToList();
                //initlist = db.CERLMenu.Where(x=>!existslist.Contains(x.menuId)).Select(x => new { Id = x.menuId, Name = x.menuText }).ToList();
            }

            List <SelectListItem> initList = new List <SelectListItem>();

            if (!(Type == null || Type.Trim().Length == 0))
            {
                initList.Add(new SelectListItem()
                {
                    Text  = "",
                    Value = ""
                });
            }

            string selectedvalue = "";

            if (vrole != null)
            {
                switch (ddlName)
                {
                case "RoleList":
                    selectedvalue = RoleId.ToString();
                    break;

                case "TestItemList":
                    selectedvalue = vrole.menuId.ToString();
                    break;

                default:
                    break;
                }
            }

            foreach (var item in initlist)
            {
                initList.Add(new SelectListItem()
                {
                    Text     = item.Name,
                    Value    = item.Id.ToString(),
                    Selected = (item.Id.ToString() == selectedvalue)
                });
            }
            SelectList cList = new SelectList(initList, "Value", "Text");

            ViewData[ddlName] = cList;
            Session[ddlName]  = cList;
        }