Ejemplo n.º 1
0
class IssueFilter(filters.FilterSet):
    status = filters.CharFilter(field_name='kanbancol__name',
                                lookup_expr='exact')
    assignee = filters.CharFilter(field_name="assignee__username",
                                  lookup_expr='contains')
    participant = filters.CharFilter(field_name="participant__username",
                                     lookup_expr='contains')
    dependsOn = filters.NumberFilter(field_name="dependsOn__number",
                                     lookup_expr='exact')
    sprint = filters.NumberFilter(field_name="sprint__seqnum",
                                  lookup_expr='exact')
    project = filters.CharFilter(field_name="project__name_short",
                                 lookup_expr='exact')
    logged_total__gt = DurationFilter(field_name='logged_total',
                                      lookup_expr='gt')
    logged_total__lt = DurationFilter(field_name='logged_total',
                                      lookup_expr='lt')
    logged_total = DurationFilter(field_name='logged_total',
                                  lookup_expr='exact')

    class Meta:
        model = Issue
        fields = {
            'priority': ['exact', 'lt', 'gt'],
            'type': ['exact'],
            'description': ['contains'],
            'due_date': ['exact', 'lt', 'gt'],
            'created': ['exact', 'lt', 'gt'],
            'storypoints': ['exact', 'lt', 'gt'],
            'archived': ['exact'],
            'sprint': ['isnull']
        }
Ejemplo n.º 2
0
class DataMartFilter(filters.FilterSet):
    """
    DataMartFilter
    """
    #active = filters.BooleanFilter()
    parent_id = MethodFilter(label=_("Parent Id"))
    id__in = NumberInFilter(name='id', label=_("IDs"))
    slug = filters.CharFilter(lookup_expr='iexact', label=_("Slug"))
    slug__icontains = filters.CharFilter(name='slug',
                                         lookup_expr='icontains',
                                         label=_("Slug (icontains)"))
    path = filters.CharFilter(lookup_expr='iexact', label=_("Path"))
    path__icontains = filters.CharFilter(name='path',
                                         lookup_expr='icontains',
                                         label=_("Path (icontains)"))

    class Meta:
        model = BaseDataMart
        fields = ['active']

    def filter_parent_id(self, name, queryset, value):
        key = name
        try:
            value = int(value)
        except ValueError:
            if value.lower() in ('none', 'null'):
                value = None
            else:
                key = 'parent__slug'
        return queryset.filter(**{"{}__exact".format(key): value})
Ejemplo n.º 3
0
class LocationGeometryFilterBase(GeoFilterSet):
    label = filters.CharFilter(name='label', lookup_expr='iexact')
    label__contains = filters.CharFilter(name='label', lookup_expr='icontains')

    name = filters.CharFilter(name='attributes__name', lookup_expr='exact')
    layer = filters.CharFilter(name='attributes__layer', lookup_expr='exact')
    region = filters.NumberFilter(name='attributes__region', action=filter_region_json)
Ejemplo n.º 4
0
class TagFilter(filters.FilterSet):
    keyword = filters.CharFilter(label=_('Keyword'),
                                 name='keyword',
                                 method='filter_keyword')
    name = filters.CharFilter(lookup_expr='icontains')

    is_active = filters.BooleanFilter(label=_('Is Active'),
                                      name='is_active',
                                      method='filter_is_actvie')

    class Meta:
        model = models.Tag
        exclude = []

    def filter_is_actvie(self, queryset, name, value):
        ''' True(value=1), False(value=0)'''
        q = Q(slug='') | Q(name='') | Q(mytaggit_taggeditem_items__isnull=True)
        if value == 1:
            return queryset.exclude(q)
        elif value == 0:
            return queryset.filter(q)
        return queryset

    def filter_keyword(self, queryset, name, value):
        print("filter_keyword", name, value)
        # q = Q(slug='') | Q(name='') | Q(mytaggit_taggeditem_items__isnull=True)
        return value and queryset.filter(
            Q(name__icontains=value) | Q(slug__icontains=value)) or queryset
