Browse Source

转移设备创建新用户推送信息

zhangdongming 7 tháng trước cách đây
mục cha
commit
ce978d734f
1 tập tin đã thay đổi với 46 bổ sung1 xóa
  1. 46 1
      Controller/CloudTransfer.py

+ 46 - 1
Controller/CloudTransfer.py

@@ -14,12 +14,13 @@ from django.views.generic.base import View
 
 
 from Model.models import Device_User, Device_Info, Order_Model, UID_Bucket, StsCrdModel, VodHlsModel, Unused_Uid_Meal, \
 from Model.models import Device_User, Device_Info, Order_Model, UID_Bucket, StsCrdModel, VodHlsModel, Unused_Uid_Meal, \
     VodBucketModel, UnicomDeviceInfo, LogModel, UidPushModel, AiService, UidSetModel, UserFamily, FamilyRoomDevice, \
     VodBucketModel, UnicomDeviceInfo, LogModel, UidPushModel, AiService, UidSetModel, UserFamily, FamilyRoomDevice, \
-    UserAudioVideoPush
+    UserAudioVideoPush, GatewayPush
 from Object.ResponseObject import ResponseObject
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Object.TokenObject import TokenObject
 from Service.CommonService import CommonService
 from Service.CommonService import CommonService
 from Service.ModelService import ModelService
 from Service.ModelService import ModelService
 from Service.VodHlsService import SplitVodHlsObject
 from Service.VodHlsService import SplitVodHlsObject
+from Ansjer.config import LOGGER
 
 
 
 
 class cloudTestView(View):
 class cloudTestView(View):
@@ -153,6 +154,7 @@ class cloudTestView(View):
                 # 双通话键设备
                 # 双通话键设备
                 UserAudioVideoPush.objects.filter(uid=uid).update(buttonUser1=newUserID, buttonUser2=newUserID,
                 UserAudioVideoPush.objects.filter(uid=uid).update(buttonUser1=newUserID, buttonUser2=newUserID,
                                                                   updated_time=int(time.time()))
                                                                   updated_time=int(time.time()))
+                self.add_user_phone_push(newUserID, uid)
 
 
                 # 记录设备转移日志
                 # 记录设备转移日志
                 ip = CommonService.get_ip_address(request)
                 ip = CommonService.get_ip_address(request)
@@ -180,6 +182,49 @@ class cloudTestView(View):
         else:
         else:
             return response.json(0)
             return response.json(0)
 
 
+    @classmethod
+    def add_user_phone_push(cls, userID, UID):
+        """
+        根据userID查询用户手机推送令牌信息
+        """
+        try:
+            uid_set_qs = UidSetModel.objects.filter(uid=UID).values('id')
+            if uid_set_qs.exists():
+                uid_set_id = uid_set_qs[0]['id']
+                now_time = int(time.time())
+                uid_push_qs = UidPushModel.objects.filter(userID=userID).values_list('appBundleId', 'app_type',
+                                                                                     'push_type', 'token_val',
+                                                                                     'jg_token_val', 'm_code',
+                                                                                     'lang', 'tz').order_by('-updTime')
+                count = 0
+                if uid_push_qs.exists():
+                    for item in set(list(uid_push_qs)):
+                        UidPushModel.objects.create(userID_id=userID, appBundleId=item[0], app_type=item[1],
+                                                    push_type=item[2], token_val=item[3], jg_token_val=item[4],
+                                                    m_code=item[5], lang=item[6], tz=item[7], addTime=now_time,
+                                                    updTime=now_time, uid_set_id=uid_set_id)
+                        count += 1
+                        if count >= 4:
+                            break
+                else:
+                    gateway_push_qs = GatewayPush.objects.filter(user_id=userID, logout=False).values(
+                        'app_bundle_id', 'm_code', 'app_type', 'push_type', 'token_val', 'lang', 'jg_token_val',
+                        'tz').order_by('-id')
+                    for item in gateway_push_qs:
+                        UidPushModel.objects.create(userID_id=userID, appBundleId=item['app_bundle_id'],
+                                                    app_type=item['app_type'], addTime=now_time,
+                                                    push_type=item['push_type'], updTime=now_time,
+                                                    token_val=item['token_val'], uid_set_id=uid_set_id,
+                                                    jg_token_val=item['jg_token_val'], lang=item['lang'],
+                                                    m_code=item['m_code'], tz=item['tz'])
+                        count += 1
+                        if count >= 4:
+                            break
+
+        except Exception as e:
+            LOGGER.error('添加用户设备推送异常,uid:{},error_line:{}, error_msg:{}'
+                         .format(UID, e.__traceback__.tb_lineno, repr(e)))
+
     def mealTransfer(self, request, request_dict, response, userID):
     def mealTransfer(self, request, request_dict, response, userID):
         # 云存套餐转移,同一用户下不同设备间的云存套餐转移
         # 云存套餐转移,同一用户下不同设备间的云存套餐转移
         old_uid = request_dict.get("old_uid", None)
         old_uid = request_dict.get("old_uid", None)