using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using PaiXie.Core;
using Newtonsoft.Json;
using PaiXie.Utils;
using PaiXie.Bll;
namespace PaiXie.Pos.Admin {
/// <summary>
/// 权限控制
/// </summary>
public class MvcMenuFilter : ActionFilterAttribute {
#region 权限控制
private bool _isEnable = true;
public MvcMenuFilter() {
_isEnable = true;
}
public MvcMenuFilter(bool IsEnable) {
_isEnable = IsEnable;
}
public override void OnActionExecuting(ActionExecutingContext filterContext) {
try {
//默认true 执行验证
if (_isEnable) {
var route = filterContext.RouteData.Values;
string area = filterContext.RouteData.DataTokens["area"].ToString();
var url = string.Format("/{0}/{1}/{2}", area, route["controller"], route["action"]);
//没有权限
if (!new Users().IsAuth(url)) {
//if (_isEnable) {
BaseResult BaseResult = new BaseResult();
BaseResult.result = -99;
BaseResult.message = "没有权限!";
string str = JsonConvert.SerializeObject(BaseResult, Formatting.Indented);
ContentResult ContentResult = new ContentResult();
ContentResult.Content = str;
filterContext.Result = ContentResult;
//}
}
}
}
catch (Exception ex) { PlanLog.WriteLog(ex.ToString(), "MvcMenuFilter"); }
base.OnActionExecuting(filterContext);
}
#endregion
}
}