12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- #!/usr/bin/env python3
- # -*- coding: utf-8 -*-
- import time
- from django.views import View
- from Model.models import Device_User, UserRegionModel
- from Object.ResponseObject import ResponseObject
- from Object.TokenObject import TokenObject
- class UserRegionView(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(404)
- def do_init(self, userID, request_dict, response):
- user_qs = Device_User.objects.filter(userID=userID)
- if not user_qs.exists():
- return response.json(309)
- region_id = request_dict.get('country_number', None)
- if region_id:
- user_region_qs = UserRegionModel.objects.filter(user__userID=userID)
- now_time = int(time.time())
- if not user_region_qs.exists():
- user_region = UserRegionModel(user_id=userID, region_id=region_id, add_time=now_time, update_time=now_time)
- user_region.save()
- else:
- update = {
- 'region_id': region_id,
- 'update_time': now_time
- }
- user_region_qs.update(**update)
- return response.json(0)
- else:
- return response.json(444)
|