/// <summary> /// To update the role permission details by id. /// </summary> /// <param name="ID"></param> /// <param name="rolepermission"></param> /// <param name="accessToken"></param> /// <returns></returns> public bool UpdateRolePermission(int id, RolePermission rolepermission, string accessToken) { try { dynamic session = null; if (!string.IsNullOrEmpty(accessToken)) { session = _sessionManager.GetSessionValues(accessToken); } if (!string.IsNullOrEmpty(session.DatabaseId()) || _isNonPCR) { using (var repository = new RolePermissionRepository(session.DatabaseId())) { bool isExistRoleAndPermission = repository.CheckRoleAndPermission(rolepermission.RoleID, rolepermission.PermissionID); if (isExistRoleAndPermission) { var rolePermissionDetails = repository.GetRolePermissionIDDetails(id); if (rolePermissionDetails != null) { int rs = repository.FindRolePermission(id, (rolepermission.RoleID == 0 ? rolePermissionDetails.RoleID : rolepermission.RoleID), (rolepermission.PermissionID == 0 ? rolePermissionDetails.PermissionID : rolepermission.PermissionID)); if (rs > 0) { throw new Exception("RolePermission is already exist."); } else { rolePermissionDetails.RoleID = rolepermission.RoleID; rolePermissionDetails.PermissionID = rolepermission.PermissionID; } rolePermissionDetails.UpdatedBy = rolepermission.UpdatedBy; rolePermissionDetails.UpdatedDate = DateTime.Now; rolePermissionDetails.RolePermissionID = id; rolePermissionDetails.CreatedBy = rolePermissionDetails.CreatedBy; rolePermissionDetails.CreatedDate = rolePermissionDetails.CreatedDate; repository.ModifiedRolePermission(rolePermissionDetails); return(true); } else { return(false); } } } } else { throw new Exception("Unable to get database connection."); } } catch { throw; } return(false); }
/// <summary> /// To add the role permission details. /// </summary> /// <param name="rolepermission"></param> /// <param name="accessToken"></param> /// <returns></returns> public bool AddRolePermission(RolePermission rolepermission, string accessToken) { try { dynamic session = null; if (!string.IsNullOrEmpty(accessToken)) { session = _sessionManager.GetSessionValues(accessToken); } if (!string.IsNullOrEmpty(session.DatabaseId()) || _isNonPCR) { using (var repository = new RolePermissionRepository(session.DatabaseId())) { bool IsExistRoleAndPermission = repository.CheckRoleAndPermission(rolepermission.RoleID, rolepermission.PermissionID); if (IsExistRoleAndPermission) { bool IsexistRolePermissionCount = repository.ExistRolePermission(rolepermission.RoleID, rolepermission.PermissionID); if (IsexistRolePermissionCount) { rolepermission.CreatedDate = DateTime.Now; rolepermission.UpdatedDate = DateTime.Now; repository.AddRolePermission(rolepermission); return(true); } else { return(false); } } } } else { throw new Exception("Unable to get database connection."); } } catch { throw; } return(false); }