Ejemplo n.º 1
0
def update_healthsystem_form(request, scenario_id):
    data = update_form(request, scenario_id)
    temp_scenario = None

    if "valid" not in data:
        return data

    valid = data["valid"]

    if not valid:
        return data

    if "scenario" in data:
        temp_scenario = data["scenario"]

    form_values = {'valid': data["valid"]}

    seek_uncomp = temp_scenario.healthSystem.ImmediateOutcomes.pSeekOfficialCareUncomplicated1
    self_treat = temp_scenario.healthSystem.ImmediateOutcomes.pSelfTreatUncomplicated

    perc_total = get_percentage_from_prob(seek_uncomp)
    perc_formal = 100 - get_percentage_from_prob(self_treat)

    form_values["perc_total_treated"] = perc_total
    form_values["perc_formal_care"] = perc_formal
    form_values["first_line_drug"] = temp_scenario.healthSystem.ImmediateOutcomes.firstLine

    return HttpResponse(json.dumps(form_values), content_type="application/json")
    def test_probabilities(self):
        # get_prob_from_percentage
        self.assertRaises(AssertionError, get_prob_from_percentage, -1)
        self.assertRaises(AssertionError, get_prob_from_percentage, 101)
        self.assertRaises(AssertionError, get_prob_from_percentage,
                          "not a number")

        self.assertEqual(get_prob_from_percentage(50), 0.2411937)
        self.assertEqual(get_prob_from_percentage(0), 0.0)
        self.assertEqual(get_prob_from_percentage(100), 0.9984184)

        for i in range(0, 101):
            self.assertEqual(
                get_percentage_from_prob(get_prob_from_percentage(i)), i)

        # get_percentage_from_prob
        self.assertEqual(get_percentage_from_prob(0.5), 77)
        self.assertEqual(get_percentage_from_prob(0.0), 0)
        self.assertEqual(get_percentage_from_prob(0.003655051), 0)
        self.assertEqual(get_percentage_from_prob(0.003655053), 1)
        self.assertEqual(get_percentage_from_prob(0.01), 2)
        self.assertEqual(get_percentage_from_prob(0.5), 77)
        self.assertEqual(get_percentage_from_prob(0.9984183), 99)
        self.assertEqual(get_percentage_from_prob(0.9984185), 100)
        self.assertEqual(get_percentage_from_prob(1.00), 100)
Ejemplo n.º 3
0
def update_healthsystem_form(request, scenario_id):
    data = update_form(request, scenario_id)
    temp_scenario = None

    if "valid" not in data:
        return data

    valid = data["valid"]

    if not valid:
        return data

    if "scenario" in data:
        temp_scenario = data["scenario"]

    form_values = {'valid': data["valid"]}

    seek_uncomp = temp_scenario.healthSystem.ImmediateOutcomes.pSeekOfficialCareUncomplicated1
    self_treat = temp_scenario.healthSystem.ImmediateOutcomes.pSelfTreatUncomplicated

    perc_total = get_percentage_from_prob(seek_uncomp)
    perc_formal = 100 - get_percentage_from_prob(self_treat)

    form_values["perc_total_treated"] = perc_total
    form_values["perc_formal_care"] = perc_formal
    form_values[
        "first_line_drug"] = temp_scenario.healthSystem.ImmediateOutcomes.firstLine

    return HttpResponse(json.dumps(form_values),
                        content_type="application/json")
Ejemplo n.º 4
0
    def get_initial(self):
        initial = {"first_line_drug": self.scenario.healthSystem.ImmediateOutcomes.firstLine}

        seek_uncomp = self.scenario.healthSystem.ImmediateOutcomes.pSeekOfficialCareUncomplicated1
        self_treat = self.scenario.healthSystem.ImmediateOutcomes.pSelfTreatUncomplicated

        perc_total = get_percentage_from_prob(seek_uncomp)
        perc_formal = 100 - get_percentage_from_prob(self_treat)

        initial["perc_total_treated"] = perc_total
        initial["perc_formal_care"] = perc_formal

        return initial
Ejemplo n.º 5
0
    def get_initial(self):
        initial = {
            "first_line_drug":
            self.scenario.healthSystem.ImmediateOutcomes.firstLine
        }

        seek_uncomp = self.scenario.healthSystem.ImmediateOutcomes.pSeekOfficialCareUncomplicated1
        self_treat = self.scenario.healthSystem.ImmediateOutcomes.pSelfTreatUncomplicated

        perc_total = get_percentage_from_prob(seek_uncomp)
        perc_formal = 100 - get_percentage_from_prob(self_treat)

        initial["perc_total_treated"] = perc_total
        initial["perc_formal_care"] = perc_formal

        return initial