Exemple #1
0
 def _get_header_row(self):
     header = []
     header.extend(Study.flat_complete_header_row())
     header.extend(models.MetaProtocol.flat_complete_header_row())
     header.extend(models.MetaResult.flat_complete_header_row())
     header.extend(models.SingleResult.flat_complete_header_row())
     return header
Exemple #2
0
 def _get_header_row(self):
     header = []
     header.extend(Study.flat_complete_header_row())
     header.extend(models.StudyPopulation.flat_complete_header_row())
     header.extend(models.Exposure.flat_complete_header_row())
     header.extend(models.AssessedOutcome.flat_complete_header_row())
     header.extend(models.AssessedOutcomeGroup.flat_complete_header_row())
     return header
Exemple #3
0
 def _get_header_row(self):
     header = []
     header.extend(Study.flat_complete_header_row())
     header.extend(models.StudyPopulation.flat_complete_header_row())
     header.extend(models.Outcome.flat_complete_header_row())
     header.extend(models.Exposure.flat_complete_header_row())
     header.extend(models.ComparisonSet.flat_complete_header_row())
     header.extend(models.Result.flat_complete_header_row())
     header.extend(models.Group.flat_complete_header_row())
     header.extend(models.GroupResult.flat_complete_header_row())
     return header
Exemple #4
0
 def _get_header_row(self):
     header = []
     header.extend(Study.flat_complete_header_row())
     header.extend(models.StudyPopulation.flat_complete_header_row())
     header.extend(models.Outcome.flat_complete_header_row())
     header.extend(models.Exposure.flat_complete_header_row())
     header.extend(models.ComparisonSet.flat_complete_header_row())
     header.extend(models.Result.flat_complete_header_row())
     header.extend(models.Group.flat_complete_header_row())
     header.extend(models.GroupResult.flat_complete_header_row())
     return header
Exemple #5
0
    def _get_header_row(self):
        self.doses = DoseUnits.objects.get_animal_units(self.kwargs.get('assessment'))

        header = []
        header.extend(Study.flat_complete_header_row())
        header.extend(models.Experiment.flat_complete_header_row())
        header.extend(models.AnimalGroup.flat_complete_header_row())
        header.extend(models.DosingRegime.flat_complete_header_row())
        header.extend(models.Endpoint.flat_complete_header_row())
        header.extend(['doses-{}'.format(d) for d in self.doses])
        header.extend(models.EndpointGroup.flat_complete_header_row())
        return header
Exemple #6
0
    def _get_header_row(self):
        self.doses = DoseUnits.get_animal_units(self.kwargs.get('assessment'))

        header = []
        header.extend(Study.flat_complete_header_row())
        header.extend(models.Experiment.flat_complete_header_row())
        header.extend(models.AnimalGroup.flat_complete_header_row())
        header.extend(models.DosingRegime.flat_complete_header_row())
        header.extend(models.Endpoint.flat_complete_header_row())
        header.extend([u'doses-{}'.format(d) for d in self.doses])
        header.extend(models.EndpointGroup.flat_complete_header_row())
        return header
Exemple #7
0
 def _get_data_rows(self):
     rows = []
     for obj in self.queryset:
         ser = obj.get_json(json_encode=False)
         row = []
         row.extend(Study.flat_complete_data_row(ser))
         for rob in ser.get('riskofbiases', []):
             rob_data = models.RiskOfBias.flat_complete_data_row(rob)
             for score in rob['scores']:
                 row_copy = list(row)
                 row_copy.extend(
                     models.RiskOfBiasScore.flat_complete_data_row(score))
                 row_copy.extend(rob_data)
                 rows.append(row_copy)
     return rows
Exemple #8
0
 def _get_data_rows(self):
     rows = []
     for obj in self.queryset:
         ser = obj.get_json(json_encode=False)
         row = []
         row.extend(Study.flat_complete_data_row(ser['exposure']['study_population']['study']))
         row.extend(models.StudyPopulation.flat_complete_data_row(ser['exposure']['study_population']))
         row.extend(models.Exposure.flat_complete_data_row(ser['exposure']))
         row.extend(models.AssessedOutcome.flat_complete_data_row(ser))
         # build a row for each aog
         for aog in ser['groups']:
             row_copy = list(row)  # clone
             row_copy.extend(models.AssessedOutcomeGroup.flat_complete_data_row(aog))
             rows.append(row_copy)
     return rows
    def handle(self, source_assessment_id, destination_assessment_id,
               *args, **options):
        source_assessment = Assessment.objects.get(pk=source_assessment_id)
        target_assessment = Assessment.objects.get(pk=destination_assessment_id)
        source_studies = Study.objects.filter(assessment=source_assessment)

        cw = Study.copy_across_assessment(source_studies, target_assessment)

        copyRoB = not options['noRiskOfBias']
        if copyRoB:

            cw = RiskOfBiasDomain.copy_across_assessment(
                cw, source_studies, target_assessment)

            cw = RiskOfBias.copy_across_assessment(
                cw, source_studies, target_assessment)
