},
   all => sub {
     my ($key, $value, $prefix) = @_;
-    return or => [ map { $prefix . $_ => $value } qw(partnumber description) ]
-  }
+    return or => [ map { $prefix . $_ => $value } qw(partnumber description ean) ]
+  },
+  all_with_makemodel => sub {
+    my ($key, $value, $prefix) = @_;
+    return or => [ map { $prefix . $_ => $value } qw(partnumber description ean makemodels.model) ],
+      $prefix . 'makemodels';
+  },
+  all_with_customer_partnumber => sub {
+    my ($key, $value, $prefix) = @_;
+    return or => [ map { $prefix . $_ => $value } qw(partnumber description ean customerprices.customer_partnumber) ],
+      $prefix . 'customerprices';
+  },
 );
 
 sub type_filter {
       push @filter, ($prefix . part_type => 'service');
     } elsif ($type =~ m/^assembly/) {
       push @filter, ($prefix . part_type => 'assembly');
+    } elsif ($type =~ m/^assortment/) {
+      push @filter, ($prefix . part_type => 'assortment');
     }
   }