switch gis to tencent

FFIB 5 年之前
父節點
當前提交
e812ec3fb2
共有 4 個文件被更改,包括 9 次插入21 次删除
  1. 1 0
      api/mch_views.py
  2. 5 19
      commands/management/commands/gis.py
  3. 1 1
      kodo/settings.py
  4. 2 1
      pre/views.py

+ 1 - 0
api/mch_views.py

@@ -433,6 +433,7 @@ def consumer_info_api(request):
433 433
             'ymd': ymd,
434 434
             'serialNo': serialNo,
435 435
             'model_id': model.model_id,
436
+            'pk': log.pk,
436 437
         })
437 438
 
438 439
     if not dupload:

+ 5 - 19
commands/management/commands/gis.py

@@ -41,42 +41,28 @@ class Command(CompatibilityBaseCommand):
41 41
 
42 42
                 with transaction.atomic():
43 43
                     try:
44
-                        gisinfo = requests.get(settings.GIS_2_ADMINISTRATIVE_DIVISION.format(v.get('lat', 0), v.get('lon', 0))).json()
44
+                        gisinfo = requests.get(settings.GIS_2_ADMINISTRATIVE_DIVISION.format(v.get('lat', 0), v.get('lon', 0)), verify=False).json()
45 45
                     except Exception as e:
46 46
                         logger.info(e.message)
47 47
 
48
-                    zh1 = gisinfo.get('data', {}).get('zh1', '')
48
+                    zh1 = gisinfo.get('result', {}).get('address_component', {}).get('province', '')
49 49
 
50 50
                     province_code = ProvinceModelMixin.PROVINCE_NAME_CODE_DICT.get(zh1) if zh1 else ''
51 51
 
52
-                    # 手机归属地
53
-                    if not province_code:
54
-                        try:
55
-                            phoneinfo = requests.get(settings.PHONE_2_ADMINISTRATIVE_DIVISION.format(v.get('phone', 0)))
56
-                        except Exception as e:
57
-                            logger.info(e.message)
58
-                            continue
59
-                        try:
60
-                            province_name = json.loads(phoneinfo.content.split('(')[-1][:-1])['data']['area']
61
-                        except Exception as e:
62
-                            logger.info(e.message)
63
-                            continue
64
-                        province_code = ProvinceShortModelMixin.PROVINCE_NAME_CODE_DICT.get(province_name)
65
-
66 52
                     if not province_code:
67 53
                         continue
68 54
 
69 55
                     brand_id = v.get('brand_id', '')
70 56
                     user_id = v.get('user_id', '')
71
-                    ymd = v.get('ymd', '')
57
+                    ymd = str(v.get('ymd', ''))
72 58
 
73 59
                     # 更新用户表
74 60
                     user = UserInfo.objects.get(user_id=user_id, status=True)
75 61
                     user.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
76 62
                     user.save()
77 63
 
78
-                    if v.get('model_id'):
79
-                        log = ConsumeInfoSubmitLogInfo.objects.get(model_id=v.get('model_id', ''), serialNo=v.get('serialNo', ''), status=True)
64
+                    if v.get('pk'):
65
+                        log = ConsumeInfoSubmitLogInfo.objects.get(pk=v.get('pk', -1), status=True)
80 66
                         log.province = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
81 67
                         log.save()
82 68
 

+ 1 - 1
kodo/settings.py

@@ -428,7 +428,7 @@ KODO_DEFAULT_BRAND_NAME = ''
428 428
 KODO_DEFAULT_BRAND_DOMAIN = ''
429 429
 
430 430
 # 经纬度
431
-GIS_2_ADMINISTRATIVE_DIVISION = 'http://116.196.105.215:1234/gis?auth_user=freevip&latitude={0}&longitude={1}'
431
+GIS_2_ADMINISTRATIVE_DIVISION = 'https://apis.map.qq.com/ws/geocoder/v1/?key=4FNBZ-TIIKW-MWJRQ-RHZJN-W6F7Q-BFBKX&location={0},{1}'
432 432
 PHONE_2_ADMINISTRATIVE_DIVISION = 'https://www.baifubao.com/callback?cmd=1059&callback=phone&phone={0}'
433 433
 
434 434
 TESTING_SNS = ['000000']

+ 2 - 1
pre/views.py

@@ -331,7 +331,8 @@ def refreshs():
331 331
                 'phone': log.phone,
332 332
                 'ymd': tc.local_string(utc_dt=log.created_at, format='%Y%m%d'),
333 333
                 'model_id': log.model_id,
334
-                'serialNo': log.serialNo
334
+                'serialNo': log.serialNo,
335
+                'pk': log.pk,
335 336
             })
336 337
 
337 338