Ejemplo n.º 1
0
    def showSchedule(self, crew_ID):
        ''' Shows the schedule for a specific crew member '''

        employee = LL_API().get_crew_member_by_id(crew_ID)

        if employee != None:

            start_year_str, start_month_str, start_day_str = self.getDateInput(
                'start')

            start_year_int, start_month_int, start_day_int = LL_API(
            ).verifyDate(start_year_str, start_month_str, start_day_str)
            start_date = datetime.datetime(start_year_int, start_month_int,
                                           start_day_int, 0, 0,
                                           0)  #VERIFY INPUT

            end_year_str, end_month_str, end_day_str = self.getDateInput('end')

            end_year_int, end_month_int, end_day_int = LL_API().verifyDate(
                end_year_str, end_month_str, end_day_str)
            end_date = datetime.datetime(end_year_int, end_month_int,
                                         end_day_int, 0, 0, 0)  # VERIFY INPUT

            work_schedule_list = LL_API().get_work_schedule(
                start_date, end_date, crew_ID)

            name_header_str = '{:^45}\n{:^45}'.format(employee.getName(),
                                                      'ID:' + crew_ID)
            date_str = '{}.{}.{}-{}.{}.{}'.format(\
                start_day_int,start_month_int,start_year_int,end_day_int,end_month_int,end_year_int)
            header_str = '{:^45}\n{:^45}'.format('Working Schedule', date_str)

            print('\n' + '-' * 45)
            print(name_header_str)
            print(header_str)
            print(45 * '-' + '\n')

            if work_schedule_list != None:
                for voyage in work_schedule_list:
                    flight_no_out, flight_no_home = voyage.getFlightNumbers()
                    voyage_duration_hrs, voyage_duration_min = LL_API(
                    ).get_voyage_duration(voyage)
                    aircraft_ID = voyage.getAircraftID()
                    self.prettyprint(voyage,flight_no_out,flight_no_home,voyage_duration_hrs,voyage_duration_min,\
                    aircraft_ID)
                return True
            else:
                print('No voyages in this time period\n')
                return True
        else:
            return False
Ejemplo n.º 2
0
    def showOneCrewMember(self, crew_id):
        '''Prints info of one crew member found by ID'''

        # Get crew member instance
        crew_member = LL_API().get_crew_member_by_id(crew_id)
        print('\n' + '-' * 45)

        if crew_member == None:
            print('Employee with this id not found!')
            print()
            return False
        else:
            print('{:<15}{:<15}'.format('Name:', crew_member.getName()))
            print('{:<15}{:<15}'.format('SSN:', crew_member.getCrewID()))
            print('{:<15}{:<15}'.format('Address:', crew_member.getAddress()))
            print('{:<15}{:<15}'.format('Phone number:',
                                        crew_member.getPhoneNumber()))
            print('{:<15}{:<15}'.format('Email:', crew_member.getEmail()))

            # Rank and license printed where it applies

            if type(crew_member) == Pilot:
                if crew_member.getBool():
                    print('{:<15}{:<15}'.format('Rank:', 'Captain'))
                    print('{:<15}{:<15}'.format('License:',
                                                crew_member.getLicense()))
                else:
                    print('{:<15}{:<15}'.format('Rank:', 'Co-pilot'))
                    print('{:<15}{:<15}'.format('License:',
                                                crew_member.getLicense()))
            else:
                if crew_member.getBool():
                    print('{:<15}{:<15}'.format('Rank:',
                                                'Head service manager'))
                else:
                    print('{:<15}{:<15}'.format('Rank:', 'Flight attendant'))

            print()
            return True