예제 #1
0
def getPageListLogin():
    myRes = MyResponse()
    currentPage = MyRequest.get("currentPage", type=int)
    pageSize = MyRequest.get("pageSize", type=int)
    searchName = MyRequest.get("searchName", type=str).strip()
    startDate = MyRequest.get_verify_date("startDate")
    endDate = MyRequest.get_verify_date("endDate")
    try:
        columns = [
            LogLogin.LOGL_KEY, LogLogin.TIME_CREATE, LogLogin.DESCRIPT,
            LogLogin.IP_ADDRESS, UserInfo.LOGIN_NAME, UserInfo.USER_NAME
        ]
        outerjoins = [(UserInfo, UserInfo.USER_KEY == LogLogin.USER_KEY)]
        filters = [LogLogin.TIME_CREATE.between(startDate, endDate)]
        if searchName != '':
            filters.append(UserInfo.FloginName.like("%" + searchName + "%"))
        myRes.data = MySqlalchemy.get_page_list(
            currentPage,
            pageSize,
            LogLogin.LOGL_KEY,
            columns,
            outerjoins=outerjoins,
            filters=filters,
            orders=[LogLogin.TIME_CREATE.desc()])
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #2
0
def add():
    myRes = MyResponse()
    OPER_NAME = MyRequest.get_verify_empty("OPER_NAME", errmsg="操作名称不能为空")
    OPER_PKEY = MyRequest.get_verify_empty("OPER_PKEY", errmsg="OPER_PKEY不能为空")
    OPER_URL = MyRequest.get("OPER_URL", type=str)
    OPER_TYPE = MyRequest.get("OPER_TYPE", type=int)
    OPER_SOFT = MyRequest.get("OPER_SOFT", type=int)
    try:
        mybrother = db_session.query(
            OperInfo.OPER_KEY).filter(OperInfo.OPER_PKEY == OPER_PKEY).all()
        if mybrother:
            array_id = [int(x.OPER_KEY) for x in mybrother]
            ###取最大的ID
            OPER_KEY = str(max(array_id) + 1)
        elif OPER_PKEY == "0":
            OPER_KEY = "101"
        else:
            OPER_KEY = OPER_PKEY + "001"
        operInfo = OperInfo()
        operInfo.OPER_KEY = OPER_KEY
        operInfo.OPER_NAME = OPER_NAME
        operInfo.OPER_URL = OPER_URL
        operInfo.OPER_TYPE = OPER_TYPE
        operInfo.OPER_PKEY = OPER_PKEY
        operInfo.OPER_SOFT = OPER_SOFT
        MySqlalchemy.comAdd(operInfo)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #3
0
def updRolePermission():
    myRes = MyResponse()
    RESOURCE_KEYS = MyRequest.get_verify_list("RESOURCE_KEYS")
    ROLE_KEY = MyRequest.get("ROLE_KEY", type=int)
    RESOURCE_TYPE = MyRequest.get("RESOURCE_TYPE", type=int)
    try:
        db_session.begin_nested()
        db_session.query(RolePermission).filter(
            RolePermission.ROLE_KEY == ROLE_KEY).filter(
                RolePermission.RESOURCE_TYPE == RESOURCE_TYPE).delete(
                    synchronize_session=False)
        for key in RESOURCE_KEYS:
            rolePermission = RolePermission()
            rolePermission.ROLE_KEY = ROLE_KEY
            rolePermission.RESOURCE_KEY = key
            rolePermission.RESOURCE_TYPE = RESOURCE_TYPE
            db_session.add(rolePermission)
        db_session.commit()
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        db_session.rollback()
        mylog.error(ex)
        myRes.msg = str(ex)
    finally:
        db_session.close()
    return myRes.to_json()
예제 #4
0
def add():
    myRes = MyResponse()
    MENU_NAME = MyRequest.get_verify_empty("MENU_NAME", errmsg="菜单名称不能为空")
    MENU_PKEY = MyRequest.get_verify_empty("MENU_PKEY", errmsg="MENU_PKEY")
    MENU_URL = MyRequest.get("MENU_URL", type=str)
    MENU_ICON = MyRequest.get("MENU_ICON", type=str)
    MENU_SOFT = MyRequest.get("MENU_SOFT", type=str)
    try:
        mybrother = db_session.query(
            MenuInfo.MENU_KEY).filter(MenuInfo.MENU_PKEY == MENU_PKEY).all()
        if mybrother:
            array_id = [int(x.MENU_KEY) for x in mybrother]
            ###取最大的ID
            MENU_KEY = str(max(array_id) + 1)
        elif MENU_PKEY == "0":
            MENU_KEY = "101"
        else:
            MENU_KEY = MENU_PKEY + "001"
        menu = MenuInfo()
        menu.MENU_KEY = MENU_KEY
        menu.MENU_NAME = MENU_NAME
        menu.MENU_PKEY = MENU_PKEY
        menu.MENU_URL = MENU_URL
        menu.MENU_ICON = MENU_ICON
        menu.MENU_SOFT = MENU_SOFT
        MySqlalchemy.comAdd(menu)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #5
