예제 #1
0
    def get_patients_qs(self):
        samples = set()

        node_ids = [n.pk for n in self.analysisnode_ptr.get_roots()]
        roots = AnalysisNode.objects.filter(
            pk__in=node_ids).select_subclasses()
        for node in roots:
            samples.update(node.get_samples())

        return Patient.filter_for_user(
            self.analysis.user).filter(sample__in=samples)
예제 #2
0
def patients_qs_for_ontology_term(user, ontology_term):
    return Patient.filter_for_user(user).filter(
        **{
            PATIENT_ONTOLOGY_TERM_PATH: ontology_term
        }).order_by("id")