def search_from_my_demand(req): #从‘我的需求’那里传递过来的(也就是说从记录我的需求的记录表里面获取的) mTools = Tools() user_id = mTools.getSession(req,'user_id')#调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'GET': operation_id = req.GET.get('operation_id',0) result = mKeyword_search.getDataFromMyDemands(operation_id, user_id) #根据用户的需求的记录id和其电话号码来查询 if result == 0: return handler500(req) else: condition = result cars_infos = mKeyword_search.OneWordGetData(condition) if cars_infos == 0: return handler500(req) else: deleteAllSession(req) length_cars_infos = len(cars_infos) req.session['search_datas'] = cars_infos req.session['length_search_datas'] = length_cars_infos return HttpResponseRedirect("/search/") else: return handler404(req)
def delete_message(req): ''' 删除我的消息 :param req: :param operation_id: :return: ''' mTools = Tools() current_user_phone_number = mTools.getSession( req, 'phone') #调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if current_user_phone_number is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'POST': operation_id = req.POST.get('id', None) result_code = mMy_message.DeleteMyMessage(operation_id) if result_code == 0: return HttpResponse("0") #return handler500(req) #数据库删除失败 elif result_code == 666: return HttpResponse("1") #context = {"is_login": True} #return render(req, "myDemand.html", context) else: return handler404(req) #404 请求错误
def personal_center(req): mTools = Tools() user_id = mTools.getSession( req, 'user_id') #调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'GET': merchant_material = mPersonal_center.getMyInfo(user_id) if merchant_material == 0: return handler500(req) #查询失败 elif merchant_material == 404: context = {"is_login": True} return render(req, 'to_completeMaterial.html', context) #return HttpResponseRedirect('/completeMaterial/') else: merchant_id = merchant_material.get('id') publish_info = valid_time_publish(req, merchant_id) exceed_publish = invalid_time_publish(req, merchant_id) context = { "is_login": True, 'merchant_material': merchant_material, 'publish_info': publish_info, 'exceed_publish': exceed_publish } return render(req, 'homePage.html', context) else: return handler404(req)
def keyword_search(req): mTools = Admin_tools() admin_id = mTools.getSession(req, 'admin_id') if admin_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == "POST": condition = {} condition['user_company_name'] = req.POST.get('user_company_name', None) condition['user_type'] = req.POST.get('user_type', None) condition['user_trademark'] = req.POST.get('user_trademark', None) condition['province'] = req.POST.get('province', None) condition['city'] = req.POST.get('city', None) condition['user_name'] = req.POST.get('user_name', None) condition['user_phone'] = req.POST.get('user_phone', None) result_list = mAdmin_search.OneWordGetData(condition) if result_list == 0: return handler500(req) else: req.session['search_datas'] = result_list req.session['length_search_datas'] = len(result_list) return HttpResponseRedirect("/viewSearch/") else: return handler404(req)
def search(req): """ 如果有GET请求,返回搜索结果。 """ if req.method == "GET": flag = False mTools=Tools() user_id = mTools.getSession(req,'user_id') if user_id is not None: flag = True final = get_result_search(req) data = final.get('data','') time_sorting_type = final.get('time_sorting_type','up') price_sorting_type = final.get('price_sorting_type','up') result_list_piece = data.get('results','') allPage = data.get('allPage','1') #总页数 curPage = data.get('curPage','1') #获取处理后的当前页数 cars_infos_piece = mKeyword_search.getCarDataInArray(result_list_piece) #查询车的信息 search_conditions = returnConditionsFromSession(req) #返回用户的搜索条件 context = {"is_login": flag, "allPage":allPage, "curPage":curPage, "time_sorting_type":time_sorting_type, "price_sorting_type":price_sorting_type, "result_list": cars_infos_piece, "search_conditions":search_conditions} return render(req, "search.html", context) else: return handler404(req)
def my_demand(req): mTools = Tools() user_id = mTools.getSession(req,'user_id')#调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') brand_list = ["路虎", "法拉利", "劳斯莱斯"] car_series_list = ["SUV", "中规车", "越野车"] if req.method == 'GET': record_list = mMy_demands.searchMyDemands(user_id) #调用这个函数来查询我的需求 if record_list == 0: return handler500(req) #查询我的需求失败 context = {"is_login": True, "demand_list": record_list, "brand_list": brand_list, "car_series_list": car_series_list} return render(req, "myDemand.html", context) else: actionType = req.POST.get('actionType',None) demandId = req.POST.get('demandId',None) if actionType is not None: if actionType == '0': if demandId is not None: return delete_demand(req, demandId) #删除我的需求 else: return HttpResponse('0') elif actionType == '1': return update_record(req, user_id) #修改我的需求 else: return handler404(req) #404 请求错误
def verify_invitation_code(req): if req.method == 'POST': #获得表单数据 invitationCode = req.POST.get('invitationCode', '') mTools = Tools() user_ip = mTools.get_client_ip(req) #获取用户的IP phones = mInvite_code.mangageInviteCode( invitationCode, user_ip) #返回1表示邀请码过期,返回2表示邀请码不存在或者有错,返回3表示邀请码不能为空,返回404表示登录被限制 if phones == 0: return handler500(req) elif phones == 1: #邀请码过期 return HttpResponse('0') elif phones == 2: #邀请码不存在或者有错 return HttpResponse('0') elif phones == 3: #邀请码不能为空 return HttpResponse('0') elif phones == 404: #return render(req, 'limit.html', status=404) return HttpResponse('错误次数过多,稍后重试') else: #邀请码验证成功 req.session["phones"] = phones #建立一个会话,传递找到的符合条件的电话号码 return HttpResponse('1') else: return handler404(req) #404 请求错误
def forget_password_post(request): if request.method == "POST": phone_number = request.POST.get("phoneNumber", None) verify_code = request.POST.get("verifyCode", None) new_password = request.POST.get("newPassword", None) print(phone_number) if phone_number is not None: result_code = mFind_password.phoneIsExist(phone_number) if result_code == 666: request.session['phoneSetPasswordByPhone'] = phone_number return send_phone_verify_code_post(request, phone_number) #return HttpResponse("1") elif result_code == 999: print('该用户已经被拉黑') return HttpResponse("该用户已经被拉黑") #return HttpResponse("1") else: return HttpResponse("0") if verify_code is not None: return verify_code_post(request, verify_code) if new_password is not None: return set_new_password_by_phone(request, new_password) return HttpResponse("0") else: return handler404(request)
def home_page_post(request): mTools = Tools() user_id = mTools.getSession( request, 'user_id') #调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if request.method == "POST": collection_id = request.POST.get("collectionId", None) exceed_collection_id = request.POST.get("exceedCollectionId", None) if collection_id is not None: result_code = mPersonal_center.deleteValidTimeCar( collection_id, user_id) if result_code == 0: #有效期 -- 页面撤销失败 return HttpResponse("0") elif result_code == 666: #撤销成功 return HttpResponse("1") if exceed_collection_id is not None: #过期车源页面 --- 删除记录 result_code = mPersonal_center.deleteInalidTimeCar( exceed_collection_id) if result_code == 0: #删除信息失败 return HttpResponse("0") elif result_code == 666: return HttpResponse("1") return HttpResponse("0") else: return handler404(request)
def delete_demand(req, operation_id): if req.method == 'POST': result_code = mMy_demands.deleteMyDemand(operation_id) #调用这个函数来删除我的需求 if result_code == 0: return handler500(req) #删除我的需求失败 elif result_code == 666: return HttpResponse("1") else: return handler404(req) #404 请求错误
def collection_post(req): mTools = Tools() user_id = mTools.getSession( req, 'user_id') #调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'POST': merchantId = req.POST.get('merchantId', None) detailId = req.POST.get('detailId', None) if merchantId is not None: return cancel_seller_collection(req, merchantId) if detailId is not None: return cancel_car_collection(req, detailId) return handler404(req) #404 请求错误 else: return handler404(req) #404 请求错误
def cancel_car_collection(req, operation_id): if req.method == 'POST': mycollect_records = mCollect_car.cancelCollectCar( operation_id) #调用这个函数来根据卖家的手机号来取消收藏和查询用户收藏的车的信息 if mycollect_records == 0: #取消收藏失败 return HttpResponse("0") else: return HttpResponse("1") else: return handler404(req) #404 请求错误
def setting_post(request): """ 验证输入的数据是否正确。如果正确返回1,否则返回0。 """ mTools = Tools() user_id = mTools.getSession(request,'user_id')#调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if request.method == "POST": old_password = request.POST.get("oldPassword",None) new_password = request.POST.get("newPassword",None) old_phone_number = request.POST.get("oldPhoneNumber",None) new_phone_number = request.POST.get("newPhoneNumber",None) current_password = request.POST.get("currentPassword",None) newPhoneNumberExist = request.POST.get("newPhoneNumberExist",None) # TODO:验证其中一项信息 if old_password is not None: result_code = mChange_password.checkPassword(user_id, old_password) if result_code == 666: return HttpResponse("1") elif result_code == 0: return handler500(request) if new_password is not None: result_code = mChange_password.changePassword(user_id, new_password) if result_code == 666: return HttpResponse("1") #修改AI手机 if current_password is not None: result_code = mChange_password.checkPassword(user_id, current_password) if result_code == 666: return HttpResponse("1") if old_phone_number is not None: result_code = mChange_phone.checkPhone(old_phone_number) if result_code == 666: return HttpResponse("1") if newPhoneNumberExist is not None: result_code = mChange_phone.newPhoneIsExist(newPhoneNumberExist) if result_code == 666: #查询到存在该手机号 return HttpResponse("2") #该手机号已经被注册 if new_phone_number is not None: result_code = mChange_phone.changePhone(user_id, new_phone_number) if result_code == 666: request.session['phone'] = new_phone_number return HttpResponse("1") return HttpResponse("0") else: return handler404(request)
def cancel_seller_collection(req, operation_id): if req.method == 'POST': #删除信息 result_code = mCollect_seller.deleteSeller( operation_id) #调用这个函数来取消商家的收藏 if result_code == 0: #取消收藏失败 return HttpResponse("0") elif result_code == 666: return HttpResponse("1") else: return handler404(req) #404 请求错误.
def verify_code_post(request, verify_code): mTools = Tools() if request.method == "POST": #验证码验证 verifyCode = mTools.getSession(request, 'findingByPhoneVerifyCode') #获取会话的验证码 if verify_code != verifyCode: #验证码不对 return HttpResponse('0') else: return HttpResponse("1") else: return handler404(request) #404 请求错误
def list_delete(req): ########### #用来管理页面内容,显示有效期内容还是过期内容 ############ mTools = Tools() user_id = mTools.getSession( req, 'user_id') #调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'POST': operation_id = req.POST.get('operation_id', None) if operation_id is None: return handler404(req) #删除信息 result_code = mPersonal_center.deleteInalidTimeCar(operation_id) if result_code == 0: #删除信息失败 return HttpResponse("0") elif result_code == 666: return HttpResponse("1") else: return handler404(req) #404 请求错误.
def modify_demand(req,operation_id): mTools = Tools() user_id = mTools.getSession(req,'user_id')#调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'POST': record_list = mModify_demands.getRecord(operation_id, user_id) #调用这个函数来获取用户要修改的需求 if record_list == 0: return handler500(req) #查询失败 else: return HttpResponse('1') else: return handler404(req) #404 请求错误
def fuzzy_search(req): if req.method == 'GET': content = req.GET.get('fuzzyContent', '') list_content = mFuzzy_search.divideWords(content) #获取分词结果 length_list_content = len(list_content) cars_infos = mFuzzy_search.fuzzyFinderGetData(req, list_content, length_list_content,0) ############################## if cars_infos == 0: return handler500(req) else: return HttpResponseRedirect("/search/") else: return handler404(req)
def update_record(req, user_id): if req.method == 'POST': #表示要保存 刚刚在编辑页面 编辑的我的搜索,其实是将数据库里面的相应记录就行一次更新 #update_record_list = req.POST.getList('update_record_list[]','') condition = getDtaFromForm(req) result_code = mModify_demands.updateRecord(user_id, condition)#根据用户输入的修改条件进行修改 if result_code == 0: return HttpResponse("0") #return handler500(req) #更新我的搜索失败 elif result_code == 666: return HttpResponse("1") #return HttpResponseRedirect('/myDemand/') #返回我的需求界面 else: return handler404(req) #404 请求错误
def set_super_admin_home(req): mTools = Admin_tools() admin_id = mTools.getSession(req, 'admin_id') if admin_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == "GET": result = mSet_admin.find_not_super_admins() if result == 0: return handler500(req) else: context = {'admin_infos_list': result} return render(req, 'admin/set_super_admin.html', context) else: return handler404(req)
def black_vip_in_all_vip(req): mTools = Admin_tools() admin_id = mTools.getSession(req, 'admin_id') if admin_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'GET': operation_id = req.GET.get('operation_id', 0) result = mVIP.black_vip(operation_id) if result == 0: return handler500(req) elif result == 666: return HttpResponseRedirect('/allVipHome/') else: return handler404(req)
def go_back(req): #返回修改 mTools = Tools() user_id = mTools.getSession( req, 'user_id') #调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'POST': publish_info = mTools.getSession(req, 'publish_info') #从会话中取出数据 context = {"is_login": True, 'each_car_info': publish_info} return render(req, "publish.html", context) else: return handler404(req) #404 请求错误
def save_search_record(req): mTools = Tools() if req.method == 'POST': user_id = mTools.getSession(req,'user_id')#调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') condition = postMethodGetParams(req) #获取post请求的用户保存的数据 result_code = mKeyword_search.saveSearchRecord(user_id, condition) #调用这个函数来处理用户保存的需求 if result_code == 666: #保存搜索条件成功 return HttpResponse('1') elif result_code == 0: return HttpResponse('0') else: return handler404(req) #404 请求错误
def verify_register(req): if req.method == 'POST': #点击注册按钮,需要全面检查 mTools = Tools() user_name = req.POST.get('userName', '') phone = req.POST.get('registerPhoneNumber', '') password = req.POST.get('password', '') myverifyCode = req.POST.get('verifyCode', None) #获取表单的验证码 #验证码验证 verifyCode = mTools.getSession(req, 'verifyCode') #获取会话的验证码 if myverifyCode != verifyCode: #验证码不对 return HttpResponse('0') else: mTools.delSession(req, 'verifyCode') phones = mTools.getSession(req, "phones") flag = False for i in range(len(phones)): #判断输入的电话号码是否是受到了邀请 if phones[i] == phone: flag = True break if flag == False: #电话号码不存在,返回1.没有受到邀请(尽管邀请码正确,但是可能是看到别人的或者猜中的) return HttpResponse('0') user_ip = mTools.get_client_ip(req) #获取用户的IP user_id = mRegister.register( user_name, phone, password, user_ip) #调用该函数处理这个url.数据库出错,返回0;用户已经存在,返回1;成功则返回用户的id if user_id == 0: return handler500(req) elif user_id == -1: #用户已经存在 return HttpResponse('0') else: mTools.delSession(req, 'phones') #数据传递完毕,删除该会话 mTools.delSession(req, 'verifyCode') #验证完毕,删除该验证码会话 login_id = mRegister.finishRegister( user_ip, user_id) #调用这个函数来记录用户注册成功后的活动记录,与记录登录活动记录一样 if login_id == 0: return handler500(req) else: req.session['user_id'] = user_id #建立一个会话 req.session[ 'login_id'] = login_id #用来在退出时,找到相应的登录记录,从而修改登录退出的时间 return HttpResponse('1') else: return handler404(req) #404 请求错误
def send_email(request): # TODO:发送email if request.method == "POST": #发送邮件 verifyCode = mSend_verify_code.getVerifyCode() ###### email = request.POST.get('email', '') result = mSend_verify_code.sendVerifyCode(email, verifyCode) #发送邮件,邮件里面含验证码 if result == True: #成功发送邮件 request.session[ 'findingByEmailVerifyCode'] = verifyCode #将验证码保存到session中 return HttpResponse("1") else: #发送邮件失败 return HttpResponse('0') else: return handler404(request)
def send_phone_verify_code_post(request, phone): # TODO:向手机号发送验证码 mTools = Tools() if request.method == "POST": verifyCode = mSend_verify_code.getVerifyCode() result = mSend_verify_code.sendVerifyCode(phone, verifyCode) if result == True: #成功发送验证码 request.session[ 'findingByPhoneVerifyCode'] = verifyCode #将验证码保存到session中 return HttpResponse("1") else: #发送验证码失败 mTools.delSession(request, 'phoneSetPasswordByPhone') return HttpResponse("0") else: return handler404(request)
def set_super_admin(req): mTools = Admin_tools() admin_id = mTools.getSession(req, 'admin_id') if admin_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'GET': operation_id = req.GET.get('operation_id', 0) result = mSet_admin.set_super_admin(operation_id) if result == 0: return handler500(req) elif result == 666: return HttpResponseRedirect('/setSuperAdminHome/') else: return handler404(req)
def verify_login(req): if req.method == 'POST': #获取表单用户名和其密码 user_name = req.POST.get('userName', '') password = req.POST.get('password', '') avoid_login = req.POST.get('avoidLogin', '0') # 免登陆 mTools = Tools() user_ip = mTools.get_client_ip(req) #获取用户的IP user_id = mLogin.login( user_ip, user_name, password ) #返回0表示验证失败,返回1表示手机号或者密码有错;返回登录活动记录表的id表示登录成功,返回404表示登录被限制 if user_id == LoginStatus.SERVER_ERROR: #服务器出错 return handler500(req) elif user_id == LoginStatus.WRONG: #返回1表示手机号或者密码有错 return HttpResponse('0') elif user_id == LoginStatus.ERROR_EXCEED: #登录时,错误次数超过6次,锁住IP,返回404 return HttpResponse('2') elif user_id == LoginStatus.IS_BLACK: #该账号已经被拉黑 return HttpResponse('3') else: #验证成功 #user_have_login = mTools.getSession(req,'phone') #if user_have_login == result: # return HttpResponse('该用户已经登录,如果要重新登录,请先前往去退出该账号。') id = mLogin.activity_log(user_id, user_ip) if id == 0: return handler500(req) if avoid_login == '1': req.session.set_expiry(7 * 24 * 60 * 60) #一周免登陆 req.session['user_id'] = user_id #建立一个会话 req.session['login_id'] = id #用来在退出时,找到相应的登录记录,从而修改登录退出的时间 result = mLogout.timeout(id, user_id) #假设会话过期 if result == 0: return handler500(req) url = mTools.getSession(req, 'login_from') mTools.delSession(req, 'login_from') if url is None: url = "/" #重定向到首页 #重定向到来源的url #return HttpResponseRedirect("/") return HttpResponse("1") else: return handler404(req) #404 请求错误
def verify_code_post(request): mTools = Tools() user_id = mTools.getSession(request,'user_id')#调用account.account_manage模块的类Tools的getSession()函数来获取当前会话的id if user_id is None: return HttpResponseRedirect('/sessionExceedTime/') if request.method == "POST": verify_code = request.POST.get("verifyCode",None) #验证码验证 verifyCode = mTools.getSession(request,'changePhoneVerifyCode') #获取会话的验证码 if verify_code != verifyCode: #验证码不对 return HttpResponse('0') else: return HttpResponse("1") else: return handler404(request) #404 请求错误
def delete_admin(req): mTools = Admin_tools() admin_id = mTools.getSession(req, 'admin_id') if admin_id is None: return HttpResponseRedirect('/sessionExceedTime/') if req.method == 'POST': operation_id = req.POST.get('id', 0) result = mSet_admin.delete_admin(operation_id) if result == 0: return HttpResponse("0") #删除该管理员失败 #return handler500(req) elif result == 666: return HttpResponse("1") #删除该管理员成功 else: return handler404(req)