예제 #1
0
파일: app.py 프로젝트: xieziwei99/jqxxsx
def user():
    userDao = UserDao()
    paramDict = {}
    if request.method == "POST":
        opr = request.form.get('opr')
        if opr == "add":
            userName = request.form.get('userName')
            phoneno = request.form.get('phoneno')
            email = request.form.get('email')
            params = [userName, '123456', '', 0, phoneno, email]
            result = userDao.createUser(params)
            userDao.commit()
        elif opr == "update":
            id = request.form.get('id')
            phoneno = request.form.get('phoneno')
            email = request.form.get('email')
            params = [phoneno, email]
            result = userDao.updateUser(params, id)
            userDao.commit()
            pass
        elif opr == "search":
            searhName = request.form.get('searchName')
            pageSize = request.form.get('pageSize')
            currentPage = request.form.get('currentPage')
            paramDict['searchName'] = searhName
            paramDict['pageSize'] = int(pageSize)
            paramDict['currentPage'] = int(currentPage)
            pass
    else:
        opr = request.args.get("opr")
        if opr == "disable":
            id = request.args.get('id')
            userDao.disableUserByUserId(id)
            userDao.commit()
            pass
        pass
    if paramDict.get('pageSize') == None or paramDict.get(
            'currentPage') == None:
        paramDict['pageSize'] = 10
        paramDict['currentPage'] = 1
        pass

    if not paramDict.get('searchName'):
        paramDict['searchName'] = ""
        pass
    userList = userDao.getUserListPage(paramDict)
    counts = userDao.getUserCounts(paramDict).get("counts")
    # 计算总共有多少页
    totalPage = int(
        counts // paramDict.get('pageSize')) if counts % paramDict.get(
            'pageSize') == 0 else int(counts // paramDict.get('pageSize')) + 1

    paramDict['totalPage'] = totalPage
    paramDict['counts'] = counts
    return render_template('sys/user.html',
                           userList=userList,
                           paramDict=paramDict)
예제 #2
0
def getUserList(request):
    # 获取查询条件
    userName = request.POST.get('userName', '')
    userPhone = request.POST.get('userPhone', '')
    userState = request.POST.get('userState', '')
    userId = request.POST.get('userId', '')
    opr = request.POST.get('opr', '')
    pageSize = request.POST.get('pageSize', 0)
    currentPage = request.POST.get('currentPage', 0)

    if pageSize == 0 or pageSize == "":
        pageSize = 10
        pass
    if currentPage == 0 or currentPage == "":
        currentPage = 1
        pass

    userDao = UserDao()

    params = {'userName': userName,
              'userPhone': userPhone,
              'userState': userState,
              'pageSize': int(pageSize),
              'currentPage': int(currentPage) }

    if opr == 'delUser':

        result = userDao.removeUser([userId])
        params['result'] = result
        pass

    # 查询用户的个人信息
    if opr == 'update':
        uUser = userDao.findUserByUserId([userId])
        return render(request, 'admin/sysmgr/updateuser.html', {'params': params, 'uUser': uUser})
        pass

    # 提交修改用户的个人信息
    if opr == 'submitUpdate':
        userIntro = request.POST.get('userIntro', '')
        userPicPath = ""
        # 文件上传
        if request.POST:
            fileObj = request.FILES.get('userPic', None)
            # 将文件保存到本地
            if fileObj:
                userPicPath = '/static/upload/' + fileObj.name
                filePath = os.path.join(os.getcwd(), 'static/upload/' + fileObj.name)
                with open(filePath, 'wb+') as fp:
                    for chunk in fileObj.chunks():
                        fp.write(chunk)
                        pass
                    pass
                pass
            pass
        result = userDao.updateUser([userPhone, userPicPath, userIntro, userId])
        pass

    counts = userDao.findUserCounts(params)
    totalPage = counts // int(pageSize) if counts % int(pageSize) == 0 else counts // int(pageSize) + 1
    params['counts'] = counts
    params['totalPage'] = totalPage
    # 计算两个值:startRow
    startRow = (int(currentPage) - 1) * int(pageSize)
    params['startRow'] = startRow
    userList = userDao.findPageUserList(params)
    userDao.close()
    return render(request, 'admin/sysmgr/userinfo.html', {'userList': userList, 'params': params})
    pass