def bind(received_msg,in_menu=0): '''绑定学号密码,状态代码r0''' msg = TextMsg() msg_init(msg,received_msg) if in_menu == 1: #如果已经进入绑定状态 user = WeixinUser.objects.get(openid=str(received_msg.from_user_name)) s = received_msg.content if u'@' in s: s = s.split(u'@') length = len(s[0]) if length == 9 or length == 10: user_name = s[0] passwd = s[1] query_result = score_query.main(user_name,passwd) if query_result == 0: #错误代码0,网络错误 msg.content = u'绑定验证失败,目测学校服务器抽风啦~~' elif query_result == 1: #错误代码2,用户名密码错误 msg.content = u'绑定失败,学号密码错误,请您重新输入学号密码进行绑定' else: user.profile.student_id = user_name user.porfile.student_pwd = passwd user.is_bind = True user.save() SESSION_DICT[received_msg.from_user_name].status = u'' msg.content = u"绑定成功"+'您可以使用顶级菜单的所有功能了~~获取帮助请发送“帮助”' else: msg.content = u'输入格式有误,请重新输入,格式为“学号@密码”,不要输入空格或者在密码中包含@哦^_^' #return render_to_response('response/text_to_user.xml',locals()) else: #未进入绑定状态,提示如何进行绑定 msg.content = '您需要先绑定学号密码才能查询成绩~~请输入‘学号@密码’进行绑定。范例:031140848@123456\nK123456789@pwd,不要含有空格等字符哦,发送“退出”以退出成绩查询状态!' SESSION_DICT[received_msg.from_user_name].status = u'绑定' return render_to_response('response/text_to_user.xml',locals())
def bind(received_msg, in_menu=0): '''绑定学号密码,状态代码r0''' msg = TextMsg() msg_init(msg, received_msg) if in_menu == 1: #如果已经进入绑定状态 user = WeixinUser.objects.get(openid=str(received_msg.from_user_name)) s = received_msg.content if u'@' in s: s = s.split(u'@') length = len(s[0]) if length == 9 or length == 10: user_name = s[0] passwd = s[1] query_result = score_query.main(user_name, passwd) if query_result == 0: #错误代码0,网络错误 msg.content = u'绑定验证失败,目测学校服务器抽风啦~~' elif query_result == 1: #错误代码2,用户名密码错误 msg.content = u'绑定失败,学号密码错误,请您重新输入学号密码进行绑定' else: user.profile.student_id = user_name user.porfile.student_pwd = passwd user.is_bind = True user.save() SESSION_DICT[received_msg.from_user_name].status = u'' msg.content = u"绑定成功" + '您可以使用顶级菜单的所有功能了~~获取帮助请发送“帮助”' else: msg.content = u'输入格式有误,请重新输入,格式为“学号@密码”,不要输入空格或者在密码中包含@哦^_^' #return render_to_response('response/text_to_user.xml',locals()) else: #未进入绑定状态,提示如何进行绑定 msg.content = '您需要先绑定学号密码才能查询成绩~~请输入‘学号@密码’进行绑定。范例:031140848@123456\nK123456789@pwd,不要含有空格等字符哦,发送“退出”以退出成绩查询状态!' SESSION_DICT[received_msg.from_user_name].status = u'绑定' return render_to_response('response/text_to_user.xml', locals())
def get_score(received_msg): '''查询成绩,状态代码 r1''' msg = TextMsg() msg_init(msg,received_msg) user = WeixinUser.objects.get(openid=str(received_msg.from_user_name)) if is_bind(received_msg): query_result = score_query.main(user.profile.student_id,user.porfile.student_pwd) if query_result == 0: #错误代码0,网络错误 msg.content = u'查询失败,目测学校服务器抽风啦~~' elif query_result == 1: #错误代码2,用户名密码错误 msg.content = u'查询失败,用户名密码错误' else: msg.content = query_result return render_to_response('response/text_to_user.xml',locals()) else: return bind(received_msg)
def get_score(received_msg): '''查询成绩,状态代码 r1''' msg = TextMsg() msg_init(msg, received_msg) user = WeixinUser.objects.get(openid=str(received_msg.from_user_name)) if is_bind(received_msg): query_result = score_query.main(user.profile.student_id, user.porfile.student_pwd) if query_result == 0: #错误代码0,网络错误 msg.content = u'查询失败,目测学校服务器抽风啦~~' elif query_result == 1: #错误代码2,用户名密码错误 msg.content = u'查询失败,用户名密码错误' else: msg.content = query_result return render_to_response('response/text_to_user.xml', locals()) else: return bind(received_msg)