modified: .gitignore
deleted: dbinit.py
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -7,7 +7,8 @@ src.old/*
|
||||
src/dbinit.py
|
||||
import.py
|
||||
check.py
|
||||
*.sqlite
|
||||
database.sqlite
|
||||
*database.sqlite
|
||||
config.ini
|
||||
/Dockerfile
|
||||
docker/Dockerfile
|
||||
|
||||
96
dbinit.py
96
dbinit.py
@@ -1,96 +0,0 @@
|
||||
import os
|
||||
from peewee import AutoField, Model, CharField, IntegerField, DateField, BooleanField, CompositeKey, DecimalField, ForeignKeyField, SQL, SqliteDatabase
|
||||
|
||||
path = os.path.dirname(os.path.abspath(__file__))
|
||||
db_file = 'database.sqlite'
|
||||
|
||||
db = SqliteDatabase(os.path.join(path, db_file))
|
||||
|
||||
path = os.path.dirname(os.path.abspath(__file__))
|
||||
db_file = 'database_empty.sqlite'
|
||||
db = SqliteDatabase(os.path.join(path, db_file))
|
||||
|
||||
# class ChartType(Enum):
|
||||
# DAY = "DAY"
|
||||
# MONTH = "MONTH"
|
||||
# YEAR = "YEAR"
|
||||
|
||||
class PPETable(Model):
|
||||
id = CharField(primary_key=True)
|
||||
ppe = CharField(unique=True)
|
||||
tariffCode = CharField()
|
||||
type = CharField()
|
||||
name = CharField()
|
||||
last_update_date = DateField(null=True)
|
||||
is_active = BooleanField(default=True)
|
||||
|
||||
class Meta:
|
||||
database = db
|
||||
table_name = 'PPE'
|
||||
constraints = [SQL('UNIQUE (ppe, tariffCode)')]
|
||||
|
||||
class MeterTable(Model):
|
||||
id = AutoField() # Meter point
|
||||
ppe_id = ForeignKeyField(PPETable, backref='zones')
|
||||
meter_type = CharField()
|
||||
last_update_date = DateField(null=True)
|
||||
first_date = DateField(null=True)
|
||||
|
||||
class Meta:
|
||||
database = db
|
||||
table_name = 'METER'
|
||||
constraints = [SQL('UNIQUE (ppe_id, meter_type)')]
|
||||
|
||||
class CounterTable(Model):
|
||||
id = AutoField()
|
||||
meter_id = ForeignKeyField(MeterTable, backref='meter')
|
||||
tariff = CharField()
|
||||
measurement_date = DateField(null=True)
|
||||
meter_value = DecimalField(max_digits=15, decimal_places=5, null=True)
|
||||
|
||||
class Meta:
|
||||
database = db
|
||||
table_name = 'COUNTER'
|
||||
|
||||
class ChartTable(Model):
|
||||
id = IntegerField()
|
||||
meter_type = CharField()
|
||||
year = IntegerField()
|
||||
month = IntegerField(null=True)
|
||||
day = IntegerField(null=True)
|
||||
value =CharField()
|
||||
|
||||
class Meta:
|
||||
database = db
|
||||
table_name = 'CHART_CACHE'
|
||||
primary_key = CompositeKey('id', 'year', 'month', 'day')
|
||||
|
||||
class MainChartTable(Model):
|
||||
mp = CharField()
|
||||
meter_type = CharField()
|
||||
zone = IntegerField()
|
||||
tm = IntegerField()
|
||||
value = DecimalField(max_digits=20, decimal_places=16, null=True)
|
||||
tarAvg = DecimalField(max_digits=20, decimal_places=16, null=True)
|
||||
est = BooleanField(default=False)
|
||||
cplt = BooleanField(default=False)
|
||||
|
||||
class Meta:
|
||||
database = db
|
||||
table_name = 'CHART'
|
||||
primary_key = CompositeKey('mp', 'meter_type', 'zone', 'tm')
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def databaseInit():
|
||||
db.create_tables([PPETable], safe=True)
|
||||
db.create_tables([MeterTable], safe=True)
|
||||
db.create_tables([CounterTable], safe=True)
|
||||
db.create_tables([ChartTable], safe=True)
|
||||
db.create_tables([MainChartTable], safe=True)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
databaseInit()
|
||||
Reference in New Issue
Block a user