Browse Source

添加CountryIPModel

tanghongbin 4 years ago
parent
commit
ace23c27a5
2 changed files with 23 additions and 2 deletions
  1. 11 2
      Controller/UserController.py
  2. 12 0
      Model/models.py

+ 11 - 2
Controller/UserController.py

@@ -32,7 +32,7 @@ from ratelimit.decorators import ratelimit
 from Ansjer.config import AuthCode_Expire, SERVER_DOMAIN, APNS_CONFIG, JPUSH_CONFIG, FCM_CONFIG, TUTK_PUSH_DOMAIN
 from Controller.CheckUserData import DataValid, date_handler, RandomStr
 from Model.models import Device_User, Role, UidPushModel, UserOauth2Model, UserExModel, Device_Info, UidSetModel, \
-    UserAppFrequencyModel
+    UserAppFrequencyModel, CountryIPModel
 from Object.AWS.SesClassObject import SesClassObject
 from Object.AliSmsObject import AliSmsObject
 from Object.RedisObject import RedisObject
@@ -1886,7 +1886,16 @@ class InitInfoView(View):
                         'region': lang,
                         'country': country
                     }
-                    UserExModel.objects.create(**create_dict)
+                    user_ex_qs = UserExModel.objects.create(**create_dict)
+
+                country_ip_qs = CountryIPModel.objects.filter(user_ex_id=user_ex_qs[0].id)
+                if not country_ip_qs.exists():
+                    countryIp = CountryIPModel(
+                        ip=CommonService.get_ip_address(request),
+                        add_time=now_time,
+                        user_ex_id=user_ex_qs[0].id
+                    )
+                    countryIp.save()
         # 获取设备是否存在有已被删除
         res = {'usmsg': 0}  # 预留字段, 有版本app该字段去掉会报错
         return response.json(0, res)

+ 12 - 0
Model/models.py

@@ -996,3 +996,15 @@ class AppLogModel(models.Model):
         db_table = 'app_log'
         verbose_name = 'APP日志表'
         verbose_name_plural = verbose_name
+
+
+class CountryIPModel(models.Model):
+    id = models.AutoField(primary_key=True)
+    ip = models.CharField(default='', max_length=32, verbose_name='ip')
+    user_ex = models.ForeignKey(UserExModel, to_field='id', on_delete=models.CASCADE, verbose_name='关联用户扩展信息表id')
+    add_time = models.IntegerField(default=0, verbose_name='添加时间')
+
+    class Meta:
+        db_table = 'country_ip'
+        verbose_name = 'ip-国家统计表'
+        verbose_name_plural = verbose_name