From 13d90357febfb828872ed18913923bea317dbab6 Mon Sep 17 00:00:00 2001 From: Mikayla Dobson <93477693+innocuous-symmetry@users.noreply.github.com> Date: Wed, 6 Apr 2022 13:29:55 -0500 Subject: [PATCH] delete functionality --- data.db | Bin 12288 -> 12288 bytes database.py | 18 ++++++++++------ db_util/database.pyc => database.pyc | Bin db_util/data.db | Bin 12288 -> 0 bytes user_input.py | 30 +++++++++++++++++++++++++++ 5 files changed, 42 insertions(+), 6 deletions(-) rename db_util/database.pyc => database.pyc (100%) delete mode 100644 db_util/data.db diff --git a/data.db b/data.db index 49a92c987c8578e521daa0c516fd268c410db0b6..86422426947393deda7f624f95f14db9b7be5596 100644 GIT binary patch delta 498 zcmZojXh@hK&B#7c#+i|QW5N=CIbJ?b2L9XpoA~?r6ZoC@75JI?p7I^$TgKPHm&WJ0 zu~40_UYeJUfq_9)zBoTOH9s#^AvLEsH6=BvG(9~tFI|BLB&n>OmtUgbo0*+hnUh$a zUzDwopQlhzl%JKFTq45_QX#F4T~?Y4pW&Q9$$I>zbKo_d9iQoJAW6JVX9e4j%k8=> zYz&SJ(vn67Mn<{@Cb|Y@3Wmm3hL%=F7J4S87G?&X;6Sy)8mh{SAeGYEAXTL~IoJbtk$?aI;H#B< delta 25 hcmZojXh@hK&B!!S#+i|6W5N>t%`6Ik_!lV%003wo2igDt diff --git a/database.py b/database.py index 1596cbb..b2dc71b 100644 --- a/database.py +++ b/database.py @@ -12,12 +12,13 @@ cur.execute("CREATE TABLE IF NOT EXISTS USERS (id INTEGER PRIMARY KEY, name STRI # declare and insert some initial values timestamp_list = [ - (1, '1pm', 'null', 'Mikayla', 'work on project'), - (2, '9pm', '11pm', 'not Mikayla', 'work on project'), - (3, '8am', '5pm', 'someone else', 'debugging') + ('Mikayla', 'work on project'), + ('not Mikayla', 'work on project'), + ('someone else', 'debugging') ] -cur.executemany("INSERT INTO TIMESTAMPS VALUES (?, ?, ?, ?, ?)", timestamp_list) +cur.executemany("INSERT INTO TIMESTAMPS (name, purpose) VALUES (?, ?)", timestamp_list) +con.commit() # Functions to define: # 1) Select all timestamps @@ -26,8 +27,9 @@ cur.executemany("INSERT INTO TIMESTAMPS VALUES (?, ?, ?, ?, ?)", timestamp_list) # 4) Calculate complete sum of hours def create_new_stamp(timestamp, name, purpose): - to_insert = (999, timestamp, 'null', name, purpose) - cur.execute("INSERT INTO TIMESTAMPS VALUES (?, ?, ?, ?, ?)", to_insert) + to_insert = (timestamp, name, purpose) + cur.execute("INSERT INTO TIMESTAMPS (time_in, name, purpose) VALUES (?, ?, ?)", to_insert) + con.commit() def get_all_stamps(): return cur.execute("SELECT * FROM TIMESTAMPS;") @@ -56,3 +58,7 @@ def get_weekly_hours(): def get_all_hours(): pass + + +def delete_all_rows(): + cur.executemany("DELETE * FROM TIMESTAMPS;") \ No newline at end of file diff --git a/db_util/database.pyc b/database.pyc similarity index 100% rename from db_util/database.pyc rename to database.pyc diff --git a/db_util/data.db b/db_util/data.db deleted file mode 100644 index 49a92c987c8578e521daa0c516fd268c410db0b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeI#y=ucS5C?F{DP-!$=Jm2A5DKL)P&bHR8i!O;hfKz86)K4BV9SM$ezrbVmpUd+ znjve4@E1tFJ7IMGd6IgbS!ZaK7ir??p4~9c*#i+{%xh+^ncdjt7hTdk`Jeby=&{?$ z_hqx|UH!1@RkL6~00Izz00bZa0SG_<0uX=z1pZgRdVSybd41=S*R^?3LaKJ@O{564 zARRo;1hpj^+II@)T1#z1K9Y#XwAX=zHz{}fB*y_009U<00Izz I00eddzn8UF(EtDd diff --git a/user_input.py b/user_input.py index c65292a..697066e 100644 --- a/user_input.py +++ b/user_input.py @@ -10,6 +10,7 @@ Please choose from the following options: 3) Find a timestamp by date range 4) Calculate total hours for the week 5) Calculate complete sum of hours + """ # Inner functions detailed below: @@ -100,6 +101,33 @@ def handle_second_option(): def handle_third_option(): pass +def __admin__(): + print("ADMIN PORTAL") + print("Choose from additional actions below:") + print(""" + 1) Delete all rows from table (table and schema will persist) + 2) Drop table (database will reinitialize on next render) + 3) Backup data from SQLite file. + + Take care, some actions will permanently delete all data.\n + """) + admin_prompt = input("Your response: ") + + if int(admin_prompt) == 1: + print("Deleting all rows...") + delete_all_rows() + print("All rows deleted. Returning...") + parse_input() + elif int(admin_prompt) == 2: + print("Drop table. Confirm?") + elif int(admin_prompt) == 3: + print("Back up all SQLite data.") + else: + print("Invalid input.") + + + +# Dialogue tree for top-level path handling def parse_input(): print(user_prompt) @@ -130,6 +158,8 @@ def parse_input(): pass elif response == 4: pass + elif response == 871: + __admin__() else: print("Please provide a valid selection.") parse_input() \ No newline at end of file