45 lines
1.1 KiB
C
45 lines
1.1 KiB
C
#include <stdlib.h>
|
|
#include <stdint.h>
|
|
#include <stddef.h>
|
|
|
|
#include <models/junction_relay_schedule.h>
|
|
#include <logger.h>
|
|
#include <database.h>
|
|
|
|
int
|
|
junction_relay_schedule_insert(uint8_t weekday, int relay_id, int schedule_id)
|
|
{
|
|
int rc;
|
|
sqlite3_stmt *stmt;
|
|
|
|
sqlite3_prepare_v2(global_database, "INSERT INTO junction_relay_schedule(weekday, schedule_id, relay_id) values (?1, ?2, ?3);", -1, &stmt, NULL);
|
|
|
|
sqlite3_bind_int(stmt, 1, weekday);
|
|
sqlite3_bind_int(stmt, 2, schedule_id);
|
|
sqlite3_bind_int(stmt, 3, relay_id);
|
|
|
|
rc = sqlite3_step(stmt);
|
|
if (rc != SQLITE_DONE)
|
|
{
|
|
LOGGER_ERR("error inserting data: %s", sqlite3_errmsg(global_database));
|
|
return false;
|
|
}
|
|
|
|
sqlite3_finalize(stmt);
|
|
|
|
return true;
|
|
}
|
|
|
|
int
|
|
junction_relay_schedule_remove_for_relay(int relay_id)
|
|
{
|
|
sqlite3_stmt *stmt;
|
|
int rc;
|
|
|
|
sqlite3_prepare_v2(global_database, "DELETE FROM junction_relay_schedule WHERE relay_id=?1;", -1, &stmt, NULL);
|
|
sqlite3_bind_int(stmt, 1, relay_id);
|
|
rc = sqlite3_step(stmt);
|
|
sqlite3_finalize(stmt);
|
|
|
|
return rc == SQLITE_DONE;
|
|
}
|