|
|
@@ -269,21 +269,33 @@ class APPAlarmAPIView(APIView):
|
|
|
# 气象站与测报预警
|
|
|
request_data = request.data
|
|
|
type_id = request_data.get("type_id")
|
|
|
+ page_num = int(request_data.get("page", 1)) if request_data.get("page") else 1
|
|
|
+ page_size = int(request_data.get("page_size", 10)) if request_data.get("page_size") else 10
|
|
|
data = {}
|
|
|
+ total_obj = 0
|
|
|
if type_id == "3":
|
|
|
# 虫情
|
|
|
- query = MongoCBDPestWarning.objects.all().order_by("-upltime")
|
|
|
- pest_serializers = MongoCBDPestWarningSerializers(query, many=True)
|
|
|
+ queryset = MongoCBDPestWarning.objects.all().order_by("-upltime")
|
|
|
+ total_obj = queryset.count()
|
|
|
+ paginator = Paginator(queryset, page_size)
|
|
|
+ page_obj = paginator.get_page(page_num)
|
|
|
+ pest_serializers = MongoCBDPestWarningSerializers(page_obj, many=True)
|
|
|
data = pest_serializers.data
|
|
|
elif type_id == "5":
|
|
|
- query = MongoQXZ_Alarm_Log_New.objects.filter(warning_name="5").order_by("-upl_time")
|
|
|
- qxz_serializers = MongoQXZAlarmLogNewSerializers(query, many=True)
|
|
|
+ queryset = MongoQXZ_Alarm_Log_New.objects.filter(warning_name="5").order_by("-upl_time")
|
|
|
+ total_obj = queryset.count()
|
|
|
+ paginator = Paginator(queryset, page_size)
|
|
|
+ page_obj = paginator.get_page(page_num)
|
|
|
+ qxz_serializers = MongoQXZAlarmLogNewSerializers(page_obj, many=True)
|
|
|
data = qxz_serializers.data
|
|
|
elif type_id == "8":
|
|
|
- query = MongoQXZ_Alarm_Log_New.objects.filter(warning_name="8").order_by("-upl_time")
|
|
|
- qxz_serializers = MongoQXZAlarmLogNewSerializers(query, many=True)
|
|
|
+ queryset = MongoQXZ_Alarm_Log_New.objects.filter(warning_name="8").order_by("-upl_time")
|
|
|
+ total_obj = queryset.count()
|
|
|
+ paginator = Paginator(queryset, page_size)
|
|
|
+ page_obj = paginator.get_page(page_num)
|
|
|
+ qxz_serializers = MongoQXZAlarmLogNewSerializers(page_obj, many=True)
|
|
|
data = qxz_serializers.data
|
|
|
- return Response({"code": 0, "msg": "success", "data": data})
|
|
|
+ return Response({"code": 0, "msg": "success", "data": data, "nums": total_obj})
|
|
|
|
|
|
|
|
|
class QxzCameraList(APIView):
|