2022-01-27 12:24:38 +00:00
|
|
|
async def m001_initial(db):
|
|
|
|
"""
|
2022-07-25 10:11:03 +01:00
|
|
|
Initial stalls table.
|
2022-01-27 12:24:38 +00:00
|
|
|
"""
|
|
|
|
await db.execute(
|
|
|
|
"""
|
2022-07-25 10:11:03 +01:00
|
|
|
CREATE TABLE diagonalley.stalls (
|
2022-01-27 12:24:38 +00:00
|
|
|
id TEXT PRIMARY KEY,
|
2022-07-25 10:11:03 +01:00
|
|
|
wallet TEXT NOT NULL,
|
|
|
|
name TEXT NOT NULL,
|
|
|
|
publickey TEXT,
|
|
|
|
privatekey TEXT,
|
|
|
|
relays TEXT,
|
|
|
|
shippingzones TEXT NOT NULL
|
2022-01-27 12:24:38 +00:00
|
|
|
);
|
|
|
|
"""
|
|
|
|
)
|
|
|
|
|
|
|
|
"""
|
2022-07-25 10:11:03 +01:00
|
|
|
Initial products table.
|
2022-01-27 12:24:38 +00:00
|
|
|
"""
|
|
|
|
await db.execute(
|
|
|
|
"""
|
2022-07-25 10:11:03 +01:00
|
|
|
CREATE TABLE diagonalley.products (
|
2022-01-27 12:24:38 +00:00
|
|
|
id TEXT PRIMARY KEY,
|
2022-07-25 10:11:03 +01:00
|
|
|
stall TEXT NOT NULL REFERENCES {db.references_schema}stalls (id),
|
|
|
|
product TEXT NOT NULL,
|
|
|
|
categories TEXT,
|
|
|
|
description TEXT,
|
|
|
|
image TEXT,
|
|
|
|
price INTEGER NOT NULL,
|
|
|
|
quantity INTEGER NOT NULL,
|
|
|
|
rating INTEGER NOT NULL
|
2022-01-27 12:24:38 +00:00
|
|
|
);
|
|
|
|
"""
|
|
|
|
)
|
|
|
|
|
|
|
|
"""
|
|
|
|
Initial zones table.
|
|
|
|
"""
|
|
|
|
await db.execute(
|
|
|
|
"""
|
|
|
|
CREATE TABLE diagonalley.zones (
|
|
|
|
id TEXT PRIMARY KEY,
|
2022-07-12 11:01:15 +01:00
|
|
|
"user" TEXT NOT NULL,
|
2022-01-27 12:24:38 +00:00
|
|
|
cost TEXT NOT NULL,
|
|
|
|
countries TEXT NOT NULL
|
|
|
|
);
|
|
|
|
"""
|
|
|
|
)
|
|
|
|
|
|
|
|
"""
|
|
|
|
Initial orders table.
|
|
|
|
"""
|
|
|
|
await db.execute(
|
|
|
|
"""
|
|
|
|
CREATE TABLE diagonalley.orders (
|
2022-07-25 10:11:03 +01:00
|
|
|
id {db.serial_primary_key},
|
2022-01-27 12:24:38 +00:00
|
|
|
productid TEXT NOT NULL,
|
2022-02-04 13:05:48 +00:00
|
|
|
usr TEXT NOT NULL,
|
|
|
|
pubkey TEXT NOT NULL,
|
2022-01-27 12:24:38 +00:00
|
|
|
shippingzone INTEGER NOT NULL,
|
|
|
|
address TEXT NOT NULL,
|
|
|
|
email TEXT NOT NULL,
|
|
|
|
invoiceid TEXT NOT NULL,
|
|
|
|
paid BOOLEAN NOT NULL,
|
2022-07-12 11:01:15 +01:00
|
|
|
shipped BOOLEAN NOT NULL,
|
|
|
|
time TIMESTAMP NOT NULL DEFAULT """
|
|
|
|
+ db.timestamp_now
|
|
|
|
+ """
|
2022-01-27 12:24:38 +00:00
|
|
|
);
|
|
|
|
"""
|
|
|
|
)
|
2022-07-25 10:11:03 +01:00
|
|
|
|
|
|
|
"""
|
|
|
|
Initial order details table.
|
|
|
|
"""
|
|
|
|
await db.execute(
|
|
|
|
"""
|
|
|
|
CREATE TABLE diagonalley.order_details (
|
|
|
|
id TEXT PRIMARY KEY,
|
|
|
|
orderid INTEGER NOT NULL REFERENCES {db.references_schema}orders (id)
|
|
|
|
productid TEXT NOT NULL REFERENCES {db.references_schema}products (id),
|
|
|
|
quantity INTEGER NOT NULL,
|
|
|
|
total INTEGER NOT NULL
|
|
|
|
);
|
|
|
|
"""
|
|
|
|
)
|
|
|
|
|