17 lines
493 B
JavaScript
17 lines
493 B
JavaScript
import { WaterTank } from "../db/models/index.js";
|
|
|
|
export async function getOrCreateWaterTank() {
|
|
let doc = await WaterTank.findOne();
|
|
if (!doc) doc = await WaterTank.create({ level: 0 });
|
|
return doc;
|
|
}
|
|
|
|
/** @returns {Promise<boolean>} whether tank was updated */
|
|
export async function applyTankLevelFromPayload(payload) {
|
|
if (payload.tankLevel == null) return false;
|
|
const t = await getOrCreateWaterTank();
|
|
t.level = Number(payload.tankLevel);
|
|
await t.save();
|
|
return true;
|
|
}
|