From 36cc33f9e96a38ecea98ac8d26275b4828347d80 Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Sat, 1 Jul 2023 23:13:13 +0200 Subject: Moved the nodejs agent to its own subfolder to make room for my haskell agent --- database/ships.js | 82 ------------------------------------------------------- 1 file changed, 82 deletions(-) delete mode 100644 database/ships.js (limited to 'database/ships.js') diff --git a/database/ships.js b/database/ships.js deleted file mode 100644 index 0220be6..0000000 --- a/database/ships.js +++ /dev/null @@ -1,82 +0,0 @@ -import db from './db.js'; - -const getShipStatement = db.prepare(`SELECT data FROM ships WHERE data->>'symbol' = ?;`); -const setShipStatement = db.prepare(`INSERT INTO ships(data, updated) VALUES (json(?), ?);`); -const setShipCargoStatement = db.prepare(`UPDATE ships SET data = (SELECT json_set(data, '$.cargo', json(:cargo)) FROM ships WHERE data->>'symbol' = :symbol), updated = :date WHERE data->>'symbol' = :symbol;`); -const setShipFuelStatement = db.prepare(`UPDATE ships SET data = (SELECT json_set(data, '$.fuel', json(:fuel)) FROM ships WHERE data->>'symbol' = :symbol), updated = :date WHERE data->>'symbol' = :symbol;`); -const setShipNavStatement = db.prepare(`UPDATE ships SET data = (SELECT json_set(data, '$.nav', json(:nav)) FROM ships WHERE data->>'symbol' = :symbol), updated = :date WHERE data->>'symbol' = :symbol;`); -const updateShipStatement = db.prepare(`UPDATE ships SET data = json(:data), updated = :date WHERE data->>'symbol' = :symbol;`); - -export function getShip(symbol) { - try { - const data = getShipStatement.get(symbol); - if (data === undefined) { - return null; - } - return JSON.parse(data.data); - } catch (err) { - console.log(err); - return null; - } -} - -export function setShip(data) { - if (getShip(data.symbol) === null) { - try { - return setShipStatement.run(JSON.stringify(data), new Date().toISOString()).lastInsertRowid; - } catch (err) { - console.log(err); - return null; - } - } else { - try { - return updateShipStatement.run({ - data: JSON.stringify(data), - date: new Date().toISOString(), - symbol: data.symbol, - }).changes; - } catch (err) { - console.log(err); - return null; - } - } -} - -export function setShipCargo(symbol, cargo) { - try { - setShipCargoStatement.run({ - cargo: JSON.stringify(cargo), - date: new Date().toISOString(), - symbol: symbol, - }).changes; - } catch (err) { - console.log(err); - return null; - } -} - -export function setShipFuel(symbol, fuel) { - try { - setShipFuelStatement.run({ - date: new Date().toISOString(), - fuel: JSON.stringify(fuel), - symbol: symbol, - }).changes; - } catch (err) { - console.log(err); - return null; - } -} - -export function setShipNav(symbol, nav) { - try { - setShipNavStatement.run({ - date: new Date().toISOString(), - nav: JSON.stringify(nav), - symbol: symbol, - }).changes; - } catch (err) { - console.log(err); - return null; - } -} -- cgit v1.2.3