diff --git a/__pycache__/config.cpython-312.pyc b/__pycache__/config.cpython-312.pyc index 88aded8..eb8a59b 100644 Binary files a/__pycache__/config.cpython-312.pyc and b/__pycache__/config.cpython-312.pyc differ diff --git a/__pycache__/main.cpython-312.pyc b/__pycache__/main.cpython-312.pyc index 8f13350..bb30c7f 100644 Binary files a/__pycache__/main.cpython-312.pyc and b/__pycache__/main.cpython-312.pyc differ diff --git a/database.md b/database.md new file mode 100644 index 0000000..c5ed5d0 --- /dev/null +++ b/database.md @@ -0,0 +1,18 @@ +# Database Management + +- the way I look at it is + +## Adding a new item +- item info, food info, logistics info created using the barcode and then attached to item. +- Transcation created against logistics info description "Item added", qty X into primary location within logistics info. +- QTY of X inserted into sites default location with {logistics_info_id: X} +- returns location_id and adds the location to the logistics info, location_data {location_id: X} + + + + + +## Associating a item to a linkedItem + +All transaction history needs to have its associated logistic id changed to the new number (barcode stays the same?) and the new items location info and qty on hand needs to be updated. + diff --git a/main.py b/main.py index ee9c7e3..7228e50 100644 --- a/main.py +++ b/main.py @@ -1,7 +1,10 @@ #!/usr/bin/python import psycopg2 from config import config +import json, datetime, copy +def lst2pgarr(alist): + return '{' + ','.join(alist) + '}' def insert_row(table_name, name): sql = f"INSERT INTO {table_name}(id, name) VALUES(%s, %s) RETURNING id" @@ -39,12 +42,14 @@ def create_table(sql_file: str): if conn is not None: conn.close() -def create_logistics_info(conn, site_name, barcode, quantity_on_hand=0.0): - sql = f"INSERT INTO {site_name}_logistics_info(barcode, quantity_on_hand) VALUES ('{barcode}', {quantity_on_hand}) RETURNING id;" +def create_logistics_info(conn, site_name, barcode, payload): + sql = f"INSERT INTO {site_name}_logistics_info(barcode, primary_location, auto_issue_location, dynamic_locations, location_data, quantity_on_hand) VALUES (%s, %s, %s, %s, %s, %s) RETURNING id;" logistics_info_id = None try: with conn.cursor() as cur: - cur.execute(sql) + cur.execute(sql, + (barcode, payload["primary_location"], payload["auto_issue_location"], json.dumps(payload["dynamic_locations"]), + json.dumps(payload["location_data"]), payload["quantity_on_hand"])) rows = cur.fetchone() if rows: logistics_info_id = rows[0] @@ -55,12 +60,14 @@ def create_logistics_info(conn, site_name, barcode, quantity_on_hand=0.0): return logistics_info_id -def create_item_info(conn, site_name, barcode): - sql = f"INSERT INTO {site_name}_item_info(barcode) VALUES ('{barcode}') RETURNING id;" +def create_item_info(conn, site_name, barcode, payload): + sql = f"INSERT INTO {site_name}_item_info(barcode, linked_items, shopping_lists, recipes, groups, packaging, uom, cost, safety_stock, lead_time_days, ai_pick) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING id;" item_info_id = None try: with conn.cursor() as cur: - cur.execute(sql) + cur.execute(sql, (barcode, lst2pgarr(payload["linked_items"]), lst2pgarr(payload["shopping_lists"]), lst2pgarr(payload["recipes"]), + lst2pgarr(payload["groups"]), payload["packaging"], payload["uom"], payload["cost"], payload["safety_stock"], payload["lead_time_days"], + payload["ai_pick"])) rows = cur.fetchone() if rows: item_info_id = rows[0] @@ -71,17 +78,102 @@ def create_item_info(conn, site_name, barcode): return item_info_id -def add_item(site_name: str, barcode: str, name: str): + +def create_food_info(conn, site_name, payload): + sql = f"INSERT INTO {site_name}_food_info(ingrediants, food_groups, nutrients, expires) VALUES (%s, %s, %s, %s) RETURNING id;" + food_info_id = None + try: + with conn.cursor() as cur: + cur.execute(sql, (lst2pgarr(payload["ingrediants"]), lst2pgarr(payload["food_groups"]), json.dumps(payload["nutrients"]), payload["expires"])) + rows = cur.fetchone() + if rows: + food_info_id = rows[0] + except (Exception, psycopg2.DatabaseError) as error: + print(error) + conn.rollback() + return False + + return food_info_id + +def add_transaction(site_name, barcode, qty, user_id, transaction_type = "info", description = "", data = {}, location=None): database_config = config() with psycopg2.connect(**database_config) as conn: - logistics_info_id = create_logistics_info(conn, site_name, barcode) - if not logistics_info_id: + with conn.cursor() as cur: + cur.execute(f"SELECT item_name, logistics_info_id FROM {site_name}_items WHERE barcode=%s;", (barcode, )) + row = cur.fetchone() + print(row) + + with conn.cursor() as cur: + cur.execute(f"SELECT location_data, quantity_on_hand, primary_location FROM {site_name}_logistics_info WHERE id=%s;", (row[1],)) + logistics_info = cur.fetchone() + print(logistics_info) + + new_trans = copy.deepcopy(transaction_payload) + new_trans["timestamp"] = datetime.datetime.now() + new_trans["logistics_info_id"] = row[1] + new_trans["barcode"] = barcode + new_trans["user_id"] = user_id + new_trans["name"] = row[0] + new_trans["transaction_type"] = transaction_type + new_trans["description"] = description + new_trans["quantity"] = qty + new_trans["data"] = data + + + sql = f"INSERT INTO {site_name}_transactions(timestamp, logistics_info_id, barcode, name, transaction_type, quantity, description, user_id, data) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s);" + database_config = config() + with psycopg2.connect(**database_config) as conn: + try: + with conn.cursor() as cur: + cur.execute(sql, (new_trans["timestamp"], new_trans["logistics_info_id"], new_trans["barcode"], new_trans["name"], new_trans["transaction_type"], + new_trans["quantity"], new_trans["description"], new_trans["user_id"], json.dumps(new_trans["data"]))) + except (Exception, psycopg2.DatabaseError) as error: + print(error) + conn.rollback() return False - item_info_id = create_item_info(conn, site_name, barcode) - if not item_info_id: + if not location: + mover = logistics_info[2] + else: + mover = location + + if mover in logistics_info[0].keys(): + logistics_info[0][mover] = logistics_info[0][mover] + qty + else: + logistics_info[0][mover] = qty + + qty = logistics_info[1] + qty + + set_quantity_on_hand = f"UPDATE {site_name}_logistics_info SET quantity_on_hand = %s, location_data = %s WHERE id = %s;" + try: + with conn.cursor() as cur: + cur.execute(set_quantity_on_hand, (qty, json.dumps(logistics_info[0]), new_trans["logistics_info_id"])) + except (Exception, psycopg2.DatabaseError) as error: + print(error) + conn.rollback() return False - sqltwo = f"INSERT INTO {site_name}_items(barcode, item_name, item_info_id, logistics_info_id, row_type, item_type, search_string) VALUES('{barcode}', '{name}', {item_info_id}, {logistics_info_id}, 'item', 'other', '{barcode}%{name}') RETURNING *;" + conn.commit() + +def add_food_item(site_name: str, barcode: str, name: str, qty: float, payload: dict): + + defaults = config(filename=f"sites/{site_name}/site.ini", section="defaults") + payload["logistics_info"]["primary_location"] = defaults["default_primary_location"] + payload["logistics_info"]["auto_issue_location"] = defaults["default_auto_issue_location"] + + + database_config = config() + with psycopg2.connect(**database_config) as conn: + logistics_info_id = create_logistics_info(conn, site_name, barcode, payload["logistics_info"]) + if not logistics_info_id: + return False + item_info_id = create_item_info(conn, site_name, barcode, payload["item_info"]) + if not item_info_id: + return False + food_info_id = create_food_info(conn, site_name, payload["food_info"]) + if not food_info_id: + return False + + sqltwo = f"INSERT INTO {site_name}_items(barcode, item_name, item_info_id, logistics_info_id, food_info_id, row_type, item_type, search_string) VALUES('{barcode}', '{name}', {item_info_id}, {logistics_info_id}, {food_info_id}, 'item', 'FOOD', '{barcode}%{name}') RETURNING *;" row = None try: with conn.cursor() as cur: @@ -94,9 +186,13 @@ def add_item(site_name: str, barcode: str, name: str): conn.rollback() return False + conn.commit() - return row + + add_transaction(site_name, barcode, qty=0, user_id=1, description="Added Item to System!") + add_transaction(site_name, barcode, qty=qty, user_id=1, description="scan in") + def drop_table(sql_file: str): database_config = config() @@ -132,16 +228,61 @@ def create_site(site_name): create_table(f'sites/{site_name}/sql/create/logins.sql') create_table(f'sites/{site_name}/sql/create/groups.sql') create_table(f'sites/{site_name}/sql/create/linked_items.sql') - create_table(f'sites/{site_name}/sql/create/transactions.sql') create_table(f'sites/{site_name}/sql/create/brands.sql') create_table(f'sites/{site_name}/sql/create/food_info.sql') create_table(f'sites/{site_name}/sql/create/item_info.sql') create_table(f'sites/{site_name}/sql/create/logistics_info.sql') + create_table(f'sites/{site_name}/sql/create/transactions.sql') create_table(f'sites/{site_name}/sql/create/item.sql') create_table(f'sites/{site_name}/sql/create/zones.sql') create_table(f'sites/{site_name}/sql/create/locations.sql') + + +transaction_payload = { + "timestamp": None, + "logistics_info_id": 0, + "barcode": "", + "name": "", + "transaction_type": "info", + "quantity": 0.0, + "description": "", + "user_id": 0, + "data": {} +} + + +payload_food_item = { + "item_info": { + "linked_items": [], + "shopping_lists": [], + "recipes": [], + "groups": [], + "packaging": "Each", + "uom": "Each", + "cost": 0.0, + "safety_stock": 0.0, + "lead_time_days": 0.0, + "ai_pick": False + }, + "food_info": { + "food_groups": [], + "ingrediants": [], + "nutrients": {}, + "expires": False + }, + "logistics_info":{ + "primary_location": "", + "auto_issue_location": "", + "dynamic_locations": {}, + "location_data": {}, + "quantity_on_hand": 0.0 + } +} + + + if __name__ == "__main__": #print(add_item(site_name="main", barcode="1235", name="testone")) database_config = config() diff --git a/manage.py b/manage.py index eb12847..dcf13ce 100644 --- a/manage.py +++ b/manage.py @@ -89,3 +89,16 @@ if __name__ == "__main__": main.delete_site(sys.argv[2]) shutil.rmtree(f"sites/{sys.argv[2]}") + if func_name == "add_item": + barcode = input("barcode: ") + name = input("name: ") + qty = float(input("qty: ")) + main.add_food_item(sys.argv[2], barcode, name, qty, payload=main.payload_food_item) + + if func_name == "transact": + barcode = input("barcode: ") + qty = float(input("qty: ")) + location = input("TO: ") + + main.add_transaction(sys.argv[2], barcode, qty, 1, description="manual", location=location) + diff --git a/sites/default/sql/create/food_info.sql b/sites/default/sql/create/food_info.sql index 43eda88..86e77a2 100644 --- a/sites/default/sql/create/food_info.sql +++ b/sites/default/sql/create/food_info.sql @@ -3,5 +3,5 @@ CREATE TABLE IF NOT EXISTS %sitename%_food_info ( food_groups TEXT [], ingrediants TEXT [], nutrients JSONB, - exires BOOLEAN + expires BOOLEAN ); \ No newline at end of file diff --git a/sites/default/sql/create/item.sql b/sites/default/sql/create/item.sql index 75c49a1..4b2483d 100644 --- a/sites/default/sql/create/item.sql +++ b/sites/default/sql/create/item.sql @@ -11,7 +11,6 @@ CREATE TABLE IF NOT EXISTS %sitename%_items( row_type VARCHAR(255) NOT NULL, item_type VARCHAR(255) NOT NULL, search_string TEXT NOT NULL, - quantity_on_hand FLOAT8, UNIQUE(barcode, item_info_id), CONSTRAINT fk_item_info FOREIGN KEY(item_info_id) diff --git a/sites/default/sql/create/locations.sql b/sites/default/sql/create/locations.sql index bffde11..7f0ca04 100644 --- a/sites/default/sql/create/locations.sql +++ b/sites/default/sql/create/locations.sql @@ -2,6 +2,7 @@ CREATE TABLE IF NOT EXISTS %sitename%_locations( id SERIAL PRIMARY KEY, name VARCHAR(32) NOT NULL, zone_id INTEGER NOT NULL, + items JSONB, UNIQUE(name), CONSTRAINT fk_zone FOREIGN KEY(zone_id) diff --git a/sites/default/sql/create/transactions.sql b/sites/default/sql/create/transactions.sql index 7ae7bd8..4d434fc 100644 --- a/sites/default/sql/create/transactions.sql +++ b/sites/default/sql/create/transactions.sql @@ -1,11 +1,15 @@ CREATE TABLE IF NOT EXISTS %sitename%_Transactions ( id SERIAL PRIMARY KEY, timestamp TIMESTAMP, + logistics_info_id INTEGER NOT NULL, barcode VARCHAR(255) NOT NULL, name VARCHAR(255), transaction_type VARCHAR(255) NOT NULL, quantity FLOAT8 NOT NULL, description TEXT, user_id INTEGER NOT NULL, - data JSONB + data JSONB, + CONSTRAINT fk_logistics_info + FOREIGN KEY(logistics_info_id) + REFERENCES %sitename%_logistics_info(id) ); \ No newline at end of file diff --git a/sites/main/sql/drop/brands.sql b/sites/main/sql/drop/brands.sql deleted file mode 100644 index 62263a0..0000000 --- a/sites/main/sql/drop/brands.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_brands CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/food_info.sql b/sites/main/sql/drop/food_info.sql deleted file mode 100644 index f74a1b9..0000000 --- a/sites/main/sql/drop/food_info.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_food_info CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/groups.sql b/sites/main/sql/drop/groups.sql deleted file mode 100644 index 9f949d7..0000000 --- a/sites/main/sql/drop/groups.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_groups CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/item_info.sql b/sites/main/sql/drop/item_info.sql deleted file mode 100644 index 2d34b05..0000000 --- a/sites/main/sql/drop/item_info.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_item_info CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/items.sql b/sites/main/sql/drop/items.sql deleted file mode 100644 index 2371e76..0000000 --- a/sites/main/sql/drop/items.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_items CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/linked_items.sql b/sites/main/sql/drop/linked_items.sql deleted file mode 100644 index 227c0d2..0000000 --- a/sites/main/sql/drop/linked_items.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_itemlinks CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/locations.sql b/sites/main/sql/drop/locations.sql deleted file mode 100644 index b1a53aa..0000000 --- a/sites/main/sql/drop/locations.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_locations CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/logistics_info.sql b/sites/main/sql/drop/logistics_info.sql deleted file mode 100644 index dd3de21..0000000 --- a/sites/main/sql/drop/logistics_info.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_logistics_info CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/transactions.sql b/sites/main/sql/drop/transactions.sql deleted file mode 100644 index 6d36751..0000000 --- a/sites/main/sql/drop/transactions.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_transactions CASCADE; \ No newline at end of file diff --git a/sites/main/sql/drop/zones.sql b/sites/main/sql/drop/zones.sql deleted file mode 100644 index 6a616e1..0000000 --- a/sites/main/sql/drop/zones.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE main_zones CASCADE; \ No newline at end of file diff --git a/sites/main/site.ini b/sites/test/site.ini similarity index 75% rename from sites/main/site.ini rename to sites/test/site.ini index c6d0b57..8cf4684 100644 --- a/sites/main/site.ini +++ b/sites/test/site.ini @@ -1,7 +1,8 @@ [site] -site_name=main -site_owner=jadowyne +site_name=test +site_owner=test email= + [defaults] default_zone=default default_primary_location=all diff --git a/sites/main/sql/create/brands.sql b/sites/test/sql/create/brands.sql similarity index 55% rename from sites/main/sql/create/brands.sql rename to sites/test/sql/create/brands.sql index 172eb8f..6cd9f9c 100644 --- a/sites/main/sql/create/brands.sql +++ b/sites/test/sql/create/brands.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOT EXISTS main_brands ( +CREATE TABLE IF NOT EXISTS test_brands ( id SERIAL PRIMARY KEY, name VARCHAR(255) ); \ No newline at end of file diff --git a/sites/main/sql/create/food_info.sql b/sites/test/sql/create/food_info.sql similarity index 60% rename from sites/main/sql/create/food_info.sql rename to sites/test/sql/create/food_info.sql index c70e33b..bedbe47 100644 --- a/sites/main/sql/create/food_info.sql +++ b/sites/test/sql/create/food_info.sql @@ -1,7 +1,7 @@ -CREATE TABLE IF NOT EXISTS main_food_info ( +CREATE TABLE IF NOT EXISTS test_food_info ( id SERIAL PRIMARY KEY, food_groups TEXT [], ingrediants TEXT [], nutrients JSONB, - exires BOOLEAN + expires BOOLEAN ); \ No newline at end of file diff --git a/sites/main/sql/create/groups.sql b/sites/test/sql/create/groups.sql similarity index 80% rename from sites/main/sql/create/groups.sql rename to sites/test/sql/create/groups.sql index 678cb61..b97fdab 100644 --- a/sites/main/sql/create/groups.sql +++ b/sites/test/sql/create/groups.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOT EXISTS main_groups( +CREATE TABLE IF NOT EXISTS test_groups( id SERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, description TEXT, diff --git a/sites/main/sql/create/item.sql b/sites/test/sql/create/item.sql similarity index 74% rename from sites/main/sql/create/item.sql rename to sites/test/sql/create/item.sql index 095c221..5f30ebb 100644 --- a/sites/main/sql/create/item.sql +++ b/sites/test/sql/create/item.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOT EXISTS main_items( +CREATE TABLE IF NOT EXISTS test_items( id SERIAL PRIMARY KEY, barcode VARCHAR(255) NOT NULL, item_name VARCHAR(255) NOT NULL, @@ -11,18 +11,17 @@ CREATE TABLE IF NOT EXISTS main_items( row_type VARCHAR(255) NOT NULL, item_type VARCHAR(255) NOT NULL, search_string TEXT NOT NULL, - quantity_on_hand FLOAT8, UNIQUE(barcode, item_info_id), CONSTRAINT fk_item_info FOREIGN KEY(item_info_id) - REFERENCES main_item_info(id), + REFERENCES test_item_info(id), CONSTRAINT fk_food_info FOREIGN KEY(food_info_id) - REFERENCES main_food_info(id), + REFERENCES test_food_info(id), CONSTRAINT fk_brand FOREIGN KEY(brand) - REFERENCES main_brands(id), + REFERENCES test_brands(id), CONSTRAINT fk_logistics_info FOREIGN KEY(logistics_info_id) - REFERENCES main_logistics_info(id) + REFERENCES test_logistics_info(id) ); diff --git a/sites/main/sql/create/item_info.sql b/sites/test/sql/create/item_info.sql similarity index 88% rename from sites/main/sql/create/item_info.sql rename to sites/test/sql/create/item_info.sql index 4a5de26..317106c 100644 --- a/sites/main/sql/create/item_info.sql +++ b/sites/test/sql/create/item_info.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOt EXISTS main_item_info ( +CREATE TABLE IF NOt EXISTS test_item_info ( id SERIAL PRIMARY KEY, barcode VARCHAR(255) NOT NULL, linked_items INTEGER [], diff --git a/sites/main/sql/create/linked_items.sql b/sites/test/sql/create/linked_items.sql similarity index 79% rename from sites/main/sql/create/linked_items.sql rename to sites/test/sql/create/linked_items.sql index 54afe9d..16a24e2 100644 --- a/sites/main/sql/create/linked_items.sql +++ b/sites/test/sql/create/linked_items.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOT EXISTS main_itemlinks ( +CREATE TABLE IF NOT EXISTS test_itemlinks ( id SERIAL PRIMARY KEY, barcode VARCHAR(255) NOt NULL, link INTEGER NOT NULL, diff --git a/sites/main/sql/create/locations.sql b/sites/test/sql/create/locations.sql similarity index 62% rename from sites/main/sql/create/locations.sql rename to sites/test/sql/create/locations.sql index cf0b0f5..32c6a98 100644 --- a/sites/main/sql/create/locations.sql +++ b/sites/test/sql/create/locations.sql @@ -1,9 +1,10 @@ -CREATE TABLE IF NOT EXISTS main_locations( +CREATE TABLE IF NOT EXISTS test_locations( id SERIAL PRIMARY KEY, name VARCHAR(32) NOT NULL, zone_id INTEGER NOT NULL, + items JSONB, UNIQUE(name), CONSTRAINT fk_zone FOREIGN KEY(zone_id) - REFERENCES main_zones(id) + REFERENCES test_zones(id) ); \ No newline at end of file diff --git a/sites/main/sql/create/logins.sql b/sites/test/sql/create/logins.sql similarity index 100% rename from sites/main/sql/create/logins.sql rename to sites/test/sql/create/logins.sql diff --git a/sites/main/sql/create/logistics_info.sql b/sites/test/sql/create/logistics_info.sql similarity index 83% rename from sites/main/sql/create/logistics_info.sql rename to sites/test/sql/create/logistics_info.sql index af05d5c..ed6202f 100644 --- a/sites/main/sql/create/logistics_info.sql +++ b/sites/test/sql/create/logistics_info.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOT EXISTS main_logistics_info( +CREATE TABLE IF NOT EXISTS test_logistics_info( id SERIAL PRIMARY KEY, barcode VARCHAR(255) NOT NULL, primary_location VARCHAR(16), diff --git a/sites/main/sql/create/transactions.sql b/sites/test/sql/create/transactions.sql similarity index 52% rename from sites/main/sql/create/transactions.sql rename to sites/test/sql/create/transactions.sql index 06ea46e..c781b14 100644 --- a/sites/main/sql/create/transactions.sql +++ b/sites/test/sql/create/transactions.sql @@ -1,11 +1,15 @@ -CREATE TABLE IF NOT EXISTS main_Transactions ( +CREATE TABLE IF NOT EXISTS test_Transactions ( id SERIAL PRIMARY KEY, timestamp TIMESTAMP, + logistics_info_id INTEGER NOT NULL, barcode VARCHAR(255) NOT NULL, name VARCHAR(255), transaction_type VARCHAR(255) NOT NULL, quantity FLOAT8 NOT NULL, description TEXT, user_id INTEGER NOT NULL, - data JSONB + data JSONB, + CONSTRAINT fk_logistics_info + FOREIGN KEY(logistics_info_id) + REFERENCES test_logistics_info(id) ); \ No newline at end of file diff --git a/sites/main/sql/create/zones.sql b/sites/test/sql/create/zones.sql similarity index 66% rename from sites/main/sql/create/zones.sql rename to sites/test/sql/create/zones.sql index f06afa4..0ed0a9e 100644 --- a/sites/main/sql/create/zones.sql +++ b/sites/test/sql/create/zones.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOT EXISTS main_zones( +CREATE TABLE IF NOT EXISTS test_zones( id SERIAL PRIMARY KEY, name VARCHAR(32) NOT NULL, UNIQUE(name) diff --git a/sites/test/sql/drop/brands.sql b/sites/test/sql/drop/brands.sql new file mode 100644 index 0000000..f407a8c --- /dev/null +++ b/sites/test/sql/drop/brands.sql @@ -0,0 +1 @@ +DROP TABLE test_brands CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/food_info.sql b/sites/test/sql/drop/food_info.sql new file mode 100644 index 0000000..a4c3056 --- /dev/null +++ b/sites/test/sql/drop/food_info.sql @@ -0,0 +1 @@ +DROP TABLE test_food_info CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/groups.sql b/sites/test/sql/drop/groups.sql new file mode 100644 index 0000000..6b62f3b --- /dev/null +++ b/sites/test/sql/drop/groups.sql @@ -0,0 +1 @@ +DROP TABLE test_groups CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/item_info.sql b/sites/test/sql/drop/item_info.sql new file mode 100644 index 0000000..c84b0d1 --- /dev/null +++ b/sites/test/sql/drop/item_info.sql @@ -0,0 +1 @@ +DROP TABLE test_item_info CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/items.sql b/sites/test/sql/drop/items.sql new file mode 100644 index 0000000..097b9a7 --- /dev/null +++ b/sites/test/sql/drop/items.sql @@ -0,0 +1 @@ +DROP TABLE test_items CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/linked_items.sql b/sites/test/sql/drop/linked_items.sql new file mode 100644 index 0000000..bcc9093 --- /dev/null +++ b/sites/test/sql/drop/linked_items.sql @@ -0,0 +1 @@ +DROP TABLE test_itemlinks CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/locations.sql b/sites/test/sql/drop/locations.sql new file mode 100644 index 0000000..4a1f42e --- /dev/null +++ b/sites/test/sql/drop/locations.sql @@ -0,0 +1 @@ +DROP TABLE test_locations CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/logistics_info.sql b/sites/test/sql/drop/logistics_info.sql new file mode 100644 index 0000000..cb5abcd --- /dev/null +++ b/sites/test/sql/drop/logistics_info.sql @@ -0,0 +1 @@ +DROP TABLE test_logistics_info CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/transactions.sql b/sites/test/sql/drop/transactions.sql new file mode 100644 index 0000000..1356e47 --- /dev/null +++ b/sites/test/sql/drop/transactions.sql @@ -0,0 +1 @@ +DROP TABLE test_transactions CASCADE; \ No newline at end of file diff --git a/sites/test/sql/drop/zones.sql b/sites/test/sql/drop/zones.sql new file mode 100644 index 0000000..c84c67b --- /dev/null +++ b/sites/test/sql/drop/zones.sql @@ -0,0 +1 @@ +DROP TABLE test_zones CASCADE; \ No newline at end of file