masterdid2022 / sopra-project-lhd Goto Github PK
View Code? Open in Web Editor NEWA small project of software engineering, aiming to recreate a planning app
License: GNU General Public License v2.0
A small project of software engineering, aiming to recreate a planning app
License: GNU General Public License v2.0
as of now slotDao use string to manipulate the timerange we should try to find a better way
To begin complete the user story we need an HMI
Admin should have an unique idea
lhd=# \d+ admins
Table "public.admins"
Column | Type | Collation | Nullable | Default | Storage | Compression | Stats target | Description
----------+-------------------+-----------+----------+------------------------------+----------+-------------+--------------+-------------
id | bigint | | not null | generated always as identity | plain | | |
name | character varying | | not null | | extended | | |
fname | character varying | | not null | | extended | | |
email | email | | not null | | extended | | |
password | character varying | | not null | | extended | | |
dpt | character varying | | | | extended | | |
Indexes:
"admins_lower_email_key" UNIQUE, btree (lower(email::text))
Inherits: users
Access method: heap
Repetion in subject in french/english
lhd=# \d+ subject
Table "public.subject"
Column | Type | Collation | Nullable | Default | Storage | Compression | Stats target | Description
----------------+-------------------+-----------+----------+------------------------------+----------+-------------+--------------+-------------
id | bigint | | not null | generated always as identity | plain | | |
name | character varying | | not null | | extended | | |
hour_count_max | double precision | | not null | | plain | | |
nb_heure_max | double precision | | not null | | plain | | |
Indexes:
"subject_pkey" PRIMARY KEY, btree (id)
Referenced by:
TABLE "slots" CONSTRAINT "subject_fkey" FOREIGN KEY (subject) REFERENCES subject(id)
Access method: heap```
Schedule needs to be able to get users (student / professor / admin) via mail and password, returning the correct Entity.
This makes it easy for future implementation of Auth. #47
And is needed for controller implementation #65 (right now for testing purpose, but in the long run, linking up views and facade in the auth system)
We need function to persisted Classroom,Student,Subject,Professor...
with formatting option
GetSchedule(User)
Description:
As an admin I want to read a slot
Requirement:
first implementation of edt controller and observable pattern, upon Facade Schedule #61
To begin complete the user story we need an HMI
with the return of a functional C.I, we should erase every code smell and go the green again !
with adminDAO @beforeach
and unification of factory with Of
for entities and getInstance
for DAO
To realize the second User Story #20 we need to be able to add a Slot(done with #51) but also connect
this slot to associative table(Group_slot,Professor_slot).
To my mind we have two possibility:
public void save ( Slot slot, Student student ) throws SQLException
public void save ( Slot slot , Student student, Professor professor) throws SQLException
public static addSlot ( Slot slot, Student student )
public void addSlot ( Slot slot , Student student, Professor professor)
I prefer the first one but the second would also make sense to me.
public class Student extends User
private List<Group> studendGroup;
*******************************************
public class Group
private long id;
private final String name;
private List<Student> students; //modify List<Student class>
The redundancy of information inside the class Student
and Group
is an issue for the #36 DAO.
Therefore we need delete the List<Student> students
inside Group
and update the DAO and the entities with this change.
We need to have docker database for our CI
As of now we only have one exception, which make the readability of our code poor.
we should try to expand the number of exception to solve this issue, here are some proposal
DAO exception:
EntityNotFound
:fail to find entityMight be because the object $ClassOfObject is not persisted see if id is greater than 0 id[$IdOfObject]
FailedToSaveEntity
:fail in savingMight be because the entity failed to satisfied an unicity constraint
FailedToUpdateEntity
:failure in updateMight be because the object $ClassOfObject is not persisted see if id is greater than 0 id[$IdOfObject] or it might be because the entity failed to satisfied an unicity constraint
FailedToLinkTwoEntity
: for join tableMight be because one if the entity is not persisted see ID1[$IdOfObject1] and ID2[$IdOfObject2]
Entity exception:
IDexception
No changeFacade exception:
EntityNotFound
because if the getter return null that's the same msgAddressException
:if the format of the email is not correct from the official java email packageSomeParameterAreNotPersisted
: if a parameter is not the databaseYou need to persisted these entity:$ListOfNotPersistedEntities
Gui exception:
-Might be contentious but I believe, None. Do you agree @anastygnome @Desmondmies
To begin complete the user story we need an HMI
Description:
As an admin I want to delete a slot
Requirement:
Currently working on getting dao slots information to show them inside ihm using the infamous MVC pattern
As User I want to connect to the software
To solve the US6 #47 we need an interface for the user to enter his credential
Need to add a little method to clear the edt grid content
, for example when switching to another week :
erase slots from grid -> populate week
And adding week date for each day
Instead of MONDAY | TUESDAY | ...
Having MONDAY 15 | TUESDAY 16 | ...
Needed Dao Interface
Description:
As an admin I want to modify a slot
Requirement:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.