Create method for exercises of a training

This commit is contained in:
pro100ton 2025-01-15 23:25:26 +03:00
parent e648edb262
commit 1f067d71d7
2 changed files with 15 additions and 3 deletions

View file

@ -1,4 +1,4 @@
from sqlalchemy import create_engine, insert
from sqlalchemy import create_engine, insert, select
from sqlalchemy.engine.base import Engine
from datetime import date
from dbapi.tables import training, exercise, approach
@ -51,6 +51,15 @@ class ExerciseRepository(DatabaseInterfasesMixin):
conn.commit()
return inserted_entry_pk
def get_exercises_from_training(self, training_pk: int):
"""Method for getting rows of exercises, linked to training by its PK
Args:
training_pk: Training table primary key
"""
statement = select(exercise).where(exercise.c.Training == training_pk)
print(f"Exercises SQL statement: {statement}")
class ApproachRepository(DatabaseInterfasesMixin):
"""Approach table repository"""

View file

@ -4,7 +4,7 @@ import os
from typing import Dict, List
from sqlalchemy import Table, create_engine, text, insert
from dotenv import load_dotenv
from dbapi.connector import ApproachRepository, ExerciseRepository, TrainingRepository
from dbapi.repositories import ApproachRepository, ExerciseRepository, TrainingRepository
from dbapi.tables import metadata_obj, training, exercise, approach
from obsidian.notes_parser import parse_training_data, remap_unique_exercises
from apple.notes_parser import parse_training_data as apple_parse_training_data
@ -60,7 +60,6 @@ for train in trainings:
if not train:
continue
else:
print("-------------------------\n" * 2)
print(train)
new_training_pk: int = TrainingRepository(engine).create_training(train.date)
for exr in train.exercises:
@ -73,6 +72,10 @@ for train in trainings:
exercise_pk=new_exercise_pk, weight=appr.weight, reps=appr.reps
)
print("-------------------------\n" * 2)
print("-------------------------\n" * 2)
ExerciseRepository(engine=engine).get_exercises_from_training(1)
# -----
# Calculating unique exercises for obsidian