Exemple #10
0
    def getChoices(self, field_name):
        assessment_id = self.form.instance.assessment_id
        choices = None

        if field_name == "systems":
            choices = list(Endpoint.get_system_choices(assessment_id))
        elif field_name == "effects":
            choices = list(Endpoint.get_effect_choices(assessment_id))
        elif field_name == "effect_tags":
            choices = EffectTag.get_choices(assessment_id)
        elif field_name == "studies":
            choices = Study.get_choices(assessment_id)
        else:
            raise ValueError("Unknown field name: {}".format(field_name))

        return choices
    def handle(self, source_assessment_id, destination_assessment_id, *args,
               **options):
        source_assessment = Assessment.objects.get(pk=source_assessment_id)
        target_assessment = Assessment.objects.get(
            pk=destination_assessment_id)
        source_studies = Study.objects.filter(assessment=source_assessment)

        cw = Study.copy_across_assessment(source_studies, target_assessment)

        copyRoB = not options['noRiskOfBias']
        if copyRoB:

            cw = RiskOfBiasDomain.copy_across_assessment(
                cw, source_studies, target_assessment)

            cw = RiskOfBias.copy_across_assessment(cw, source_studies,
                                                   target_assessment)
Exemple #12
0
 def _get_data_rows(self):
     rows = []
     for obj in self.queryset:
         ser = obj.get_json(json_encode=False)
         row = []
         row.extend(Study.flat_complete_data_row(ser['study_population']['study']))
         row.extend(models.StudyPopulation.flat_complete_data_row(ser['study_population']))
         row.extend(models.Outcome.flat_complete_data_row(ser))
         for res in ser['results']:
             row_copy = list(row)
             row_copy.extend(models.Exposure.flat_complete_data_row(res["comparison_set"]["exposure"]))
             row_copy.extend(models.ComparisonSet.flat_complete_data_row(res["comparison_set"]))
             row_copy.extend(models.Result.flat_complete_data_row(res))
             for rg in res['results']:
                 row_copy2 = list(row_copy)
                 row_copy2.extend(models.Group.flat_complete_data_row(rg["group"]))
                 row_copy2.extend(models.GroupResult.flat_complete_data_row(rg))
                 rows.append(row_copy2)
     return rows
Exemple #13
0
    def _get_data_rows(self):
        rows = []
        for obj in self.queryset:
            ser = obj.get_json(json_encode=False)
            row = []
            row.extend(Study.flat_complete_data_row(ser['animal_group']['experiment']['study']))
            row.extend(models.Experiment.flat_complete_data_row(ser['animal_group']['experiment']))
            row.extend(models.AnimalGroup.flat_complete_data_row(ser['animal_group']))
            row.extend(models.DosingRegime.flat_complete_data_row(ser['animal_group']['dosing_regime']))
            row.extend(models.Endpoint.flat_complete_data_row(ser))
            for i, eg in enumerate(ser['groups']):
                row_copy = copy(row)
                row_copy.extend(models.DoseGroup.flat_complete_data_row(
                    ser['animal_group']['dosing_regime']['doses'],
                    self.doses, i))
                row_copy.extend(models.EndpointGroup.flat_complete_data_row(eg, ser))
                rows.append(row_copy)

        return rows
Exemple #14
0
 def _get_data_rows(self):
     rows = []
     for obj in self.queryset:
         ser = obj.get_json(json_encode=False)
         row = []
         row.extend(Study.flat_complete_data_row(ser['study_population']['study']))
         row.extend(models.StudyPopulation.flat_complete_data_row(ser['study_population']))
         row.extend(models.Outcome.flat_complete_data_row(ser))
         for res in ser['results']:
             row_copy = list(row)
             row_copy.extend(models.Exposure.flat_complete_data_row(res["comparison_set"]["exposure"]))
             row_copy.extend(models.ComparisonSet.flat_complete_data_row(res["comparison_set"]))
             row_copy.extend(models.Result.flat_complete_data_row(res))
             for rg in res['results']:
                 row_copy2 = list(row_copy)
                 row_copy2.extend(models.Group.flat_complete_data_row(rg["group"]))
                 row_copy2.extend(models.GroupResult.flat_complete_data_row(rg))
                 rows.append(row_copy2)
     return rows
Exemple #15
0
    def _get_data_rows(self):
        rows = []
        for obj in self.queryset:
            ser = obj.get_json(json_encode=False)
            row = []
            row.extend(Study.flat_complete_data_row(ser['protocol']['study']))
            row.extend(models.MetaProtocol.flat_complete_data_row(ser['protocol']))
            row.extend(models.MetaResult.flat_complete_data_row(ser))

            if len(ser['single_results'])==0:
                # print one-row with no single-results
                rows.append(row)
            else:
                # print each single-result as a new row
                for sr in ser['single_results']:
                    row_copy = list(row)  # clone
                    row_copy.extend(models.SingleResult.flat_complete_data_row(sr))
                    rows.append(row_copy)
        return rows
