using DeviceRepair.Api.Common; using DeviceRepair.Api.CustomAttribute; using DeviceRepair.Api.Models; using DeviceRepair.DataAccess; using DeviceRepair.Models; using NLog; using System; using System.Web.Http; namespace DeviceRepair.Api.Controllers { [RoutePrefix("Api/Role")] public class RoleController : CFController { private static readonly Logger log = LogManager.GetCurrentClassLogger(); /// /// 获取所有用户 /// /// [HttpGet] [Route("GetAll")] [HttpAuthorize] public APIResponseData GetAllRole() { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = RoleAccess.Instance.GetAllRole(); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取角色下的用户 /// /// [HttpGet] [Route("GetRoleUsers")] [HttpAuthorize] public APIResponseData GetRoleUsers(int RoleID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = RoleAccess.Instance.GetRoleUsers(RoleID); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 根据角色ID,权限状态 获取权限列表 /// /// [HttpGet] [Route("GetRoleAuths")] [HttpAuthorize] public APIResponseData GetRoleAuths(int RoleID, bool Status) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = RoleAccess.Instance.GetRoleAuths(RoleID, Status); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 修改 /// /// /// [HttpPost] [Route("EditRole")] [HttpAuthorize] public APIResponseData EditRole(RoleModel Item) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "未能获取到数据" }; if (Item == null) return apiResponseData; try { if (string.IsNullOrWhiteSpace(Item.RoleCode)) { apiResponseData.Message = "角色编码不能为空!"; return apiResponseData; } if (string.IsNullOrWhiteSpace(Item.RoleName)) { apiResponseData.Message = "角色名称不能为空!"; return apiResponseData; } base.GetParams(); apiResponseData = RoleAccess.Instance.Update(Item, OperationInfo); } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取全部权限数据 /// /// [HttpGet] [Route("GetAuthList")] [HttpAuthorize] public APIResponseData GetAuthList() { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = RoleAccess.Instance.GetAuthList(); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取全部权限数据 /// /// [HttpGet] [Route("CheckRoleCodeExists")] [HttpAuthorize] public APIResponseData CheckRoleCodeExists(string RoleCode) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = RoleAccess.Instance.CheckRoleCodeExists(RoleCode); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 根据主键编号是插入/更新 角色权限数据 /// /// /// [HttpPost] [Route("InsertOrEditRoleAndAuth")] [HttpAuthorize] public APIResponseData InsertOrEditRoleAndAuth(RoleEditSubmitModel entity) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { base.GetParams(); apiResponseData = RoleAccess.Instance.InsertOrEdit(entity, base.OperationInfo); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 清空角色下的用户 /// /// [HttpPost] [Route("ClearRoleUsers")] [HttpAuthorize] public APIResponseData ClearRoleUsers(int RoleAutoID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { base.GetParams(); apiResponseData = RoleAccess.Instance.ClearRoleUsers(RoleAutoID, base.OperationInfo); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 清空角色下的权限 /// /// [HttpPost] [Route("ClearRoleAuths")] [HttpAuthorize] public APIResponseData ClearRoleAuths(int RoleAutoID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { base.GetParams(); apiResponseData = RoleAccess.Instance.ClearRoleAuths(RoleAutoID, base.OperationInfo); return apiResponseData; } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 通过用户主键获取当前权限 /// /// /// [HttpGet, Route("GetUserAuthsByUserID"), HttpAuthorize] public APIResponseData GetUserAuthsByUserID(int UserAutoID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { apiResponseData = RoleAccess.Instance.GetUserAuthsByUserID(UserAutoID); } catch (Exception ex) { log.Error(ex); apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } } }