diff --git a/src/murfey/server/feedback.py b/src/murfey/server/feedback.py index 288f3926f..d91f54a80 100644 --- a/src/murfey/server/feedback.py +++ b/src/murfey/server/feedback.py @@ -241,6 +241,8 @@ def _2d_class_murfey_ids(particles_file: str, app_id: int, _db) -> Dict[str, int db.Class2D.particles_file == particles_file and db.Class2D.pj_id == pj_id ) ).all() + if not classes: + raise ValueError(f"No 2D classification IDs found for {particles_file}") return {str(cl.class_number): cl.murfey_id for cl in classes} @@ -256,6 +258,8 @@ def _3d_class_murfey_ids(particles_file: str, app_id: int, _db) -> Dict[str, int and db.Class3D.pj_id == pj_id ) ).all() + if not classes: + raise ValueError(f"No 3D classification IDs found for {particles_file}") return {str(cl.class_number): cl.murfey_id for cl in classes} @@ -623,7 +627,9 @@ def _register_incomplete_2d_batch(message: dict, _db, demo: bool = False): ) _db.add(class2d_params) _db.commit() - murfey_ids = _murfey_id(message["program_id"], _db, number=50) + murfey_ids = _murfey_id( + message["program_id"], _db, number=default_spa_parameters.nr_classes_2d + ) _murfey_class2ds( murfey_ids, class2d_message["particles_file"], message["program_id"], _db ) @@ -747,7 +753,9 @@ def _register_complete_2d_batch(message: dict, _db, demo: bool = False): _db.add(class2d_params) _db.commit() _db.close() - murfey_ids = _murfey_id(_app_id(pj_id, _db), _db, number=50) + murfey_ids = _murfey_id( + _app_id(pj_id, _db), _db, number=default_spa_parameters.nr_classes_2d + ) _murfey_class2ds( murfey_ids, class2d_message["particles_file"], _app_id(pj_id, _db), _db ) @@ -796,7 +804,13 @@ def _register_complete_2d_batch(message: dict, _db, demo: bool = False): else: class_uuids = { str(i + 1): m - for i, m in enumerate(_murfey_id(_app_id(pj_id, _db), _db, number=50)) + for i, m in enumerate( + _murfey_id( + _app_id(pj_id, _db), + _db, + number=default_spa_parameters.nr_classes_2d, + ) + ) } class2d_grp_uuid = _murfey_id(_app_id(pj_id, _db), _db)[0] zocalo_message: dict = { @@ -865,7 +879,13 @@ def _register_complete_2d_batch(message: dict, _db, demo: bool = False): else: class_uuids = { str(i + 1): m - for i, m in enumerate(_murfey_id(_app_id(pj_id, _db), _db, number=50)) + for i, m in enumerate( + _murfey_id( + _app_id(pj_id, _db), + _db, + number=default_spa_parameters.nr_classes_2d, + ) + ) } class2d_grp_uuid = _murfey_id(_app_id(pj_id, _db), _db)[0] zocalo_message = {