0
def getPageList():
    myRes = MyResponse()
    currentPage = MyRequest.get("currentPage", type=int)
    pageSize = MyRequest.get("pageSize", type=int)
    searchDptKey = MyRequest.get("searchDptKey", type=str)
    searchName = MyRequest.get("searchName", type=str).strip()
    columns = [
        UserInfo.USER_KEY, UserInfo.USER_NAME, UserInfo.LOGIN_NAME,
        UserInfo.USER_SEX, UserInfo.USER_POSITION, UserInfo.DPT_KEY,
        DptInfo.DPT_NAME, UserInfo.TIME_MODIFY, UserInfo.PHONE
    ]
    filters = []
    outerjoins = [(DptInfo, DptInfo.DPT_KEY == UserInfo.DPT_KEY)]
    try:
        USER_KEY = g.USER_KEY
        if USER_KEY != 1:
            filters.append(UserInfo.USER_KEY != 1)
        if searchDptKey != 0:
            filters.append(UserInfo.DPT_KEY.like(searchDptKey + "%"))
        if searchName is not None:
            filters.append(UserInfo.USER_NAME.like("%" + searchName + "%"))
        user_page_info = MySqlalchemy.get_page_list(
            currentPage,
            pageSize,
            UserInfo.USER_KEY,
            columns,
            outerjoins=outerjoins,
            filters=filters,
            orders=[UserInfo.TIME_MODIFY.desc()])
        ###拼接用户角色
        query_data_role = db_session.query(
            UserRole.USER_KEY, RoleInfo.ROLE_NAME,
            UserRole.ROLE_KEY).outerjoin(
                RoleInfo, RoleInfo.ROLE_KEY == UserRole.ROLE_KEY)
        list_role = MySqlalchemy.convertToList(query_data_role)
        for xuser in user_page_info["data"]:
            list_roleName = []
            for xrole in list_role:
                if xuser["USER_KEY"] == xrole["USER_KEY"]:
                    list_roleName.append(xrole["ROLE_NAME"])
            xuser["ROLE_NAMES"] = ",".join(list_roleName)
        myRes.data = user_page_info
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #6
0
def update():
    myRes = MyResponse()
    ROLE_KEY = MyRequest.get("ROLE_KEY", type=int)
    role_attrs = {}
    role_attrs["ROLE_NAME"] = MyRequest.get_verify_empty("ROLE_NAME")
    role_attrs["DESCRIPT"] = MyRequest.get("DESCRIPT")
    role_attrs["TIME_MODIFY"] = getSysDateTime()
    try:
        MySqlalchemy.comUpdate(RoleInfo, [RoleInfo.ROLE_KEY == ROLE_KEY],
                               role_attrs)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #7
0
def add():
    myRes = MyResponse()
    DPT_PKEY = MyRequest.get_verify_empty("DPT_PKEY", errmsg="请选择一个父节点")
    DPT_NAME = MyRequest.get_verify_empty("DPT_NAME", errmsg="部门名称不能为空")
    DPT_SOFT = MyRequest.get("DPT_SOFT", type=int)
    try:
        mybrother = db_session.query(DptInfo.DPT_KEY).filter(DptInfo.DPT_PKEY == DPT_PKEY).all()
        if mybrother:
            array_id = [int(x.DPT_KEY) for x in mybrother]
            ###取最大的ID
            DPT_KEY = str(max(array_id) + 1)
        elif DPT_PKEY=="0":
            DPT_KEY = "101"
        else:
            DPT_KEY=DPT_PKEY+"001"
        dpt = DptInfo()
        dpt.DPT_KEY=DPT_KEY
        dpt.DPT_PKEY = DPT_PKEY
        dpt.DPT_NAME = DPT_NAME
        dpt.DPT_SOFT = DPT_SOFT
        MySqlalchemy.comAdd(dpt)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg=ResState.ERROR_DB
    return myRes.to_json()
