OA.WEB/Controllers/HomeController.cs
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using OA.Model.ActionEqualCompare;
using OA.Model.Enum;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace OA.WEB.Controllers
{
public class HomeController : BaseController//Controller//
{
IBLL.IUserInfoService userInfoService { get; set; }
// GET: Home
public ActionResult Index()
{//
if (LoginUser != null)
{
ViewData["userName"] = LoginUser.UserName;
}
return View();
}
public ActionResult HomePage()
{
return View();
}
public ActionResult TestHomePage()
{
return View();
}
//找出用户对应的菜单
public ActionResult GetMenuItems()
{
//1.查询用户已经有的角色
var userInfo = userInfoService.LoadEntities(u=>u.ID==LoginUser.ID).FirstOrDefault();
var userRoles = userInfo.RoleInfo;
//2.找出对应的权限
short menuType = (short)ActionTypeEnum.MenuActionType;
var userMenuItem = (from r in userRoles
from a in r.ActionInfo
where a.ActionTypeEnum == menuType
select a).ToList();
//3.找出用户特殊的权限
var userActions = userInfo.R_UserInfo_ActionInfo.ToList();
//4.找出userActions允许的权限
var isPassUserActions = from a in userActions
where a.IsPass == true && a.ActionInfo.ActionTypeEnum==menuType
select a;
var isPassActions = (from a in isPassUserActions
select a.ActionInfo).ToList();
userMenuItem.AddRange(isPassActions);//合并两个集合
//找出禁止权限
var isNotPassUserActions = (from a in userActions
where a.IsPass == false
select a.ActionInfoID).ToList();
//完成禁用权限的过滤
userMenuItem = userMenuItem.Where(a => !isNotPassUserActions.Contains(a.ID)).ToList();
后面还有 15 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。