|
@@ -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 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 Controller.CheckUserData import DataValid, date_handler, RandomStr
|
|
from Model.models import Device_User, Role, UidPushModel, UserOauth2Model, UserExModel, Device_Info, UidSetModel, \
|
|
from Model.models import Device_User, Role, UidPushModel, UserOauth2Model, UserExModel, Device_Info, UidSetModel, \
|
|
- UserAppFrequencyModel, CountryIPModel
|
|
|
|
|
|
+ UserAppFrequencyModel, CountryIPModel, UserRegionModel
|
|
from Object.AWS.SesClassObject import SesClassObject
|
|
from Object.AWS.SesClassObject import SesClassObject
|
|
from Object.AliSmsObject import AliSmsObject
|
|
from Object.AliSmsObject import AliSmsObject
|
|
from Object.RedisObject import RedisObject
|
|
from Object.RedisObject import RedisObject
|
|
@@ -1782,6 +1782,11 @@ class v3LoginView(TemplateView):
|
|
if oauth_qs.exists():
|
|
if oauth_qs.exists():
|
|
auth_type = oauth_qs[0].authType
|
|
auth_type = oauth_qs[0].authType
|
|
|
|
|
|
|
|
+ region_id = 0
|
|
|
|
+ user_region_qs = UserRegionModel.objects.filter(userID_id=userID)
|
|
|
|
+ if user_qs.exists():
|
|
|
|
+ region_id = user_region_qs[0].region_id
|
|
|
|
+
|
|
if tko.code == 0:
|
|
if tko.code == 0:
|
|
now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
|
|
now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
|
|
user_qs.update(last_login=now_time, language=response.lang)
|
|
user_qs.update(last_login=now_time, language=response.lang)
|
|
@@ -1804,6 +1809,7 @@ class v3LoginView(TemplateView):
|
|
# res['fingerprint_key'] = CommonService.encode_data(content=users['fingerprint_key'], start=2)
|
|
# res['fingerprint_key'] = CommonService.encode_data(content=users['fingerprint_key'], start=2)
|
|
res['authType'] = auth_type
|
|
res['authType'] = auth_type
|
|
res['subscribe_email'] = users['subscribe_email'] if users['subscribe_email'] is not None else ''
|
|
res['subscribe_email'] = users['subscribe_email'] if users['subscribe_email'] is not None else ''
|
|
|
|
+ res['regionID'] = region_id
|
|
return response.json(0, res)
|
|
return response.json(0, res)
|
|
else:
|
|
else:
|
|
return response.json(tko.code)
|
|
return response.json(tko.code)
|
|
@@ -3247,6 +3253,11 @@ class v3LoginByCodeView(View):
|
|
if oauth_qs.exists():
|
|
if oauth_qs.exists():
|
|
auth_type = oauth_qs[0].authType
|
|
auth_type = oauth_qs[0].authType
|
|
|
|
|
|
|
|
+ region_id = 0
|
|
|
|
+ user_region_qs = UserRegionModel.objects.filter(userID_id=userID)
|
|
|
|
+ if user_qs.exists():
|
|
|
|
+ region_id = user_region_qs[0].region_id
|
|
|
|
+
|
|
if tko.code == 0:
|
|
if tko.code == 0:
|
|
now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
|
|
now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
|
|
user_qs.update(last_login=now_time, language=response.lang)
|
|
user_qs.update(last_login=now_time, language=response.lang)
|
|
@@ -3266,6 +3277,7 @@ class v3LoginByCodeView(View):
|
|
res['userEmail'] = users['userEmail'] if users['userEmail'] is not None else ''
|
|
res['userEmail'] = users['userEmail'] if users['userEmail'] is not None else ''
|
|
res['phone'] = users['phone'] if users['phone'] is not None else ''
|
|
res['phone'] = users['phone'] if users['phone'] is not None else ''
|
|
res['authType'] = auth_type
|
|
res['authType'] = auth_type
|
|
|
|
+ res['region_id'] = region_id
|
|
return response.json(0, res)
|
|
return response.json(0, res)
|
|
else:
|
|
else:
|
|
return response.json(tko.code)
|
|
return response.json(tko.code)
|
|
@@ -3495,6 +3507,12 @@ class AppleAuthLogin(View):
|
|
if oauth_qs.exists():
|
|
if oauth_qs.exists():
|
|
auth_type = oauth_qs[0].authType
|
|
auth_type = oauth_qs[0].authType
|
|
res['authType'] = auth_type
|
|
res['authType'] = auth_type
|
|
|
|
+
|
|
|
|
+ region_id = 0
|
|
|
|
+ user_region_qs = UserRegionModel.objects.filter(userID_id=userID)
|
|
|
|
+ if user_qs.exists():
|
|
|
|
+ region_id = user_region_qs[0].region_id
|
|
|
|
+ res['region_id'] = region_id
|
|
user_qs.update(last_login=now_time, online=True)
|
|
user_qs.update(last_login=now_time, online=True)
|
|
return response.json(0, res)
|
|
return response.json(0, res)
|
|
|
|
|
|
@@ -3699,3 +3717,51 @@ def updateUserCountry(request):
|
|
# CountryIPModel.objects.filter(id__in=tuple(ids)).update(status=1)
|
|
# CountryIPModel.objects.filter(id__in=tuple(ids)).update(status=1)
|
|
response = ResponseObject()
|
|
response = ResponseObject()
|
|
return response.json(0)
|
|
return response.json(0)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+class InitUserInformationView(View):
|
|
|
|
+
|
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
|
+ request.encoding = 'utf-8'
|
|
|
|
+ operation = kwargs.get('operation', None)
|
|
|
|
+ request_dict = request.GET
|
|
|
|
+ return self.validate(request_dict, operation)
|
|
|
|
+
|
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
|
+ request.encoding = 'utf-8'
|
|
|
|
+ operation = kwargs.get('operation', None)
|
|
|
|
+ request_dict = request.POST
|
|
|
|
+ return self.validate(request_dict, operation)
|
|
|
|
+
|
|
|
|
+ def validate(self, request_dict, operation):
|
|
|
|
+ token = TokenObject(request_dict.get('token', None))
|
|
|
|
+
|
|
|
|
+ response = ResponseObject()
|
|
|
|
+
|
|
|
|
+ if token.code != 0:
|
|
|
|
+ return response.json(token.code)
|
|
|
|
+
|
|
|
|
+ if operation == 'init':
|
|
|
|
+ return self.do_init(token.userID, request_dict, response)
|
|
|
|
+ else:
|
|
|
|
+ return response.json(444)
|
|
|
|
+
|
|
|
|
+ def do_init(self, userID, request_dict, response):
|
|
|
|
+ appBundleId = request_dict.get('appBundleId', None)
|
|
|
|
+
|
|
|
|
+ if appBundleId:
|
|
|
|
+ user_ex_qs = UserExModel.objects.filter(userID_id=userID)
|
|
|
|
+ now_time = int(time.time())
|
|
|
|
+ if user_ex_qs.exists():
|
|
|
|
+ update = {
|
|
|
|
+ 'appBundleId':appBundleId,
|
|
|
|
+ 'updTime': now_time
|
|
|
|
+ }
|
|
|
|
+ user_ex_qs.update(**update)
|
|
|
|
+ else:
|
|
|
|
+
|
|
|
|
+ user_ex = UserExModel(userID_id=userID, appBundleId=appBundleId, addTime=now_time, updTime=now_time)
|
|
|
|
+ user_ex.save()
|
|
|
|
+ return response.json(0)
|
|
|
|
+ else:
|
|
|
|
+ return response.json(444)
|