Uoft -Zeitplanerator
Beschreibung
Der Uoft -Zeitplan für den Zeitplan ist darauf abzielt, den besten Universitätszeitplatable für alle UOFT -Studenten zu erstellen. Ausgestattet mit dem genauesten genetischen Algorithmus können die besten Zeitpläne basierend auf den Einstellungen des Benutzers erstellen, z.
Das UOFT -Timetable Generator -Projekt ist ein volles Stack -Webentwicklungsprojekt. Es besteht aus mehreren Komponenten: der Web -Scrapper, der SQL -Datenbank -Infrustruktur, der Datenmodelle, der Bibliothek der Zeitplaner, der genetischen Algorithmus -Analysator, der C# -WEB -API und einer winkeligen JS -Web -End -Webanwendung.
Inhaltsverzeichnis
- Vorgehensweise
- Installation
- Verwendung
- Credits
- Lizenz
Vorgehensweise dieses Projekts
Dieses Projekt besteht aus mehreren Komponenten, die jeweils für die Ausführung einer bestimmten Aufgabe verantwortlich sind, um die besten Zeitpläne zu erhalten. Das Bild unten zeigt die Systemarchitektur des Projekts.
Benutzer verwenden die Front-End-Webanwendung, um ihre Zeitpläne zu generieren. Auf der Homepage müssen sie zunächst die Kurse angeben, die sie belegen werden.
Wenn Sie die ersten drei Buchstaben des Kurscode in der Suchleiste eingeben, werden die relevanten verfügbaren Kurse angezeigt.
Klicken Sie nach Auswahl der Kurse auf die Schaltfläche "Zeitpläne generieren". Anschließend werden der Server angerufen, um die Zeitpläne zu generieren und zur Seite "Timetables" zu navigieren. Die generierten Zeitpläne werden in Symbolen wie dem Bild unten angezeigt.
Darüber hinaus können Benutzer Beschränkungen und Vorlieben angeben, um ihre Zeitpläne auf ihre Bedürfnisse anzupassen. Dies geschieht durch Klicken auf die Schaltfläche Einstellungen oder Einschränkungen oben auf der Seite. Das Panel/Beschränkungsbereich wird angezeigt, in dem die Optionen der Benutzer angezeigt werden. Die Anwendung ihrer neuen Beschränkungen/Vorlieben wird ihre Zeitpläne regeneriert.
Benutzer können ihre bevorzugten Zeitpläne anzeigen, drucken und ein Lesezeichen versetzen, indem sie auf einen der generierten Zeitpläne klicken.
Installation
Erforderliche Programme und Tools:
- MS SQL Server auf einem Computer (Optional: SQL Server Management Studio)
- Visual Studio
Richten Sie die Datenbank ein
- Installieren Sie MS SQL Server auf einem Computer
- Richten Sie eine neue Datenbank ein, um die Uoft -Daten zu speichern
- Öffnen Sie die Eigenschaften der Uoft -Datenbankprojekte in Visual Studio und bearbeiten Sie die Verbindungszeichenfolge so, dass sie mit Ihrer neu erstellten Datenbank verlinkt wird
- Wählen Sie die Einstellung neuer Datenbank in den Build -Einstellungen der UOFT -Datenbankprojekteigenschaften aus (so dass die relationale Datenbankstruktur in Ihrer neuen Datenbank erstellt wird).
- Führen Sie das UOFT -Datenbankprojekt aus, indem Sie es als Startprojekt einstellen und F5 drücken.
Richten Sie den Web -Scrapper ein und erhalten Sie die neuesten Uoft -Daten:
- Stellen Sie sicher, dass der Projekt -Web -Scrapper über die neuesten Nuget -Pakete verfügt:
- HTML Agility Pack
- Selenium Webdriver
- Selenunterstützung
- Stellen Sie sicher, dass der Chromtreiber (chromedriver.exe) unter dem Ordner in das Ausgangsverzeichnis kopiert wird: Selenium/Web -Treiber
- Bearbeiten Sie die Verbindungszeichenfolge der uoft.dbml -Datei, damit alle Aktualisierungen/Löschungen in die Datenbank in Ihre Datenbank vorgenommen werden.
- Führen Sie es aus, indem Sie den Projekt- Web-Scrapper als Startprojekt auswählen, und führen Sie es aus. HINWEIS: Es dauert eine Weile, bis die Daten aus dem Web abgeschrub.
Richten Sie das Projekt für Datenmodelle ein
- Ändern Sie die Verbindungszeichenfolge in der Datei uoft.dbml in Ihre Datenbank.
- Erstellen Sie das Projekt, indem Sie es als Startprojekt festlegen und F5 drücken.
Ausführen der Web -API und der Angular JS -App auf der lokalen Maschine
- Öffnen Sie den Solutions Explorer in Visual Studio.
- Klicken Sie mit der rechten Maustaste auf die Lösung und wählen Sie Eigenschaften .
- Konfigurieren Sie das Startprojekt so, dass es sowohl die Web-API als auch das Webseitenprojekt ausführt.
- Speichern Sie die Änderungen.
- Leiten Sie die Projekte schließlich durch, indem Sie F5 drücken. Es sollten zwei Webseiten angezeigt werden: die Webseite von der Web-API und die Webseite zur Front-End-Anwendung.
Verwendung
Bitte beachten Sie, dass dieses Projekt für Bildungszwecke verwendet wird und nicht kommerziell verwendet werden soll. Wir haften nicht für Schäden/Änderungen, die dieses Projekt vorgenommen haben.
Credits
Emilio Kartono, der das gesamte Projekt gemacht hat.
Lizenz
Dieses Projekt ist nach der GNU -Lizenz geschützt. Weitere Informationen finden Sie in der Lizenz.txt.