示例#1
0
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)
示例#2
0
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)
示例#3
0
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)
示例#4
0
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)
示例#5
0
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)
示例#6
0
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)
示例#7
0
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)
示例#8
0
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)
示例#9
0
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)
示例#10
0
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)
示例#11
0
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)
示例#12
0
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)
示例#13
0
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)
示例#14
0
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)
示例#15
0
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)
示例#16
0
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
示例#17
0
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)
示例#18
0
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)
示例#19
0
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)
示例#20
0
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)