Ejemplo n.º 1
0
def show_notifications_in_console(tasks):
    print('///////////////////////////////////////////')
    print('\t\tNOTIFICATIONS')
    print('///////////////////////////////////////////')
    print('')

    data = [[str(task.tid), task.title, task.description, 
            timestamp_to_display(task.supposed_start_time), 
            timestamp_to_display(task.supposed_end_time),
            timestamp_to_display(task.deadline_time)] for task in tasks]
    data.insert(0, ['TID', 'TITLE', 'DESCRIPTION', 'SUPPOSED_START', 'SUPPOSED_END', 'DEADLINE', 'NUMBER IN PLANS'])

    plan_controller = PlanController()
    for i in range(len(tasks)):
        task = tasks[i]

        plans = plan_controller.get_plan_for_common_task(task.tid)
        edited_plans = plan_controller.get_plan_for_edit_repeat_task(task.tid)

        all_plans = plans + edited_plans
        if len(all_plans) > 0:
            repeats = []
            for plan in all_plans:
                repeat = plan_controller.get_repeat_number_for_task(plan.plan_id, task)
                if repeat is not None:
                    repeats.append(str(repeat))
            numbers = ','.join(repeats)
            data[i+1].append(numbers)
        else:
            data[i+1].append(str(None))

    print_in_groups(data, 0)
Ejemplo n.º 2
0
def show_tasks_in_console(tasks, shift=0):
    data = [[str(task.tid), str(task.pid), str(task.parent_tid), task.title, task.description, 
            timestamp_to_display(task.supposed_start_time), 
            timestamp_to_display(task.supposed_end_time),
            timestamp_to_display(task.deadline_time),
            Priority.to_str(task.priority),
            Status.to_str(task.status),
            task.notificate_supposed_start,
            task.notificate_supposed_end,
            task.notificate_deadline] for task in tasks]
    data.insert(0, ['TID', 'PID', 'PARENT', 'TITLE', 'DESCRIPTION', 'SUPPOSED_START', 'SUPPOSED_END', 'DEADLINE',
                    'PRIORITY', 'STATUS', 'NOTIFICATE START', 'NOTIFICATE END', 'NOTIFICATE DEADLINE', 
                    'PLANNED (plan id)', 'EDIT PLANS (plan id)', 'NUMBER IN PLANS'])
    
    for i in range(len(tasks)):
        task = tasks[i]
        projects = ProjectController.fetch_projects(pid=task.pid)
        if projects is not None and len(projects) != 0:
            projects_str = ','.join([project.name for project in projects])
            data[i+1][1] += ' ({})'.format(projects_str)

    plan_controller = PlanController()
    for i in range(len(tasks)):
        task = tasks[i]
        plans = plan_controller.get_plan_for_common_task(task.tid)
        if len(plans) > 0:
            plans_ids = ','.join([str(plan.plan_id) for plan in plans])
            data[i+1].append(plans_ids)
        else:
            data[i+1].append(str(None))
        edited_plans = plan_controller.get_plan_for_edit_repeat_task(task.tid)
        if len(edited_plans) > 0:
            plans_ids = ','.join([str(plan.plan_id) for plan in edited_plans])
            data[i+1].append(plans_ids)
        else:
            data[i+1].append(str(None))

        all_plans = plans + edited_plans
        if len(all_plans) > 0:
            repeats = []
            for plan in all_plans:
                repeat = plan_controller.get_repeat_number_for_task(plan.plan_id, task)
                if repeat is not None:
                    repeats.append(str(repeat))
            numbers = ','.join(repeats)
            data[i+1].append(numbers)
        else:
            data[i+1].append(str(None))
        
    print_in_groups(data, shift)