Пример #1
0
def mme_details(request):
    submissions = MatchmakerSubmission.objects.filter(
        deleted_date__isnull=True)

    hpo_terms_by_id, genes_by_id, gene_symbols_to_ids = get_mme_genes_phenotypes_for_submissions(
        submissions)

    submission_json = get_json_for_matchmaker_submissions(
        submissions, additional_model_fields=['label'], all_parent_guids=True)
    submissions_by_guid = {s['submissionGuid']: s for s in submission_json}

    for submission in submissions:
        gene_variants = parse_mme_gene_variants(submission.genomic_features,
                                                gene_symbols_to_ids)
        submissions_by_guid[submission.guid].update({
            'phenotypes':
            parse_mme_features(submission.features, hpo_terms_by_id),
            'geneVariants':
            gene_variants,
            'geneSymbols':
            ','.join({
                genes_by_id.get(gv['geneId'], {}).get('geneSymbol')
                for gv in gene_variants
            })
        })

    return create_json_response({
        'metrics': get_mme_metrics(),
        'submissions': submissions_by_guid.values(),
        'genesById': genes_by_id,
    })
Пример #2
0
def mme_metrics_proxy(request, originating_node_name):
    """
    -Proxies public metrics endpoint
    Returns:
        Metric JSON from matchbox
    """
    logger.info('Received MME metrics request from {}'.format(originating_node_name))
    return create_json_response({'metrics': get_mme_metrics()})