public void SaveRoleFeatures(RoleFeaturesModel roleFeatures) { AddRoleFeaturesRequest addRoleFeaturesRequest = new AddRoleFeaturesRequest(); addRoleFeaturesRequest.RoleId = roleFeatures.RoleId; addRoleFeaturesRequest.Features = new List<ModuleFeatureDC>(); foreach (ModuleModel module in roleFeatures.Features) { foreach (ModuleFeatureModel feature in module.ModuleFeatures) { if (feature.IsSelected) { ModuleFeatureDC featureDC = new ModuleFeatureDC(); featureDC.FeatureId = feature.FeatureId; featureDC.RoleFeaturePermissions = new List<FeaturePermissionDC>(); foreach (FeaturePermissionModel permission in feature.RoleFeaturePermissions) { if (permission.IsAssigned) { featureDC.RoleFeaturePermissions.Add(new FeaturePermissionDC { FeatureId = feature.FeatureId, ContentPermissionId = permission.ContentPermissionId }); } } addRoleFeaturesRequest.Features.Add(featureDC); } } } ServiceResponse addRoleFeaturesResponse = _securityProxy.Execute(opt => opt.SaveRoleFeatures(addRoleFeaturesRequest)); if (addRoleFeaturesResponse.Status != ResponseStatus.Success) HandleError(addRoleFeaturesResponse.Status, addRoleFeaturesResponse.ResponseMessage); }
/// <summary> /// RoleFeatures /// </summary> /// <param name="Id"></param> /// <returns></returns> public ActionResult RoleFeatures(int Id) { if (!SavePermissionsToViewBag(FeatureEnum.Role)) return Redirect("~/home/unauthorized"); RoleFeaturesModel roleFeatureModel = new RoleFeaturesModel(); roleFeatureModel.RoleId = Id; if (Request.IsAjaxRequest()) return PartialView(roleFeatureModel); else return View(roleFeatureModel); }
/// <summary> /// GetRoleFeatures /// </summary> /// <param name="roleId"></param> /// <returns>RoleFeaturesModel</returns> public RoleFeaturesModel GetRoleFeatures(int roleId) { RoleFeaturesModel roleFeatures = new RoleFeaturesModel(); ServiceResponse<RoleFeatures> roleFeaturesResponse = _securityProxy.Execute(opt => opt.GetRoleFeatures(roleId)); if (roleFeaturesResponse.Status == ResponseStatus.Success) { roleFeatures.RoleId = roleFeaturesResponse.Result.RoleId; roleFeatures.RoleCode = roleFeaturesResponse.Result.RoleCode; roleFeatures.RoleName = roleFeaturesResponse.Result.RoleName; roleFeatures.Features = new List<ModuleModel>(); foreach (ModuleDC moduleDC in roleFeaturesResponse.Result.Features) { ModuleModel module = Mapper.Map<ModuleDC, ModuleModel>(moduleDC); roleFeatures.Features.Add(module); module.ModuleFeatures = new List<ModuleFeatureModel>(); foreach (ModuleFeatureDC feature in moduleDC.Features) { ModuleFeatureModel featureModel = Mapper.Map<ModuleFeatureDC, ModuleFeatureModel>(feature); module.ModuleFeatures.Add(featureModel); featureModel.RoleFeaturePermissions = new List<FeaturePermissionModel>(); foreach (FeaturePermissionDC featurePermission in feature.RoleFeaturePermissions) { featureModel.RoleFeaturePermissions.Add(Mapper.Map<FeaturePermissionDC, FeaturePermissionModel>(featurePermission)); } } } } else { HandleError(roleFeaturesResponse.Status, roleFeaturesResponse.ResponseMessage); } return roleFeatures; }
public HttpResponseMessage SaveRoleFeatures(RoleFeaturesModel roleFeatureModel, int siteId) { SecurityClientProcessor.UserContext.SiteId = siteId; SecurityClientProcessor.SaveRoleFeatures(roleFeatureModel); return Request.CreateResponse(HttpStatusCode.OK, CoreMessages.SavedSuccessfully); }