Ejemplo n.º 5
0
class TasksFilter(filters.FilterSet):
    id = filters.NumberFilter(name='id', lookup_type='exact')
    parent_task = filters.NumberFilter(name='parent_task', lookup_type='exact')
    type = filters.CharFilter(name='type', lookup_type='icontains')
    status = filters.CharFilter(name='status', lookup_type='icontains')
    manager_comment = filters.CharFilter(name='manager_comment',
                                         lookup_type='icontains')
    is_demo = filters.BooleanFilter(name='is_demo', lookup_type='exact')
    is_active = filters.BooleanFilter(name='is_active', lookup_type='exact')
    created_by = filters.NumberFilter(name='created_by', lookup_type='exact')

    project = filters.NumberFilter(name='project', lookup_type='exact')
    passage = filters.NumberFilter(name='passage', lookup_type='exact')
    annotator = filters.NumberFilter(name='annotator', lookup_type='exact')

    class Meta:
        model = Tasks
        fields = {
            'id',
            'parent_task',
            'type',
            'status',
            'project',
            'passage',
            'annotator',
            'manager_comment',
            'is_demo',
            'created_by',
            'is_active',
        }
Ejemplo n.º 6
0
class StateProvinceFilter(filters.FilterSet):
    name = filters.CharFilter(name='name')
    abbreviation = filters.CharFilter(name='abbreviation')

    class Meta:
        model = StateProvince
        fields = ['id', 'name', 'abbreviation']
Ejemplo n.º 7
0
class ProjectFilter(django_filters.FilterSet):
    theme = django_filters.CharFilter(lookup_expr='iexact')
    fname = django_filters.CharFilter(lookup_expr='iexact')
    id = django_filters.CharFilter(lookup_expr='iexact')

    class Meta:
        model = IsioloProject
        fields = ['fname', 'theme']
Ejemplo n.º 8
0
class AboutUsFilter(filters.FilterSet):
    title = filters.CharFilter(name='title')
    subtitle = filters.CharFilter(name='subtitle')
    body = filters.CharFilter(name='body')

    class Meta:
        model = AboutUs
        fields = ['id', 'title', 'subtitle', 'body']
Ejemplo n.º 9
0
class HostFilter(filters.FilterSet):
    function_group = filters.RelatedFilter(FunctiongroupFilter,
                                           name='function_group')
    ip = filters.CharFilter(name='ip')
    port = filters.CharFilter(name='port')

    class Meta:
        model = Host
        fields = ['function_group', 'ip', 'port']
Ejemplo n.º 10
0
class MunicipioFilter(filters.FilterSet):
    estado_sigla = filters.CharFilter(name='estado__sigla')
    nome_municipio = filters.CharFilter(name='cidade__nome_municipio')
    situacao_adesao = filters.CharFilter(name='usuario__estado_processo',
                                         lookup_expr='istartswith')

    class Meta:
        model = Municipio
        fields = {'id', 'cnpj_prefeitura'}
Ejemplo n.º 11
0
class ProfileFilter(filters.FilterSet):
    username = filters.CharFilter(name='username')
    email = filters.CharFilter(name='email')
    first_name = filters.CharFilter(name='first_name')
    last_name = filters.CharFilter(name='last_name')

    class Meta:
        model = Profile
        fields = ['id', 'username', 'email', 'first_name', 'last_name']
Ejemplo n.º 12
0
class AccountFilter(filters.FilterSet):

    username = filters.CharFilter(field_name='username',
                                  lookup_expr="icontains")
    level = filters.CharFilter(field_name='level', lookup_expr="icontains")

    # q = filters.CharFilter(field_name='cus_coding', lookup_expr="icontains" )

    class Meta:
        model = Accounts
        fields = ['is_active']
Ejemplo n.º 13
0
class ProcessFilter(BaseResolweFilter):
    """Filter the Process endpoint."""

    category = filters.CharFilter(name='category', lookup_expr='startswith')
    type = filters.CharFilter(name='type', lookup_expr='startswith')
    scheduling_class = filters.AllLookupsFilter()

    class Meta(BaseResolweFilter.Meta):
        """Filter configuration."""

        model = Process
        fields = BaseResolweFilter.Meta.fields + ['category', 'type', 'scheduling_class']
Ejemplo n.º 14
0
class SplitFilter(filters.FilterSet):
    reader = filters.CharFilter(name='reader__id_str')
    tag = filters.CharFilter(name='tag__id_str')
    time_gte = filters.NumberFilter(name='time', lookup_type='gte')
    time_lte = filters.NumberFilter(name='time', lookup_type='lte')
    session = filters.NumberFilter(name='timingsession')
    checkpoint = filters.NumberFilter(name='reader__checkpoint', distinct=True)

    class Meta:
        model = Split
        fields = ('athlete', 'tag', 'session', 'reader', 'time_lte',
                  'time_gte', 'checkpoint')
