Esempio n. 1
0
async def fetch_open_proposals(request, user_id):
    head_block = await utils.get_request_block(request)
    start, limit = utils.get_request_paging_info(request)
    proposals = await proposals_query.fetch_all_proposal_resources(
        request.app.config.DB_CONN, head_block.get('num'), start, limit
    )
    proposal_resources = []
    for proposal in proposals:
        proposal_resource = await compile_proposal_resource(
            request.app.config.DB_CONN,
            proposal,
            head_block.get('num')
        )
        proposal_resources.append(proposal_resource)

    open_proposals = []
    for proposal_resource in proposal_resources:
        if proposal_resource['status'] == "OPEN" and \
           user_id in proposal_resource['approvers']:
            open_proposals.append(proposal_resource)

    return await utils.create_response(
        request.app.config.DB_CONN,
        request.url,
        open_proposals,
        head_block,
        start=start,
        limit=limit
    )
async def fetch_all_users(request):
    head_block = await utils.get_request_block(request)
    start, limit = utils.get_request_paging_info(request)
    user_resources = await users_query.fetch_all_user_resources(
        request.app.config.DB_CONN, head_block.get('num'), start, limit)
    return await utils.create_response(request.app.config.DB_CONN,
                                       request.url,
                                       user_resources,
                                       head_block,
                                       start=start,
                                       limit=limit)
Esempio n. 3
0
async def get_all_proposals(request):
    head_block = await utils.get_request_block(request)
    start, limit = utils.get_request_paging_info(request)
    proposals = await proposals_query.fetch_all_proposal_resources(
        request.app.config.DB_CONN, head_block.get('num'), start, limit)
    proposal_resources = []
    for proposal in proposals:
        proposal_resource = await compile_proposal_resource(
            request.app.config.DB_CONN, proposal, head_block.get('num'))
        proposal_resources.append(proposal_resource)
    return await utils.create_response(request.app.config.DB_CONN,
                                       request.url,
                                       proposal_resources,
                                       head_block,
                                       start=start,
                                       limit=limit)