예제 #8
0
def exportLogOper():
    start_time = time.time()
    searchName = MyRequest.get("searchName", type=str).strip()
    startDate = MyRequest.get_verify_date("startDate")
    endDate = MyRequest.get_verify_date("endDate")
    downLoadFile = DownLoadFile()
    xlsxwriterWriter = XlsxwriterWriter()
    try:
        query_data = db_session.query(LogOper).all()
        from app.apis.utils.thread_helper import convertToListThread
        dataArray = convertToListThread(query_data)
        end_time = time.time()
        print(end_time - start_time)
        print(len(dataArray))
        # df = pandas.DataFrame(dataArray)
        # xlsxwriterWriter.open()
        # xlsxwriterWriter.writeSheetbyList(df, titles=None, sheetname="ttt")
        # downLoadFile.filepath = xlsxwriterWriter.filepath
        # downLoadFile.filename=xlsxwriterWriter.filename
        # downLoadFile.newfilename = "操作日志"+getSysDateTimeStr()+".xlsx"
    except ExcelError as ex:
        mylog.error(ex)
        abort(404, "写入excel错误")
    except SQLAlchemyError as ex:
        mylog.error(ex)
        abort(404, sys.exc_info()[1])
    except Exception as ex:
        mylog.error(ex)
        abort(404, sys.exc_info()[1])
    finally:
        xlsxwriterWriter.close()
    myRes = MyResponse()
    print("ok")
    return myRes.to_json()
예제 #9
0
def update():
    myRes = MyResponse()
    MENU_KEY = MyRequest.get_verify_empty("MENU_KEY", errmsg="MENU_KEY不能为空")
    menu_attrs = {}
    menu_attrs["MENU_NAME"] = MyRequest.get("MENU_NAME", type=str)
    menu_attrs["MENU_URL"] = MyRequest.get("MENU_URL", type=str)
    menu_attrs["MENU_ICON"] = MyRequest.get("MENU_ICON", type=str)
    menu_attrs["MENU_SOFT"] = MyRequest.get("MENU_SOFT", type=str)
    try:
        MySqlalchemy.comUpdate(MenuInfo, [MenuInfo.MENU_KEY == MENU_KEY],
                               menu_attrs)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #10
0
def download():
    downLoadFile = DownLoadFile()
    file = MyRequest.get("filepath", type=str)
    filename = os.path.basename(file)
    filepath = os.path.dirname(file)
    downLoadFile.filepath = filepath
    downLoadFile.filename = filename
    downLoadFile.newfilename = filename.split("_")[1]
    return downLoadFile.download()
예제 #11
0
def update():
    myRes = MyResponse()
    OPER_KEY = MyRequest.get_verify_empty("OPER_KEY", errmsg="OPER_KEY不能为空")
    oper_attrs = {}
    oper_attrs["OPER_NAME"] = MyRequest.get_verify_empty("OPER_NAME",
                                                         errmsg="按钮编码不能为空")
    oper_attrs["OPER_URL"] = MyRequest.get("OPER_URL", type=str)
    oper_attrs["OPER_TYPE"] = MyRequest.get("OPER_TYPE", type=int)
    oper_attrs["OPER_SOFT"] = MyRequest.get("OPER_SOFT", type=int)
    try:
        MySqlalchemy.comUpdate(OperInfo, [OperInfo.OPER_KEY == OPER_KEY],
                               oper_attrs)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #12
0
def delete():
    myRes = MyResponse()
    USER_KEY = MyRequest.get("USER_KEY", type=int)
    try:
        MySqlalchemy.comDel(UserInfo, [UserInfo.USER_KEY == USER_KEY])
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = ResState.ERROR_DB
    return myRes.to_json()
예제 #13
0
def add():
    myRes = MyResponse()
    user = UserInfo()
    user.LOGIN_NAME = MyRequest.get_verify_empty("LOGIN_NAME",
                                                 errmsg="用户名不能为空")
    user.USER_NAME = MyRequest.get_verify_empty("USER_NAME", errmsg="姓名不能为空")
    user.USER_SEX = MyRequest.get("USER_SEX", type=int)
    user.DPT_KEY = MyRequest.get_verify_empty("DPT_KEY", errmsg="DPT_KEY不能为空")
    user.set_password("123456")
    user.USER_POSITION = MyRequest.get("USER_POSITION", type=str)
    user.PHONE = MyRequest.get("PHONE", type=str)
    user.TIME_CREATE = getSysDateTime()
    user.TIME_MODIFY = getSysDateTime()
    try:
        MySqlalchemy.comAdd(user)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = ResState.ERROR_DB
    return myRes.to_json()
