/// <summary> /// 判断Builder是否相等 /// </summary> /// <param name="other"></param> /// <returns></returns> public override bool Equals(DataPermissionConstraintBuilder other) { if (other == null) { return(false); } CurrentUserPermissionConstraintBuilder compareBuilder = other as CurrentUserPermissionConstraintBuilder; if (compareBuilder == null) { return(false); } return(this.UserIdProperty.Equals(compareBuilder.UserIdProperty)); }
/// <summary> /// 判断Builder是否相等 /// </summary> /// <param name="other"></param> /// <returns></returns> public override bool Equals(DataPermissionConstraintBuilder other) { if (other == null) { return(false); } CurrentGroupPermissionConstraintBuilder compareBuilder = other as CurrentGroupPermissionConstraintBuilder; if (compareBuilder == null) { return(false); } return(this.IsIncludeChildGroup.Equals(compareBuilder.IsIncludeChildGroup) && this.GroupIdProperty.Equals(compareBuilder.GroupIdProperty)); }
/// <summary> /// 设置权限过滤builder /// </summary> /// <param name="buider"></param> public DataPermission SetBuilder(DataPermissionConstraintBuilder buider) { var buiderType = buider.GetType(); this.DataPermissionConstraintBuilderType = $"{buiderType.FullName},{buiderType.Assembly.GetName().Name}"; PropertyInfo[] propertyInfos = buiderType.GetProperties(); Dictionary <string, object> builderPropertyDictionary = new Dictionary <string, object>(); foreach (var prop in propertyInfos) { if (prop.CanRead) { builderPropertyDictionary.Add(prop.Name, prop.GetValue(buider)); } } this.BuilderProperties = JsonConvert.SerializeObject(builderPropertyDictionary); return(this); }