def updateuserstate(request): result = {} if request.method == "POST": userid = request.POST.get("userid", None) # 读取get数据,None为默认值 qunid = request.POST.get("qunid", None) # 读取get数据,None为默认值 userstate = request.POST.get("userstate", None) # 读取get数据,None为默认值 if request.method == "GET": userid = request.GET.get("userid", None) # 读取get数据,None为默认值 qunid = request.GET.get("qunid", None) # 读取get数据,None为默认值 userstate = request.GET.get("userstate", None) # 读取get数据,None为默认值 print("修改用户在群组中的状态接口参数:用户id", userid, "用户状态", userstate) user_receive = UserDAO.getUserInfoId(userid) user_receive.state = userstate UserDAO.updateUserInfo(user_receive) qun = QunDAO.getqunInfoqunid(qunid) userqun = Userqun() userqun.userid = userid userqun.qunid = qunid userqun = UserqunDAO.getuserqunInfouserqun(userqun) if (not userqun or not qun): result["data"] = "" result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.FAIL result["message"] = "修改失败" print('修改失败') return JsonResponse(result) userqun.userstate = userstate UserqunDAO.updateuserqun(userqun) # 如果升级为群主 if (userstate == ResultCode.USERQUN_QUNZHU): # 查找原群主关系组 userqun.userid = qun.userid userqun.qunid = qunid userqun = UserqunDAO.getuserqunInfouserqun(userqun) userqun.userstate = ResultCode.USERQUN_FUZHU UserqunDAO.updateuserqun(userqun) # 修改群信息 qun.userid = userid QunDAO.updatequnInfoqun(qun) result["data"] = "" result["respcode"] = ResultCode.SUCCESS result["errorcode"] = "" result["message"] = "修改成功" print('修改成功') return JsonResponse(result)
def queryAllchatuser(request): #第一层的结果集 result = {} allchatuser_back = [] if request.method == "POST": receive_id = request.POST.get("receive_id", None) # 读取post数据,None为默认值 if request.method == "GET": receive_id = request.GET.get("receive_id", None) # 读取post数据,None为默认值 print("查询所有聊天用户接口参数:接收者ID", receive_id) try: allchatuser = ChatuserDAO.queryallchatuser(receive_id) if (allchatuser and len(allchatuser) > 0): userreceive = fun.user2else_back(UserDAO.getUserInfoId(receive_id)) for chatuser in allchatuser: print("查询到总数为", len(allchatuser)) if (chatuser.state != ResultCode.CHATUSER_HIDE): #如果不隐藏该关系的话 chatuser_back = fun.chatuser2back(chatuser) #如果是私信 if (chatuser_back['usertype'] == ResultCode.CHATUSER_TYPE_SEND or chatuser_back['usertype'] == ResultCode.CHATUSER_TYPE_RECEIVE): usertemp = UserDAO.getUserInfoId( chatuser_back['send_id']) chatuser_back['send_user'] = fun.user2else_back( usertemp) chatuser_back['receive_user'] = userreceive allchatuser_back.append(chatuser_back) #如果是群聊 if (chatuser_back['usertype'] == ResultCode.CHATUSER_TYPE_QUN): quntemp = QunDAO.getqunInfoqunid(chatuser_back.send_id) chatuser_back['qun'] = model_to_dict(quntemp) chatuser_back['receive_user'] = userreceive allchatuser_back.append(chatuser_back) result["message"] = "查询成功" result["data"] = allchatuser_back result["errorcode"] = "" result["respcode"] = ResultCode.SUCCESS print("查询成功数目", len(allchatuser_back)) except Exception as e: print(e) result["message"] = "查询失败" result["data"] = "" result["errorcode"] = ResultCode.FAIL result["respcode"] = ResultCode.FAIL print("查询失败") return JsonResponse(result)
def uploadUserIcon(request): result = {} user = User() if request.method == "POST": id = request.POST.get("id", None) # 读取get数据,None为默认值 if request.method == "GET": id = request.GET.get("id", None) # 读取get数据,None为默认值 print("修改图像接口参数:用户id:", id) realPath = STATICFILES_DIRS[0] + "/upload/userIcon/" # realPath = request.getSession().getServletContext().getRealPath("userIcon/") if not os.path.exists(realPath): os.makedirs(realPath) try: files = request.FILES.getlist('files') multFile = files[0] filenameString = id + "_" + str(int( time.time())) + "_" + str(0) + ".png" filepath = realPath + "/" + filenameString f_obj = open(filepath, 'wb+') for chunk in multFile.chunks(): f_obj.write(chunk) f_obj.close() fileName = STATIC_URL1 + "upload/userIcon/" + filenameString print("用户图像所在地址:", realPath, "/", fileName) user.image = fileName user.id = id UserDAO.updateUserIcon(user) users_back = UserDAO.getUserInfoId(user.id) usermeback = user2meBack(users_back) result["data"] = usermeback result["errorcode"] = "" result["message"] = "上传用户图像成功" result["respcode"] = ResultCode.SUCCESS print('上传用户图像成功') except Exception as e: result["data"] = "" result["errorcode"] = ResultCode.VINT result["message"] = "文件不合法" result["respcode"] = ResultCode.FAIL print('文件不合法') return JsonResponse(result)
def queryAllsixin(request): #第一层的结果集 result = {} allmessage_back = [] if request.method == "POST": receive_id = int(request.POST.get("receive_id", None)) # 读取post数据,None为默认值 pageNo = int(request.POST.get("page", None)) # 读取post数据,None为默认值 if request.method == "GET": receive_id = int(request.GET.get("receive_id", None)) # 读取post数据,None为默认值 pageNo = int(request.POST.get("page", None)) # 读取post数据,None为默认值 print("查询某人的所有接收私信接口参数:接收者ID", receive_id, "page", pageNo) #获取聊天数目 page = PageForId() page.pageno = pageNo page.receive_id = receive_id page.pagesize = 10 page.start = 10 * (pageNo - 1) #数据库本来就是从后向前查询的 在数据库中第0条记录就是最默认的记录 try: allMessage = Chat_MessageDAO.queryAllsixin(page.receive_id, page.start, page.pagesize) #通过abid查询 if (allMessage and len(allMessage) > 0): receiveuser = fun.user2else_back(UserDAO.getUserInfoId(receive_id)) for message in allMessage: senduser = fun.user2else_back( UserDAO.getUserInfoId(message.getSend_id())) message_back = fun.chatmessage2back(message) message_back['send_user'] = senduser message_back['receive_user'] = receiveuser allmessage_back.append(message_back) result["message"] = "查询成功" result["data"] = allmessage_back result["errorcode"] = "" result["respcode"] = ResultCode.SUCCESS except Exception as e: print(e) result["message"] = "查询失败" result["data"] = "" result["errorcode"] = ResultCode.FAIL result["respcode"] = ResultCode.FAIL print("查询失败") return JsonResponse(result)
def getUserInfoId(request): result = {} if request.method == "POST": userid = request.POST.get("userid", None) # 读取get数据,None为默认值 if request.method == "GET": userid = request.GET.get("userid", None) # 读取get数据,None为默认值 print("查询用户资料接口参数:用户id:", userid) user = UserDAO.getUserInfoId(userid) if (user): user_else = fun.user2else_back(user) result["message"] = "查询成功" result["respcode"] = ResultCode.SUCCESS result["data"] = user_else result["errorcode"] = "" print("查询成功") else: # 没有查询到该用户 result["message"] = "用户不存在" result["respcode"] = ResultCode.FAIL result["data"] = "" result["errorcode"] = ResultCode.UNUSEREXIST print("用户不存在") return JsonResponse(result)
def getalluser(request): if request.method == "POST": pageNo = request.POST.get("page", None) # 读取get数据,None为默认值 if request.method == "GET": pageNo = request.GET.get("page", None) # 读取get数据,None为默认值 print("分页查询所有用户page:", pageNo) result = {} alluserback = [] page = PageForId() page.pageno = pageNo page.pagesize = 100 # 一次查询100个 page.start = 100 * (pageNo - 1) # 数据库本来就是从后向前查询的 在数据库中第0条记录就是最默认的记录 alluser = UserDAO.queryalluser(page) if (alluser and len(alluser) != 0): for i in range(len(alluser)): user_back = fun.user2else_back(alluser[i]) alluserback.append(user_back) result["respcode"] = ResultCode.SUCCESS result["message"] = "查询用户成功!" result["data"] = alluserback result["errorcode"] = ResultCode.SUCCESS print("查询用户成功!") return JsonResponse(result)
def getallqunuser(request): if request.method == "POST": pageNo = request.POST.get("page", None) # 读取get数据,None为默认值 userid = request.POST.get("userid", None) # 读取get数据,None为默认值 if request.method == "GET": pageNo = request.GET.get("page", None) # 读取get数据,None为默认值 userid = request.GET.get("userid", None) # 读取get数据,None为默认值 print("查询用户所在群下所有用户:用户ID:", userid) result = {} page = PageForId() page.pageno = pageNo page.userid = userid page.pagesize = 20 # 一次查询100个 page.start = 20 * (int(pageNo) - 1) # 数据库本来就是从后向前查询的 在数据库中第0条记录就是最默认的记录 allUsers = UserDAO.queryallqunuser(page) alluserback = [] for i in range(len(allUsers)): alluserback.append(fun.user2else_back(allUsers[i])) result["respcode"] = ResultCode.SUCCESS result["message"] = "查询用户成功!" result["data"] = alluserback result["errorcode"] = ResultCode.SUCCESS print("查询到用户,数目为", len(alluserback)) return JsonResponse(result)
def getdifuser(request): if request.method == "POST": pageNo = request.POST.get("page", None) # 读取get数据,None为默认值 userid = request.POST.get("userid", None) # 读取get数据,None为默认值 showtype = request.POST.get("showtype", None) # 读取get数据,None为默认值 if request.method == "GET": pageNo = request.GET.get("page", None) # 读取get数据,None为默认值 userid = request.GET.get("userid", None) # 读取get数据,None为默认值 showtype = request.GET.get("showtype", None) # 读取get数据,None为默认值 print("查询各种类型的用户:用户ID:", userid, "类型", showtype) result = {} alluser = [] me = UserDAO.getUserInfoId(userid) if (not me): result["respcode"] = ResultCode.FAIL result["message"] = "用户不存在!请先注册登陆" result["data"] = "" result["errorcode"] = ResultCode.FAIL print("用户不存在") return JsonResponse(result) page = PageForId() page.pageno = pageNo page.userid = userid page.pagesize = 100 # 一次查询100个 page.deal = showtype page.start = 100 * (pageNo - 1) # 数据库本来就是从后向前查询的 在数据库中第0条记录就是最默认的记录 allmore = MoreDAO.selectmorelistInfopage(page) if (allmore and len(allmore) != 0): for i in range(len(allmore)): user1 = UserDAO.getUserInfoId(allmore[i].userid_destination) user_back = fun.user2else_back(user1) more = getuserdeal(userid, user1.id, ResultCode.USER_ZAN) if (more): user_back['ideal'] = ResultCode.USER_ZAN alluser.append(user_back) result["respcode"] = ResultCode.SUCCESS result["message"] = "查询用户成功!" result["data"] = alluser result["errorcode"] = ResultCode.SUCCESS print("查询各种类型用户,数目为", len(alluser)) return JsonResponse(result)
def updateUserPwd(request): result = {} if request.method == "POST": id = request.POST.get("id", None) # 读取get数据,None为默认值 oldpassword = request.POST.get("oldpassword", None) # 读取get数据,None为默认值 newpassword = request.POST.get("newpassword", None) # 读取get数据,None为默认值 if request.method == "GET": id = request.GET.get("id", None) # 读取get数据,None为默认值 oldpassword = request.GET.get("oldpassword", None) # 读取get数据,None为默认值 newpassword = request.GET.get("newpassword", None) # 读取get数据,None为默认值 print("修改密码接口参数:源密码", oldpassword, "新密码", newpassword) user = UserDAO.getUserInfoId(id) if (user): if (oldpassword == user.password): user.password = newpassword UserDAO.updateUserPwd(user) result["message"] = "修改密码成功" result["respcode"] = ResultCode.SUCCESS result["data"] = ResultCode.SUCCESS result["errorcode"] = "" print('修改密码成功') else: result["message"] = "旧密码错误" result["respcode"] = ResultCode.FAIL result["data"] = "" result["errorcode"] = ResultCode.OLDPWDFAIL print('旧密码错误') else: result["message"] = "用户不存在" result["respcode"] = ResultCode.FAIL result["data"] = "" result["errorcode"] = ResultCode.UNUSEREXIST print('用户不存在') return JsonResponse(result)
def setstate(request): result = {} if request.method == "POST": diaryid = request.POST.get("diaryid", None) # 读取post数据,None为默认值 tip = request.POST.get("tip", None) # 读取post数据,None为默认值 type = request.POST.get("type", None) # 读取post数据,None为默认值 if request.method == "GET": diaryid = request.GET.get("diaryid", None) # 读取get数据,None为默认值 tip = request.GET.get("tip", None) # 读取get数据,None为默认值 type = request.GET.get("type", None) # 读取get数据,None为默认值 print("修改状态:日志ID", diaryid, "状态:", type) try: diary = DiaryDAO.selectDiary(diaryid) if (diary): if (type == "2" and not diary.type == "2"): #如果新类型为出售中,并且之前不是出售中,则增加用户的积分 user = UserDAO.getUserInfoId(diary.userid) #查询用户 user.zannum = user.zannum + diary.money #设置用户赞积分 UserDAO.updateUserInfo(user) if (type == "3" and not diary.type == "3"): #如果新类型为已汇款,并且之前不是已汇款,则增加用户的汇款金额 user = UserDAO.getUserInfoId(diary.userid) #查询用户 user.gold(user.gold + diary.money) #设置用户已回款金额 #如果之前是出售中,则删除出售中金额 if (diary.type == "2"): user.zannum(user.zannum - diary.money) #设置用户赞积分 UserDAO.updateUserInfo(user) diary.urlcontent = tip diary.type = type diary.date = TimeUtil.getCurrentDate() diary.time = TimeUtil.getCurrentTime() DiaryDAO.updatediary(diary) result["data"] = "0" result["respcode"] = ResultCode.SUCCESS result["errorcode"] = "" result["message"] = "修改日志成功" print('修改日志成功') return JsonResponse(result) except Exception as e: print(e) result["data"] = "0" result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.FAIL result["message"] = "修改日志失败" print('修改日志失败') return JsonResponse(result)
def userRegist(request): user = User() result = {} if request.method == "POST": phone = request.POST.get("phone", None) # 读取post数据,None为默认值 qunid = request.POST.get("qunid", 0) # 读取get数据,None为默认值 password = request.POST.get("password", None) # 读取post数据,None为默认值 name = request.POST.get("name", None) # 读取post数据,None为默认值 identity = request.POST.get("identity", None) # 读取post数据,None为默认值 email = request.POST.get("email", None) # 读取post数据,None为默认值 address = request.POST.get("address", None) # 读取post数据,None为默认值 school = request.POST.get("school", None) # 读取post数据,None为默认值 usertype = request.POST.get("usertype", 0) # 读取post数据,None为默认值 usericon = request.POST.get("usericon", None) # 读取get数据,None为默认值 wechat = request.POST.get("wechat", None) # 读取get数据,None为默认值 alipay = request.POST.get("alipay", None) # 读取get数据,None为默认值 parameter1 = request.POST.get("parameter1", None) # 读取get数据,None为默认值 parameter2 = request.POST.get("parameter2", None) # 读取get数据,None为默认值 parameter3 = request.POST.get("parameter3", None) # 读取get数据,None为默认值 parameter4 = request.POST.get("parameter4", None) # 读取get数据,None为默认值 parameter5 = request.POST.get("parameter5", None) # 读取get数据,None为默认值 parameter6 = request.POST.get("parameter6", None) # 读取get数据,None为默认值 parameter7 = request.POST.get("parameter7", None) # 读取get数据,None为默认值 parameter8 = request.POST.get("parameter8", None) # 读取get数据,None为默认值 parameter9 = request.POST.get("parameter9", None) # 读取get数据,None为默认值 parameter10 = request.POST.get("parameter10", None) # 读取get数据,None为默认值 parameter11 = request.POST.get("parameter11", None) # 读取get数据,None为默认值 parameter12 = request.POST.get("parameter12", None) # 读取get数据,None为默认值 parameter13 = request.POST.get("parameter13", None) # 读取get数据,None为默认值 parameter14 = request.POST.get("parameter14", None) # 读取get数据,None为默认值 parameter15 = request.POST.get("parameter15", None) # 读取get数据,None为默认值 parameter16 = request.POST.get("parameter16", None) # 读取get数据,None为默认值 parameter17 = request.POST.get("parameter17", None) # 读取get数据,None为默认值 parameter18 = request.POST.get("parameter18", None) # 读取get数据,None为默认值 parameter19 = request.POST.get("parameter19", None) # 读取get数据,None为默认值 parameter20 = request.POST.get("parameter20", None) # 读取get数据,None为默认值 if request.method == "GET": phone = request.GET.get("phone", None) # 读取get数据,None为默认值 qunid = request.GET.get("qunid", 0) # 读取get数据,None为默认值 password = request.GET.get("password", None) # 读取get数据,None为默认值 name = request.GET.get("name", None) # 读取get数据,None为默认值 identity = request.GET.get("identity", None) # 读取get数据,None为默认值 email = request.GET.get("email", None) # 读取get数据,None为默认值 address = request.GET.get("address", None) # 读取get数据,None为默认值 school = request.GET.get("school", None) # 读取get数据,None为默认值 usertype = request.GET.get("usertype", 0) # 读取post数据,None为默认值 usericon = request.GET.get("usericon", None) # 读取get数据,None为默认值 wechat = request.GET.get("wechat", None) # 读取get数据,None为默认值 alipay = request.GET.get("alipay", None) # 读取get数据,None为默认值 parameter1 = request.GET.get("parameter1", None) # 读取get数据,None为默认值 parameter2 = request.GET.get("parameter2", None) # 读取get数据,None为默认值 parameter3 = request.GET.get("parameter3", None) # 读取get数据,None为默认值 parameter4 = request.GET.get("parameter4", None) # 读取get数据,None为默认值 parameter5 = request.GET.get("parameter5", None) # 读取get数据,None为默认值 parameter6 = request.GET.get("parameter6", None) # 读取get数据,None为默认值 parameter7 = request.GET.get("parameter7", None) # 读取get数据,None为默认值 parameter8 = request.GET.get("parameter8", None) # 读取get数据,None为默认值 parameter9 = request.GET.get("parameter9", None) # 读取get数据,None为默认值 parameter10 = request.GET.get("parameter10", None) # 读取get数据,None为默认值 parameter11 = request.GET.get("parameter11", None) # 读取get数据,None为默认值 parameter12 = request.GET.get("parameter12", None) # 读取get数据,None为默认值 parameter13 = request.GET.get("parameter13", None) # 读取get数据,None为默认值 parameter14 = request.GET.get("parameter14", None) # 读取get数据,None为默认值 parameter15 = request.GET.get("parameter15", None) # 读取get数据,None为默认值 parameter16 = request.GET.get("parameter16", None) # 读取get数据,None为默认值 parameter17 = request.GET.get("parameter17", None) # 读取get数据,None为默认值 parameter18 = request.GET.get("parameter18", None) # 读取get数据,None为默认值 parameter19 = request.GET.get("parameter19", None) # 读取get数据,None为默认值 parameter20 = request.GET.get("parameter20", None) # 读取get数据,None为默认值 print("注册用户接口参数:电话", phone, "密码", password, "名称:", name) if (not phone or not password): result["data"] = "" result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.FAIL result["message"] = "注册失败,电话密码不能为空" print("注册失败,电话密码不能为空") return JsonResponse(result) # 先查询手机号是否已经注册过了 u = UserDAO.queryuserforphone(phone) if u: result["data"] = ResultCode.FAIL result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.USEREXIST result["message"] = "注册失败,用户已经存在" print("注册失败用户存在") else: # u1 = UserDAO.queryUserForidentity(identity) # if u1: # result["data"] = ResultCode.FAIL # result["respcode"] = ResultCode.FAIL # result["errorcode"] = ResultCode.USEREXIST # result["message"] = "注册失败,该用户已经注册过一次" # else: user.usertype = usertype if (usertype == 0): user.state = ResultCode.USERQUN_NOT # 客户从手机端注册,,默认为未审核 if (usertype == 1): user.state = ResultCode.USERQUN_QUNZHU # 代理商从pc端注册,默认为审核 user.image = usericon user.email = email user.phone = phone user.password = password user.name = name user.address = address user.school = school user.identity = identity user.wechat = wechat user.alipay = alipay user.parameter1 = parameter1 user.parameter2 = parameter2 user.parameter3 = parameter3 user.parameter4 = parameter4 user.parameter5 = parameter5 user.parameter6 = parameter6 user.parameter7 = parameter7 user.parameter8 = parameter8 user.parameter9 = parameter9 user.parameter10 = parameter10 user.parameter11 = parameter11 user.parameter12 = parameter12 user.parameter13 = parameter13 user.parameter14 = parameter14 user.parameter15 = parameter15 user.parameter16 = parameter16 user.parameter17 = parameter17 user.parameter18 = parameter18 user.parameter19 = parameter19 user.parameter20 = parameter20 UserDAO.regist(user) # 注册函数 无返回值 users = UserDAO.login(user) # 同时登陆,返回数据,尤其是ID号 # 如果注册时需要加入群组,这里加入群组 if (qunid): try: # 添加用户群关系就是加入了群组 qun = QunDAO.getqunInfoqunid(qunid) userqun = Userqun() userqun.userid = users.id userqun.qunid = qunid userquntemp = UserqunDAO.getuserqunInfouserqun(userqun) if (not userquntemp): if (qun.quntype == ResultCode.QUN_USER or qun.quntype == ResultCode.QUN_USER_DIARY or qun.quntype == ResultCode.QUN_USER_DIARY_NOT_USER): userqun.userstate = ResultCode.USERQUN_NOT else: userqun.userstate = ResultCode.USERQUN_YUAN UserqunDAO.adduserqun(userqun) # 添加群聊关系 chatuser = Chatuser() chatuser.send_id = qunid chatuser.receive_id = users.id chatuser.usertype = ResultCode.CHATUSER_TYPE_QUN chatuser.state = ResultCode.CHATUSER_HIDE chatuser.abid = str(qunid) chatuser.content = "" chatuser.time = TimeUtil.getCurrentTime() chatuser.date = TimeUtil.getCurrentDate() ChatuserDAO.addchatuser(chatuser) except Exception as e: print(e) usermeback = user2meBack(users) result["data"] = usermeback result["respcode"] = ResultCode.SUCCESS result["errorcode"] = "" result["message"] = "注册成功" print("注册成功") return JsonResponse(result)
def deldealinfomore(request): result = {} if request.method == "POST": deal = request.POST.get("deal", 0) # 读取post数据,None为默认值 userid_source = request.POST.get("userid_source", 0) # 读取post数据,None为默认值 diaryid_source = request.POST.get("diaryid_source", 0) # 读取post数据,None为默认值 qunid_source = request.POST.get("qunid_source", 0) # 读取post数据,None为默认值 userid_destination = request.POST.get("userid_destination", 0) # 读取post数据,None为默认值 diaryid_destination = request.POST.get("diaryid_destination", 0) # 读取post数据,None为默认值 qunid_destination = request.POST.get("qunid_destination", 0) # 读取post数据,None为默认值 if request.method == "GET": deal = request.GET.get("deal", 0) # 读取get数据,None为默认值 userid_source = request.GET.get("userid_source", 0) # 读取get数据,None为默认值 diaryid_source = request.GET.get("diaryid_source", 0) # 读取get数据,None为默认值 qunid_source = request.GET.get("qunid_source", 0) # 读取get数据,None为默认值 userid_destination = request.GET.get("userid_destination", 0) # 读取get数据,None为默认值 diaryid_destination = request.GET.get("diaryid_destination", 0) # 读取get数据,None为默认值 qunid_destination = request.GET.get("qunid_destination", 0) # 读取get数据,None为默认值 print("删除更多操作接口参数:deal", deal) more = More() more.deal = deal more.userid_source = userid_source more.userid_destination = userid_destination more.diaryid_source = diaryid_source more.diaryid_destination = diaryid_destination more.qunid_source = qunid_source more.qunid_destination = qunid_destination more = MoreDAO.selectmoreInfomore(more) if (more): MoreDAO.deldealInfoid(more.id) result["data"] = "" result["respcode"] = ResultCode.SUCCESS result["errorcode"] = ResultCode.SUCCESS result["message"] = "删除处理成功" #如果是日志点赞则添加到日志属性中去 if (more.diaryid_destination): diary = DiaryDAO.selectDiary(more.diaryid_destination) if (diary): if (more.deal == ResultCode.DIARY_ZAN): diary.zannum = diary.zannum - 1 DiaryDAO.updatediary(diary) elif (more.deal == ResultCode.DIARY_SHOUCANG): diary.shoucangnum = diary.shoucangnum - 1 DiaryDAO.updatediary(diary) elif (more.deal == ResultCode.DIARY_TUIJIAN): diary.tuijiannum = diary.tuijiannum - 1 DiaryDAO.updatediary(diary) #如果是群组点赞 则添加到群属性中 elif (more.qunid_destination()): qun = QunDAO.getqunInfoqunid(more.qunid_destination) if (qun): if (more.deal == ResultCode.QUN_ZAN): qun.zannum = qun.zannum - 1 QunDAO.updatequnInfoqun(qun) elif (more.deal == ResultCode.QUN_SHOUCANG): qun.shoucangnum = qun.shoucangnum - 1 QunDAO.updatequnInfoqun(qun) elif (more.deal == ResultCode.QUN_TUIJIAN): qun.tuijiannum = qun.tuijiannum - 1 QunDAO.updatequnInfoqun(qun) #如果是用户点赞 则添加到用户属性中 elif (more.userid_destination): user = UserDAO.getUserInfoId(more.userid_destination) if (user): if (more.deal == ResultCode.USER_ZAN): user.zannum = user.zannum - 1 UserDAO.updateUserInfo(user) if (more.deal == ResultCode.USER_SHOUCANG): user.shoucangnum = user.shoucangnum - 1 UserDAO.updateUserInfo(user) if (more.deal == ResultCode.USER_TUIJIAN): user.tuijiannum = user.tuijiannum - 1 UserDAO.updateUserInfo(user) return JsonResponse(result)
def deldeal(request): result = {} if request.method == "POST": id = request.POST.get("id", None) # 读取post数据,None为默认值 if request.method == "GET": id = request.GET.get("id", None) # 读取get数据,None为默认值 print("删除更多操作接口参数:操作id", id) more = MoreDAO.selectdealInfoid(id) try: MoreDAO.deldealInfoid(id) result["data"] = "" result["respcode"] = ResultCode.SUCCESS result["errorcode"] = ResultCode.SUCCESS result["message"] = "删除处理成功" #如果是日志点赞则添加到日志属性中去 if (more.diaryid_destination): diary = DiaryDAO.selectDiary(more.diaryid_destination) if (diary): if (more.deal == ResultCode.DIARY_ZAN): diary.zannum = diary.zannum - 1 DiaryDAO.updatediary(diary) elif (more.deal == ResultCode.DIARY_SHOUCANG): diary.shoucangnum = diary.shoucangnum - 1 DiaryDAO.updatediary(diary) elif (more.deal == ResultCode.DIARY_TUIJIAN): diary.tuijiannum = diary.tuijiannum - 1 DiaryDAO.updatediary(diary) #如果是群组点赞 则添加到群属性中 elif (more.qunid_destination): qun = QunDAO.getqunInfoqunid(more.qunid_destination) if (qun): if (more.deal == ResultCode.QUN_ZAN): qun.zannum = qun.zannum - 1 QunDAO.updatequnInfoqun(qun) elif (more.deal == ResultCode.QUN_SHOUCANG): qun.shoucangnum = qun.shoucangnum - 1 QunDAO.updatequnInfoqun(qun) elif (more.deal == ResultCode.QUN_TUIJIAN): qun.tuijiannum = qun.tuijiannum - 1 QunDAO.updatequnInfoqun(qun) #如果是用户点赞 则添加到用户属性中 elif (more.userid_destination): user = UserDAO.getUserInfoId(more.userid_destination) if (user): if (more.deal == ResultCode.USER_ZAN): user.zannum = user.zannum - 1 UserDAO.updateUserInfo(user) if (more.deal == ResultCode.USER_SHOUCANG): user.shoucangnum = user.shoucangnum - 1 UserDAO.updateUserInfo(user) if (more.deal == ResultCode.USER_TUIJIAN): user.tuijiannum = user.tuijiannum - 1 UserDAO.updateUserInfo(user) except Exception as e: result["data"] = "" result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.FAIL result["message"] = "删除处理成功" return JsonResponse(result)
def updateuserinf(request): result = {} if request.method == "POST": userid = request.POST.get("id", None) # 读取post数据,None为默认值 phone = request.POST.get("phone", None) # 读取post数据,None为默认值 qunid = request.POST.get("qunid", 0) # 读取get数据,None为默认值 password = request.POST.get("password", None) # 读取post数据,None为默认值 name = request.POST.get("name", None) # 读取post数据,None为默认值 identity = request.POST.get("identity", None) # 读取post数据,None为默认值 email = request.POST.get("email", None) # 读取post数据,None为默认值 address = request.POST.get("address", None) # 读取post数据,None为默认值 id_number = request.POST.get("id_number", None) # 读取get数据,None为默认值 push_userId = request.POST.get("push_userId", None) # 读取get数据,None为默认值 push_channelId = request.POST.get("push_channelId", None) # 读取get数据,None为默认值 school = request.POST.get("school", None) # 读取post数据,None为默认值 usertype = request.POST.get("usertype", 0) # 读取post数据,None为默认值 usericon = request.POST.get("usericon", None) # 读取get数据,None为默认值 wechat = request.POST.get("wechat", None) # 读取get数据,None为默认值 alipay = request.POST.get("alipay", None) # 读取get数据,None为默认值 parameter1 = request.POST.get("parameter1", None) # 读取get数据,None为默认值 parameter2 = request.POST.get("parameter2", None) # 读取get数据,None为默认值 parameter3 = request.POST.get("parameter3", None) # 读取get数据,None为默认值 parameter4 = request.POST.get("parameter4", None) # 读取get数据,None为默认值 parameter5 = request.POST.get("parameter5", None) # 读取get数据,None为默认值 parameter6 = request.POST.get("parameter6", None) # 读取get数据,None为默认值 parameter7 = request.POST.get("parameter7", None) # 读取get数据,None为默认值 parameter8 = request.POST.get("parameter8", None) # 读取get数据,None为默认值 parameter9 = request.POST.get("parameter9", None) # 读取get数据,None为默认值 parameter10 = request.POST.get("parameter10", None) # 读取get数据,None为默认值 parameter11 = request.POST.get("parameter11", None) # 读取get数据,None为默认值 parameter12 = request.POST.get("parameter12", None) # 读取get数据,None为默认值 parameter13 = request.POST.get("parameter13", None) # 读取get数据,None为默认值 parameter14 = request.POST.get("parameter14", None) # 读取get数据,None为默认值 parameter15 = request.POST.get("parameter15", None) # 读取get数据,None为默认值 parameter16 = request.POST.get("parameter16", None) # 读取get数据,None为默认值 parameter17 = request.POST.get("parameter17", None) # 读取get数据,None为默认值 parameter18 = request.POST.get("parameter18", None) # 读取get数据,None为默认值 parameter19 = request.POST.get("parameter19", None) # 读取get数据,None为默认值 parameter20 = request.POST.get("parameter20", None) # 读取get数据,None为默认值 if request.method == "GET": userid = request.GET.get("id", None) # 读取get数据,None为默认值 phone = request.GET.get("phone", None) # 读取get数据,None为默认值 qunid = request.GET.get("qunid", 0) # 读取get数据,None为默认值 password = request.GET.get("password", None) # 读取get数据,None为默认值 name = request.GET.get("name", None) # 读取get数据,None为默认值 identity = request.GET.get("identity", None) # 读取get数据,None为默认值 email = request.GET.get("email", None) # 读取get数据,None为默认值 address = request.GET.get("address", None) # 读取get数据,None为默认值 id_number = request.GET.get("id_number", None) # 读取get数据,None为默认值 push_userId = request.GET.get("push_userId", None) # 读取get数据,None为默认值 push_channelId = request.GET.get("push_channelId", None) # 读取get数据,None为默认值 school = request.GET.get("school", None) # 读取get数据,None为默认值 usertype = request.GET.get("usertype", 0) # 读取post数据,None为默认值 usericon = request.GET.get("usericon", None) # 读取get数据,None为默认值 wechat = request.GET.get("wechat", None) # 读取get数据,None为默认值 alipay = request.GET.get("alipay", None) # 读取get数据,None为默认值 parameter1 = request.GET.get("parameter1", None) # 读取get数据,None为默认值 parameter2 = request.GET.get("parameter2", None) # 读取get数据,None为默认值 parameter3 = request.GET.get("parameter3", None) # 读取get数据,None为默认值 parameter4 = request.GET.get("parameter4", None) # 读取get数据,None为默认值 parameter5 = request.GET.get("parameter5", None) # 读取get数据,None为默认值 parameter6 = request.GET.get("parameter6", None) # 读取get数据,None为默认值 parameter7 = request.GET.get("parameter7", None) # 读取get数据,None为默认值 parameter8 = request.GET.get("parameter8", None) # 读取get数据,None为默认值 parameter9 = request.GET.get("parameter9", None) # 读取get数据,None为默认值 parameter10 = request.GET.get("parameter10", None) # 读取get数据,None为默认值 parameter11 = request.GET.get("parameter11", None) # 读取get数据,None为默认值 parameter12 = request.GET.get("parameter12", None) # 读取get数据,None为默认值 parameter13 = request.GET.get("parameter13", None) # 读取get数据,None为默认值 parameter14 = request.GET.get("parameter14", None) # 读取get数据,None为默认值 parameter15 = request.GET.get("parameter15", None) # 读取get数据,None为默认值 parameter16 = request.GET.get("parameter16", None) # 读取get数据,None为默认值 parameter17 = request.GET.get("parameter17", None) # 读取get数据,None为默认值 parameter18 = request.GET.get("parameter18", None) # 读取get数据,None为默认值 parameter19 = request.GET.get("parameter19", None) # 读取get数据,None为默认值 parameter20 = request.GET.get("parameter20", None) # 读取get数据,None为默认值 print("更新资料接口参数:", "昵称:", name, "手机号", phone, "邮箱:", email, "身份账号", id_number, "地址:", address) user = UserDAO.getUserInfoId(userid) if (not user): result["message"] = "用户不存在" result["respcode"] = ResultCode.FAIL result["data"] = "0" result["errorcode"] = ResultCode.FAIL print('用户不存在') return JsonResponse(result) user.id = userid if (name): user.name = name if (qunid): user.qunid = qunid if (phone): user.phone = phone if (email): user.email = email if (id_number): user.id_number = id_number if (address): user.address = address if (school): user.school = school if (wechat): user.wechat = wechat if (alipay): user.alipay = alipay if (usericon): user.image = usericon if (push_userId): user.push_userId = push_userId if (push_channelId): user.push_channelId = push_channelId if (parameter1): user.parameter1 = parameter1 if (parameter2): user.parameter2 = parameter2 if (parameter3): user.parameter3 = parameter3 if (parameter4): user.parameter4 = parameter4 if (parameter5): user.parameter5 = parameter5 if (parameter6): user.parameter6 = parameter6 if (parameter7): user.parameter7 = parameter7 if (parameter8): user.parameter8 = parameter8 if (parameter9): user.parameter9 = parameter9 if (parameter10): user.parameter10 = parameter10 if (parameter11): user.parameter11 = parameter11 if (parameter12): user.parameter12 = parameter12 if (parameter13): user.parameter13 = parameter13 if (parameter14): user.parameter14 = parameter14 if (parameter15): user.parameter15 = parameter15 if (parameter16): user.parameter16 = parameter16 if (parameter17): user.parameter17 = parameter17 if (parameter18): user.parameter18 = parameter18 if (parameter19): user.parameter19 = parameter19 if (parameter20): user.parameter20 = parameter20 # 升级为高级会员的条件,能创建群组 if (id_number): pass # user.setState(ResultCode.USER_VIP) try: # 先修该用户资料 UserDAO.updateUserInfo(user) # 根据用户id查询用户信息 users_back = UserDAO.getUserInfoId(user.id) # 将返回信息转变为本文信息类 usermeback = user2meBack(users_back) result["data"] = usermeback result["respcode"] = ResultCode.SUCCESS result["errorcode"] = "" result["message"] = "修改用户资料成功" print("修改用户资料成功") except Exception as e: result["message"] = "修改用户资料失败" result["respcode"] = ResultCode.FAIL result["data"] = "0" result["errorcode"] = ResultCode.FAIL print("修改用户资料失败") return JsonResponse(result)
def wechat(request): # 微信接入验证是GET方法, if request.method == "GET": signature = request.GET.get("signature", None) timestamp = request.GET.get("timestamp", None) nonce = request.GET.get("nonce", None) # if not check_signature(token=WEIXIN_TOKEN, signature=signature, timestamp=timestamp, nonce=nonce): # print('验证失败') # return HttpResponseBadRequest('Verify Failed') return HttpResponse(request.GET.get('echostr', ''), content_type="text/plain") # 微信正常的收发消息是用POST方法。 else: xml = request.body msg = parse_message(xml) user = UserDAO.queryUserForidentity(msg.source) qun = QunDAO.getqunInfoqunid(999) if not qun: respContent = "系统尚未架构" reply = TextReply(content=respContent, message=msg) r_xml = reply.render() return HttpResponse(r_xml) #注册没注册用户都可以查看价格 if msg.type == 'text': content = msg.content if "jg" in content: # print('回复价格表') respContent=" 每日播报 \n\n价格高、回款快、信誉100%!\n\n" try: jsonobj =json.loads(qun.gonggao.replace('\'','\"')) # python字符串转化为字典必须为双引号 for key in jsonobj: respContent+= key+":¥"+jsonobj[key]+"\n" respContent+='\n\n<a href="'+urlpath+STATIC_URL1+'piaoquan/shangchuanzishi.html">更多上传姿势</a>' reply = TextReply(content=respContent, message=msg) r_xml = reply.render() return HttpResponse(r_xml) except Exception as e: print('返回价格表出错:',e) #如果用户没有注册,则必须先注册才能进行后面的操作 if not user: respContent = toregister(msg.source) reply = TextReply(content=respContent, message=msg) r_xml = reply.render() return HttpResponse(r_xml) # 如果是文本消息 if msg.type == 'text': backstr = wordfun(msg,qun,user) reply = TextReply(content=backstr, message=msg) r_xml = reply.render() return HttpResponse(r_xml) # 如果是图片消息 if msg.type == 'image': backstr = imagefun(msg, qun, user) reply = TextReply(content=backstr, message=msg) r_xml = reply.render() return HttpResponse(r_xml) # 如果是点击事件消息 elif msg.type == 'event': try: push = ScanCodeWaitMsgEvent(msg) # 获取二维码信息,字符串 content = msg.scan_result print(content) # 如何处理,自行处理,回复一段文本或者图文 reply = TextReply(content="something", message=msg) r_xml = reply.render() return HttpResponse(r_xml) except Exception as e: print('点击事件响应出错:',e)
def getinfo(ocrtext,qun,user,filepath): ocrtext=ocrtext.replace(" ", "") respContent="" if (len(allname)==0): # 主要配置表中有,就都能识别 jsonobj=json.loads(qun.gonggao.replace('\'','\"')) # 获取配置的价格表 for keystr in jsonobj: money = jsonobj[keystr] onerow = keystr.split("|") if (len(onerow)==3): allname.append(keystr) allqiye.append(onerow[0]) allchanpin.append(onerow[1]) allbank.append(onerow[2]) alljiage.append(money) # 分为大杯和中杯饮品,和多少元代金券 bank="" qiye="" chanpin = "" quanma="" money=0 canshibie=False # 先用企业和商品类型识别一遍,这个为必须包含项 for i in range(len(allqiye)): if (allqiye[i] in ocrtext and allchanpin[i] in ocrtext): qiye = allqiye[i] chanpin=allchanpin[i] bank = allbank[i] money= float(alljiage[i]) canshibie=True break # 如果不能识别,就返回不能识别说明 if (not canshibie): respContent = '无法识别此类商品或此类商品已不再收录,您可以回复jg查看收录商品,或通过其他方式上传。\n\n'\ + '<a href="'+urlpath+'piaoquan/mydiary?qunid=999&typeindex=1&userid='+str(user.id)+'">券码管理</a>\n\n'\ + '<a href="'+urlpath+'piaoquan/setting?userid='+str(user.id)+'">个人账户中心</a>\n\n'\ + '回复“jg”查询商品价格!' # print(respContent) return respContent # 再用企业、商品类型、银行识别一遍,作为次选。因为银行并不是必选项 for i in range(len(allqiye)): if (allqiye[i] in ocrtext and allchanpin[i] in ocrtext and allbank[i] in ocrtext): qiye = allqiye[i] chanpin=allchanpin[i] bank = allbank[i] money= float(alljiage[i]) break # print(qiye, chanpin, bank, money) # 如果有图片就使用图片识别券码 if (filepath): try: code = QRcode.ocr_qrcode_zxing(filepath) # 识别图中的二维码 print("第一种方式二维码识别结果:",code) # if(code==None or code=="null" or code==""): # code = QRcode.ocr_qrcode_zxing(filepath) # 识别图中的二维码 # else: # # 判断编码是不是只有字母数字和= # regexstr="^[a-zA-Z=0-9]+$" # pattern = re.compile(regexstr) # result = re.match(pattern,code) # if (not result): # return '无法识别二维码' # print("二维码识别结果:"+code) if (code.find("=")>-1): quanma = code[0:code.find("=")] else: quanma = code except Exception as e: print("二维码识别出错:",e) # 没有图片或者图片匹配不到就正则表达式识别 if (quanma==""): # 识别券码 regexstr="[0-9A-Za-z]{10,30}" # 查找指定的字符串 pattern=re.compile(regexstr) matcher = re.match(pattern, ocrtext) i = 0 while(matcher.groups(i)): # 如果在匹配到的数字前出现的“订单编号”,则放弃 if (matcher.start(i)-8>0): if ('订单编号' in ocrtext[matcher.start(i)-8,matcher.start(i)]): i += 1 continue quanma= matcher.group(i) break # 如果券码为"" if (quanma==""): # 如果没有图片,则放弃 if (filepath==None): respContent = "无法识别券码,请通过其他方式上传,或者联系客服\n\n"\ + "<a href=\""+urlpath+"piaoquan/mydiary.jsp?qunid=999&typeindex=1&userid="+str(user.getId())+"\">券码管理</a>\n\n"\ + "<a href=\""+urlpath+"piaoquan/setting.jsp?userid="+str(user.getId())+"\">个人账户中心</a>\n\n"\ + "回复“jg”查询商品价格!" return respContent else: # 如果有图片,则券号自定义为no+时间+index global index index+=1 quanma="no"+TimeUtil.getCurrentDate1()+TimeUtil.getCurrentTime1()+str(index) # 修改图片名称为券号的名称 picname ="" if(filepath): mulu = filepath[0:filepath.rfind('/') + 1] # 目录(带最后的/) # picname = filepath[filepath.rfind('/') + 1:] # 文件名 geshi =filepath[filepath.index('.')+1:] picname = quanma+"."+geshi newfilepath = mulu+picname if (os.path.exists(newfilepath)): os.remove(newfilepath) os.rename(filepath,newfilepath) print('将图片重命名为新图片名称:',newfilepath) content = qiye + "|" + chanpin + "|" + bank #要存储返回的内容 tip="该票券不是第一次上传了\n" diary = DiaryDAO.selectDiaryforSerial(quanma) if (not diary): diary = Diary() diary.userid= user.id diary.qunid= 999 if (not filepath): diary.diarytype=ResultCode.CONTENT_TYPEWORD # 设置日志只有短信 else: diary.diarytype=ResultCode.CONTENT_TYPEIMG # 设置日志包含图片 diary.type="1" diary.serial=quanma diary.state=0 diary.content=content diary.time=TimeUtil.getCurrentTime() diary.date=TimeUtil.getCurrentDate() diary.money=10*int(money) # 怎么设置价格 if(filepath): datenow = TimeUtil.getCurrentMonth() diary.imgone= STATIC_URL1+ "upload/img/"+datenow+"/"+picname DiaryDAO.addDiary(diary) tip="" # 修改用户的以上传金额 user.tuijiannum = user.tuijiannum+diary.money # 设置用户以上传金额 UserDAO.updateUserInfo(user) respContent = "您的券码已经收到录入,等待橙子权益的汇款即可。\n\n商品:"+content+"\n券码:"+quanma+"\n价格:¥"+str(money) \ + "\n\n<a href=\""+urlpath+"piaoquan/setting.jsp?userid="+str(user.id)+"\">个人账户中心</a>\n\n"\ + "<a href=\""+urlpath+"piaoquan/mydiary.jsp?qunid=999&typeindex=1&userid="+str(user.id)+"\">券码管理</a>\n\n"+tip\ + "回复“jg”查询商品价格!" return respContent
def queryAllsixinwithhe(request): #第一层的结果集 result = {} allmessage_back = [] if request.method == "POST": send_id = int(request.POST.get("send_id", None)) # 读取post数据,None为默认值 receive_id = int(request.POST.get("receive_id", None)) # 读取post数据,None为默认值 pageNo = int(request.POST.get("page", None)) # 读取post数据,None为默认值 if request.method == "GET": send_id = int(request.POST.get("send_id", None)) # 读取post数据,None为默认值 receive_id = int(request.GET.get("receive_id", None)) # 读取post数据,None为默认值 pageNo = int(request.POST.get("page", None)) # 读取post数据,None为默认值 print("查询和某人的所有私信接口参数:接收者ID", receive_id, "发送者id", send_id, "page", pageNo) #首先查询是否存在聊天关系 chatuser1 = Chatuser() chatuser1.send_id = send_id chatuser1.receive_id = receive_id chatuser1.usertype = ResultCode.CHATUSER_TYPE_RECEIVE chatuser1 = ChatuserDAO.querychatuserexist(chatuser1) if (chatuser1 == None): chatuser1 = Chatuser() chatuser1.send_id = send_id chatuser1.receive_id = receive_id chatuser1.usertype = ResultCode.CHATUSER_TYPE_SEND chatuser1 = ChatuserDAO.querychatuserexist(chatuser1) if (chatuser1 == None): result["message"] = "不存在聊天关系" result["data"] = allmessage_back result["errorcode"] = "" result["respcode"] = ResultCode.SUCCESS print("不存在聊天关系") return JsonResponse(result) #设置聊天关系为已读 #获取聊天数目 page = PageForId() page.pageno = pageNo page.receive_id = receive_id page.send_id = send_id page.pagesize = 10 page.start = 10 * (pageNo - 1) #数据库本来就是从后向前查询的 在数据库中第0条记录就是最默认的记录 try: allMessage = Chat_MessageDAO.queryAllsixinwithhe( page.abid, page.start, page.pagesize) #通过abid查询 if (allMessage and len(allMessage) > 0): page.state = ResultCode.CHATUSER_OLD ChatuserDAO.updatachatuserstateforuser(chatuser1) #修改聊天用户的状态 senduser = fun.user2else_back(UserDAO.getUserInfoId(send_id)) receiveuser = fun.user2else_back(UserDAO.getUserInfoId(receive_id)) for message in allMessage: print("查询聊天记录" + message.content) message_back = fun.chatmessage2back(message) if (message_back['send_id'] == send_id): message_back['send_user'] = senduser message_back['receive_user'] = receiveuser else: message_back['send_user'] = receiveuser message_back['receive_user'] = senduser allmessage_back.append(message_back) result["message"] = "查询成功" result["data"] = allmessage_back result["errorcode"] = "" result["respcode"] = ResultCode.SUCCESS except Exception as e: print(e) result["message"] = "查询失败" result["data"] = "" result["errorcode"] = ResultCode.FAIL result["respcode"] = ResultCode.FAIL print("查询失败") return JsonResponse(result)
def queryqunchat(request): #第一层的结果集 result = {} allmessage_back = [] if request.method == "POST": qunid = int(request.POST.get("qunid", None)) # 读取post数据,None为默认值 receive_id = int(request.POST.get("receive_id", None)) # 读取post数据,None为默认值 pageNo = int(request.POST.get("page", None)) # 读取post数据,None为默认值 if request.method == "GET": qunid = int(request.GET.get("qunid", None)) # 读取post数据,None为默认值 receive_id = int(request.GET.get("receive_id", None)) # 读取post数据,None为默认值 pageNo = int(request.POST.get("page", None)) # 读取post数据,None为默认值 print("查询群聊接口参数:接收者ID", receive_id, "page", pageNo) #首先查询是否存在聊天关系 chatuser1 = Chatuser() chatuser1.send_id = qunid chatuser1.receive_id = receive_id chatuser1.usertype = ResultCode.CHATUSER_TYPE_QUN chatuser1 = ChatuserDAO.querychatqunexist(chatuser1) if (chatuser1 == None): result["message"] = "暂无聊天信息" result["data"] = "" result["errorcode"] = "" result["respcode"] = ResultCode.FAIL print("不存在聊天关系") return JsonResponse(result) #设置聊天关系为已读 #获取聊天数目 page = PageForId() page.pageno = pageNo page.receive_id = receive_id page.send_id = qunid page.abid = chatuser1.abid page.pagesize = 20 page.start = 20 * (pageNo - 1) #数据库本来就是从后向前查询的 在数据库中第0条记录就是最默认的记录 try: allMessage = Chat_MessageDAO.queryAllsixinwithhe( page.abid, page.start, page.pagesize) #通过abid查询 if (len(allMessage) > 0): #修改聊天用户的状态 在群聊中 page.state = ResultCode.CHATUSER_OLD ChatuserDAO.updatachatuserstateforuser(page) qun = QunDAO.getqunInfoqunid(qunid) for message in allMessage: message_back = fun.chatmessage2back(message) #获取消息发送者信息 senduser = fun.user2else_back( UserDAO.getUserInfoId(message_back['send_id'])) message_back['send_user'] = senduser message_back['qun'] = model_to_dict(qun) allmessage_back.append(message_back) result["message"] = "查询成功" result["data"] = allmessage_back result["errorcode"] = "" result["respcode"] = ResultCode.SUCCESS except Exception as e: print(e) result["message"] = "查询失败" result["data"] = "" result["errorcode"] = ResultCode.FAIL result["respcode"] = ResultCode.FAIL print("查询失败") return JsonResponse(result)
def login(request): result = {} user = User() if request.method == "POST": phone = request.POST.get("phone", None) # 读取get数据,None为默认值 password = request.POST.get("password", None) # 读取get数据,None为默认值 identity = request.POST.get("identity", None) # 读取get数据,None为默认值 school = request.POST.get("school", None) # 读取get数据,None为默认值 qunid = request.POST.get("qunid", 0) # 读取get数据,None为默认值 if request.method == "GET": phone = request.GET.get("phone", None) # 读取get数据,None为默认值 password = request.GET.get("password", None) # 读取get数据,None为默认值 identity = request.GET.get("identity", None) # 读取get数据,None为默认值 school = request.GET.get("school", None) # 读取get数据,None为默认值 qunid = request.GET.get("qunid", 0) # 读取get数据,None为默认值 print("用户登录接口参数:电话", phone, "密码", password) user.phone = phone user.password = password user = UserDAO.login(user) if (user): if (identity): user.identity = identity if (school): user.school = school UserDAO.updateUserInfo(user) # 如果登陆时需要加入群组,这里加入群组 if (qunid): try: qun = QunDAO.getqunInfoqunid(qunid) userqun = Userqun() userqun.userid = user.id userqun.qunid = qunid userquntemp = UserqunDAO.getuserqunInfouserqun(userqun) if (not userquntemp): if (qun.quntype == ResultCode.QUN_USER or qun.quntype == ResultCode.QUN_USER_DIARY or qun.quntype == ResultCode.QUN_USER_DIARY_NOT_USER): userqun.userstate = ResultCode.USERQUN_NOT else: userqun.userstate = ResultCode.USERQUN_YUAN UserqunDAO.adduserqun(userqun) # 添加群聊关系 chatuser = Chatuser() chatuser.send_id = qunid chatuser.receive_id = user.id chatuser.usertype = ResultCode.CHATUSER_TYPE_QUN chatuser.state = ResultCode.CHATUSER_HIDE chatuser.abid = str(qunid) chatuser.content = "" chatuser.time = TimeUtil.getCurrentTime() chatuser.date = TimeUtil.getCurrentDate() ChatuserDAO.addchatuser(chatuser) except Exception as e: print(e) user_me_back = user2meBack(user) # appBean = AppVersionDAO.queryVersionById(1) # 这里要求数据库中首先在版本表中存在版本的相关信息 result["data"] = user_me_back result["respcode"] = ResultCode.SUCCESS result["errorcode"] = "" result["message"] = "登陆成功" print('登陆成功') else: result["data"] = "" result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.FAIL result["message"] = "账号或密码错误" print('账号密码错误') return JsonResponse(result)
def adddeal(request): result = {} if request.method == "POST": deal = request.POST.get("deal", None) # 读取post数据,None为默认值 userid_source = request.POST.get("userid_source", 0) # 读取post数据,None为默认值 diaryid_source = request.POST.get("diaryid_source", 0) # 读取post数据,None为默认值 qunid_source = request.POST.get("qunid_source", 0) # 读取post数据,None为默认值 userid_destination = request.POST.get("userid_destination", 0) # 读取post数据,None为默认值 diaryid_destination = request.POST.get("diaryid_destination", 0) # 读取post数据,None为默认值 qunid_destination = request.POST.get("qunid_destination", 0) # 读取post数据,None为默认值 if request.method == "GET": deal = request.GET.get("deal", None) # 读取get数据,None为默认值 userid_source = request.GET.get("userid_source", 0) # 读取get数据,None为默认值 diaryid_source = request.GET.get("diaryid_source", 0) # 读取get数据,None为默认值 qunid_source = request.GET.get("qunid_source", 0) # 读取get数据,None为默认值 userid_destination = request.GET.get("userid_destination", 0) # 读取get数据,None为默认值 diaryid_destination = request.GET.get("diaryid_destination", 0) # 读取get数据,None为默认值 qunid_destination = request.GET.get("qunid_destination", 0) # 读取get数据,None为默认值 print("添加更多操作接口参数:操作类型", deal, "源用户id", userid_source, "源日志id:", diaryid_source, "目的用户id:", userid_destination, "目的日志id:", diaryid_destination, "源群id:", qunid_source, "目的群id:", qunid_destination) if (userid_source == userid_destination): result["data"] = "" result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.FAIL result["message"] = "添加处理失败" return JsonResponse(result) more = More() more.deal = deal more.userid_source = userid_source more.userid_destination = userid_destination more.diaryid_source = diaryid_source more.diaryid_destination = diaryid_destination more.qunid_source = qunid_source more.qunid_destination = qunid_destination more1 = MoreDAO.selectmoreInfomore(more) if (more1): result["data"] = model_to_dict(more1) result["respcode"] = ResultCode.SUCCESS result["errorcode"] = ResultCode.SUCCESS result["message"] = "添加处理成功" else: try: MoreDAO.adddeal(more) more = MoreDAO.selectmoreInfomore(more) result["data"] = model_to_dict(more) result["respcode"] = ResultCode.SUCCESS result["errorcode"] = ResultCode.SUCCESS result["message"] = "添加处理成功" #如果是日志点赞则添加到日志属性中去 if (diaryid_destination != 0): diary = DiaryDAO.selectDiary(diaryid_destination) if (diary): if (deal == ResultCode.DIARY_ZAN): diary.zannum = diary.zannum + 1 DiaryDAO.updatediary(diary) elif (deal == ResultCode.DIARY_SHOUCANG): diary.shoucangnum = diary.shoucangnum + 1 DiaryDAO.updatediary(diary) elif (deal == ResultCode.DIARY_TUIJIAN): diary.tuijiannum = diary.tuijiannum + 1 DiaryDAO.updatediary(diary) #如果是群组点赞 则添加到群属性中 elif (qunid_destination != 0): qun = QunDAO.getqunInfoqunid(qunid_destination) if (qun): if (deal == ResultCode.QUN_ZAN): qun.zannum = qun.zannum + 1 QunDAO.updatequnInfoqun(qun) elif (deal == ResultCode.QUN_SHOUCANG): qun.shoucangnum = qun.shoucangnum + 1 QunDAO.updatequnInfoqun(qun) elif (deal == ResultCode.QUN_TUIJIAN): qun.tuijiannum = qun.tuijiannum + 1 QunDAO.updatequnInfoqun(qun) #如果是用户点赞 则添加到用户属性中 elif (userid_destination != 0): user = UserDAO.getUserInfoId(userid_destination) if (user): if (deal == ResultCode.USER_ZAN): user.zannum = user.zannum + 1 UserDAO.updateUserInfo(user) if (deal == ResultCode.USER_SHOUCANG): user.shoucangnum = user.shoucangnum + 1 UserDAO.updateUserInfo(user) if (deal == ResultCode.USER_TUIJIAN): user.tuijiannum = user.tuijiannum + 1 UserDAO.updateUserInfo(user) except Exception as e: result["data"] = "" result["respcode"] = ResultCode.FAIL result["errorcode"] = ResultCode.FAIL result["message"] = "添加处理失败" return JsonResponse(result)