group.py 文件源码

python
阅读 31 收藏 0 点赞 0 评论 0

项目:server-application 作者: foodshipper 项目源码 文件源码
def get(group_id):
        try:
            args = parser.parse_args()
        except BadRequest:
            return abort(400, message="Invalid arguments")

        with db:
            with db.cursor() as cursor:
                user_id = id_from_token(args['token'])
                if user_id is None:
                    return abort(403, message="Token is not allowed to view this group")

                cursor.execute("SELECT day, COUNT(CASE WHEN invited THEN 1 END) AS invited, "
                               "COUNT(CASE WHEN accepted THEN 1 END) AS accepted, "
                               # Only if user is Group Member this will be 1
                               "COUNT(CASE WHEN user_id=%s THEN 1 END) = 1 AS allowed "
                               "FROM groups "
                               "JOIN groups_rel ON groups.id = groups_rel.group_id "
                               "WHERE groups.id=%s "
                               "GROUP BY groups.id ", [user_id, group_id])
                group = cursor.fetchone()
                if group is None:
                    return abort(404, message="Group not found")
                if not group[3]:
                    return abort(403, message="Token is not allowed to view this group")

                return {
                    'invited': group[1],
                    'accepted': group[2],
                    'day': str(group[0]),
                }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号