ecm 增加 same_allow_minute 字段

This commit is contained in:
曹前明 2022-07-12 13:19:14 +08:00
parent 011f9a2a4c
commit 57fe45a4d3
7 changed files with 78 additions and 27 deletions

View File

@ -59,33 +59,47 @@ xx = {'id': 1656652947266,
'domainId': None, 'domainId': None,
'infoArray': None, 'infoArray': None,
'protocol': None} 'protocol': None}
print(json.dumps(xx))
{'id': 1656727743278, {'id': 1656727743278,
'category': 'alarm', 'category': 'alarm',
'method': 'alarm.msg', 'method': 'alarm.msg',
'info': 'info':
{'orgName': '根节点', {'orgName': '根节点',
'nodeCode': '1000038$1$0$0', 'nodeCode': '1000038$1$0$0',
'deviceCode': '1000038', 'deviceCode': '1000038',
'alarmCode': '37f2b363-71aa-49c4-b352-711f4e098f46', 'alarmCode': '37f2b363-71aa-49c4-b352-711f4e098f46',
'alarmPicture': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_60524172_60587111.jpg', 'nodeType': 2, 'alarmDate': '1656727743', 'alarmGrade': 2, 'isSave': True, 'extend': {'faceImageUrl': ['6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_60524172_60587111.jpg'], 'glass': 0, 'beard': 0, 'candidateInfo': [], 'sex': 0, 'occurrenceCount': 0, 'deviceCode': '1000038', 'globalScenePicUrl': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_60425203_60524172.jpg', 'eye': 0, 'alarmType': 1001000, 'perFlag': -1, 'mouth': 0, 'feature': [], 'isHit': True, 'channelSeq': 0, 'szSerialUUID': '', 'channelName': '测试摄像头1', 'beginTime': 1656727739, 'endTime': 1656727739, 'age': -1, 'mask': 0}, 'unitType': 1, 'alarmType': 1001000, 'channelSeq': 0, 'orgCode': '001', 'channelName': '测试摄像头1', 'alarmStat': 1, 'isEvent': True}, 'subsystem': 'evo-face', 'userIds': None, 'sid': None, 'domainId': None, 'infoArray': None, 'protocol': None} 'alarmPicture': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_60524172_60587111.jpg', 'nodeType': 2, 'alarmDate': '1656727743', 'alarmGrade': 2, 'isSave': True, 'extend': {'faceImageUrl': ['6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_60524172_60587111.jpg'], 'glass': 0, 'beard': 0, 'candidateInfo': [], 'sex': 0, 'occurrenceCount': 0, 'deviceCode': '1000038', 'globalScenePicUrl': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_60425203_60524172.jpg', 'eye': 0, 'alarmType': 1001000, 'perFlag': -1, 'mouth': 0, 'feature': [], 'isHit': True, 'channelSeq': 0, 'szSerialUUID': '', 'channelName': '测试摄像头1', 'beginTime': 1656727739, 'endTime': 1656727739, 'age': -1, 'mask': 0}, 'unitType': 1, 'alarmType': 1001000, 'channelSeq': 0, 'orgCode': '001', 'channelName': '测试摄像头1', 'alarmStat': 1, 'isEvent': True}, 'subsystem': 'evo-face', 'userIds': None, 'sid': None, 'domainId': None, 'infoArray': None, 'protocol': None}
{'id': 1656731738555, {'id': 1656731738555,
'category': 'alarm', 'category': 'alarm',
'method': 'alarm.msg', 'method': 'alarm.msg',
'info': {'orgName': '根节点', 'info': {'orgName': '根节点',
'nodeCode': '1000038$1$0$0', 'nodeCode': '1000038$1$0$0',
'deviceCode': '1000038', 'deviceCode': '1000038',
'alarmCode': 'a66160f7-9ceb-4540-a6be-9cb6ec311b5f', 'alarmCode': 'a66160f7-9ceb-4540-a6be-9cb6ec311b5f',
'alarmPicture': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61221133_61249479.jpg', 'alarmPicture': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61221133_61249479.jpg',
'nodeType': 2, 'alarmDate': '1656731735', 'nodeType': 2, 'alarmDate': '1656731735',
'alarmGrade': 2, 'isSave': True, 'alarmGrade': 2, 'isSave': True,
'extend': {'faceImageUrl': ['6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61221133_61249479.jpg'], 'extend': {'faceImageUrl': ['6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61221133_61249479.jpg'],
'glass': 0, 'beard': 0, 'glass': 0, 'beard': 0,
'candidateInfo': 'candidateInfo':
[{'birthday': '2022-7-2', [{'birthday': '2022-7-2',
'faceImageUrl': ['6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61249479_61322881.jpg'], 'groupName': '内部库1', 'similarity': 99, 'sex': 1, 'cardType': 1, 'name': '曹前明', 'devPersonId': '15', 'id': '342422199004040175', 'type': 0}], 'sex': 0, 'occurrenceCount': 0, 'deviceCode': '1000038', 'globalScenePicUrl': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61130541_61221133.jpg', 'eye': 0, 'alarmType': 1001003, 'perFlag': -1, 'mouth': 0, 'feature': [], 'isHit': True, 'channelSeq': 0, 'szSerialUUID': '', 'channelName': '测试摄像头1', 'beginTime': 1656731735, 'endTime': 1656731735, 'age': -1, 'mask': 0}, 'unitType': 1, 'alarmType': 1001003, 'channelSeq': 0, 'orgCode': '001', 'channelName': '测试摄像头1', 'alarmStat': 1, 'isEvent': True}, 'faceImageUrl': ['6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61249479_61322881.jpg'], 'groupName': '内部库1', 'similarity': 99, 'sex': 1, 'cardType': 1, 'name': '曹前明', 'devPersonId': '15', 'id': '342422199004040175', 'type': 0}], 'sex': 0, 'occurrenceCount': 0, 'deviceCode': '1000038', 'globalScenePicUrl': '6ad010cf-ce45-11ec-9715-e4246c7d1635/20220622/1/dsf_453810dc-f202-11ec-bd2d-e4246c7d1635_61130541_61221133.jpg', 'eye': 0, 'alarmType': 1001003, 'perFlag': -1, 'mouth': 0, 'feature': [], 'isHit': True, 'channelSeq': 0, 'szSerialUUID': '', 'channelName': '测试摄像头1', 'beginTime': 1656731735, 'endTime': 1656731735, 'age': -1, 'mask': 0}, 'unitType': 1, 'alarmType': 1001003, 'channelSeq': 0, 'orgCode': '001', 'channelName': '测试摄像头1', 'alarmStat': 1, 'isEvent': True},
'subsystem': 'evo-face', 'userIds': None, 'sid': None, 'domainId': None, 'infoArray': None, 'protocol': None} 'subsystem': 'evo-face', 'userIds': None, 'sid': None, 'domainId': None, 'infoArray': None, 'protocol': None}
json_data = {
"json": {"deviceCode": "1000038", "operation": "generalJsonTransport", "params":
{"id": "xxxxx001", "method": "dev.snap", "params": {"DevID": "1000038", "DevChannel": "1000038$1$0$1", "SnapType": 1, "CmdSrc": 0}}},
"code": "dev_snap"
}
params_dict = {"id": "xxxxx001",
"method": "dev.snap",
"params":
{
"DevID": "1000038",
"DevChannel": "1000038$1$0$1",
"SnapType": 1,
"CmdSrc": 0}}

View File

@ -0,0 +1,18 @@
# Generated by Django 3.2.12 on 2022-07-12 05:18
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('ecm', '0010_auto_20220712_0855'),
]
operations = [
migrations.AddField(
model_name='eventcate',
name='same_allow_minute',
field=models.PositiveSmallIntegerField(default=0, help_text='同一对象同事件多长时间内不再触发, 0代表一直触发', verbose_name='允许时间'),
),
]

View File

@ -29,6 +29,7 @@ class EventCate(CommonAModel):
filter_area_level = models.PositiveSmallIntegerField('固定喇叭区域级别过滤', choices=Area.AREA_LEVEL_CHOICES, filter_area_level = models.PositiveSmallIntegerField('固定喇叭区域级别过滤', choices=Area.AREA_LEVEL_CHOICES,
default=Area.AREA_1) default=Area.AREA_1)
hanle_minute = models.PositiveSmallIntegerField('处理时间', default=0, help_text='超过处理时间事件状态变为超时未处理,0代表未配置') hanle_minute = models.PositiveSmallIntegerField('处理时间', default=0, help_text='超过处理时间事件状态变为超时未处理,0代表未配置')
same_allow_minute = models.PositiveSmallIntegerField('允许时间', default=0, help_text='同一对象同事件多长时间内不再触发, 0代表一直触发')
def __str__(self): def __str__(self):
return self.name return self.name

View File

@ -32,7 +32,7 @@ class EventCateUpdateSerializer(CustomModelSerializer):
class Meta: class Meta:
model = EventCate model = EventCate
fields = ['speaker_on', 'speakers', 'filter_area_level', fields = ['speaker_on', 'speakers', 'filter_area_level',
'voice_person', 'handle_minute', 'voice_num', 'priority'] 'voice_person', 'handle_minute', 'voice_num', 'priority', 'same_allow_minute']
class NotifySettingsSerializer(CustomModelSerializer): class NotifySettingsSerializer(CustomModelSerializer):

View File

@ -122,3 +122,15 @@ class DhClient:
"""返回完整访问地址 """返回完整访问地址
""" """
return '{}/evo-apigw/evo-oss/{}?token={}'.format(settings.DAHUA_BASE_URL, path, self.token) return '{}/evo-apigw/evo-oss/{}?token={}'.format(settings.DAHUA_BASE_URL, path, self.token)
def snap(self, code: str):
"""摄像头实时截图
Args:
code (str): 视频通道编号
"""
json_data = {
"deviceCode": "1000038",
"operation": "generalJsonTransport",
"params": "{\"method\":\"dev.snap\",\"id\":123,\"params\":{\"DevID\":\"1000038\",\"DevChannel\":0,\"PicNum\":1,\"SnapType\":1,\"CmdSrc\":0}}",
}

View File

@ -95,6 +95,10 @@ dhapis = {
"alarm_detail": { "alarm_detail": {
"url": "/evo-apigw/evo-event/1.2.0/alarm-record/detail?alarmCode={alarmCode}&dbType={dbType}&alarmDate={alarmDate}", "url": "/evo-apigw/evo-event/1.2.0/alarm-record/detail?alarmCode={alarmCode}&dbType={dbType}&alarmDate={alarmDate}",
"method": "get" "method": "get"
},
"dev_snap": {
"url": "/evo-apigw/admin/API/EVO/invoke/DMS",
"method": "post"
} }
} }

View File

@ -8,6 +8,7 @@ from django.db import transaction
from apps.third.clients import dhClient from apps.third.clients import dhClient
from apps.third.tapis import dhapis from apps.third.tapis import dhapis
from apps.system.serializers import UserSimpleSerializer from apps.system.serializers import UserSimpleSerializer
from apps.wf.serializers import TicketSimpleSerializer
class VisitCreateUpdateSerializer(CustomModelSerializer): class VisitCreateUpdateSerializer(CustomModelSerializer):
@ -19,6 +20,7 @@ class VisitCreateUpdateSerializer(CustomModelSerializer):
class VisitSerializer(CustomModelSerializer): class VisitSerializer(CustomModelSerializer):
receptionist_ = UserSimpleSerializer(source='receptionist', read_only=True) receptionist_ = UserSimpleSerializer(source='receptionist', read_only=True)
ticket_ = TicketSimpleSerializer(source='ticket', read_only=True)
class Meta: class Meta:
model = Visit model = Visit