feat(itam): migrate app from own repo

!1
This commit is contained in:
2024-05-15 20:55:30 +09:30
parent f98e3bc9c2
commit 195bb5e4ab
33 changed files with 1303 additions and 1 deletions

View File

@ -29,5 +29,7 @@ class IndexView(PermissionRequiredMixin, LoginRequiredMixin, routers.APIRootView
{
"organizations": reverse("_api_orgs", request=request),
"teams": reverse("_api_teams", request=request),
"devices": reverse("_api_devices", request=request),
"software": reverse("_api_softwares", request=request),
}
)

View File

View File

@ -0,0 +1,19 @@
from django.contrib.auth.mixins import PermissionRequiredMixin, LoginRequiredMixin
from itam.models.device import Device
from rest_framework import views
from rest_framework.response import Response
class View(views.APIView):
def get(self, request, device_name):
device = Device.objects.get(slug=device_name)
return Response(device.get_configuration(device.id))
def get_view_name(self):
return "Device Config"

View File

@ -0,0 +1,24 @@
from django.contrib.auth.mixins import PermissionRequiredMixin, LoginRequiredMixin
from rest_framework import generics
from itam.models.device import Device
from api.serializers.itam.device import DeviceSerializer
class List(PermissionRequiredMixin, LoginRequiredMixin, generics.ListCreateAPIView):
permission_required = 'itam.view_device'
queryset = Device.objects.all()
serializer_class = DeviceSerializer
def get_view_name(self):
return "Devices"
class Detail(PermissionRequiredMixin, LoginRequiredMixin, generics.RetrieveUpdateDestroyAPIView):
permission_required = 'itam.view_device'
queryset = Device.objects.all()
serializer_class = DeviceSerializer
def get_view_name(self):
return "Device"

View File

@ -0,0 +1,24 @@
from django.contrib.auth.mixins import PermissionRequiredMixin, LoginRequiredMixin
from rest_framework import generics
from itam.models.software import Software
from api.serializers.itam.software import SoftwareSerializer
class List(PermissionRequiredMixin, LoginRequiredMixin, generics.ListCreateAPIView):
permission_required = 'itam.view_software'
queryset = Software.objects.all()
serializer_class = SoftwareSerializer
def get_view_name(self):
return "Softwares"
class Detail(PermissionRequiredMixin, LoginRequiredMixin, generics.RetrieveUpdateDestroyAPIView):
permission_required = 'itam.view_software'
queryset = Software.objects.all()
serializer_class = SoftwareSerializer
def get_view_name(self):
return "Software"