def get_assets(): args = request.args.to_dict() if args['q'] != '': criteria = getCriteria(args['q']) if args['logic'] == 'and': initializer = Asset.query.filter() query = reduce(filterLikeReduce, criteria, initializer) elif args['logic'] == 'or' or 'null': query = queryAssetsLike(criteria) else: json_abort({'err_msg': 'invalid json filed:logic'}, 422) else: query = Asset.query if args.has_key('sort'): if args.has_key('order') and args['order'] in ['asc', 'desc']: if args['order'] == 'asc': query = query.order_by(args['sort']) else: query = query.order_by(desc(args['sort'])) else: query = query.order_by(args['sort']) if args.has_key('export') and args['export'] == 'true': records = query.all() return export_to_csv(records) #If page or per_page are None, they will be retrieved from the request query. pagination = query.paginate() return json.dumps({ 'assets': pagination.items, 'pages': pagination.pages }, cls=DB_ModelEncoder)
def get_msgs(): vin = request.args.get('vin') if vin == None: json_abort({'err_msg': 'Required parameter vin is missing!'}, 400) if len(vin) != 17: json_abort({'err_msg': 'vin length != 17'}, 400) db = get_vdcs_db_con() sql_jlr_send = 'SELECT * from dbo.JLR_Send WHERE VinCode = %s ORDER BY CreatedTime' sql_jlr_receive = 'SELECT * from dbo.JLR_Receive WHERE VinCode = %s ORDER BY CreatedTime' jlr_msg = {} with db.cursor(as_dict=True) as cursor: cursor.execute(sql_jlr_send, vin) jlr_msg['send'] = cursor.fetchall() cursor.execute(sql_jlr_receive, vin) jlr_msg['receive'] = cursor.fetchall() return jsonify(jlr_msg)
def post_asset(): company = request.json.get('company') asset_tag = request.json.get('asset_tag') if Asset.query.filter( and_(Asset.company == company, Asset.asset_tag == asset_tag)).first() is not None: json_abort( { 'err_msg': '%s is already exist in %s' % (asset_tag, company), 'err_code': 1 }, 422) asset = Asset(**request.json) db.session.add(asset) db.session.flush() _id = asset.id db.session.commit() return '{ "id" : %d }' % _id, 201
def updateRolePermission(role_id): if not request.json: json_abort({'err_msg': 'invalid request body'}, 400) if role_id <= 0: json_abort({'err_msg': 'invalid role_id'}, 400) permission = request.json.get('permission') if permission < 0 or permission > 2147483647: json_abort({'err_msg': 'invalid permission'}, 400) role = Role.query.filter(Role.id == role_id).first() if not role: json_abort({'err_msg': 'role not find'}, 404) role.permission = permission db.session.commit() return '', 200
def updateUserPermission(user_id): if not request.json: json_abort({'err_msg': 'invalid request body'}, 400) if user_id <= 0: json_abort({'err_msg': 'invalid user_id'}, 400) permission = request.json.get('permission') if permission < 0 or permission > 2147483647: json_abort({'err_msg': 'invalid permission'}, 400) user = User.query.filter(User.id == user_id).first() if not user: json_abort({'err_msg': 'user not find'}, 404) user.permission = permission db.session.commit() return '', 200
def deleteRole(role_id): if not request.json: json_abort({'err_msg': 'invalid request body'}, 400) if role_id <= 0: json_abort({'err_msg': 'invalid role_id'}, 400) role = Role.query.filter(Role.id == role_id).first() if not role: json_abort({'err_msg': 'role not find'}, 404) db.session.delete(role) db.session.commit() return "", 204
def deleteUser(user_id): if not request.json: json_abort({'err_msg': 'invalid request body'}, 400) if user_id <= 0: json_abort({'err_msg': 'invalid user_id'}, 400) user = User.query.filter(User.id == user_id).first() if not user: json_abort({'err_msg': 'user not find'}, 404) db.session.delete(user) db.session.commit() return '', 204
def updateUserPassword(user_id): if not request.json: json_abort({'err_msg': 'invalid request body'}, 400) if user_id <= 0: json_abort({'err_msg': 'invalid user_id'}, 400) passwd = request.json.get('password') user = User.query.filter(User.id == user_id).first() if not user: json_abort({'err_msg': 'user not find'}, 404) user.passwd = passwd db.session.commit() return '', 200
def post_user_and_role_relationship(): if not request.json: json_abort({'err_msg': 'request should be a json type!'}, 400) try: user_id = int(request.json['user_id']) role_id = int(request.json['role_id']) except Exception: json_abort({'err_msg': 'invalid json data'}, 400) user = User.query.filter(User.id == user_id).first() role = Role.query.filter(Role.id == role_id).first() if not user or not role: json_abort({'err_msg': 'user_id or role_id is not exits!'}, 400) relationship = User_Role_Relationship.query.filter( User_Role_Relationship.user_id == user_id, User_Role_Relationship.role_id == role_id).first() if relationship: json_abort({'err_msg': '该用户已拥有此角色!'}, 400) relationship = User_Role_Relationship(user_id=user_id, role_id=role_id) db.session.add(relationship) db.session.commit() roleData = json.dumps(role, default=jsonEncoder) return roleData, 201
def postRole(): if not request.json: json_abort({'err_msg': 'request should be a json type!'}, 400) try: name = request.json['name'] permission = int(request.json['permission']) except Exception: json_abort({'err_msg': 'invalid json data'}, 400) role = Role.query.filter(Role.name == name).first() if role: json_abort({'err_msg': '该角色已存在!'}, 400) role = Role(name=name, permission=permission) db.session.add(role) db.session.flush() _id = role.id db.session.commit() return '{ "id" : %d }' % _id
def postUser(): if not request.json: json_abort({'err_msg': 'request should be a json type!'}, 400) try: name = request.json['name'] permission = int(request.json['permission']) password = request.json['password'] except Exception: json_abort({'err_msg': 'invalid json data'}, 400) user = User.query.filter(User.name == name).first() if user: json_abort({'err_msg': '该用户已存在!'}, 400) user = User(name=name, permission=permission, passwd=password) db.session.add(user) db.session.flush() _id = user.id db.session.commit() return '{ "id" : %d }' % _id, 201
def del_user_and_role_relationship(): if not request.json: json_abort({'err_msg': 'request should be a json type!'}, 400) try: user_id = int(request.json['user_id']) role_id = int(request.json['role_id']) except Exception: json_abort({'err_msg': 'invalid json data'}, 400) relationship = User_Role_Relationship.query.filter( User_Role_Relationship.user_id == user_id, User_Role_Relationship.role_id == role_id).first() if not relationship: json_abort({'err_msg': 'relationship is not exits!'}, 404) db.session.delete(relationship) db.session.commit() jsonData = json.dumps({"role_id": role_id}) print jsonData return jsonData, 200