Exemple #16
0
    def _get_data_rows(self):
        rows = []
        for obj in self.queryset:
            ser = obj.get_json(json_encode=False)
            row = []
            row.extend(Study.flat_complete_data_row(ser['animal_group']['experiment']['study']))
            row.extend(models.Experiment.flat_complete_data_row(ser['animal_group']['experiment']))
            row.extend(models.AnimalGroup.flat_complete_data_row(ser['animal_group']))
            row.extend(models.DosingRegime.flat_complete_data_row(ser['animal_group']['dosing_regime']))
            row.extend(models.Endpoint.flat_complete_data_row(ser))
            for i, eg in enumerate(ser['groups']):
                row_copy = copy(row)
                row_copy.extend(models.DoseGroup.flat_complete_data_row(
                    ser['animal_group']['dosing_regime']['doses'],
                    self.doses, i))
                row_copy.extend(models.EndpointGroup.flat_complete_data_row(eg, ser))
                rows.append(row_copy)

        return rows
Exemple #17
0
    def getPrefilterQueryset(self, field_name):
        assessment_id = self.instance.assessment_id
        choices = None

        if field_name == "systems":
            choices = list(Endpoint.get_system_choices(assessment_id))
        elif field_name == "organs":
            choices = list(Endpoint.get_organ_choices(assessment_id))
        elif field_name == "effects":
            choices = list(Endpoint.get_effect_choices(assessment_id))
        elif field_name == "iv_categories":
            choices = IVEndpointCategory.get_choices(assessment_id)
        elif field_name == "effect_tags":
            choices = EffectTag.get_choices(assessment_id)
        elif field_name == "studies":
            choices = Study.get_choices(assessment_id)
        else:
            raise ValueError("Unknown field name: {}".format(field_name))

        return choices
Exemple #18
0
 def _get_data_rows(self):
     rows = []
     for obj in self.queryset:
         ser = obj.get_json(json_encode=False)
         row = []
         row.extend(
             Study.flat_complete_data_row(
                 ser['exposure']['study_population']['study']))
         row.extend(
             models.StudyPopulation.flat_complete_data_row(
                 ser['exposure']['study_population']))
         row.extend(models.Exposure.flat_complete_data_row(ser['exposure']))
         row.extend(models.AssessedOutcome.flat_complete_data_row(ser))
         # build a row for each aog
         for aog in ser['groups']:
             row_copy = list(row)  # clone
             row_copy.extend(
                 models.AssessedOutcomeGroup.flat_complete_data_row(aog))
             rows.append(row_copy)
     return rows
Exemple #19
0
    def _get_data_rows(self):
        rows = []
        for obj in self.queryset:
            ser = obj.get_json(json_encode=False)
            row = []
            row.extend(Study.flat_complete_data_row(ser['protocol']['study']))
            row.extend(
                models.MetaProtocol.flat_complete_data_row(ser['protocol']))
            row.extend(models.MetaResult.flat_complete_data_row(ser))

            if len(ser['single_results']) == 0:
                # print one-row with no single-results
                rows.append(row)
            else:
                # print each single-result as a new row
                for sr in ser['single_results']:
                    row_copy = list(row)  # clone
                    row_copy.extend(
                        models.SingleResult.flat_complete_data_row(sr))
                    rows.append(row_copy)
        return rows
Exemple #20
0
    def _get_data_rows(self):
        rows = []
        for obj in self.queryset:
            ser = obj.get_json(json_encode=False)
            row = []
            row.extend(Study.flat_complete_data_row(ser))

            try:
                scores = [
                    rob['scores'] for rob in ser.get('riskofbiases', [])
                    if rob['final'] and rob['active']
                ][0]
            except IndexError:
                scores = []

            for score in scores:
                row_copy = list(row)  # clone
                row_copy.extend(
                    models.RiskOfBiasScore.flat_complete_data_row(score))
                rows.append(row_copy)
        return rows
Exemple #21
0
 def delete_caches(cls, ids):
     id_lists = [(score.riskofbias.id, score.riskofbias.study_id) for score in cls.objects.filter(id__in=ids)]
     rob_ids, study_ids = list(zip(*id_lists))
     RiskOfBias.delete_caches(rob_ids)
     Study.delete_caches(study_ids)
Exemple #22
0
 def _get_header_row(self):
     header = []
     header.extend(Study.flat_complete_header_row())
     header.extend(models.RiskOfBiasScore.flat_complete_header_row())
     return header
Exemple #23
0
 def delete_caches(cls, ids):
     id_lists = [(score.riskofbias.id, score.riskofbias.study_id)
                 for score in cls.objects.filter(id__in=ids)]
     rob_ids, study_ids = list(zip(*id_lists))
     RiskOfBias.delete_caches(rob_ids)
     Study.delete_caches(study_ids)