From 5f4e7eeef59ebe2ca506b70b80292f77dcf668a9 Mon Sep 17 00:00:00 2001 From: mcllerena Date: Thu, 4 Dec 2025 13:08:41 -0700 Subject: [PATCH 1/3] fix: include battery collection enum to defaults --- src/plexosdb/enums.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/plexosdb/enums.py b/src/plexosdb/enums.py index 308d878..0c780b8 100644 --- a/src/plexosdb/enums.py +++ b/src/plexosdb/enums.py @@ -145,9 +145,14 @@ def str2enum(string: str, schema_enum: type[Enum] = Schema) -> Schema | None: def get_default_collection(class_enum: ClassEnum) -> CollectionEnum: """Return default collection for class.""" - # Special case for Data File - if class_enum == ClassEnum.DataFile: - return CollectionEnum.DataFiles + # Special cases for Data File and Battery objects + special_cases = { + ClassEnum.DataFile: CollectionEnum.DataFiles, + ClassEnum.Battery: CollectionEnum.Batteries, + } + + if class_enum in special_cases: + return special_cases[class_enum] collection_name = f"{class_enum}s" if collection_name not in CollectionEnum.__members__: From 93d78c67f169927c2212dc5948e218c2e606bcdb Mon Sep 17 00:00:00 2001 From: mcllerena Date: Fri, 5 Dec 2025 18:19:34 -0700 Subject: [PATCH 2/3] fix: add increment to rank when having same class enum --- src/plexosdb/db.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plexosdb/db.py b/src/plexosdb/db.py index 0db38be..43135ed 100644 --- a/src/plexosdb/db.py +++ b/src/plexosdb/db.py @@ -352,7 +352,7 @@ def add_category(self, class_enum: ClassEnum, /, name: str) -> int: return self.get_category_id(class_enum, name) class_id = self.get_class_id(class_enum) - rank = self.get_category_max_id(class_enum) or 1 # Default to max rank of 1 if no category exists + rank = self.get_category_max_id(class_enum) + 1 or 1 # Default to max rank of 1 if no category exists params = (class_id, name, rank) placeholders = ", ".join("?" * len(params)) query = f"INSERT INTO {Schema.Categories.name}(class_id, name, rank) VALUES({placeholders})" From 1d55f646e5e6c348c5df2c7e29d80e4d39e48012 Mon Sep 17 00:00:00 2001 From: mcllerena Date: Fri, 5 Dec 2025 20:22:08 -0700 Subject: [PATCH 3/3] fix: run pre-commit for mypy compilation --- src/plexosdb/enums.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plexosdb/enums.py b/src/plexosdb/enums.py index 0c780b8..d4042a4 100644 --- a/src/plexosdb/enums.py +++ b/src/plexosdb/enums.py @@ -150,7 +150,7 @@ def get_default_collection(class_enum: ClassEnum) -> CollectionEnum: ClassEnum.DataFile: CollectionEnum.DataFiles, ClassEnum.Battery: CollectionEnum.Batteries, } - + if class_enum in special_cases: return special_cases[class_enum]