using ARC.GMP.Models; using ARC.GMP.Types; using ARC.GMP.Utils; using System; using System.Net; using System.Threading.Tasks; using System.Web.Mvc; using System.Web.Routing; using System.Web.Script.Serialization; using Newtonsoft.Json; namespace ARC.GMP.Controllers { //[Authorize] public class AdminController : BaseController { [HttpGet] [Route("admin/getallroles")] public async Task GetAllRoles() { string url = BaseURL + "api/admin/roles"; string res = await InvokeWebService.GetWebClientRequestAsync(url, Token, ClientId); return HandleTrivialHttpRequests(res); } [HttpPost] [Route("admin/createrole")] public async Task CreateRole(ARC.GMP.Types.Role role) { string url = BaseURL + "api/admin/role/save"; var requestData = JsonConvert.SerializeObject(role); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/updaterole")] public async Task UpdateRole(ARC.GMP.Types.Role role) { string url = BaseURL + "api/admin/role/update"; var requestData = JsonConvert.SerializeObject(role); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/inactiverole")] public async Task InactiveRole(RoleParam roleParam) { string url = BaseURL + "api/admin/role/inactive"; var requestData = JsonConvert.SerializeObject(roleParam); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/getasssignedrolesforuser")] public async Task GetAsssignedRolesForUser(UserParam userParam) { string url = BaseURL + "api/admin/roles/assigned"; var requestData = JsonConvert.SerializeObject(userParam); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/getunasssignedrolesforuser")] public async Task GetUnasssignedRolesForUser(UserParam userParam) { string url = BaseURL + "api/admin/roles/unassigned"; var requestData = JsonConvert.SerializeObject(userParam); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/searchuser")] public async Task SearchUser(UserNameParam userNameParam) { string url = BaseURL + "api/admin/users/searchuser"; var requestData = JsonConvert.SerializeObject(userNameParam); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/exportusers")] public async Task ExportUsers(RoleParam roleParam) { string url = BaseURL + "api/admin/exportusers"; var requestData = JsonConvert.SerializeObject(roleParam); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/userrolemap")] public async Task UserRoleMap(UserMultipleRoleParam userMultipleRoleParam) { string url = BaseURL + "api/admin/userrolemap"; var requestData = JsonConvert.SerializeObject(userMultipleRoleParam); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/removeuserrolemap")] public async Task RemoveUserRoleMap(UserRoleParam userRoleParam) { string url = BaseURL + "api/admin/removeuserrolemap"; var requestData = JsonConvert.SerializeObject(userRoleParam); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/getallmodulespermissionsforrole")] public async Task GetAllModulesPermissionsForRole(RoleParam role) { string url = BaseURL + "api/admin/getmodulepermission"; var requestData = JsonConvert.SerializeObject(role); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } [HttpPost] [Route("admin/updaterolemodulepermission")] public async Task UpdateRoleModulePermission(ModuleInsertion roleModules) { string url = BaseURL + "api/admin/updaterolemodulepermission"; var requestData = JsonConvert.SerializeObject(roleModules); string response = await InvokeWebService.PostHttpClientRequestAsync(url, Token, ClientId, requestData); return HandleTrivialHttpRequests(response); } } }