Pre code cleanup.

This commit is contained in:
lwark
2025-01-09 07:25:40 -06:00
parent 95ae203cc2
commit d93da3c90c
7 changed files with 76 additions and 19 deletions

View File

@@ -238,7 +238,9 @@ class BaseClass(Base):
return report
def to_dict(self):
return {k: v for k, v in self.__dict__.items() if k not in ["_sa_instance_state", "id"]}
dicto = {k: v for k, v in self.__dict__.items() if k not in ["_sa_instance_state"]}
dicto = {'id': dicto.pop('id'), **dicto}
return dicto
@classmethod
def get_pydantic_model(cls):
@@ -249,6 +251,10 @@ class BaseClass(Base):
return None
return model
@classproperty
def add_edit_tooltips(self):
return dict()
class ConfigItem(BaseClass):
"""

View File

@@ -260,7 +260,8 @@ class KitType(BaseClass):
return base_dict
@classmethod
def import_from_yml(cls, submission_type:str|SubmissionType, filepath: Path | str | None = None, import_dict: dict | None = None) -> KitType:
def import_from_yml(cls, submission_type: str | SubmissionType, filepath: Path | str | None = None,
import_dict: dict | None = None) -> KitType:
if isinstance(submission_type, str):
submission_type = SubmissionType.query(name=submission_type)
if filepath:
@@ -557,7 +558,6 @@ class Reagent(BaseClass, LogMixin):
logger.debug(f"Instance: {instance}")
return instance, new
@classmethod
@setup_lookup
def query(cls,
@@ -637,6 +637,12 @@ class Reagent(BaseClass, LogMixin):
self.__setattr__(key, field_value)
self.save()
@classproperty
def add_edit_tooltips(self):
return dict(
expiry="Use exact date on reagent.\nEOL will be calculated from kit automatically"
)
class Discount(BaseClass):
"""

View File

@@ -140,6 +140,7 @@ class Contact(BaseClass):
@classmethod
@setup_lookup
def query(cls,
id: int | None = None,
name: str | None = None,
email: str | None = None,
phone: str | None = None,
@@ -158,6 +159,12 @@ class Contact(BaseClass):
Contact|List[Contact]: Contact(s) of interest.
"""
query: Query = cls.__database_session__.query(cls)
match id:
case int():
query = query.filter(cls.id == id)
limit = 1
case _:
pass
match name:
case str():
query = query.filter(cls.name == name.title())
@@ -177,3 +184,4 @@ class Contact(BaseClass):
case _:
pass
return cls.execute_query(query=query, limit=limit)