New feature: m number_of_work number_of_movement marks single movements as mastered

This commit is contained in:
2023-11-08 12:46:49 +01:00
parent 488a97f3f6
commit 83c1d82387
2 changed files with 15 additions and 4 deletions

View File

@@ -32,7 +32,7 @@ class Session:
elif command == 'c':
self.resultstring += self.show_composers()
elif command == 'm':
self.resultstring += self.mark_work_as_mastered(arguments[0])
self.resultstring += self.mark_work_as_mastered(arguments)
elif command == 'n':
self.create_new_user(arguments[0], arguments[1])
self.resultstring += f'Created new user {arguments[0]} {arguments[1]}.'
@@ -104,16 +104,26 @@ class Session:
fun_resultstring += f'{work.id()}: {work.pretty_string()}\n'
return fun_resultstring
def mark_work_as_mastered(self, work_id):
def mark_work_as_mastered(self, arguments):
work_id = arguments[0]
resultstring = 'adding:\n'
work = work_under_id(work_id, self.db_agent)
for mov_number in work.values['movements'].keys():
if len(arguments) > 1:
mov_number = int(arguments[1])
sql_command = f'''
INSERT INTO is_able_to_play (work_id, mov_id, pianist_id)
VALUES ({work_id}, {mov_number}, {self.user})
'''
self.db_agent.execute(sql_command)
resultstring += f'{work.pretty_mov(mov_number)}\n'
else:
for mov_number in work.values['movements'].keys():
sql_command = f'''
INSERT INTO is_able_to_play (work_id, mov_id, pianist_id)
VALUES ({work_id}, {mov_number}, {self.user})
'''
self.db_agent.execute(sql_command)
resultstring += f'{work.pretty_mov(mov_number)}\n'
return resultstring
# End session