Forráskód Böngészése

新增分享设备编辑用户名接口

linhaohong 1 éve
szülő
commit
68eb5f19b5
2 módosított fájl, 28 hozzáadás és 3 törlés
  1. 26 3
      Controller/DeviceShare.py
  2. 2 0
      Model/models.py

+ 26 - 3
Controller/DeviceShare.py

@@ -17,11 +17,12 @@ import time
 
 from django.views.generic.base import View
 
-from Ansjer.config import SERVER_DOMAIN
+from Ansjer.config import SERVER_DOMAIN, LOGGER
 from Controller.SensorGateway.EquipmentFamilyController import EquipmentFamilyView
 from Controller.UserDevice.UserDeviceShareController import UserDeviceShareView
 from Model.models import Device_Info, Device_User, DeviceChannelUserSet, DeviceChannelUserPermission
 from Model.models import UID_Bucket
+from Object.ContentSecurityObject import ContentSecurity
 from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
@@ -63,6 +64,8 @@ class DeviceShareView(View):
                     return self.do_delete_userV2(userID, request_dict, response)
                 elif operation == 'getDeviceShareCount':
                     return self.get_device_share_count(request_dict, response)
+                elif operation == 'editUserNotes':
+                    return self.edit_user_notes(request_dict, response)
                 else:
                     return response.json(414)
             else:
@@ -244,11 +247,11 @@ class DeviceShareView(View):
             # 查询分享获得的用户
             qs = Device_Info.objects.filter(UID=UID, isShare=True, primaryUserID=userID, isExist=1). \
                 values('userID__NickName', 'userID__username', 'userID__userEmail', 'userID__phone', 'id', 'userID',
-                       'userID__userIconPath')
+                       'userID__userIconPath', 'noteName')
             data = []
             # print(qs)
             for q in qs:
-                d = {'id': q['id'], 'userID': q['userID']}
+                d = {'id': q['id'], 'userID': q['userID'], 'noteName': q['noteName']}
                 if q['userID__NickName']:
                     d['user'] = q['userID__NickName']
                 elif q['userID__username']:
@@ -314,3 +317,23 @@ class DeviceShareView(View):
             return True
         else:
             return False
+
+    @staticmethod
+    def edit_user_notes(request_dict, response):
+        deviceInfoId = request_dict.get('id', None)
+        noteName = request_dict.get('noteName', None)
+        if not all([deviceInfoId, noteName]):
+            return response.json(444)
+        try:
+            service = 'nickname_detection'
+            service_dict = {'content': noteName}
+            service_parameters = json.dumps(service_dict)
+            legal = ContentSecurity().text_review(service, service_parameters)
+            if not legal:
+                return response.json(108)
+            Device_Info.objects.filter(id=deviceInfoId).update(noteName=noteName)
+            return response.json(0)
+        except Exception as e:
+            LOGGER.info('DeviceShareView.edit_user_notes,errLine:{}, errMsg:{}'
+                        .format(e.__traceback__.tb_lineno, repr(e)))
+            return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))

+ 2 - 0
Model/models.py

@@ -267,6 +267,8 @@ class Device_Info(models.Model):
     isCameraOpenCloud = models.SmallIntegerField(blank=True, default=1, verbose_name='是否开启云存')  # 0:不开启  1:开启
     serial_number = models.CharField(blank=True, max_length=9, default='', verbose_name='关联序列号')
     audioVideoButton = models.SmallIntegerField(default=0, verbose_name='音视频通话按钮')
+    #分享用户备注名
+    noteName = models.CharField(max_length=64, verbose_name=u'用户备注名', default='', blank=True)
     ###
     REQUIRED_FIELDS = []