1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- from UM.Settings.DatabaseContainerMetadataController import DatabaseMetadataContainerController
- from UM.Settings.InstanceContainer import InstanceContainer
- class QualityDatabaseHandler(DatabaseMetadataContainerController):
- def __init__(self) -> None:
- super().__init__(
- insert_query = """ INSERT INTO qualities (id, name, quality_type, material, variant, global_quality, definition, version, setting_version)
- VALUES (?, ?, ? ,?, ?, ?, ?, ?, ?)""",
- update_query = """ UPDATE qualities
- SET name = ?,
- quality_type = ?,
- material = ?,
- variant = ?,
- global_quality = ?,
- definition = ?,
- version = ?,
- setting_version = ?
- WHERE id = ?
- """,
- select_query = "SELECT * FROM qualities WHERE id = ?",
- delete_query = "DELETE FROM qualities WHERE id = ?",
- table_query = """CREATE TABLE qualities
- (
- id text,
- name text,
- quality_type text,
- material text,
- variant text,
- global_quality bool,
- definition text,
- version text,
- setting_version text
- );
- CREATE UNIQUE INDEX idx_qualities_id on qualities (id);"""
- )
- def _convertMetadataToUpdateBatch(self, metadata):
- return self._convertMetadataToInsertBatch(metadata)[1:]
- def _convertRawDataToMetadata(self, data):
- return {"id": data[0], "name": data[1], "quality_type": data[2], "material": data[3], "variant": data[4],
- "global_quality": data[5], "definition": data[6], "container_type": InstanceContainer,
- "version": data[7], "setting_version": data[8], "type": "quality"}
- def _convertMetadataToInsertBatch(self, metadata):
- global_quality = False
- if "global_quality" in metadata:
- global_quality = metadata["global_quality"]
- material = ""
- if "material" in metadata:
- material = metadata["material"]
- variant = ""
- if "variant" in metadata:
- variant = metadata["variant"]
- return metadata["id"], metadata["name"], metadata["quality_type"], material, variant, global_quality, metadata["definition"], metadata["version"], metadata["setting_version"]
|