You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
2.2 KiB
69 lines
2.2 KiB
import os |
|
from datetime import datetime |
|
from config import db |
|
from models.meters import Meter1, Meter2, Meter3 |
|
from models.devices import Device1, Device2, Device3, Device4, Device5, Device6 |
|
|
|
def get_timestamp(): |
|
return datetime.now().strftime(("%Y-%m-%d %H:%M:%S")) |
|
|
|
# The initialisation data for the database |
|
READINGS1 =[ {"time":datetime.now(), "reading": 0} ] |
|
READINGS2 =[ {"time":datetime.now(), "reading": 0} ] |
|
READINGS3 =[ {"time":datetime.now(), "reading": 0} ] |
|
DEVICE1 = [ {"time":datetime.now(), "status": "off"} ] |
|
DEVICE2 = [ {"time":datetime.now(), "status": "off"} ] |
|
DEVICE3 = [ {"time":datetime.now(), "status": "off"} ] |
|
DEVICE4 = [ {"time":datetime.now(), "status": "off"} ] |
|
DEVICE5 = [ {"time":datetime.now(), "status": "off"} ] |
|
DEVICE6 = [ {"time":datetime.now(), "status": "off"} ] |
|
|
|
# Deletes the database if it already exists |
|
if os.path.exists("readings.db"): |
|
os.remove("readings.db") |
|
|
|
# Creates the database |
|
db.create_all() |
|
|
|
# Iterates over the READINGS1 structure and populates the database |
|
for info in READINGS1: |
|
r = Meter1(time=info.get("time"), reading=info.get("reading")) |
|
db.session.add(r) |
|
|
|
# Iterates over the READINGS2 structure and populates the datebase |
|
for info in READINGS2: |
|
r = Meter2(time=info.get("time"), reading=info.get("reading")) |
|
db.session.add(r) |
|
|
|
# Iterates over the READINGS3 structure and populates the datebase. |
|
for info in READINGS3: |
|
r = Meter3(time=info.get("time"), reading=info.get("reading")) |
|
db.session.add(r) |
|
|
|
# These are the light-meters in Ritherdon. |
|
for info in DEVICE1: |
|
r = Device1(time=info.get("time"), status=info.get("status")) |
|
db.session.add(r) |
|
|
|
for info in DEVICE2: |
|
r = Device2(time=info.get("time"), status=info.get("status")) |
|
db.session.add(r) |
|
|
|
for info in DEVICE3: |
|
r = Device3(time=info.get("time"), status=info.get("status")) |
|
db.session.add(r) |
|
|
|
# These are the relays in the gallery. |
|
for info in DEVICE4: |
|
r = Device4(time=info.get("time"), status=info.get("status")) |
|
db.session.add(r) |
|
|
|
for info in DEVICE5: |
|
r = Device5(time=info.get("time"), status=info.get("status")) |
|
db.session.add(r) |
|
|
|
for info in DEVICE6: |
|
r = Device6(time=info.get("time"), status=info.get("status")) |
|
db.session.add(r) |
|
|
|
db.session.commit()
|
|
|