예제 #1
0
파일: views.py 프로젝트: yassineS/scout
def case(institute_id, case_id):
    """View a specific case."""
    institute = validate_user(current_user, institute_id)

    # fetch a single, specific case from the data store
    case_model = store.case(institute_id, case_id)

    case_comments = store.events(institute, case=case_model, comments=True)
    case_events = store.events(institute, case=case_model)

    # map internal + external sample ids
    sample_map = {"alt_{}".format(sample.individual_id): sample.display_name for sample in case_model.individuals}
    group_id = "alt_{}".format(case_model.owner_case_id)
    sample_map[group_id] = case_model.display_name

    # default coverage report
    default_panel_names = [panel.name_and_version for panel in case_model.default_panel_objs()]

    return dict(
        institute=institute,
        case=case_model,
        statuses=Case.status.choices,
        case_comments=case_comments,
        case_events=case_events,
        institute_id=institute_id,
        case_id=case_id,
        panel_names=default_panel_names,
        sample_map=sample_map,
    )
예제 #2
0
파일: views.py 프로젝트: yassineS/scout
def variant(institute_id, case_id, variant_id):
    """View a single variant in a single case."""
    institute = validate_user(current_user, institute_id)
    case_model = store.case(institute_id, case_id)
    variant_model = store.variant(document_id=variant_id)

    comments = store.events(institute, case=case_model, variant_id=variant_model.variant_id, comments=True)
    events = store.events(institute, case=case_model, variant_id=variant_model.variant_id)

    individuals = {individual.individual_id: individual for individual in case_model.individuals}

    prev_variant = store.previous_variant(document_id=variant_id)
    next_variant = store.next_variant(document_id=variant_id)
    return dict(
        institute=institute,
        institute_id=institute_id,
        case=case_model,
        case_id=case_id,
        variant=variant_model,
        variant_id=variant_id,
        comments=comments,
        events=events,
        prev_variant=prev_variant,
        next_variant=next_variant,
        manual_rank_options=Variant.manual_rank.choices,
        individuals=individuals,
    )
예제 #3
0
파일: views.py 프로젝트: gpcr/scout
def case(institute_id, case_id):
  """View a specific case."""
  institute = validate_user(current_user, institute_id)

  # fetch a single, specific case from the data store
  case_model = store.case(institute_id, case_id)

  case_comments = store.events(institute, case=case_model, comments=True)
  case_events = store.events(institute, case=case_model)

  return dict(institute=institute, case=case_model, statuses=Case.status.choices,
              case_comments=case_comments, case_events=case_events,
              institute_id=institute_id, case_id=case_id)