using Bootstrap.Admin.Query; using Bootstrap.DataAccess; using Longbow.Web.Mvc; using Microsoft.AspNetCore.Mvc; using System.Collections.Generic; using System.Linq; namespace Bootstrap.Admin.Controllers.Api { /// /// /// [Route("api/[controller]")] public class RolesController : Controller { /// /// /// /// /// [HttpGet] public QueryData Get(QueryRoleOption value) { return value.RetrieveData(); } /// /// 通过指定ID获得所有角色集合 /// /// 用户ID/部门ID/菜单ID /// 类型 /// [HttpPost("{id}")] public IEnumerable Post(int id, [FromQuery]string type) { var ret = new List(); switch (type) { case "user": ret = RoleHelper.RetrieveRolesByUserId(id).ToList(); break; case "group": ret = RoleHelper.RetrieveRolesByGroupId(id).ToList(); break; case "menu": ret = RoleHelper.RetrieveRolesByMenuId(id).ToList(); break; default: break; } return ret; } /// /// 根据GroupID获取 /// /// /// /// /// [HttpPut("{id}")] public bool Put(int id, [FromBody]IEnumerable roleIds, [FromQuery]string type) { var ret = false; switch (type) { case "user": ret = RoleHelper.SaveRolesByUserId(id, roleIds); break; case "group": ret = RoleHelper.SaveRolesByGroupId(id, roleIds); break; case "menu": ret = RoleHelper.SavaRolesByMenuId(id, roleIds); break; default: break; } return ret; } /// /// /// /// [HttpPost] public bool Post([FromBody]Role value) { return RoleHelper.SaveRole(value); } /// /// /// /// [HttpDelete] public bool Delete([FromBody]IEnumerable value) { return RoleHelper.DeleteRole(value); } } }