# coding=utf-8 from utils.custom_modelviewset import CustomModelViewSet from django.db.models import Q from utils import response_ok, response_error from .models import Agent,Store from .serializers import AgentSerializer,StoreSerializer from utils.permission import permission_required, isLogin from rest_framework.views import APIView from apps.agent.serializers import AgentComboboxSerializer,StoreComboboxSerializer class AgentViewSet(CustomModelViewSet): permission_classes = [] queryset = Agent.objects.filter() serializer_class = AgentSerializer class StoreViewSet(CustomModelViewSet): permission_classes = [] queryset = Store.objects.filter() serializer_class = StoreSerializer class AgentDictView(APIView): permission_classes = [isLogin, ] def get(self, request): rows = Agent.objects.filter(Q(create_user=request.user) | Q(id=request.user.agent_id)) agents = AgentComboboxSerializer(rows, many=True).data stores = [] for row in rows: store = Store.objects.filter(agent=row, enable=True, end_date__gte=timezone.now().date()) store_serializer = StoreComboboxSerializer(store, many=True).data stores.append(store_serializer) return response_ok({ 'agents': agents, 'stores': stores, })