def post(self, request): """ 小程序登陆业务逻辑实现-post方法 :param request: :return: """ ret = {'code': 200, 'msg': '操作成功', 'data': {}} code = request.POST['code'] code_verify = request.POST['codeVerify'] if request.POST[ 'codeVerify'] else '' if not code: ret['code'] = 500 ret['msg'] = '无效的code请求' return HttpResponse(json.dumps(ret), content_type='application/json') openid = WechatUtils.getOpenid(code) if openid is None: ret['code'] = 500 ret['msg'] = 'openid出错' ret = {'result': 'false', 'msg': 'openid出错'} return HttpResponse(json.dumps(ret), content_type='application/json') if code_verify == '-1': ret['code'] = 500 ret['msg'] = '无效的code请求' return HttpResponse(json.dumps(ret), content_type='application/json') nickname = request.POST['nickName'] if request.POST['nickName'] else '' gender = request.POST['gender'] if request.POST['gender'] else '' city = request.POST['city'] if request.POST['city'] else '' province = request.POST['province'] if request.POST['province'] else '' avatar_url = request.POST['avatarUrl'] if request.POST[ 'avatarUrl'] else '' # 判断是否已经注册过 bind_info = Member.objects.filter(codeVerify=code_verify, openid=0) print('bind_info') print(bind_info) # 正常注册的情况,通过code bind_info 不为空 if bind_info: Member.objects.filter(id=bind_info[0].id).update( openid=openid, nickname=nickname, gender=gender, city=city, province=province, avatarUrl=avatar_url, state=0, type=1, joined_date2=datetime.datetime.now(), last_login_date=datetime.datetime.now()) print(bind_info.values_list()) print(bind_info.first()) if bind_info.first() is not None: now = datetime.datetime.now() # 现在的时间 last_login_date = Member.objects.get( id=bind_info[0].id).last_login_date # 上次登录的时间 if now.strftime('%Y-%m-%d') != last_login_date.strftime( '%Y-%m-%d'): # 今天第一次登陆 print("今天第一次登录") ret['first_time_login'] = '******' print("credit insert:") Credit.objects.create(behave=0, creditpoints=2, credittype=0, createtime=datetime.datetime.now(), userid_id=bind_info[0].id) Member.objects.filter(id=bind_info[0].id).update( last_login_date=datetime.datetime.now() ) # 每次登陆更新last_login_date token = "" if bind_info.first(): token = "%s#%s" % (WechatUtils.geneAuthCode( id=bind_info.first().id, codeVerify=bind_info.first().codeVerify, state=bind_info.first().state, type=bind_info.first().type, ), bind_info.first().id) ret['user_id'] = bind_info.first().id else: token = "%s#%s" % (WechatUtils.geneAuthCode( id='-1', codeVerify='-1', state='0', type='0', ), -1) ret['user_id'] = '-1' ret['data'] = {'token': token} return HttpResponse(json.dumps(ret), content_type='application/json')
def post(self, request): ret = {'code': 200, 'msg': '操作成功', 'data': {}} code = request.POST['code'] codeVerify = request.POST['codeVerify'] if request.POST[ 'codeVerify'] else '' if not code or len(code) < 1: ret['code'] = 500 ret['msg'] = '无效的code请求' return HttpResponse(json.dumps(ret), content_type='application/json') openid = WechatUtils.getOpenid(code) if openid is None: ret['code'] = 500 ret['msg'] = 'openid出错' ret = {'result': 'false', 'msg': 'openid出错'} return HttpResponse(json.dumps(ret), content_type='application/json') if codeVerify == '-1': ret['code'] = 500 ret['msg'] = '无效的code请求' return HttpResponse(json.dumps(ret), content_type='application/json') nickname = request.POST['nickName'] if request.POST['nickName'] else '' gender = request.POST['gender'] if request.POST['gender'] else '' city = request.POST['city'] if request.POST['city'] else '' province = request.POST['province'] if request.POST['province'] else '' avatarUrl = request.POST['avatarUrl'] if request.POST[ 'avatarUrl'] else '' # 判断是否已经注册过 bind_info = Member.objects.filter(codeVerify=codeVerify) # 正常注册的情况,通过code if bind_info: Member.objects.filter(id=bind_info[0].id).update( openid=openid, nickname=nickname, gender=gender, city=city, province=province, avatarUrl=avatarUrl, state=0, # 0 表示正常 1 表示异常 type=1, # 0普通用户 1 高级用户 joined_date2=datetime.datetime.now(), # 用户注册时间 last_login_date=datetime.datetime.now() # 最后一次登录时间 ) print(bind_info.values_list()) token = "" if bind_info: token = "%s#%s" % (WechatUtils.geneAuthCode( id=bind_info.values_list()[0][0], codeVerify=bind_info.values_list()[0][13], state=bind_info.values_list()[0][12], type=bind_info.values_list()[0][14], ), bind_info.values_list()[0][0]) else: token = "%s#%s" % (WechatUtils.geneAuthCode( id='-1', codeVerify='-1', state='0', type='0', ), -1) ret['data'] = {'token': token} return HttpResponse(json.dumps(ret), content_type='application/json')
def post(self, request): """ 会员状态验证-post方法 :param request: :return: """ ret = {'code': 200, 'msg': '操作成功', 'data': {}} code = request.POST['code'] code_verify = request.POST['codeVerify'] if request.POST[ 'codeVerify'] else '' if not code: ret['code'] = 500 ret['msg'] = '无效的请求code' return HttpResponse(json.dumps(ret), content_type='application/json') openid = WechatUtils.getOpenid(code) if openid is None: ret['code'] = 500 ret['msg'] = 'openid出错' return HttpResponse(json.dumps(ret), content_type='application/json') if code_verify == '-1': ret['code'] = 500 ret['msg'] = '无效的code请求' return HttpResponse(json.dumps(ret), content_type='application/json') bind_info = Member.objects.filter(openid=openid) if not bind_info: ret['code'] = 500 ret['msg'] = '未绑定' return HttpResponse(json.dumps(ret), content_type='application/json') now = datetime.datetime.now() # 现在的时间 last_login_date = Member.objects.get( id=bind_info[0].id).last_login_date # 上次登录的时间 if now.strftime('%Y-%m-%d') != last_login_date.strftime('%Y-%m-%d'): # 今天第一次登陆 print("今天第一次登录") ret['first_time_login'] = '******' print("credit insert:") Credit.objects.create(behave=0, creditpoints=2, credittype=0, createtime=datetime.datetime.now(), userid_id=bind_info[0].id) Member.objects.filter(id=bind_info[0].id).update( last_login_date=datetime.datetime.now()) # 每次登陆更新last_login_date token = "%s#%s" % (WechatUtils.geneAuthCode( id=bind_info.values_list()[0][0], codeVerify=bind_info.values_list()[0][13], state=bind_info.values_list()[0][12], type=bind_info.values_list()[0][14], ), bind_info.values_list()[0][0]) ret['data'] = {'token': token} ret['user_id'] = bind_info.values_list()[0][0] return HttpResponse(json.dumps(ret), content_type='application/json')
def post(self, request): ret = {'code': 200, 'msg': '操作成功', 'data': {}} code = request.POST['code'] codeVerify = request.POST['codeVerify'] if request.POST[ 'codeVerify'] else '' print('code:', code) print('codeVerify:', codeVerify) if not code or len(code) < 1: ret['code'] = 500 ret['msg'] = '无效的请求code' return HttpResponse(json.dumps(ret), content_type='application/json') openid = WechatUtils.getOpenid(code) if openid is None: ret['code'] = 500 ret['msg'] = 'openid出错' return HttpResponse(json.dumps(ret), content_type='application/json') if codeVerify == '-1': ret['code'] = 500 ret['msg'] = '无效的code请求' return HttpResponse(json.dumps(ret), content_type='application/json') bind_info = Member.objects.filter(openid=openid) if not bind_info: ret['code'] = 500 ret['msg'] = '未绑定' return HttpResponse(json.dumps(ret), content_type='application/json') now = datetime.datetime.now() # Member.objects.filter(id=bind_info[0].id) Member.objects.filter(id=bind_info[0].id).update( last_login_date=datetime.datetime.now()) # 每次登陆更新last_login_date # print("credit insert:") # Credit.objects.create( # behave=0, # points=2, # type=0, # createtime=datetime.datetime.now(), # userid_id=43 # ) token = "%s#%s" % (WechatUtils.geneAuthCode( id=bind_info.values_list()[0][0], codeVerify=bind_info.values_list()[0][13], state=bind_info.values_list()[0][12], type=bind_info.values_list()[0][14], ), bind_info.values_list()[0][0]) ret['data'] = {'token': token} ret['user_id'] = bind_info.values_list()[0][0] return HttpResponse(json.dumps(ret), content_type='application/json')