Ejemplo n.º 15
0
class RelationFilter(BaseResolweFilter):
    """Filter the Relation endpoint."""

    category = filters.CharFilter(lookup_expr='iexact')
    collection = filters.ModelChoiceFilter(queryset=Collection.objects.all())
    type = filters.CharFilter(name='type__name')

    class Meta(BaseResolweFilter.Meta):
        """Filter configuration."""

        model = Relation
        fields = BaseResolweFilter.Meta.fields + [
            'category', 'collection', 'type'
        ]
Ejemplo n.º 16
0
class SublocationORFilter(BaseFilter):
    locname = django_filters.CharFilter(lookup_expr='iexact')
    sub_name = django_filters.CharFilter(lookup_expr='iexact')
    divname = django_filters.CharFilter(lookup_expr='iexact')
    distname = django_filters.CharFilter(lookup_expr='iexact')
    provname = django_filters.CharFilter(lookup_expr='iexact')

    class Meta:
        model = SubLocation
        fields = {
            'locname': ['iexact', ],
            'sub_name': ['iexact', ],
            
        }
Ejemplo n.º 17
0
class DataFilter(BaseResolweFilter):
    """Filter the Data endpoint."""

    collection = filters.RelatedFilter(CollectionFilter)
    type = filters.CharFilter(name='process__type', lookup_type='startswith')
    status = filters.CharFilter(lookup_expr='iexact')
    finished = filters.AllLookupsFilter()
    started = filters.AllLookupsFilter()
    process = filters.RelatedFilter(ProcessFilter)

    class Meta:
        """Filter configuration."""

        model = Data
Ejemplo n.º 18
0
class TeamMemberFilter(filters.FilterSet):
    user_id = filters.CharFilter(name='user_id')
    username = filters.CharFilter(name='username')
    is_partner = filters.BooleanFilter(name='is_partner')
    is_associate = filters.BooleanFilter(name='is_associate')
    email = filters.CharFilter(name='email')
    phone = filters.CharFilter(name='phone')
    first_name = filters.CharFilter(name='first_name')
    last_name = filters.CharFilter(name='last_name')
    bio = filters.CharFilter(name='bio')
    title = filters.CharFilter(name='title')

    class Meta:
        model = TeamMember
        fields = [
            'id',
            'user_id',
            'username',
            'is_partner',
            'is_associate',
            'email',
            'phone',
            'first_name',
            'last_name',
            'bio',
            'title',
        ]
Ejemplo n.º 19
0
class UserFilter(filters.FilterSet):
    email = filters.CharFilter(name='email')
    username = filters.CharFilter(name='username')
    first_name = filters.CharFilter(name='first_name')
    last_name = filters.CharFilter(name='last_name')

    class Meta:
        model = User
        fields = [
            'id',
            'username',
            'first_name',
            'last_name',
            'email',
        ]
Ejemplo n.º 20
0
class NotificationFilter(filters.FilterSet):
    owner = filters.RelatedFilter(UserProfileFilter, name='owner', queryset=UserProfile.objects.all())
    tags = filters.CharFilter(name="tags", method=array_field_filter(lookup_expr="contains"))
    # Overlap is useful if we have a set of tags and want to hit any notifications that match at least one
    tags__overlap = filters.CharFilter(name="tags", method=array_field_filter(lookup_expr="overlap"))

    class Meta:
        model = Notification
        fields = {
            "message": ALL_TEXT_LOOKUPS,
            "is_read": ['exact'],
            "date_created": DATE_LOOKUPS,
            "date_updated": DATE_LOOKUPS,
            "owner": FOREIGN_KEY_LOOKUPS
        }
Ejemplo n.º 21
0
class DataFilter(BaseResolweFilter):
    """Filter the Data endpoint."""

    collection = filters.RelatedFilter(CollectionFilter)
    entity = filters.ModelChoiceFilter(queryset=Entity.objects.all())
    type = filters.CharFilter(name='process__type', lookup_type='startswith')
    status = filters.CharFilter(lookup_expr='iexact')
    finished = filters.AllLookupsFilter()
    started = filters.AllLookupsFilter()
    process = filters.RelatedFilter(ProcessFilter)
    tags = TagsFilter()

    class Meta:
        """Filter configuration."""

        model = Data
class EventSignatureFilter(filters.FilterSet):
    created_at = filters.AllLookupsFilter(name='created_at')
    text_signature = filters.CharFilter(name='text_signature',
                                        lookup_type='icontains')
    bytes_signature = filters.MethodFilter()
    hex_signature = filters.MethodFilter()

    class Meta:
        model = EventSignature
        fields = [
            'created_at', 'text_signature', 'bytes_signature', 'hex_signature'
        ]

    def filter_bytes_signature(self, name, qs, value):
        if len(value) == 32:
            return qs.filter(bytes_signature=value)
        else:
            return qs

    def filter_hex_signature(self, name, qs, value):
        unprefixed_value = remove_0x_prefix(value.lower())

        if len(unprefixed_value) == 64:
            return qs.filter(hex_signature=unprefixed_value)
        else:
            return qs.filter(hex_signature__icontains=unprefixed_value)
