diff --git a/apps/ecm/service.py b/apps/ecm/service.py index 53a21aaf..1aa75c87 100644 --- a/apps/ecm/service.py +++ b/apps/ecm/service.py @@ -118,7 +118,7 @@ def save_voice_and_speak(event: Event): Args: event (Event): _description_ """ - main_cate = event.cates.all().order_by('-priority', 'create_time').first() + main_cate = event.cates.all().order_by('priority', 'create_time').first() v_p, v_num = main_cate.voice_person, main_cate.voice_num _, event.voice, _ = generate_voice(event.voice_msg, v_p) event.save() @@ -224,7 +224,7 @@ def dispatch_dahua_event(data: dict): if alarm_type in [1001003, 1001000] and vchannel: # 内部人员/或陌生人报警 # 查看加载的算法 algo_codes = list(AlgoChannel.objects.filter(vchannel=vchannel).exclude( - algo__code=None).order_by('-algo__priority', 'algo__create_time').values_list('algo__code', flat=True)) + algo__code=None).order_by('algo__priority', 'algo__create_time').values_list('algo__code', flat=True)) area = vchannel.area # 视频所在区域 if algo_codes and area: # 如果加载了算法且视频通道绑定区域才继续 face_img_o = dhClient.get_full_pic(data['info']['alarmPicture']) diff --git a/apps/ecm/views.py b/apps/ecm/views.py index cd5b2154..ec3d9ff6 100644 --- a/apps/ecm/views.py +++ b/apps/ecm/views.py @@ -26,7 +26,7 @@ class EventCateViewSet(CreateModelMixin, UpdateModelMixin, ListModelMixin, Custo update_serializer_class = EventCateCreateUpdateSerializer serializer_class = EventCateListSerializer filterset_fields = ['self_algo'] - ordering = ['-priority', 'create_time'] + ordering = ['priority', 'create_time'] class AlgoChannelViewSet(CreateModelMixin, DestroyModelMixin, ListModelMixin, CustomGenericViewSet): @@ -120,12 +120,12 @@ class EventViewSet(ListModelMixin, RetrieveModelMixin, CustomGenericViewSet): queryset = queryset.filter(event__handle_user=None) ret['total_count'] = queryset.count() if vdata.get('completed', True): - ret['details'] = list(EventCate.objects.order_by('-priority', 'create_time').annotate(cate=F('id'), + ret['details'] = list(EventCate.objects.order_by('priority', 'create_time').annotate(cate=F('id'), cate__name=F('name'), cate__trigger=F('trigger')).values('cate', 'cate__name')) for i in ret['details']: i['count'] = queryset.filter(cate__id=i['cate']).count() else: - ret['details'] = list(queryset.order_by('-cate__priority', 'cate__create_time').values( + ret['details'] = list(queryset.order_by('cate__priority', 'cate__create_time').values( 'cate', 'cate__name', 'cate__trigger').annotate(count=Count('cate'))) return Response(ret)