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.
4.7 KiB
4.7 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
- role: Role
- notifications: array
+ 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
- usersList: array
- usersRequests: array
- trainingList: 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
}
class Coach extends Role {
}
class CoachAthlete extends Coach {
+ CheckAdd(User $user): bool
}
class Athlete extends Role {
- statsList: array
- activityList: array
- dataSourcesList: array
+ 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 Notifications {
- 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
}
class RelationshipRequest {
- id: int
- fromUser: int
- toUser: int
- status: string
+ getId(): int
+ getFromUser(): int
+ getToUser(): int
+ getStatus(): string
+ __toString(): string
}
class Observable {
- observers: array
+ attachObserver(Observer $observer): void
+ detachObserver(Observer $observer): void
+ notifyObservers(): void
}
class Observer {
+ update(Observable $observable): void
}
@enduml