Extract get_object_by_lookup_fields method

Issue: HIC-178
Change-Id: I406ce8b8ca0b5dbec587a6786f820746240bc835
diff --git a/crashreports/rest_api_crashreports.py b/crashreports/rest_api_crashreports.py
index 30da54a..40a1adb 100644
--- a/crashreports/rest_api_crashreports.py
+++ b/crashreports/rest_api_crashreports.py
@@ -1,7 +1,6 @@
 """REST API for accessing crash reports."""
 from drf_yasg import openapi
 from drf_yasg.utils import swagger_auto_schema
-from django.shortcuts import get_object_or_404
 from django.utils.decorators import method_decorator
 from rest_framework import status, generics
 from rest_framework.response import Response
@@ -12,6 +11,7 @@
     SWAGGER_SECURITY_REQUIREMENTS_ALL,
 )
 from crashreports.serializers import CrashReportSerializer
+from crashreports.utils import get_object_by_lookup_fields
 from crashreports.models import Crashreport
 from crashreports.response_descriptions import default_desc
 
@@ -137,11 +137,4 @@
 
     def get_object(self):
         """Retrieve a crash report."""
-        queryset = self.get_queryset()
-        query_filter = {}
-        for field in self.multiple_lookup_fields:
-            if field in self.kwargs:
-                query_filter[field] = self.kwargs[field]
-        obj = get_object_or_404(queryset, **query_filter)
-        self.check_object_permissions(self.request, obj)
-        return obj
+        return get_object_by_lookup_fields(self, self.multiple_lookup_fields)