update location filter

This commit is contained in:
Mohamed Nouffer
2022-09-27 21:10:59 +05:30
parent 50fa4ac71b
commit 29490698f5

View File

@ -61,25 +61,25 @@ def LocationsInPerf(request):
if(cat): if(cat):
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat)
else: else:
if grp: if grp:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp=0, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, cp__gt=0, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat)
else: else:
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(geom__within=perf_geom.geom, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom)
else: else:
if grp: if grp:
locs = Location.objects.filter(geom__within=perf_geom.geom, cp=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, cp=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom)
serializer = LocationSerializer(locs, many=True) serializer = LocationSerializer(locs, many=True)
return JsonResponse(serializer.data, safe=False) return JsonResponse(serializer.data, safe=False)
@ -94,22 +94,22 @@ def LocationsInSubPerf(request):
if(cat): if(cat):
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat)
else: else:
if grp: if grp:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, cp=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat)
else: else:
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(geom__within=perf_geom.geom, cp__gt=0, cp=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom)
else: else:
locs = Location.objects.filter(geom__within=perf_geom.geom, cp=0) locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom)
serializer = LocationSerializer(locs, many=True) serializer = LocationSerializer(locs, many=True)
return JsonResponse(serializer.data, safe=False) return JsonResponse(serializer.data, safe=False)
@ -133,25 +133,25 @@ def LocationInBound(request):
if(cat): if(cat):
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True)
else: else:
if grp: if grp:
locs = Location.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, cp=0, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True, cp=0, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, cp=0) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True)
else: else:
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(geom__within=pl, event_name__isnull=True, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=pl, event_name__isnull=True, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True)
else: else:
if grp: if grp:
locs = Location.objects.filter(geom__within=pl, event_name__isnull=True, cp=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True, group__contains=grp)
else: else:
locs = Location.objects.filter(geom__within=pl, event_name__isnull=True, cp=0) locs = Location.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True)
if len(locs) > 50: if len(locs) > 50:
return JsonResponse({"too_many_points": True}, safe=False, status=500) return JsonResponse({"too_many_points": True}, safe=False, status=500)
else: else:
@ -387,25 +387,25 @@ def CustomAreaLocations(request):
if(cat != None): if(cat != None):
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(event_name__isnull=False, category=cat, event_name=name, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name, group__contains=grp)
else: else:
locs = Location.objects.filter(event_name__isnull=False, category=cat, event_name=name, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name)
else: else:
if grp: if grp:
locs = Location.objects.filter(event_name__isnull=False, category=cat, event_name=name, cp=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name, group__contains=grp)
else: else:
locs = Location.objects.filter(event_name__isnull=False, category=cat, event_name=name, cp=0) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name)
else: else:
if is_rog: if is_rog:
if grp: if grp:
locs = Location.objects.filter(event_name__isnull=False, event_name=name, cp__gt=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name, group__contains=grp)
else: else:
locs = Location.objects.filter(event_name__isnull=False, event_name=name, cp__gt=0) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name)
else: else:
if grp: if grp:
locs = Location.objects.filter(event_name__isnull=False, event_name=name, cp=0, group__contains=grp) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name, group__contains=grp)
else: else:
locs = Location.objects.filter(event_name__isnull=False, event_name=name, cp=0) locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name)
serializer = LocationSerializer(locs, many=True) serializer = LocationSerializer(locs, many=True)
return JsonResponse(serializer.data, safe=False) return JsonResponse(serializer.data, safe=False)