add redis cache, Acquisition & django-esi

This commit is contained in:
2023-10-29 12:12:25 +01:00
parent f92d518468
commit f860a5bf1d
10 changed files with 95 additions and 54 deletions

View File

@@ -1,21 +1,20 @@
from django.shortcuts import render
from django.contrib.auth.models import User, Group
from django.http import JsonResponse
from django.db.models import Q
from django.contrib.auth import models as auth_models
from rest_framework import viewsets, permissions, settings
from rest_framework.decorators import api_view
from rest_framework.response import Response
from api import serializers
from sde import serializers as sde_serializers
from django.http import JsonResponse
from django.db.models import Q
from sde.models import SDEType
from api import serializers, models
from sde import serializers as sde_serializers, models as sde_models
class UserViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows users to be viewed or edited.
"""
queryset = User.objects.all().order_by('-date_joined')
queryset = auth_models.User.objects.all().order_by('-date_joined')
serializer_class = serializers.UserSerializer
permission_classes = [permissions.IsAuthenticated]
@@ -24,11 +23,20 @@ class GroupViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows groups to be viewed or edited.
"""
queryset = Group.objects.all()
queryset = auth_models.Group.objects.all()
serializer_class = serializers.GroupSerializer
permission_classes = [permissions.IsAuthenticated]
class AcquisitionViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows acquisitions to be viewed or edited.
"""
queryset = models.Acquisition.objects.all().order_by('-date')
serializer_class = serializers.AcquisitionSerializer
permission_classes = [permissions.IsAuthenticated]
@api_view(['POST'])
def custom_types_search(request):
items = []
@@ -51,7 +59,7 @@ def custom_types_search(request):
if "not" in mods:
condition = ~condition
items.extend(SDEType.objects.filter(condition))
items.extend(sde_models.SDEType.objects.filter(condition))
paginator = settings.api_settings.DEFAULT_PAGINATION_CLASS()
result_page = paginator.paginate_queryset(items, request)
@@ -69,7 +77,7 @@ def reprocess_eval(request):
item_reprocess = []
for rawitem in ep_items["items"]:
item = SDEType.objects.get(id=rawitem["typeID"])
item = sde_models.SDEType.objects.get(id=rawitem["typeID"])
buy_reprocess = sell_reprocess = 0.0
for mat in item.typematerials.all():
try: