|
# -*- coding: utf-8 -*-
from django.db import transaction
from django_logit import logit
from account.models import UserInfo
from utils.error.response_utils import response
@logit
@transaction.atomic
def user_wx_authorize_api(request):
# Get or Create User
user, created = UserInfo.objects.select_for_update().get_or_create(unionid=request.POST.get('unionid', ''))
# Set User Key's Value
user.openid = request.POST.get('openid', '')
user.sex = request.POST.get('sex', 0)
user.nickname = request.POST.get('nickname', '') or request.POST.get('screen_name', '')
user.avatar = request.POST.get('headimgurl', '') or request.POST.get('profile_image_url', '')
user.country = request.POST.get('country', '')
user.province = request.POST.get('province', '')
user.city = request.POST.get('city', '')
user.user_status = UserInfo.ACTIVATED
user.save()
return response(200, 'User Login Success', u'用户端登录成功', {
'userinfo': user.data,
})
|