fix: filter orders (#1535)

Co-authored-by: nathan <nathan@appflowy.io>
This commit is contained in:
Nathan.fooo 2022-12-05 15:23:48 +08:00 committed by GitHub
parent 721781f0ae
commit 72dc0b8f67
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 15 deletions

View File

@ -167,3 +167,12 @@ class _SelectOptionFilterEditorState extends State<SelectOptionFilterEditor> {
);
}
}
class _FilterPannel extends StatelessWidget {
const _FilterPannel({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Container();
}
}

View File

@ -61,11 +61,7 @@ impl GridViewRevisionPad {
}
pub fn get_groups_by_field_revs(&self, field_revs: &[Arc<FieldRevision>]) -> Vec<Arc<GroupConfigurationRevision>> {
self.groups
.get_objects_by_field_revs(field_revs)
.into_values()
.flatten()
.collect()
self.groups.get_objects_by_field_revs(field_revs)
}
pub fn get_all_groups(&self) -> Vec<Arc<GroupConfigurationRevision>> {
@ -131,11 +127,7 @@ impl GridViewRevisionPad {
}
pub fn get_all_filters(&self, field_revs: &[Arc<FieldRevision>]) -> Vec<Arc<FilterRevision>> {
self.filters
.get_objects_by_field_revs(field_revs)
.into_values()
.flatten()
.collect()
self.filters.get_objects_by_field_revs(field_revs)
}
pub fn get_filters(&self, field_id: &str, field_type_rev: &FieldTypeRevision) -> Vec<Arc<FilterRevision>> {

View File

@ -83,9 +83,9 @@ where
.cloned()
}
pub fn get_objects_by_field_revs(&self, field_revs: &[Arc<FieldRevision>]) -> HashMap<String, Vec<Arc<T>>> {
pub fn get_objects_by_field_revs(&self, field_revs: &[Arc<FieldRevision>]) -> Vec<Arc<T>> {
// Get the objects according to the FieldType, so we need iterate the field_revs.
let objects_by_field_id = field_revs
let objects = field_revs
.iter()
.flat_map(|field_rev| {
let field_type = &field_rev.ty;
@ -93,10 +93,11 @@ where
let object_rev_map = self.inner.get(field_id)?;
let objects: Vec<Arc<T>> = object_rev_map.get(field_type)?.clone();
Some((field_rev.id.clone(), objects))
Some(objects)
})
.collect::<HashMap<String, Vec<Arc<T>>>>();
objects_by_field_id
.flatten()
.collect::<Vec<Arc<T>>>();
objects
}
pub fn get_all_objects(&self) -> Vec<Arc<T>> {