Browse Source

优化根据ip解析或用户设置返回状态代码

linhaohong 10 months ago
parent
commit
d158d6ecd5
1 changed files with 14 additions and 6 deletions
  1. 14 6
      Controller/AppSetController.py

+ 14 - 6
Controller/AppSetController.py

@@ -346,16 +346,24 @@ class AppSetView(View):
         用户设置广告状态
         """
         try:
+            status_name = request_dict.get("statusName", None)
+            value = request_dict.get("value", None)
+            if not all([status_name, value]):
+                return response.json(444)
+            value = int(value)
             now_time = int(time.time())
-            end_time = now_time + 15*24*60*60
-            splash_ad_status = request_dict.get("splashAdStatus", 0)
-            splash_ad_status = int(splash_ad_status)
+            end_time = now_time + 15 * 24 * 60 * 60
             user_set_status_qs = UserSetStatus.objects.filter(user_id=user_id)
+            region_restriction_qs = RegionRestriction.objects.filter(statusName=status_name)
+            if not region_restriction_qs.exists():
+                return response.json(173)
             if not user_set_status_qs.exists():
-                UserSetStatus.objects.create(user_id=user_id, status=splash_ad_status, created_time=now_time,
-                                             updated_time=now_time, end_time=end_time)
+                UserSetStatus.objects.create(user_id=user_id, status=value, created_time=now_time,
+                                             updated_time=now_time, end_time=end_time,
+                                             region_restriction_id=region_restriction_qs[0].id)
             else:
-                user_set_status_qs.update(status=splash_ad_status, updated_time=now_time, end_time=end_time)
+                user_set_status_qs.update(status=value, updated_time=now_time, end_time=end_time,
+                                          region_restriction_id=region_restriction_qs[0].id)
             return response.json(0)
         except Exception as e:
             LOGGER.info('设置用户广告状态异常,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))