Add update queries for variant, intent & qualit DB handlers

CURA-6096
This commit is contained in:
Jaime van Kessel 2021-08-25 13:48:25 +02:00
parent 2bef85c6c2
commit 132b863e13
3 changed files with 39 additions and 5 deletions

View file

@ -6,7 +6,17 @@ class IntentDatabaseHandler(DatabaseMetadataContainerController):
def __init__(self) -> None: def __init__(self) -> None:
super().__init__( super().__init__(
insert_query="INSERT INTO intents (id, name, quality_type, intent_category, variant, definition, material, version, setting_version) VALUES (?, ?, ? ,?, ?, ?, ?, ?, ?)", insert_query="INSERT INTO intents (id, name, quality_type, intent_category, variant, definition, material, version, setting_version) VALUES (?, ?, ? ,?, ?, ?, ?, ?, ?)",
update_query="", update_query="""UPDATE intents
SET name = ?,
quality_type = ?,
intent_category = ?,
variant = ?,
definition = ?,
material = ?,
version = ?,
setting_version = ?
WHERE id = ?
""",
select_query = "SELECT * FROM intents where id = ?", select_query = "SELECT * FROM intents where id = ?",
table_query="""CREATE TABLE intents table_query="""CREATE TABLE intents
( (
@ -23,10 +33,12 @@ class IntentDatabaseHandler(DatabaseMetadataContainerController):
CREATE UNIQUE INDEX idx_intents_id on intents (id);""" CREATE UNIQUE INDEX idx_intents_id on intents (id);"""
) )
def _convertMetadataToUpdateBatch(self, metadata):
return self._convertMetadataToInsertBatch(metadata)[1:]
def _convertRawDataToMetadata(self, data): def _convertRawDataToMetadata(self, data):
return {"id": data[0], "name": data[1], "quality_type": data[2], "intent_category": data[3], "variant": data[4], "definition": data[5], "container_type": InstanceContainer, "material": data[6], "version": data[7], "setting_version": data[8], "type": "intent"} return {"id": data[0], "name": data[1], "quality_type": data[2], "intent_category": data[3], "variant": data[4], "definition": data[5], "container_type": InstanceContainer, "material": data[6], "version": data[7], "setting_version": data[8], "type": "intent"}
def _convertMetadataToInsertBatch(self, metadata): def _convertMetadataToInsertBatch(self, metadata):
return metadata["id"], metadata["name"], metadata["quality_type"], metadata["intent_category"], metadata[ return metadata["id"], metadata["name"], metadata["quality_type"], metadata["intent_category"], metadata[
"variant"], metadata["definition"], metadata["material"], metadata["version"], metadata["setting_version"] "variant"], metadata["definition"], metadata["material"], metadata["version"], metadata["setting_version"]

View file

@ -6,7 +6,17 @@ class QualityDatabaseHandler(DatabaseMetadataContainerController):
def __init__(self) -> None: def __init__(self) -> None:
super().__init__( super().__init__(
insert_query = "INSERT INTO qualities (id, name, quality_type, material, variant, global_quality, definition, version, setting_version) VALUES (?, ?, ? ,?, ?, ?, ?, ?, ?)", insert_query = "INSERT INTO qualities (id, name, quality_type, material, variant, global_quality, definition, version, setting_version) VALUES (?, ?, ? ,?, ?, ?, ?, ?, ?)",
update_query = "", 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 = ?", select_query = "SELECT * FROM qualities where id = ?",
table_query = """CREATE TABLE qualities table_query = """CREATE TABLE qualities
( (
@ -23,6 +33,9 @@ class QualityDatabaseHandler(DatabaseMetadataContainerController):
CREATE UNIQUE INDEX idx_qualities_id on qualities (id);""" CREATE UNIQUE INDEX idx_qualities_id on qualities (id);"""
) )
def _convertMetadataToUpdateBatch(self, metadata):
return self._convertMetadataToInsertBatch(metadata)[1:]
def _convertRawDataToMetadata(self, data): def _convertRawDataToMetadata(self, data):
return {"id": data[0], "name": data[1], "quality_type": data[2], "material": data[3], "variant": data[4], 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, "global_quality": data[5], "definition": data[6], "container_type": InstanceContainer,

View file

@ -6,7 +6,14 @@ class VariantDatabaseHandler(DatabaseMetadataContainerController):
def __init__(self) -> None: def __init__(self) -> None:
super().__init__( super().__init__(
insert_query= "INSERT INTO variants (id, name, hardware_type, definition, version, setting_version) VALUES (?, ?, ?, ?, ?, ?)", insert_query= "INSERT INTO variants (id, name, hardware_type, definition, version, setting_version) VALUES (?, ?, ?, ?, ?, ?)",
update_query= "", update_query="""UPDATE variants
SET name = ?,
hardware_type = ?,
definition = ?,
version = ?,
setting_version = ?
WHERE id = ?
""",
select_query= "SELECT * FROM variants where id = ?", select_query= "SELECT * FROM variants where id = ?",
table_query="""CREATE TABLE variants table_query="""CREATE TABLE variants
( (
@ -20,10 +27,12 @@ class VariantDatabaseHandler(DatabaseMetadataContainerController):
CREATE UNIQUE INDEX idx_variants_id on variants (id);""" CREATE UNIQUE INDEX idx_variants_id on variants (id);"""
) )
def _convertMetadataToUpdateBatch(self, metadata):
return self._convertMetadataToInsertBatch(metadata)[1:]
def _convertRawDataToMetadata(self, data): def _convertRawDataToMetadata(self, data):
return {"id": data[0], "name": data[1], "hardware_type": data[2], "definition": data[3], "container_type": InstanceContainer, "version": data[4], "setting_version": data[5], "type": "variant"} return {"id": data[0], "name": data[1], "hardware_type": data[2], "definition": data[3], "container_type": InstanceContainer, "version": data[4], "setting_version": data[5], "type": "variant"}
def _convertMetadataToInsertBatch(self, metadata): def _convertMetadataToInsertBatch(self, metadata):
return metadata["id"], metadata["name"], metadata["hardware_type"], metadata["definition"], metadata["version"], \ return metadata["id"], metadata["name"], metadata["hardware_type"], metadata["definition"], metadata["version"], \
metadata["setting_version"] metadata["setting_version"]