# coding=utf-8 import traceback from django.utils import timezone from django.db.models import Q from rest_framework.decorators import action from django.db import transaction from rest_framework.serializers import ValidationError from utils.permission import permission_required, isLogin from rest_framework.views import APIView from rest_framework_jwt.views import ObtainJSONWebToken, VerifyJSONWebToken, RefreshJSONWebToken from utils import response_error, response_ok from django.contrib.auth import get_user_model User = get_user_model() from apps.agent.serializers import AgentComboboxSerializer,StoreComboboxSerializer from utils.custom_modelviewset import CustomModelViewSet from apps.log.models import BizLog from apps.agent.models import Agent, Store 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, })