Ejemplo n.º 23
0
class BrandFilter(filters.FilterSet):

    name = filters.CharFilter(name='name', lookup_type='icontains')

    class Meta:
        model = Brand
        fields = ('name',)
Ejemplo n.º 24
0
class ModelKitFilter(filters.FilterSet):

    name = filters.CharFilter(name='name', lookup_type='icontains')

    class Meta:
        model = ModelKit
        fields = ('brand', 'scale', 'name')
Ejemplo n.º 25
0
class F(FilterSet):
    """
    BOOL FILTER
    """
    """Filter for Books by if books are published or not"""
    check_params = filters.BooleanFilter(
        name='check_params')  #, method='params_checked')
    username = filters2.CharFilter(field_name='username')

    # def params_checked(self, queryset, name, value):
    #     # construct the full lookup expression.
    #     lookup = '__'.join([name, 'isnull'])
    #     return queryset.filter(**{lookup: False})

    # # alternatively, it may not be necessary to construct the lookup.
    # return queryset.filter(published_on__isnull=False)

    class Meta:
        model = models.Employee
        fields = ['check_params', 'username']


# class Author_by_paper_title_Filter(filters.FilterSet):
#     title = filters.AllLookupsFilter()
#     author__name = filters.CharFilter(field_name='author__name', lookup_expr='startswith')
#
#     class Meta:
#         model = models.Paper
#         fields = []
Ejemplo n.º 26
0
class ServiceFilter(filters.FilterSet):
    id = filters.CharFilter(name='id')
    title = filters.CharFilter(name='name_or_company')
    statement = filters.CharFilter(name='city')
    time_published = filters.CharFilter(name='user_id')
    description = filters.CharFilter(name='nickname')

    class Meta:
        model = Service
        fields = [
            'id',
            'title',
            'statement',
            'time_published',
            'description',
        ]
Ejemplo n.º 27
0
class MessagingSettingsFilter(filters.FilterSet):
    user_id = filters.CharFilter(name='user_id')
    duplicate_private = filters.BooleanFilter(name='duplicate_private')

    class Meta:
        model = MessagingSettings
        fields = ['id', 'duplicate_private', 'user_id']
Ejemplo n.º 28
0
class PermissionFilter(filters.FilterSet):

    q = filters.CharFilter(
        name="name", method=full_text_search(fields=["name", "codename"]))

    class Meta:
        model = Permission
        fields = {"name": ALL_TEXT_LOOKUPS, "codename": ALL_TEXT_LOOKUPS}
Ejemplo n.º 29
0
class SourcesFilter(filters.FilterSet):
    id = filters.NumberFilter(name='id', lookup_type='exact')
    text = filters.CharFilter(name='text', lookup_type='icontains')
    name = filters.CharFilter(name='name', lookup_type='icontains')
    is_default = filters.BooleanFilter(name='is_default', lookup_type='exact')
    is_active = filters.BooleanFilter(name='is_active', lookup_type='exact')
    created_by = filters.NumberFilter(name='created_by', lookup_type='exact')
    source = filters.NumberFilter(name='source', lookup_type='exact')

    class Meta:
        model = Sources
        fields = {
            'id',
            'text',
            'name',
            'created_by',
            'is_active',
        }
Ejemplo n.º 30
0
class TaskFilter(filters.FilterSet):
    owner = filters.RelatedFilter(UserProfileFilter, name='owner', queryset=UserProfile.objects.all())
    tags = filters.CharFilter(name="tags", method=array_field_filter(lookup_expr="contains"))
    # Overlap is useful if we have a set of tags and want to hit any notifications that match at least one
    tags__overlap = filters.CharFilter(name="tags", method=array_field_filter(lookup_expr="overlap"))

    class Meta:
        model = Task
        fields = {
            "content": ALL_TEXT_LOOKUPS,
            "title": ALL_TEXT_LOOKUPS,
            "date_created": DATE_LOOKUPS,
            "date_updated": DATE_LOOKUPS,
            "date_due": DATE_LOOKUPS,
            "date_completed": DATE_LOOKUPS,
            "owner": FOREIGN_KEY_LOOKUPS,
            "priority": INTEGER_LOOKUPS
        }