예제 #1
0
 def process(self, request, queryset):
     sent = 0
     for damage_scenario in queryset:
         tasks.damage_scenario_to_task(damage_scenario, username="******")
         sent += 1
     return self.message_user(
         request,
         '%d DamageScenarios sent to message queue.' % sent,
     )
예제 #2
0
    def done(self, form_list, **kwargs):
        """
        The Wizard is finished: create a new DamageScenario object and
        launch the calculation task associated to it.
        """
        scenario_type_name = {
            0: '1 Kaart met de max waterstand van 1 gebeurtenis',
            1: '1 Kaart met de waterstand voor een zekere herhalingstijd',
            2: 'Kaarten met per tijdstip de waterstand van 1 gebeurtenis',
            3: 'Kaarten met de max. waterstand van afzonderlijke '
            'gebeurtenissen.',
            4: 'Kaarten met voor verschillende herhalingstijden de '
            'waterstanden',
            5: 'Tijdserie aan kaarten met per tijdstip de waterstand van '
            'meerdere gebeurtenissen',
            6: 'baten taak'}

        all_form_data = self.get_all_cleaned_data()

        logger.info('Scenario is being created: %r' % all_form_data)
        scenario_type = int(all_form_data['scenario_type'])
        logger.info(
            'STATS scenario aangemaakt door %s: %s, %r' % (
                all_form_data['email'],
                scenario_type_name[scenario_type], all_form_data))
        if scenario_type in (0, 1):
            damage_scenario = damage_scenario_from_type_0(all_form_data)
            self.clean_temporary_directory(all_form_data)
            # launch task
            tasks.damage_scenario_to_task(damage_scenario, username="******")
            return HttpResponseRedirect(
                reverse('lizard_damage_thank_you') +
                '?damage_scenario_id=%d' % damage_scenario.id)
        if scenario_type in (2, 3, 4):
            damage_scenario = damage_scenario_from_zip_type(all_form_data)
            self.clean_temporary_directory(all_form_data)
            # launch task
            tasks.damage_scenario_to_task(damage_scenario, username="******")
            return HttpResponseRedirect(
                reverse('lizard_damage_thank_you') +
                '?damage_scenario_id=%d' % damage_scenario.id)
        elif scenario_type == 6:
            # baten taak
            benefit_scenario = create_benefit_scenario(all_form_data)
            tasks.benefit_scenario_to_task(benefit_scenario, username="******")
            return HttpResponseRedirect(
                reverse('lizard_damage_thank_you') +
                '?benefit_scenario_id=%d' % benefit_scenario.id)
예제 #3
0
    def done(self, form_list, **kwargs):
        """
        The Wizard is finished: create a new DamageScenario object and
        launch the calculation task associated to it.
        """
        #import ipdb; ipdb.set_trace()
        #do_something_with_the_form_data(form_list)

        all_form_data = self.get_all_cleaned_data()

        scenario_type = int(all_form_data['scenario_type'])
        if scenario_type in (0, 1, 2, 3, 4, 5):
            damage_scenario = self.SCENARIO_TYPE_FUNCTIONS[scenario_type](all_form_data)
            # launch task
            tasks.damage_scenario_to_task(damage_scenario, username="******")
            return HttpResponseRedirect(reverse('lizard_damage_thank_you') +
                                        '?damage_scenario_id=%d' % damage_scenario.id)
        elif scenario_type == 6:
            # baten taak
            benefit_scenario = create_benefit_scenario(all_form_data)
            tasks.benefit_scenario_to_task(benefit_scenario, username="******")
            return HttpResponseRedirect(reverse('lizard_damage_thank_you') +
                                        '?benefit_scenario_id=%d' % benefit_scenario.id)