def post(self): args = parse.parse_args() type = args.get('type') if type != '用户留言': return error_info(400, '参数错误') notice = Notice() notice.type = type notice.content = args.get('content') notice.creator = g.user.id notice.date = datetime.datetime.now() notice.id = g.user.id + datetime.datetime.now().strftime('%Y%m%d%H%M%S') if not notice.save(): return error_info(400, '操作失败') data = { "data": marshal(notice, notice_fields), "meta": { "status": 201, "msg": "发布成功" } } return data
def delete(self): args = parse_del.parse_args() id = args.get('id') item_info = ItemInfo.query.filter(ItemInfo.id == id, ItemInfo.is_delete == False).first() if not item_info: return error_info(400, '操作失败') item_info.is_delete = True item_info.save() msg = Message() msg.content = "您好,你的编号为" + id + "的启事已被管理员强制删除,如有疑问请及时联系管理员。" msg.sendId = g.user.id msg.date = datetime.datetime.now() msg.receiveId = item_info.uid msg.id = msg.receiveId + datetime.datetime.now().strftime( '%Y%m%d%H%M%S') if not msg.save(): return error_info(400, '操作失败') return { "data": { "id": item_info.id, "uid": item_info.uid }, "meta": { "status": 204, "msg": "删除成功" } }
def delete(self): args = parse.parse_args() type = args.get('type') item_type = ItemType.query.filter(ItemType.type == type).first() if not item_type: return error_info(400, "该分类不存在") if not item_type.delete(): return error_info(400, "无法删除") data = {"data": None, "meta": {"status": 204, "msg": "删除分类成功"}} return data
def post(self): args = parse.parse_args() if args.get('operation') == 'repost' and args.get('oid') and ItemInfo.query.filter(ItemInfo.id == args.get('oid'), ItemInfo.is_delete == False, ItemInfo.uid == g.user.id).first(): old_item = ItemInfo.query.filter(ItemInfo.id == args.get('oid'), ItemInfo.is_delete == False, ItemInfo.uid == g.user.id).first() old_item.is_delete = True item_info = ItemInfo() item_info.info = args.get('info') item_info.type = args.get('type') item_info.desc = args.get('desc') item_info.campus = args.get('campus') item_info.uid = g.user.id item_info.image = args.get('image') item_info.date = args.get('date') item_info.place = args.get('place') item_info.id = item_info.uid + datetime.datetime.now().strftime('%Y%m%d%H%M%S') if not item_info.save() and old_item.save(): return error_info(400, '请检查参数') elif args.get('operation') == 'post': item_info = ItemInfo() item_info.info = args.get('info') item_info.type = args.get('type') item_info.desc = args.get('desc') item_info.campus = args.get('campus') item_info.uid = g.user.id item_info.image = args.get('image') item_info.date = datetime.datetime.strptime(args.get('date'), '%Y-%m-%d') item_info.place = args.get('place') item_info.id = item_info.uid + datetime.datetime.now().strftime('%Y%m%d%H%M%S') if not item_info.save(): return error_info(400, '请检查参数') if args.get('name') and User.query.filter(User.name == args.get('name'), User.is_delete == False).first(): receive_user = User.query.filter(User.name == args.get('name')).first() message = Message() message.sendId = '00000' message.receiveId = receive_user.id message.content = '系统检测到有人捡到了您的有关证件,信息编号为' + item_info.id + ',请及时与拾主进行联系。' message.date = datetime.datetime.now() message.id = message.receiveId + datetime.datetime.now().strftime('%Y%m%d%H%M%S') message.save() else: return error_info(400, '参数错误') data = { "data": marshal(item_info, item_info_fields), "meta": { "status": 201, "msg": "发布成功" } } return data
def put(self): args = parse.parse_args() if args.get('username'): if User.query.filter( User.username == args.get('username')).first(): return error_info(400, "该用户名已存在") g.user.username = args.get('username') if args.get('name'): g.user.name = args.get('name') if args.get('phone'): g.user.phone = args.get('phone') if args.get('password'): g.user.password = generate_password_hash(args.get('password')) g.user.save() token = generate_user_token() cache.set(token, g.user.id, timeout=60 * 60 * 24 * 7) data = { "data": { "id": g.user.id, "username": g.user.username, "phone": g.user.phone, "status": g.user.status, "token": token }, "meta": { "status": 201, "msg": "信息更改成功" } } return data
def put(self): args = parse.parse_args() id = args.get('id') message = Message.query.filter(Message.id == id, Message.receiveId == g.user.id, Message.status == '0').first() if not message: return error_info(400, '修改状态失败') message.status = '1' message.save() data = { "data": { "id": message.id, "status": message.status }, "meta": { "status": 201, "msg": "修改状态成功" } } return data
def post(self): args = parse_post.parse_args() receiveId = args.get('receiveId') message = Message() if receiveId == 'all': users = session.query( User.id).filter(User.is_delete == False).all() for user in users: msg = Message() msg.content = args.get('content') msg.sendId = g.user.id msg.date = datetime.datetime.now() msg.receiveId = user[0] msg.id = msg.receiveId + datetime.datetime.now().strftime( '%Y%m%d%H%M%S') if not msg.save(): return error_info(400, '操作失败') message = msg else: message.content = args.get('content') message.sendId = g.user.id message.date = datetime.datetime.now() user = session.query(User).filter(User.is_delete == False, User.id == receiveId).first() if not user: return error_info(400, '用户不存在') message.receiveId = receiveId message.id = message.receiveId + datetime.datetime.now().strftime( '%Y%m%d%H%M%S') if not message.save(): return error_info(400, '操作失败') data = { "data": marshal(message, message_fields), "meta": { "status": 201, "msg": "消息发送成功" } } return data
def put(self): args = parse.parse_args() type = args.get('type') id = args.get('id') if type == 'status': user = User.query.filter(User.id == id).first() if not user: return error_info(400, '该用户不存在') user.status = not user.status user.save() data = { "data": { "id": user.id, "status": user.status }, "meta": { "status": 201, "msg": "状态更改成功" } } return data elif type == 'password': user = User.query.filter(User.id == id).first() if not user: return error_info(400, '该用户不存在') user.password = generate_password_hash('123123') user.save() data = { "data": { "id": user.id, "status": user.status }, "meta": { "status": 201, "msg": "密码重置成功" } } return data else: return error_info(400, "参数错误")
def post(self): args = parse.parse_args() type = args.get('type') if ItemType.query.filter(ItemType.type == type).first(): return error_info(400, "该分类已存在") item_type = ItemType() item_type.type = type if not item_type.save(): return error_info(400, "添加分类失败") data = { "data": { "id": item_type.id, "type": item_type.type }, "meta": { "status": 201, "msg": "添加分类成功" } } return data
def put(self): args = parse_edit.parse_args() notice = Notice.query.filter(Notice.creator == g.user.id, Notice.id == args.get('id'), Notice.is_delete == False).first() if not notice: return error_info(400, '操作失败') notice.title = args.get('title') notice.content = args.get('content') notice.creator = g.user.id notice.date = datetime.datetime.now() notice.id = g.user.id + datetime.datetime.now().strftime('%Y%m%d%H%M%S') if not notice.save(): return error_info(400, '操作失败') data = { "data": marshal(notice, admin_notice_fields), "meta": { "status": 201, "msg": "发布成功" } } return data
def put(self): args = parse_claim.parse_args() item = ItemInfo.query.filter(ItemInfo.id == args.get('id'), ItemInfo.is_delete == False, ItemInfo.is_claim == False, ItemInfo.uid == g.user.id).first() if item: item.is_claim = True item.claim_date = datetime.datetime.now().date() item.save() return { "data": marshal(item, item_info_fields), "meta": { "status": 201, "msg": "认领成功" } } return error_info(400, "操作失败")
def delete(self): args = parse_del.parse_args() notice = Notice.query.filter(Notice.creator == g.user.id, Notice.id == args.get('id'), Notice.is_delete == False).first() if not notice: return error_info(400, '操作失败') notice.is_delete = True notice.save() data = { "data": marshal(notice, admin_notice_fields), "meta": { "status": 204, "msg": "删除成功" } } return data
def delete(self): args = parse_del.parse_args() id = args.get('id') item_info = ItemInfo.query.filter(ItemInfo.id == id, ItemInfo.uid == g.user.id, ItemInfo.is_delete == False).first() if not item_info: return error_info(400, '操作失败') item_info.is_delete = True item_info.save() return { "data": { "id": item_info.id, "uid": item_info.uid }, "meta": { "status": 204, "msg": "删除成功" } }
def post(self): args = parse.parse_args() admin_notice = Notice() admin_notice.type = "管理员公告" admin_notice.title= args.get('title') admin_notice.content = args.get('content') admin_notice.creator = g.user.id admin_notice.date = datetime.datetime.now() admin_notice.id = g.user.id + datetime.datetime.now().strftime('%Y%m%d%H%M%S') if not admin_notice.save(): return error_info(400, '操作失败') data = { "data": marshal(admin_notice, admin_notice_fields), "meta": { "status": 201, "msg": "发布成功" } } return data
def delete(self): args = parse.parse_args() id = args.get('id') message = Message.query.filter(Message.id == id, Message.receiveId == g.user.id).first() if not message: return error_info(400, '删除失败') message.status = '2' message.save() data = { "data": { "id": message.id, "status": message.status }, "meta": { "status": 204, "msg": "删除成功" } } return data
def post(self): args = parse_base.parse_args() action = args.get("action") id = args.get("id") password = args.get("password") if action == "register": args_register = parse_register.parse_args() username = args_register.get("username") admin = Admin() admin.id = id admin.username = username admin.password = generate_password_hash(password) if not admin.save(): return error_info(400, "注册失败") data = { "data": { "id": admin.id, "username": admin.username }, "meta": { "status": 201, "msg": "用户创建成功" } } return data elif action == "login": user = get_admin(id) if not user: data = error_info(400, "用户不存在") return data if not check_password_hash(user.password, password): data = error_info(400, "密码错误") return data if user.is_delete: data = error_info(400, "用户不存在") return data token = generate_admin_token() cache.set(token, user.id, timeout=60 * 60 * 24 * 7) data = { "data": { "id": user.id, "username": user.username, "token": token }, "meta": { "status": 200, "msg": "登录成功" } } return data else: data = error_info(400, "请提供正确的参数") return data
def post(self): args = parse_base.parse_args() action = args.get("action") id = args.get("id") password = args.get("password") if action == "register": args_register = parse_register.parse_args() username = args_register.get("username") name = args_register.get("name") phone = args_register.get("phone") if User.query.filter(User.id == id).first(): return error_info(400, "该用户已注册") if User.query.filter(User.username == username).first(): return error_info(400, "该用户名已存在") user = User() user.id = id user.username = username user.password = generate_password_hash(password) user.phone = phone user.name = name if not user.save(): return error_info(400, "注册失败") message = Message() message.sendId = '00000' message.receiveId = user.id message.content = '亲爱的' + user.username + ',欢迎使用上师大失物招领平台,请您在使用过程中遵守相关的规范,如果您有什么疑问可以联系管理员,Email:[email protected], Tel:18933666633。' message.date = datetime.datetime.now() message.id = message.receiveId + datetime.datetime.now().strftime( '%Y%m%d%H%M%S') message.save() data = { "data": { "id": user.id, "username": user.username, "status": user.status, }, "meta": { "status": 201, "msg": "注册成功" } } return data elif action == "login": user = get_user(id) if not user: data = error_info(400, "用户不存在") return data if not check_password_hash(user.password, password): data = error_info(400, "密码错误") return data if user.is_delete: data = error_info(400, "用户不存在") return data if user.status: data = error_info(400, "账号已冻结,请尽快联系管理员") return data token = generate_user_token() cache.set(token, user.id, timeout=60 * 60 * 24 * 7) data = { "data": { "id": user.id, "username": user.username, "phone": user.phone, "status": user.status, "token": token }, "meta": { "status": 200, "msg": "登录成功" } } return data else: data = error_info(400, "请提供正确的参数") return data