Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
wbcrm / crm / views / api / entry_fields.py
Size: Mime:
from rest_framework import filters, viewsets

from crm.models.entry_fields import CompanyType, EntryStatus, PersonPrefix, Tag
from crm.serializers.entry_fields import (CompanyTypeSerializer,
                                         EntryStatusSerializer,
                                         PersonPrefixSerializer, TagSerializer)

from wbutils.views import AppModelResponseHeaderMixin

class PersonPrefixViewSet(AppModelResponseHeaderMixin, viewsets.ModelViewSet):
    IDENTIFIER = 'crm:personprefix'
    filter_backends = (filters.SearchFilter,)
    search_fields = ('title',)
    queryset = PersonPrefix.objects.all()
    serializer_class = PersonPrefixSerializer


class CompanyTypeViewSet(AppModelResponseHeaderMixin, viewsets.ModelViewSet):
    IDENTIFIER = 'crm:companytype'
    filter_backends = (filters.OrderingFilter, filters.SearchFilter,)
    search_fields = ('title',)
    queryset = CompanyType.objects.all()
    serializer_class = CompanyTypeSerializer


class TagViewSet(AppModelResponseHeaderMixin, viewsets.ModelViewSet):
    IDENTIFIER = 'crm:tag'
    filter_backends = (filters.SearchFilter,)
    search_fields = ('text',)
    queryset = Tag.objects.all()
    serializer_class = TagSerializer


class EntryStatusViewSet(AppModelResponseHeaderMixin, viewsets.ModelViewSet):
    IDENTIFIER = 'crm:entrystatus'
    queryset = EntryStatus.objects.all()
    serializer_class = EntryStatusSerializer