예제 #14
0
def update():
    myRes = MyResponse()
    USER_KEY = MyRequest.get("USER_KEY", type=int)
    upd_attr = {}
    upd_attr["USER_NAME"] = MyRequest.get_verify_empty("USER_NAME",
                                                       errmsg="姓名不能为空")
    upd_attr["USER_SEX"] = MyRequest.get("USER_SEX", type=int, default=1)
    upd_attr["DPT_KEY"] = MyRequest.get_verify_empty("DPT_KEY",
                                                     errmsg="部门ID不能为空")
    upd_attr["USER_POSITION"] = MyRequest.get("USER_POSITION", type=str)
    upd_attr["PHONE"] = MyRequest.get("PHONE", type=str)
    upd_attr["TIME_MODIFY"] = getSysDateTime()
    try:
        MySqlalchemy.comUpdate(UserInfo, [UserInfo.USER_KEY == USER_KEY],
                               upd_attr)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #15
0
def getDetail():
    myRes = MyResponse()
    ROLE_KEY = MyRequest.get("ROLE_KEY", type=int)
    try:
        query_data = db_session.query(RoleInfo).filter(
            RoleInfo.ROLE_KEY == ROLE_KEY).one()
        dict_data = MySqlalchemy.convertToDict(query_data)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.data = dict_data
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #16
0
def update():
    myRes = MyResponse()
    DPT_KEY = MyRequest.get_verify_empty("DPT_KEY", errmsg="ID不能为空")
    upd_attr={}
    upd_attr["DPT_NAME"] = MyRequest.get_verify_empty("DPT_NAME", errmsg="部门名称不能为空")
    upd_attr["DPT_SOFT"] = MyRequest.get("DPT_SOFT", type=int)
    try:
        MySqlalchemy.comUpdate(DptInfo,[DptInfo.DPT_KEY==DPT_KEY],upd_attr)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = ResState.ERROR_DB
    return myRes.to_json()
예제 #17
0
def delete():
    myRes = MyResponse()
    ROLE_KEY = MyRequest.get("ROLE_KEY", type=int)
    try:
        MySqlalchemy.comDel(RoleInfo, [RoleInfo.ROLE_KEY == ROLE_KEY])
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        db_session.rollback()
        mylog.error(ex)
        myRes.msg = str(ex)
    finally:
        db_session.close()
    return myRes.to_json()
예제 #18
0
def getRoleMenuAndOperList():
    myRes = MyResponse()
    ROLE_KEY = MyRequest.get("ROLE_KEY", type=int)
    try:
        query_data = db_session.query(RolePermission.ROLE_KEY,
                                      RolePermission.RESOURCE_KEY,
                                      RolePermission.RESOURCE_TYPE).filter(
                                          RolePermission.ROLE_KEY == ROLE_KEY)
        myRes.data = MySqlalchemy.convertToList(query_data)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #19
0
def getRoleListByUserKey():
    myRes = MyResponse()
    USER_KEY = MyRequest.get("USER_KEY", type=int)
    try:
        clomns = [UserRole.USER_KEY, RoleInfo.ROLE_NAME, UserRole.ROLE_KEY]
        query_data = db_session.query(*clomns).outerjoin(
            RoleInfo, RoleInfo.ROLE_KEY == UserRole.ROLE_KEY).filter(
                UserRole.USER_KEY == USER_KEY)
        myRes.data = MySqlalchemy.convertToList(query_data)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #20
0
def resetPwdByUserKey():
    myRes = MyResponse()
    USER_KEY = MyRequest.get("USER_KEY", type=int)
    try:
        q_model = db_session.query(UserInfo).filter(
            UserInfo.USER_KEY == USER_KEY).one()
        q_model.set_password("123456")
        db_session.commit()
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    finally:
        db_session.close()
    return myRes.to_json()
예제 #21
0
def updMyInfo():
    myRes = MyResponse()
    USER_KEY = g.USER_KEY
    upd_attr = {}
    upd_attr["USER_NAME"] = MyRequest.get_verify_empty("USER_NAME",
                                                       errmsg="姓名不能为空")
    upd_attr["PHONE"] = MyRequest.get("PHONE", type=str)
    try:
        MySqlalchemy.comUpdate(UserInfo, [UserInfo.USER_KEY == USER_KEY],
                               upd_attr)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    finally:
        db_session.close()
    return myRes.to_json()
예제 #22
0
def add():
    myRes = MyResponse()
    ROLE_NAME = MyRequest.get_verify_empty("ROLE_NAME")
    DESCRIPT = MyRequest.get("DESCRIPT")
    try:
        role = RoleInfo()
        role.ROLE_NAME = ROLE_NAME
        role.DESCRIPT = DESCRIPT
        role.TIME_CREATE = getSysDateTime()
        role.TIME_MODIFY = getSysDateTime()
        MySqlalchemy.comAdd(role)
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except MyError as ex:
        myRes.msg = ex
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = ResState.ERROR_DB
    return myRes.to_json()
