Deleting device_skill if exist a row with a given device_id and skill_id

pull/99/head
Matheus Lima 2019-04-03 09:27:42 -03:00
parent a2f542f235
commit 5ba16147eb
3 changed files with 15 additions and 0 deletions

View File

@ -17,3 +17,13 @@ class DeviceSkillRepository(RepositoryBase):
)
)
self.cursor.insert(db_request)
def delete(self, device_id, skill_id):
db_request = self._build_db_request(
sql_file_name='delete_device_skill.sql',
args=dict(
device_id=device_id,
skill_id=skill_id
)
)
self.cursor.delete(db_request)

View File

@ -101,6 +101,7 @@ class SkillRepository(RepositoryBase):
settings_display = json.dumps(skill)
skill_settings_display_id = SettingsDisplayRepository(self.db).add(skill_id, settings_display)
settings_value = json.dumps(settings_value)
DeviceSkillRepository(self.db).delete(device_id, skill_id)
DeviceSkillRepository(self.db).add(device_id, skill_id, skill_settings_display_id, settings_value)
return skill_id

View File

@ -0,0 +1,4 @@
DELETE FROM
device.device_skill
WHERE
device_id = %(device_id)s AND skill_id = %(skill_id)s