Quellcode durchsuchen

优化解绑uid重置region_id代码

locky vor 2 Jahren
Ursprung
Commit
b7a27aa6e2
3 geänderte Dateien mit 13 neuen und 40 gelöschten Zeilen
  1. 2 0
      Ansjer/config.py
  2. 8 15
      Controller/SerialNumberController.py
  3. 3 25
      Object/RedisObject.py

+ 2 - 0
Ansjer/config.py

@@ -18,6 +18,8 @@ BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 # 序列号redis列表
 USED_SERIAL_REDIS_LIST = 'used_serial_redis_list'
 UNUSED_SERIAL_REDIS_LIST = 'unused_serial_redis_list'
+RESET_REGION_ID_SERIAL_REDIS_LIST = 'reset_region_id_serial_redis_list'
+
 # 地区id列表
 REGION_ID_LIST = [1, 2, 3, 4, 5]
 

+ 8 - 15
Controller/SerialNumberController.py

@@ -9,7 +9,7 @@ from django.views import View
 
 from Ansjer.config import CRCKey, CONFIG_INFO, CONFIG_TEST, CONFIG_US, \
     CONFIG_CN, USED_SERIAL_REDIS_LIST, UNUSED_SERIAL_REDIS_LIST, SERVER_DOMAIN_US, REGION_ID_LIST, SERVER_DOMAIN_TEST, \
-    SERVER_DOMAIN_LIST, SERVER_DOMAIN_CN, SERVER_DOMAIN_EUR
+    SERVER_DOMAIN_LIST, SERVER_DOMAIN_CN, SERVER_DOMAIN_EUR, RESET_REGION_ID_SERIAL_REDIS_LIST
 from Model.models import SerialNumberModel, CompanySerialModel, UIDCompanySerialModel, UIDModel, Device_Info, \
     iotdeviceInfoModel, LogModel, UidSetModel, UID_Bucket, \
     Unused_Uid_Meal, Order_Model, StsCrdModel, VodHlsModel, ExperienceContextModel, UidUserModel, ExperienceAiModel, \
@@ -514,25 +514,18 @@ class SerialNumberView(View):
                 ExperienceAiModel.objects.filter(uid=uid).delete()
                 AiService.objects.filter(uid=uid).delete()
 
-                if CONFIG_INFO != CONFIG_TEST:  # 不为测试服,则序列号写入redis列表
+                # 不为测试服,则写入redis列表
+                if CONFIG_INFO != CONFIG_TEST:
                     redisObj.rpush(UNUSED_SERIAL_REDIS_LIST, serial)
 
-                UIDModel.objects.filter(uid=uid).update(status=0, mac='')  # 重置uid的使用状态为未使用
-                uid_serial.delete()
-
-                # 重置region_id
+                # 重置region_id,不为美洲服,则写入redis列表
                 if CONFIG_INFO == CONFIG_US:
                     DeviceDomainRegionModel.objects.filter(serial_number=serial).update(region_id=0)
                 else:
-                    try:
-                        url = SERVER_DOMAIN_US + 'serialNumber/resetRegionId'
-                        data = {'serial_number': serial}
-                        r = requests.post(url, data, timeout=3)
-                        assert r.status_code == 200
-                        res = r.json()
-                        assert res['result_code'] == 0
-                    except (TimeoutError, AssertionError):
-                        return response.json(5)
+                    redisObj.rpush(RESET_REGION_ID_SERIAL_REDIS_LIST, serial)
+
+                UIDModel.objects.filter(uid=uid).update(status=0, mac='')  # 重置uid的使用状态为未使用
+                uid_serial.delete()
 
                 # 记录操作日志
                 ip = CommonService.get_ip_address(request)

+ 3 - 25
Object/RedisObject.py

@@ -1,34 +1,12 @@
-#!/usr/bin/env python3  
-# -*- coding: utf-8 -*-  
-"""
-@Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
-@AUTHOR: ASJRD018
-@NAME: AnsjerOA
-@software: PyCharm
-@DATE: 2018/8/8 17:00
-@Version: python3.6
-@MODIFY DECORD:ansjer dev
-@file: RedisObject.py
-@Contact: chanjunkai@163.com
-"""
 import redis
-
 from Ansjer.config import SERVER_HOST
-from Ansjer.config import SERVER_TYPE
-
-# SERVER_HOST = '192.168.136.45'
-
-'''
-db=3  -> 统计在线人数用
-'''
+# 本地调试把注释打开
+# SERVER_HOST = '127.0.0.1'
 
 
 class RedisObject:
 
-    def __init__(self, db=0,SERVER_HOST = SERVER_HOST):
-        # if db == 3:
-        #     if SERVER_TYPE != 'Ansjer.formal_settings':
-        #         db = 4
+    def __init__(self, db=0):
         self.POOL = redis.ConnectionPool(host=SERVER_HOST, port=6379, db=db)
         self.CONN = redis.Redis(connection_pool=self.POOL)