You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web/Documents/Diagramme/DiagrammeDeClasses/README_DIAGRAMME.md

4.4 KiB

retour au README.md
Retour aux Documents
Retour au diagramme de classes

Diagramme de classe

@startuml
class User {
    - id: int
    - username: String
    - nom: string
    - prenom: string
    - email: string
    - motDePasse: string
    - sexe: string
    - taille: float
    - poids: float
    - dateNaissance: \DateTime
    + getId(): int
    + getUsername(): string
    + setUsername(string $username): void
    + setId(int $id): void
    + getNom(): string
    + setNom(string $nom): void
    + getPrenom(): string
    + setPrenom(string $prenom): void
    + getEmail(): string
    + setEmail(string $email): void
    + getMotDePasse(): string
    + setMotDePasse(string $motDePasse): void
    + getSexe(): string
    + setSexe(string $sexe): void
    + getTaille(): float
    + setTaille(float $taille): void
    + getPoids(): float
    + setPoids(float $poids): void
    + getDateNaissance(): \DateTime
    + setDateNaissance(\DateTime $dateNaissance): void
    + getRole(): Role
    + setRole(Role $role): void
    + addNotification($notification): void
    + deleteNotification($index): void
    + isValidPassword(string $password): bool
    + __toString(): string
}
abstract class Role {
    - id: int
    - usersRequests: array
    + getUsersList(): array
    + getUsersRequests(): array
    + addUsersRequests(RelationshipRequest $request): void
    + removeRequest(RelationshipRequest $req): bool
    + CheckAdd(User $user): bool
    + addUser(User $user): bool
    + removeUser(User $user): bool
    + addTraining(Training $training): bool
    + getTrainingsList(): array
}
abstract class Coach extends Role {
}
class CoachAthlete extends Coach {
    + CheckAdd(User $user): bool
}
class Athlete extends Role {
    + getActivities(): array
    + addActivity(Activity $myActivity): bool
    + CheckAdd(User $user): bool
}
class Activite {
    - idActivity: int
    - type: String
    - date: \DateTime
    - heureDebut: \DateTime
    - heureFin: \DateTime
    - effortRessenti: int
    - variability: float
    - variance: float
    - standardDeviation: float
    - average: int
    - maximum: int
    - minimum: int
    - avrTemperature: float
    - hasAutoPause: bool
    + getIdActivity(): int
    + getType(): String
    + getDate(): \DateTime
    + getHeureDebut(): \DateTime
    + getHeureFin(): \DateTime
    + getEffortRessenti(): int
    + getVariability(): float
    + getVariance(): float
    + getStandardDeviation(): float
    + getAverage(): float
    + getMaximum(): int
    + getMinimum(): int
    + getAvrTemperature(): float
    + setType(String $type): void
    + setEffortRessenti(int $effortRessenti): void
    + __toString(): String
}
class Notification {
    - type: string
    - message: string
    - toUserId: int
    + getType(): string
    + setType(string $type): void
    + getMessage(): string
    + setMessage(string $message): void
    + getToUserId(): int
    + setToUserId(int $toUserId): void
    + __construct(int $toUserId,string $type, string $message)
    + __toString(): string
}
class Entrainement {
    - idTraining: int
    - date: \DateTime
    - latitude: float
    - longitude: float
    - description: String
    - feedback: String
    + getId(): int
    + getDate(): \DateTime
    + getLocation(): String
    + getDescription(): String
    + getFeedback(): String
    + __toString(): String
}
class Statistique {
    - idStat: int
    - distanceTotale: float
    - poids: float
    - tempsTotal: time
    - FCmoyenne: int
    - FCmin: int
    - FCmax: int
    - cloriesBrulees: int
    + getIdStat(): int
    + getDistanceTotale(): float
    + getPoids(): float
    + getTempsTotal(): time
    + getFCmoyenne(): int
    + getFCmin(): int
    + getFCmax(): int
    + getCloriesBrulees(): int
    + __toString(): String
}
class SourceDonnees {
    - idSource: int
    - nom: String
    - type: String
    - precision: enum
    - dateDerniereUtilisation: \DateTime
    + getIdSource(): int
    + getNom(): String
    + getType(): String
    + getPrecision(): enum
    + getDateDerniereUtilisation(): \DateTime
    + __toString(): String
}
User -> Role : role
Role -> User : usersList
Athlete -> Statistique : statsList
Athlete -> Activite : activityList
Athlete -> SourceDonnees : sdList
User -> Notification : notificationList
User -> Entrainement : trainingsList
Activite -> SourceDonnees : maSource
@enduml