Add admin script to create/delete template

This commit is contained in:
wqy
2022-08-27 11:51:09 +08:00
parent b77349cfe6
commit ad60cf262e
2 changed files with 94 additions and 0 deletions

5
admin.py Normal file
View File

@@ -0,0 +1,5 @@
from tjnetwork_admin import *
if __name__ == "__main__":
delete_template()
create_template()

89
tjnetwork_admin.py Normal file
View File

@@ -0,0 +1,89 @@
import psycopg as pg
sql_create = [
"sql/base_create.sql",
"sql/section_create/1.title.sql",
"sql/section_create/2.junctions.sql",
"sql/section_create/3.reservoirs.sql",
"sql/section_create/4.tanks.sql",
"sql/section_create/5.pipes.sql",
"sql/section_create/6.pumps.sql",
"sql/section_create/7.valves.sql",
"sql/section_create/8.tags.sql",
"sql/section_create/9.demands.sql",
"sql/section_create/10.status.sql",
"sql/section_create/11.patterns.sql",
"sql/section_create/12.curves.sql",
"sql/section_create/13.controls.sql",
"sql/section_create/14.rules.sql",
"sql/section_create/15.energy.sql",
"sql/section_create/16.emitters.sql",
"sql/section_create/17.quality.sql",
"sql/section_create/18.sources.sql",
"sql/section_create/19.reactions.sql",
"sql/section_create/20.mixing.sql",
"sql/section_create/21.times.sql",
"sql/section_create/22.report.sql",
"sql/section_create/23.options.sql",
"sql/section_create/24.coordinates.sql",
"sql/section_create/25.vertices.sql",
"sql/section_create/26.labels.sql",
"sql/section_create/27.backdrop.sql",
"sql/section_create/28.end.sql"
]
sql_drop = [
"sql/section_drop/28.end.sql",
"sql/section_drop/27.backdrop.sql",
"sql/section_drop/26.labels.sql",
"sql/section_drop/25.vertices.sql",
"sql/section_drop/24.coordinates.sql",
"sql/section_drop/23.options.sql",
"sql/section_drop/22.report.sql",
"sql/section_drop/21.times.sql",
"sql/section_drop/20.mixing.sql",
"sql/section_drop/19.reactions.sql",
"sql/section_drop/18.sources.sql",
"sql/section_drop/17.quality.sql",
"sql/section_drop/16.emitters.sql",
"sql/section_drop/15.energy.sql",
"sql/section_drop/14.rules.sql",
"sql/section_drop/13.controls.sql",
"sql/section_drop/12.curves.sql",
"sql/section_drop/11.patterns.sql",
"sql/section_drop/10.status.sql",
"sql/section_drop/9.demands.sql",
"sql/section_drop/8.tags.sql",
"sql/section_drop/7.valves.sql",
"sql/section_drop/6.pumps.sql",
"sql/section_drop/5.pipes.sql",
"sql/section_drop/4.tanks.sql",
"sql/section_drop/3.reservoirs.sql",
"sql/section_drop/2.junctions.sql",
"sql/section_drop/1.title.sql",
"sql/base_drop.sql"
]
def create_template():
with pg.connect(conninfo="dbname=postgres", autocommit=True) as conn:
with conn.cursor() as cur:
cur.execute(f"create database project")
with pg.connect(conninfo=f"dbname=project") as conn:
with conn.cursor() as cur:
for sql in sql_create:
with open(sql, "r") as f:
cur.execute(f.read())
print(f'executed {sql}')
conn.commit()
def delete_template():
with pg.connect(conninfo=f"dbname=project") as conn:
with conn.cursor() as cur:
for sql in sql_drop:
with open(sql, "r") as f:
cur.execute(f.read())
print(f'executed {sql}')
conn.commit()
with pg.connect(conninfo="dbname=postgres", autocommit=True) as conn:
with conn.cursor() as cur:
cur.execute(f"drop database project")