OpenAuth.Net/OpenAuth.Mvc/Controllers/ResourceManagerController.cs

102 lines
2.8 KiB
C#
Raw Normal View History

using Infrastructure;
using OpenAuth.App;
using OpenAuth.Domain;
using System;
using System.Linq;
using System.Web.Mvc;
using OpenAuth.App.SSO;
using OpenAuth.Mvc.Models;
namespace OpenAuth.Mvc.Controllers
{
public class ResourceManagerController : BaseController
{
private ResourceManagerApp _app;
public ResourceManagerController()
{
_app = AutofacExt.GetFromFac<ResourceManagerApp>();
}
//
// GET: /UserManager/
[Authenticate]
public ActionResult Index()
{
return View();
}
//添加或修改Resource
[HttpPost]
public string Add(Resource model)
{
try
{
_app.AddOrUpdate(model);
}
catch (Exception ex)
{
2016-10-14 11:22:16 +08:00
Result.Status = false;
Result.Message = ex.Message;
}
2016-10-14 11:22:16 +08:00
return JsonHelper.Instance.Serialize(Result);
}
/// <summary>
/// 加载某分类的所有Resources
/// </summary>
2016-10-17 11:43:56 +08:00
public string Load(Guid categoryId, int page = 1, int rows = 30)
{
2016-10-17 11:43:56 +08:00
return JsonHelper.Instance.Serialize(_app.Load(AuthUtil.GetUserName(), categoryId, page, rows));
}
public string LoadForTree()
{
var models = _app.LoadAll();
return JsonHelper.Instance.Serialize(models);
}
2016-10-15 01:27:39 +08:00
[HttpPost]
public string Delete(Guid[] ids)
{
try
{
2016-10-15 01:27:39 +08:00
_app.Delete(ids);
}
catch (Exception e)
{
2016-10-14 11:22:16 +08:00
Result.Status = false;
Result.Message = e.Message;
}
2016-10-14 11:22:16 +08:00
return JsonHelper.Instance.Serialize(Result);
}
/// <summary>
/// 为用户或角色分配权限
/// </summary>
/// <param name="firstId">关联表中的firstId.</param>
/// <param name="key">关联表中的Key
/// <para>如UserResource/RoleResource</para>
/// </param>
/// <returns>ActionResult.</returns>
public ActionResult AssignRes(Guid firstId, string key)
{
ViewBag.FirstId = firstId;
ViewBag.ModuleType = key;
return View();
}
/// <summary>
/// 加载带有授权的资源信息
/// </summary>
/// <param name="cId">分类ID</param>
/// <param name="firstId">关联表中的firstId</param>
/// <param name="key">关联表中的key</param>
/// <returns>System.String.</returns>
public string LoadWithAccess(Guid cId, Guid firstId, string key)
{
return JsonHelper.Instance.Serialize(_app.LoadWithAccess(AuthUtil.GetUserName(),key,firstId, cId));
}
}
2015-11-22 23:54:21 +08:00
}