def bind_scenario(row, attendee, scenarios): for scenario_id, scenario in scenarios.items(): sce = Scenario() if scenario.get('show_rule'): if row[scenario.get('show_rule')['row_name']] != scenario.get('show_rule')['value_match']: continue sce.order = scenario['order'] sce.display_text = scenario['display_text'] sce.available_time = str2timestamp(scenario['available_time']) sce.expire_time = str2timestamp(scenario['expire_time']) sce.countdown = scenario['countdown'] if scenario.get('lock_message'): sce.disabled = scenario.get('lock_message') if scenario.get('attr'): for attr in scenario.get('attr'): if not attr.get('value'): sce.attr[attr['attr_name']] = row[attr['row_name']] else: sce.attr[attr['attr_name']] = attr.get('value')[row[attr['row_name']]] if scenario.get('not_lock_rule'): if row[scenario.get('not_lock_rule')['row_name']] == scenario.get('not_lock_rule')['value_match']: sce.disabled = None else: sce.disabled = scenario.get('not_lock_rule')['not_match_disable_message'] attendee.scenario[scenario_id] = sce attendee.save()
def bind_scenario(row, attendee, scenarios): for scenario_id, scenario in scenarios.items(): sce = Scenario() if scenario.get('show_rule'): if row[scenario.get('show_rule')['row_name']] != scenario.get( 'show_rule')['value_match']: continue sce.order = scenario['order'] sce.display_text = scenario['display_text'] sce.available_time = str2timestamp(scenario['available_time']) sce.expire_time = str2timestamp(scenario['expire_time']) sce.countdown = scenario['countdown'] if scenario.get('lock_message'): sce.disabled = scenario.get('lock_message') if scenario.get('attr'): for attr in scenario.get('attr'): if not attr.get('value'): sce.attr[attr['attr_name']] = row[attr['row_name']] else: sce.attr[attr['attr_name']] = attr.get('value')[row[ attr['row_name']]] if scenario.get('not_lock_rule'): if row[scenario.get('not_lock_rule')['row_name']] == scenario.get( 'not_lock_rule')['value_match']: sce.disabled = None else: sce.disabled = scenario.get( 'not_lock_rule')['not_match_disable_message'] attendee.scenario[scenario_id] = sce attendee.save()