From a691e2a95292a5b4890753e02aea857240dbe9d2 Mon Sep 17 00:00:00 2001 From: anperederi Date: Thu, 21 Dec 2023 21:34:49 +0100 Subject: [PATCH] add activity analyze --- .../src/app/controller/AthleteController.php | 25 ++----- .../views/Templates/page/activity.html.twig | 5 +- .../views/Templates/page/analyze.html.twig | 74 +++++++++++++------ .../views/Templates/page/exercice.html.twig | 2 +- .../src/data/core/database/AnalyzeMapper.php | 2 + .../core/database/data/frequenceCardiaque.sql | 21 ++++++ 6 files changed, 81 insertions(+), 48 deletions(-) create mode 100644 Sources/src/data/core/database/data/frequenceCardiaque.sql diff --git a/Sources/src/app/controller/AthleteController.php b/Sources/src/app/controller/AthleteController.php index 4a317ec6..98428a80 100644 --- a/Sources/src/app/controller/AthleteController.php +++ b/Sources/src/app/controller/AthleteController.php @@ -121,8 +121,8 @@ class AthleteController extends BaseController return $response; } - #[Route(path: '/analyze/{id}', name: 'analyze_details', methods: ['GET'])] - public function activityDetails(): Response + #[Route(path: '/analyze', name: 'analyze_details', methods: ['GET'])] + public function activityDetails(int $id): Response { try { // Utilisez $id pour récupérer les détails de l'activité depuis la base de données @@ -130,29 +130,16 @@ class AthleteController extends BaseController // $activityEntity = $activityGateway->getActivityById($id); // Assurez-vous d'avoir une méthode similaire dans votre gateway $analyzeGateway = new AnalyzeGateway(new Connexion(DSN, DB_USER, DB_PASSWORD)); - $analyzeEntity = $analyzeGateway->getFrequenceCardiaque(); + $analyzeEntity = $analyzeGateway->getFrequenceCardiaqueByIdActivity($id); -// $map = new ActivityMapper(); -// $activityModel = $map->activityEntityToModel($activityEntity); - Log::dd($analyzeEntity); - -// $listAnalyze = []; -// foreach ($analyzeEntity as $entity) { -// $user = $map->athleteEntityToModel($entity); -// $listUsers[] = ['idathlete' => number_format($user->getId(), 1), 'nom' => $user->getNom(), -// 'prenom' => $user->getPrenom(),'email' => $user->getEmail(), 'sexe' => $user->getSexe(), -// 'taille' => $user->getTaille(), 'poids' => $user->getPoids(), 'motdepasse' => $user->getMotDePasse(), -// 'datenaissance' => $user->getDateNaissance(), 'iscoach' => $user->getRole(), 'img' => 'test', -// 'username' => $user->getUsername()]; -// } - - $response = $this->render('./page/activity_details.html.twig', [ + $response = $this->render('./page/analyze.html.twig', [ 'css' => $this->preference->getCookie(), 'pp' => "test2", 'user' => 'johndoe',//$currentUser->getUsername(), 'role' => 'Athlete',//$currentUser->getRole(), 'friendship' => [], 'activity' => [], + 'analyzes' => $analyzeEntity, ]); } catch (\Throwable $th) { throw $th; @@ -211,7 +198,7 @@ class AthleteController extends BaseController $listActivity = []; foreach ($activityGateway as $entity) { $activity = $map->activityEntityToModel($entity); - $listActivity[] = ['idactivity' => number_format($activity->getIdActivity(), 1), 'type' => $activity->getType(), + $listActivity[] = ['idactivity' => number_format($activity->getIdActivity()), 'type' => $activity->getType(), 'date' => $activity->getDate()->format("D j F Y"), 'heureDebut' => $activity->getHeureDebut()->format("H\h i"), 'heureFin' => $activity->getHeureFin()->format("H\h i"), 'effortRessenti' => $activity->getEffortRessenti(), 'variabilite' => $activity->getVariability(), 'variance' => $activity->getVariance(), 'ecartType' => $activity->getStandardDeviation(), 'moyenne' => $activity->getAverage(), diff --git a/Sources/src/app/views/Templates/page/activity.html.twig b/Sources/src/app/views/Templates/page/activity.html.twig index cf855441..89e9607b 100644 --- a/Sources/src/app/views/Templates/page/activity.html.twig +++ b/Sources/src/app/views/Templates/page/activity.html.twig @@ -67,10 +67,7 @@ {{analyze.max}} Bpm {{analyze.min}} Bpm {{analyze.temperature}} °C - {{ analyze.effortRessenti }} -{# En savoir plus#} - En savoir plus -{# En savoir plus#} + En savoir plus {% endfor %} diff --git a/Sources/src/app/views/Templates/page/analyze.html.twig b/Sources/src/app/views/Templates/page/analyze.html.twig index a2167c03..e1d4a5bb 100755 --- a/Sources/src/app/views/Templates/page/analyze.html.twig +++ b/Sources/src/app/views/Templates/page/analyze.html.twig @@ -14,34 +14,60 @@ -
-
-
- Type : - Intensité : - Date : - -
-
- {% for analyze in analyzes %} + + - - - - - - - - - - - - - + + + + + + + + + - {% endfor %} + + {% for analyze in analyzes %} + + + + + + + + + + + + + + {% endfor %} +
{{analyze.date}}{{analyze.heureDebut}}{{analyze.heureFin}}{{analyze.type}}{{analyze.effortRessenti}}{{analyze.variabilite}}{{analyze.variance}}{{analyze.ecartType}}{{analyze.moyenne}} Bpm{{analyze.max}} Bpm{{analyze.min}} Bpm{{analyze.temperature}} °CHomeid FCaltitudetempsTemperaturebpmlongitudelatitudeactiviteid
{{analyze.idfc}}{{analyze.altitude}}{{analyze.temps}}{{analyze.temperature}}{{analyze.bpm}}{{analyze.longitude}}{{analyze.latitude}}{{analyze.activiteid}}Home
+
+
+ +
diff --git a/Sources/src/app/views/Templates/page/exercice.html.twig b/Sources/src/app/views/Templates/page/exercice.html.twig index 371a3317..07b08632 100755 --- a/Sources/src/app/views/Templates/page/exercice.html.twig +++ b/Sources/src/app/views/Templates/page/exercice.html.twig @@ -21,7 +21,7 @@
-
+
diff --git a/Sources/src/data/core/database/AnalyzeMapper.php b/Sources/src/data/core/database/AnalyzeMapper.php index 6adc7733..33077162 100644 --- a/Sources/src/data/core/database/AnalyzeMapper.php +++ b/Sources/src/data/core/database/AnalyzeMapper.php @@ -2,6 +2,8 @@ namespace Database; +use Shared\Log; + class AnalyzeMapper { public function analyzeSqlToEntity(array $data):array diff --git a/Sources/src/data/core/database/data/frequenceCardiaque.sql b/Sources/src/data/core/database/data/frequenceCardiaque.sql new file mode 100644 index 00000000..a602a401 --- /dev/null +++ b/Sources/src/data/core/database/data/frequenceCardiaque.sql @@ -0,0 +1,21 @@ +INSERT INTO FrequenceCardiaque VALUES(1, 100, '08:15:00', 15, 130, 45.75771709151474, 3.113484980409329, 1); +INSERT INTO FrequenceCardiaque VALUES + (2, ROUND(RANDOM() * 10 + 90), '08:16:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75772709151474, 3.113494980409329, 1), + (3, ROUND(RANDOM() * 10 + 90), '08:17:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75773709151474, 3.113504980409329, 1), + (4, ROUND(RANDOM() * 10 + 90), '08:18:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75774709151474, 3.113514980409329, 1), + (5, ROUND(RANDOM() * 10 + 90), '08:19:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75775709151474, 3.113524980409329, 1), + (6, ROUND(RANDOM() * 10 + 90), '08:20:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75776709151474, 3.113534980409329, 1), + (7, ROUND(RANDOM() * 10 + 90), '08:21:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75777709151474, 3.113544980409329, 1), + (8, ROUND(RANDOM() * 10 + 90), '08:22:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75778709151474, 3.113554980409329, 1), + (9, ROUND(RANDOM() * 10 + 90), '08:23:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75779709151474, 3.113564980409329, 1), + (10, ROUND(RANDOM() * 10 + 90), '08:24:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75780709151474, 3.113574980409329, 1), + (11, ROUND(RANDOM() * 10 + 90), '08:25:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75781709151474, 3.113584980409329, 1), + (12, ROUND(RANDOM() * 10 + 90), '08:26:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75782709151474, 3.113594980409329, 1), + (13, ROUND(RANDOM() * 10 + 90), '08:27:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75783709151474, 3.113604980409329, 1), + (14, ROUND(RANDOM() * 10 + 90), '08:28:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75784709151474, 3.113614980409329, 1), + (15, ROUND(RANDOM() * 10 + 90), '08:29:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75785709151474, 3.113624980409329, 1), + (16, ROUND(RANDOM() * 10 + 90), '08:30:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75786709151474, 3.113634980409329, 1), + (17, ROUND(RANDOM() * 10 + 90), '08:31:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75787709151474, 3.113644980409329, 1), + (18, ROUND(RANDOM() * 10 + 90), '08:32:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75788709151474, 3.113654980409329, 1), + (19, ROUND(RANDOM() * 10 + 90), '08:33:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75789709151474, 3.113664980409329, 1), + (20, ROUND(RANDOM() * 10 + 90), '08:34:00', ROUND(RANDOM() * 5 + 10), ROUND(RANDOM() * 20 + 110), 45.75790709151474, 3.113674980409329, 1); \ No newline at end of file