コード例 #1
0
ファイル: Logger.py プロジェクト: isumisexec/SOMMS
def get_event_log_file(eventID=None):
    """
    This function selects data from the database and uses it to construct a file path and name.
    :return: The string value representing the directory path to the log file
    """

    working_directory = os.getcwd()
    working_directory += "\\Logs\\EventLogs\\"

    connection = MIS_Database_Functions.get_connection()
    cursor = connection.cursor()
    cursor.execute("SELECT semester_tag FROM Semester WHERE semester_num = (SELECT MAX(semester_num) FROM Semester)")
    file_name = cursor.fetchone()[0]
    if eventID is None:
        cursor.execute("SELECT MAX(eventID) FROM Event")
    else:
        cursor.execute("SELECT eventID FROM Event WHERE eventID = %d" % eventID)
    event_id = cursor.fetchone()[0]
    cursor.execute("SELECT company FROM Event WHERE (eventID = \'" + str(event_id) + "\')")
    company_name = cursor.fetchone()[0]
    file_name += "_ID" + str(event_id) + "_" + company_name
    file_name = file_name.replace(" ", "_")

    log_file = working_directory + file_name
    return log_file
コード例 #2
0
ファイル: Create_Member_GUI.py プロジェクト: MIS407/RB
 def get_data(self):
     self.member_netID_to_create = self.create_netID_entry.get()
     self.member_major_to_create = self.create_major_entry.get()
     self.member_classification_to_create = self.create_classification_entry.get()
     self.member_name_to_create = self.create_name_entry.get()
     select_sql_string = "SELECT * FROM Member WHERE netID='"+self.member_netID_to_create+"'"
     connection = MIS_Database_Functions.get_connection()
     cursor = connection.cursor()
     cursor.execute(select_sql_string)
     member_data = cursor.fetchone()
     if member_data is None:
         raw_html = Info_IaState_Scraper.get_raw_html(self.member_netID_to_create)
         parsed_data = Info_IaState_Scraper.parse_student_data(raw_html)
         self.create_classification_entry.insert(0, parsed_data['classification'])
         self.create_major_entry.insert(0, parsed_data['major'])
         if 'Individual Search Results' not in parsed_data['name']:
             self.create_name_entry.insert(0, parsed_data['name'])
         self.trial_checkbox.select()
     else:
         self.create_classification_entry.insert(0, member_data[3])
         self.create_major_entry.insert(0, member_data[2])
         self.create_name_entry.insert(0, member_data[4])
         if member_data[5] == 2:
             self.two_semesters_checkbox.select()
         elif member_data[5] == 1:
             self.one_semester_checkbox.select()
         else:
             for i in range(4):
                 self.trial_checkbox.flash()
                 self.one_semester_checkbox.flash()
                 self.two_semesters_checkbox.flash()
コード例 #3
0
ファイル: Create_Member_GUI.py プロジェクト: MIS407/RB
    def check_in_member(self):
        self.member_netID_to_create = self.create_netID_entry.get()
        self.member_major_to_create = self.create_major_entry.get()
        self.member_classification_to_create = self.create_classification_entry.get()
        self.member_name_to_create = self.create_name_entry.get()
        if self.member_netID_to_create is None:
            return
        if self.trial == 0 and self.one_semester == 0 and self.two_semesters == 0:
            return
        select_sql_string = "SELECT * FROM Member WHERE netID='"+self.member_netID_to_create+"'"
        connection = MIS_Database_Functions.get_connection()
        cursor = connection.cursor()
        cursor.execute(select_sql_string)
        member_data = cursor.fetchone()
        cursor.execute("SELECT eventID FROM event WHERE eventID=(SELECT MAX(eventID) FROM event)")
        event_id = cursor.fetchone()
        if member_data is None:
            # Create the new member in the DB
            insert_sql_string = "INSERT INTO Member VALUES('"+str(self.member_netID_to_create)+"', '" + \
                                str(self.member_netID_to_create) + "@iastate.edu', '"\
                                + str(self.member_major_to_create) + \
                                "', '"+str(self.member_classification_to_create)+"', '"\
                                + str(self.member_name_to_create)+"', "
            if self.trial.get() == 1:
                insert_sql_string += "0)"
            elif self.one_semester.get() == 1:
                insert_sql_string += "1)"
            elif self.two_semesters.get() == 1:
                insert_sql_string += "2)"
            else:
                raise Exception("No Check box Marked")
            cursor.execute(insert_sql_string)

        create_ticket_sql_string = "INSERT INTO Ticket VALUES("+str(event_id[0])+", '" + \
                                   self.member_netID_to_create+"')"
        print(create_ticket_sql_string)
        try:
            cursor.execute(create_ticket_sql_string)
            self.notification['text'] = "Welcome to the Event "+self.member_name_to_create+"!"
        except IOError as e:
            self.notification['text'] = "Error "+str(e)
            print(str(e))
        except Exception as e:
            if "UNIQUE" in str(e):
                self.notification['text'] = "Seems you are already checked in. Welcome!"
            else:
                self.notification['text'] = "Error "+str(e)
            print(str(e))
        finally:
            connection.commit()
        self.notification.pack()
        self.create_major_entry.delete(0, len(self.member_major_to_create))
        self.create_classification_entry.delete(0, len(self.member_classification_to_create))
        self.create_name_entry.delete(0, len(self.member_name_to_create))
        self.create_netID_entry.delete(0, len(self.member_netID_to_create))
        self.trial_checkbox.deselect()
        self.one_semester_checkbox.deselect()
        self.two_semesters_checkbox.deselect()