GradeS
GradeS is a platform where teachers can add assignments, students, grades or reports, and students can check the assignments, grades or other information.
There are 2 account types:
-
Teacher
As teacher you can:
- add/delete/update students, assignments and grades
- view students/assignments/grades paginated or filtered
- each time a grade is added/updated/deleted the student is announced by mail that contains the operation
- export reports about grades: the hardest assignment, the top of groups , etc
-
Student
As student you can:
- view all assignments
- view your grades with observations from teacher
- other information about you as student : your name, email, group, current grade, etc
First time you can register
or login if you have an account
If you are logged as student you can see all assignments or your grades
also you can check your information
If you are logged as teacher you can select what category you want to check
On students tab you can add/update/delete students or you can filter them(you can use compound filters)
On assignments tab you can add/update/delete assignments or you can filter them(you can use compound filters)
On grades tab tab you can add/update/delete grades or you can filter them(you can use compound filters) or generate reports about current grades from database
In order to successfully run this app you need a few things:
- Java 1.8
- JavaFX 8
- Jars.zip(include JARs and folder in modules)
- SQL Server (i used SQL Server Management Studio)
- Clone the GitHub repo to your computer
- Import the project in IntelliJ IDEA or any other IDE of your choice
- Import JARs
- Connect to database
The application connects to a SQL Server database that holds students, assignments, grades and accounts information. The information that it holds is as follows:
- Studenti
- idStudent
- nume
- cadruDidactic
- Teme
- numarTema
- cerinta
- deadline
- Note
- idStudent
- numarTema
- valoare
- saptamanaPredarii
- Utilizatori
- username
- pass
- prioritate
You can create this database on your own with the following SQL:
IF OBJECT_ID('Studenti', 'U') IS NOT NULL
DROP TABLE Studenti
CREATE TABLE Studenti(
idStudent INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
nume VARCHAR(255),
grupa INT,
email VARCHAR(255) UNIQUE,
cadruDidactic VARCHAR(255)
)
IF OBJECT_ID('Teme', 'U') IS NOT NULL
DROP TABLE Teme
CREATE TABLE Teme(
numarTema INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
cerinta VARCHAR(255) UNIQUE,
deadline INT
)
IF OBJECT_ID('Note', 'U') IS NOT NULL
DROP TABLE Note
CREATE TABLE Note(
idStudent INT FOREIGN KEY REFERENCES dbo.Studenti(idStudent) ON DELETE CASCADE,
numarTema INT FOREIGN KEY REFERENCES dbo.Teme(numarTema) ON DELETE CASCADE,
PRIMARY KEY (idStudent,numarTema),
valoare INT,
saptamanaPredarii INT
)
IF OBJECT_ID('Utilizatori', 'U') IS NOT NULL
DROP TABLE Utilizatori
CREATE TABLE Utilizatori(
username VARCHAR(255) PRIMARY KEY,
pass VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
prioritate VARCHAR(255) NOT NULL
)