예제 #23
0
def getDetail():
    myRes = MyResponse()
    USER_KEY = MyRequest.get("USER_KEY", type=int)
    try:
        columns = [
            UserInfo.USER_KEY, UserInfo.DPT_KEY, UserInfo.USER_NAME,
            UserInfo.LOGIN_NAME, UserInfo.USER_SEX, UserInfo.USER_POSITION,
            UserInfo.PHONE, UserInfo.TIME_CREATE, UserRole.ROLE_KEY
        ]
        dict_user = MySqlalchemy.get_detail(
            columns,
            outerjoins=[UserRole, UserRole.USER_KEY == UserInfo.USER_KEY],
            filters=[UserInfo.USER_KEY == USER_KEY])
        myRes.code = ResState.HTTP_SUCCESS
        myRes.data = dict_user
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    return myRes.to_json()
예제 #24
0
def exportLogLogin():
    myRes = MyResponse()
    searchName = MyRequest.get("searchName", type=str).strip()
    startDate = MyRequest.get_verify_date("startDate")
    endDate = MyRequest.get_verify_date("endDate")
    downLoadFile = DownLoadFile()
    xlsxwriterWriter = XlsxwriterWriter()
    try:
        db_query = db_session.query(UserInfo.Fid, UserInfo.FloginName,
                                    UserInfo.Fname, LogLogin.FcreateTime,
                                    LogLogin.Fremark, LogLogin.FipAddress)
        db_query = db_query.outerjoin(UserInfo,
                                      UserInfo.Fid == LogLogin.FuserId)
        db_query = db_query.filter(
            LogLogin.FcreateTime.between(startDate, endDate))
        if searchName != '':
            db_query = db_query.filter(
                UserInfo.FloginName.like("%" + searchName + "%"))
        query_data = db_query.order_by(LogLogin.FcreateTime.desc())
        dataArray = MySqlalchemy.convertToDict(query_data)
        df = pandas.DataFrame(dataArray)
        xlsxwriterWriter.open()
        xlsxwriterWriter.writeSheetbyList(df, titles=None, sheetname="ttt")
        downLoadFile.filepath = xlsxwriterWriter.filepath
        downLoadFile.filename = xlsxwriterWriter.filename
        downLoadFile.newfilename = "操作日志" + getSysDateTimeStr() + ".xlsx"
        myRes.data = []
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except ExcelError as ex:
        mylog.error(ex)
        abort(404, "写入excel错误")
    except SQLAlchemyError as ex:
        mylog.error(ex)
        abort(404, sys.exc_info()[1])
    finally:
        xlsxwriterWriter.close()
    return downLoadFile.download()
예제 #25
0
def resetMyPwd():
    myRes = MyResponse()
    FuserId = g.USER_KEY
    FoldPwd = MyRequest.get_verify_empty("FoldPwd", errmsg="旧密码不能为空")
    FnewPwd = MyRequest.get_verify_empty("FnewPwd", errmsg="新密码不能为空")
    FnewPwdOk = MyRequest.get("FnewPwdOk", type=str)
    try:
        if FnewPwd != FnewPwdOk:
            return myRes.to_json_msg("新旧密码不一致")
        userInfo = db_session.query(UserInfo).filter(
            UserInfo.USER_KEY == FuserId).one()
        if not userInfo.check_password(userInfo.USER_PWD, FoldPwd):
            return myRes.to_json_msg("旧密码错误,请重新输入")
        userInfo.set_password(FnewPwd)
        db_session.commit()
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        mylog.error(ex)
        myRes.msg = str(ex)
    finally:
        db_session.close()
    return myRes.to_json()
예제 #26
0
def updUserRole():
    myRes = MyResponse()
    ROLE_KEYS = MyRequest.getList("ROLE_KEYS[]")
    USER_KEY = MyRequest.get("USER_KEY", type=int)
    try:
        db_session.begin_nested()
        db_session.query(UserRole).filter(
            UserRole.USER_KEY == USER_KEY).delete()
        for key in ROLE_KEYS:
            userRole = UserRole()
            userRole.USER_KEY = USER_KEY
            userRole.ROLE_KEY = key
            db_session.add(userRole)
        db_session.commit()
        myRes.code = ResState.HTTP_SUCCESS
        myRes.msg = "操作成功"
    except SQLAlchemyError as ex:
        db_session.rollback()
        mylog.error(ex)
        myRes.msg = str(ex)
    finally:
        db_session.close()
    return myRes.to_json()