From 45f93a5a4c3eba809307d5e1a4c1a42cc19b4be9 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 24 May 2025 08:18:45 -0500 Subject: [PATCH 01/38] test --- api.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/api.py b/api.py index 746405b..7adada4 100644 --- a/api.py +++ b/api.py @@ -3,6 +3,8 @@ import psycopg2, math, json, datetime, main, copy, requests, process, database from config import config, sites_config from main import unfoldCostLayers +# this is a test! + database_api= Blueprint('database_api', __name__) @database_api.route("/changeSite", methods=["POST"]) From d2973555e4ad27c15d83e6dce99cc9474652893a Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 24 May 2025 08:25:13 -0500 Subject: [PATCH 02/38] Updated README --- .gitignore | 6 ------ README.md | 18 +++++++++++++++--- 2 files changed, 15 insertions(+), 9 deletions(-) delete mode 100644 .gitignore diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 8c5c3bb..0000000 --- a/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -foodpantryserver.zip -sites -static/css/uikit-rtl.css -static/css/uikit-rtl.min.css -static/css/uikit.css -static/css/uikit.min.css \ No newline at end of file diff --git a/README.md b/README.md index 09e71c0..97b7af7 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,17 @@ -## postgresql and python learning +## PantryTrack -I am attempting to understand how to connect and execute commands through python against a remote postgresql to update my systems +This is currently a passion project that I have started to learn and develop a few different things: +- Barcode Scanners and how they work +- Posgresql Databases +- SQL, JAVASCRIPT, CSS, HTML +- Database Schema management and design -This is a test \ No newline at end of file +PantryTrack is am inventory system that you add items to, use those items to build recipes and shopping lists. + +You then can manually create receipts and or use a barcode scanner to set up a kiosk to scan in all the things you +purchase into a receipt. + +You then edit and receive that receipt into the system. + +There is also the ability to use a kiosk like interface to set up a scan in and out system, where as you use things +the system will remove those items by scanning them. \ No newline at end of file From b9d833adf46e679744efd32a0cc8af42406fa739 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 24 May 2025 08:58:39 -0500 Subject: [PATCH 03/38] Moved Items API into its own working directory --- .gitignore | 1 + __pycache__/MyDataclasses.cpython-312.pyc | Bin 17654 -> 17677 bytes __pycache__/api.cpython-312.pyc | Bin 23020 -> 23045 bytes __pycache__/api_admin.cpython-312.pyc | Bin 18590 -> 18613 bytes __pycache__/config.cpython-312.pyc | Bin 3534 -> 3557 bytes __pycache__/database.cpython-312.pyc | Bin 85819 -> 85842 bytes __pycache__/database_admin.cpython-312.pyc | Bin 1468 -> 1491 bytes __pycache__/external_API.cpython-312.pyc | Bin 8596 -> 8619 bytes __pycache__/group_api.cpython-312.pyc | Bin 2924 -> 2947 bytes __pycache__/main.cpython-312.pyc | Bin 44086 -> 44109 bytes __pycache__/manage.cpython-312.pyc | Bin 6857 -> 6880 bytes __pycache__/postsqldb.cpython-312.pyc | Bin 91610 -> 91633 bytes __pycache__/process.cpython-312.pyc | Bin 16498 -> 16521 bytes __pycache__/receipts_API.cpython-312.pyc | Bin 28210 -> 28233 bytes __pycache__/shopping_list_API.cpython-312.pyc | Bin 12758 -> 12781 bytes __pycache__/user_api.cpython-312.pyc | Bin 7845 -> 7868 bytes __pycache__/webpush.cpython-312.pyc | Bin 2967 -> 2990 bytes __pycache__/workshop_api.cpython-312.pyc | Bin 20549 -> 20572 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 167 -> 194 bytes .../__pycache__/postsqldb.cpython-312.pyc | Bin 94447 -> 94470 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 177 -> 200 bytes .../database_items.cpython-312.pyc | Bin 40469 -> 40492 bytes .../__pycache__/items_API.cpython-312.pyc | Bin 36455 -> 39244 bytes .../items_processes.cpython-312.pyc | Bin 6816 -> 6839 bytes application/items/items_API.py | 41 +- .../items/static}/ItemListHandler.js | 2 +- .../items/static}/itemEditHandler.js | 0 .../items/static}/transactionHandler.js | 0 .../items/static}/transactionsHandler.js | 0 .../items/templates}/index.html | 2 +- .../items/templates}/item_new.html | 0 .../items/templates}/itemlink.html | 0 .../items/templates}/transaction.html | 0 .../items/templates}/transactions.html | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 175 -> 202 bytes .../database_recipes.cpython-312.pyc | Bin 14360 -> 14383 bytes .../__pycache__/recipes_api.cpython-312.pyc | Bin 16402 -> 16425 bytes item_API.py | 546 ------------------ webserver.py | 31 +- 39 files changed, 43 insertions(+), 580 deletions(-) create mode 100644 .gitignore rename {static/handlers => application/items/static}/ItemListHandler.js (99%) rename {static/handlers => application/items/static}/itemEditHandler.js (100%) rename {static/handlers => application/items/static}/transactionHandler.js (100%) rename {static/handlers => application/items/static}/transactionsHandler.js (100%) rename {templates/items => application/items/templates}/index.html (99%) rename {templates/items => application/items/templates}/item_new.html (100%) rename {templates/items => application/items/templates}/itemlink.html (100%) rename {templates/other => application/items/templates}/transaction.html (100%) rename {templates/items => application/items/templates}/transactions.html (100%) delete mode 100644 item_API.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ba0430d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +__pycache__/ \ No newline at end of file diff --git a/__pycache__/MyDataclasses.cpython-312.pyc b/__pycache__/MyDataclasses.cpython-312.pyc index 1ac8066f7ab562dccf8dba7279f10deba35e244c..cbdb3e31acd5e4c70bf9527eda175ade907f2a1f 100644 GIT binary patch delta 84 zcmey?$=KV)$bFiZmx}=iW*;-$$SuZV5tVEe6Iz^FR2-9)n37)}XBj0IWUM>b82tRI^A?&)5Zz79DK(bX#XmM&$aZFZXN`85aUus23a!!6} z3WQ&omm1@opOTuCSe#lM6Ofo!QdAjIl$e}7`2dR+BiH8FES?-}LO>&n_fM|1a@}0d ztIx{lxOu%$IV*b*NZ5jLa-EgfW@iaSHnvQVz^};;PKukmb8h_<_({?BD2-$WKgOINEHztoD7ie;?!cG zSb0EVUP)2qKOr^`#Kx| diff --git a/__pycache__/api_admin.cpython-312.pyc b/__pycache__/api_admin.cpython-312.pyc index c3af222ee26d512c485ffafed6f645b223d85ba2..a5f9c1a8c9b270c10c6c2162c8ed7262149f361d 100644 GIT binary patch delta 84 zcmbO?k#XxpM()$Ryj%=GF#DL{Ms6QAi?C#?n9$r1iH75XEf)vdF diff --git a/__pycache__/config.cpython-312.pyc b/__pycache__/config.cpython-312.pyc index 7cae4092b76aeb831e9409b9f64779f806375fc4..ff7546005cc5266d30ca21b4a784cce06d0bf39f 100644 GIT binary patch delta 83 zcmX>n{ZyLgG%qg~0}#wUW|*;&hlj}`IN2&Dv^ce>I3_DGCBHnzFSVj1IVZm~1;Ve) hOO0{PPf1NmEKV(s2}sNmuFSVj1IVZm~CB`{FB{eCrIJFokRvwU; NS5j2DIe=*@Hvm}^6vO}k diff --git a/__pycache__/database.cpython-312.pyc b/__pycache__/database.cpython-312.pyc index 3aa5ad58815f8733e8670be75c3a6ef5d3e726d1..85fb83d8828dd10f96ee4ad701b35c47d618bf3a 100644 GIT binary patch delta 88 zcmdlzkM+_#R_@chyj%=GF#DL{Ms8MCi_m1Nn9$W diff --git a/__pycache__/database_admin.cpython-312.pyc b/__pycache__/database_admin.cpython-312.pyc index 0b0b2278fa25070222dc8f2cf106604bf3e1e9ec..7bddf549a9341783b06a36a724722a9beb4b14dc 100644 GIT binary patch delta 81 zcmdnPeVLp4G%qg~0}#wUX1I}i0<%SQvQvYDGzMPJU?$gkPDL f8snUwlA4rQoLU?ckeF9eR2fo~n4GJ=0ZE78N delta 58 zcmcc2y@#9oG%qg~0}#00WZTF+fmzWd)hfm>wW1_BC%-f$#yLMFH7T(;wHPQ?9*~$< LQdGJ4GBXnZ3p5jr diff --git a/__pycache__/external_API.cpython-312.pyc b/__pycache__/external_API.cpython-312.pyc index 98e1ac37e2a3ebff31e7b364150eb8628a8910bb..417bbd57d2e8c97fc11535457b3112a61a1b4ca5 100644 GIT binary patch delta 82 zcmbQ@yxN)jG%qg~0}#wUX1I|%n%yEY*(xTqIJKxaCMz)|zdXh-wW1_BC%-fW!mrFr gjd9LTNli*DPA!fJNX#oKsthSgOwQii&dw_Z0EdemXaE2J delta 59 zcmZ4OJjI#&G%qg~0}zB=W8TOe&93N_Y8B&`T2YdmlV6$=4B_?NYp2>Wf9RQ!59&`Wz delta 60 zcmZn`eLI{;LM6=DDY diff --git a/__pycache__/main.cpython-312.pyc b/__pycache__/main.cpython-312.pyc index 534163c09fa5f56313dc1538ad9abcae2b136d51..b66feb956185d03353209313ba554cc4d4830d4e 100644 GIT binary patch delta 84 zcmdmXgX!!IChpU`yj%=G5O>;eBX=W{MPRa3OlWaxQE^OGVoH8_j9+R+NpenpX$pj2 inU@;loS%}Klvtcv921b3S5j0NQk0mSy?HHD=Sl$igdgVs delta 61 zcmX?mgK66hChpU`yj%=GaCI*0M(#!?MXOY+7{AntlH{EH(v%qI{FKzB#NyOqpjdf8 OVqQs6<>n(yoht!}_!fu& diff --git a/__pycache__/manage.cpython-312.pyc b/__pycache__/manage.cpython-312.pyc index 659efe45357add6aa12e1dc8629e7f2141f7ea13..39cfe1a57f3551afb7cea728dea7c38d29446e55 100644 GIT binary patch delta 83 zcmX?U`oNUuG%qg~0}#wUW|*;&$AH5kIN2&Dv^ce>I3_DGCBHnzFSVj1IVZm~1;Ve) hOO0{PPf1NmEKV(s2}sNmuFSVj1IVZm~CB`{FB{eCrIJFokRvwU; NS5j2Dxr8G}2moo<6(Ils diff --git a/__pycache__/postsqldb.cpython-312.pyc b/__pycache__/postsqldb.cpython-312.pyc index 94f16ee855e7136216baa77ddad2ee3da8624d38..f9b71ec2903ff3df6dd473ae5f7ea0e06c061605 100644 GIT binary patch delta 88 zcmcb0n)TypR_@chyj%=GF#DL{M((rB7GcR&F`>n&Ma3~$i7ENzF@C8PCCNGYr6~}8 nWnOBGbAC!{QetsxaZEsBUP)19NKs;PcJoi>?LV0rA0`3-whie;?!cGSb0EV RUP)19vjEF>0T#xGi2%>b7B~O^ diff --git a/__pycache__/process.cpython-312.pyc b/__pycache__/process.cpython-312.pyc index a5ac356d5cebadcb8d80385d3de07e0c72c4ce51..e224feb4897e12e6c639bcac4a91beaf2d5ee346 100644 GIT binary patch delta 84 zcmey=z}VTy$bFiZmx}=iW*;-$$i1A|A|%-=CbT%Us5mAoF(tn|#xJ#^BsnL)GzG%1 i%u9`N&QD2AN-Rz-jtNN2D=DfBDN0Pv-h7#Pz6}7`L?2)P delta 61 zcmeBdWc<{?$bFiZmx}=irY#lP$i19d(Kgj8#xJ#^BsnL)G$qD4KP5FOu{gCDC{`Yj Om{(F%x%n0Id>a5>Nfn;} diff --git a/__pycache__/receipts_API.cpython-312.pyc b/__pycache__/receipts_API.cpython-312.pyc index eff152328572c360162ab701e1012f3930ca81f6..84170dbd6c2b75880da0c7509547d3b18e6d6157 100644 GIT binary patch delta 84 zcmdmVhw delta 61 zcmX?khjG&#M()$Ryj%=Guxq=(M(!dGMWsv%Q&ItndKOIp diff --git a/__pycache__/shopping_list_API.cpython-312.pyc b/__pycache__/shopping_list_API.cpython-312.pyc index 6af6dfdd92ca57d593dc8c6d33aaa42898e0e456..e00d284d923c1a6b11791292f76b47f1dcf99745 100644 GIT binary patch delta 83 zcmcbX{5F~AG%qg~0}#wUW|*;&N1N3mF4-z3v^ce>I3_DGCBHnzFSVj1IVZm~1;Ve) hOO0{PPf1NmEKV(s2}sNvYDGzMPJU?$gkPDL g8snUwlA4rQoLU?ckeF9eR2fo~n4G=&5A#YX0Ib~}_y7O^ delta 59 zcmdmEyVREZG%qg~0}u!=VBN@lfmzWm)hfm>wW1_BC%-f$#yLMFH7T(;wHPQ?9*~$< MQdGHFm}R9D03U-BqW}N^ diff --git a/__pycache__/webpush.cpython-312.pyc b/__pycache__/webpush.cpython-312.pyc index 34fe0561a5a15e2d3266d29a5d57256b3b67b4e5..852bad033ad17eab760ff09bb5b5103e86eeca25 100644 GIT binary patch delta 82 zcmbO(zD}I`G%qg~0}#wUX1I}iHlsyIvQvYDGzMPJU?$gkPDL g8snUwlA4rQoLU?ckeF9eR2fo~n4G=&IO7FQ0DY+*Hvj+t delta 59 zcmZ1{K3$yqG%qg~0}%YZz`T)rHlw0#s#T0%YDGzMPJU@hjB|cUYEoixYB5l(JRmWz Mq^NT9J;n>105s4P`2YX_ diff --git a/__pycache__/workshop_api.cpython-312.pyc b/__pycache__/workshop_api.cpython-312.pyc index 431faa64c39c6544cc27bbe6211882c5551f7c0a..477bf616e001134e3f84f387d5fd7cd39bff0498 100644 GIT binary patch delta 84 zcmX@Qfbq@(M()$Ryj%=GF#DL{M(!yb7LmzTF`>n&Ma3~$i7ENzF@C8PCCNGYr6~}8 iWnOBGbAC!{QetsxaZEsBUP)19NKs;P_T~c|t?mH!86Tej delta 61 zcmcb!fbr-8M()$Ryj%=GpgV_kBli>zMWu=gt?mF_s1;uT diff --git a/application/__pycache__/__init__.cpython-312.pyc b/application/__pycache__/__init__.cpython-312.pyc index d3088b4e4bb24734908180565efeaba6449edef2..8386f227c2e1cd4a85e1560dd4d3e431805938c5 100644 GIT binary patch delta 109 zcmZ3^c!-hvG%qg~0}#wUW;l`CI4m*QDkiizwWv5ID={U%JjO4zq9i#dzcdBHugpu0 zan4UkO-d|IEshCD%quCX3@J)X&Wb8n0?G}Beyz>MN+a=OlWaxQE^OGVoH8_j9+R+NpenpX$pj2 mnU@;loS%}Klvtcv921b3S5j0NQk0mS-5kuaJ(z`YP7VNf9Uwpe delta 65 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 diff --git a/application/items/__pycache__/items_processes.cpython-312.pyc b/application/items/__pycache__/items_processes.cpython-312.pyc index 9d67cee5c36a62b470c78fcdaecfefcb1d1edefc..e04e4360a05a6fe14a0c09ae9f5a5b68c050b7fa 100644 GIT binary patch delta 82 zcmZ2ry4{rfG%qg~0}#wUX1I~tk;5V{*(xTqIJKxaCMz)|zdXh-wW1_BC%-fW!mrFr gjd9LTNli*DPA!fJNX#oKsthSgOwQh%%V8`80EGe_WdHyG delta 59 zcmdmPy1wW1_BC%-f$#yLMFH7T(;wHPQ?9*~$< MQdGIQg~M0~049(Vxc~qF diff --git a/application/items/items_API.py b/application/items/items_API.py index f53b3c0..55499aa 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -7,13 +7,48 @@ import application.postsqldb as db from application.items import database_items from application.items import items_processes -items_api = Blueprint('items_api', __name__) +items_api = Blueprint('items_api', __name__, template_folder="templates", static_folder="static") + + +def update_session_user(): + database_config = config() + with psycopg2.connect(**database_config) as conn: + user = db.LoginsTable.get_washed_tuple(conn, (session['user_id'],)) + session['user'] = user + +@items_api.route("/") +@login_required +def items(): + update_session_user() + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + return render_template("index.html", + current_site=session['selected_site'], + sites=sites) + +@items_api.route("/item/") +@login_required +def item(id): + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + database_config = config() + with psycopg2.connect(**database_config) as conn: + units = db.UnitsTable.getAll(conn) + return render_template("items/item_new.html", id=id, units=units, current_site=session['selected_site'], sites=sites) + +@items_api.route("/transaction") +@login_required +def transaction(): + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + database_config = config() + with psycopg2.connect(**database_config) as conn: + units = db.UnitsTable.getAll(conn) + return render_template("transaction.html", units=units, current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}) + @items_api.route("/item//itemLink/") @login_required def itemLink(parent_id, id): sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("items/itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) + return render_template("itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) @items_api.route("/item/getTransactions", methods=["GET"]) @login_required @@ -87,7 +122,7 @@ def get_item(): return jsonify({'item': item, 'error': False, 'message': ''}) return jsonify({'item': item, 'error': True, 'message': f'method {request.method} not allowed.'}) -@items_api.route("/item/getItemsWithQOH", methods=['GET']) +@items_api.route("/getItemsWithQOH", methods=['GET']) @login_required def pagninate_items(): """ GET items from the system by passing a page, limit, search_string, sort, and order diff --git a/static/handlers/ItemListHandler.js b/application/items/static/ItemListHandler.js similarity index 99% rename from static/handlers/ItemListHandler.js rename to application/items/static/ItemListHandler.js index 3173ab3..3c6e326 100644 --- a/static/handlers/ItemListHandler.js +++ b/application/items/static/ItemListHandler.js @@ -296,7 +296,7 @@ async function setOrder(order_string) { } async function getItems(){ - const url = new URL('/item/getItemsWithQOH', window.location.origin); + const url = new URL('/items/getItemsWithQOH', window.location.origin); url.searchParams.append('page', current_page); url.searchParams.append('limit', limit); url.searchParams.append('search_text', searchText); diff --git a/static/handlers/itemEditHandler.js b/application/items/static/itemEditHandler.js similarity index 100% rename from static/handlers/itemEditHandler.js rename to application/items/static/itemEditHandler.js diff --git a/static/handlers/transactionHandler.js b/application/items/static/transactionHandler.js similarity index 100% rename from static/handlers/transactionHandler.js rename to application/items/static/transactionHandler.js diff --git a/static/handlers/transactionsHandler.js b/application/items/static/transactionsHandler.js similarity index 100% rename from static/handlers/transactionsHandler.js rename to application/items/static/transactionsHandler.js diff --git a/templates/items/index.html b/application/items/templates/index.html similarity index 99% rename from templates/items/index.html rename to application/items/templates/index.html index 1141082..39f3116 100644 --- a/templates/items/index.html +++ b/application/items/templates/index.html @@ -222,5 +222,5 @@ - + \ No newline at end of file diff --git a/templates/items/item_new.html b/application/items/templates/item_new.html similarity index 100% rename from templates/items/item_new.html rename to application/items/templates/item_new.html diff --git a/templates/items/itemlink.html b/application/items/templates/itemlink.html similarity index 100% rename from templates/items/itemlink.html rename to application/items/templates/itemlink.html diff --git a/templates/other/transaction.html b/application/items/templates/transaction.html similarity index 100% rename from templates/other/transaction.html rename to application/items/templates/transaction.html diff --git a/templates/items/transactions.html b/application/items/templates/transactions.html similarity index 100% rename from templates/items/transactions.html rename to application/items/templates/transactions.html diff --git a/application/recipes/__pycache__/__init__.cpython-312.pyc b/application/recipes/__pycache__/__init__.cpython-312.pyc index 553789b86530b87ecb40d17f9338ad802b402eda..3b6993a33f5dd685f8816f419fc1fc670b612e9c 100644 GIT binary patch delta 109 zcmZ3_c#4txG%qg~0}#wUW;l`CI4m>SDkiizwWv5ID={U%JjO4zq9i#dzcdBHugpu0 zan4UkO-d|IEshCD%quCX3@J)X&W$7@BGo/itemLink/") -@login_required -def itemLink(parent_id, id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("items/itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) - -@items_api.route("/item/getTransactions", methods=["GET"]) -def getTransactions(): - if request.method == "GET": - recordset = [] - count = 0 - logistics_info_id = int(request.args.get('logistics_info_id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 50)) - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - sql = f"SELECT * FROM {site_name}_transactions WHERE logistics_info_id=%s LIMIT %s OFFSET %s;" - recordset = database.queryTuples(conn, sql, (logistics_info_id, limit, offset), convert=True) - sql = f"SELECT COUNT(*) FROM {site_name}_transactions WHERE logistics_info_id=%s;" - count = database.queryTuple(conn, sql, payload=(logistics_info_id, )) - return jsonify({"transactions": recordset, "end": math.ceil(count[0]/limit), "error": False, "message": ""}) - return jsonify({"transactions": recordset, "end": math.ceil(count[0]/limit), "error": True, "message": "There was an error in your GET request!"}) - -@items_api.route("/item/getTransaction", methods=["GET"]) -def getTransaction(): - transaction = {} - if request.method == "GET": - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - transaction = database.__selectTuple(conn, site_name, f"{site_name}_transactions", payload=(id, ), convert=True) - return jsonify({"transaction": transaction, "error": False, "message": ""}) - return jsonify({"transaction": transaction, "error": True, "message": "There was an error in your GET request!"}) - -@items_api.route("/item/getItem") -def get_item(): - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - item = [] - with psycopg2.connect(**database_config) as conn: - item = database.getItemAllByID(conn, site_name, payload=(id, ), convert=True) - return jsonify(item=item) - -@items_api.route("/item/getItemsWithQOH", methods=['GET']) -@login_required -def pagninate_items(): - pantry_inventory = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - search_string = str(request.args.get('search_text', "")) - sort = request.args.get('sort', "") - order = request.args.get('order', "") - - view = request.args.get('view', "") - site_name = session['selected_site'] - offset = (page - 1) * limit - if sort == 'total_qoh': - sort_order = f"{sort} {order}" - else: - sort_order = f"{site_name}_items.{sort} {order}" - print(sort_order) - database_config = config() - with psycopg2.connect(**database_config) as conn: - pantry_inventory, count = database.getItemsWithQOH(conn, site_name, (search_string, limit, offset, sort_order), convert=True) - - return jsonify({'items': pantry_inventory, "end": math.ceil(count['count']/limit), 'error':False, 'message': 'Items Loaded Successfully!'}) - return jsonify({'items': pantry_inventory, "end": math.ceil(count['count']/limit), 'error':True, 'message': 'There was a problem loading the items!'}) - -@items_api.route('/item/getModalItems', methods=["GET"]) -@login_required -def getModalItems(): - recordset = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - search_string = request.args.get('search_string', '') - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = (search_string, limit, offset) - recordset, count = database.getItemsForModal(conn, site_name, payload, convert=True) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":False, "message":"items fetched succesfully!"}) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":True, "message":"There was an error with this GET statement"}) - -@items_api.route('/item/getPrefixes', methods=["GET"]) -@login_required -def getModalPrefixes(): - recordset = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = (limit, offset) - recordset, count = postsqldb.SKUPrefixTable.paginatePrefixes(conn, site_name, payload, convert=True) - return jsonify({"prefixes":recordset, "end":math.ceil(count/limit), "error":False, "message":"items fetched succesfully!"}) - return jsonify({"prefixes":recordset, "end":math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) - - -@items_api.route('/item/getZones', methods=['GET']) -def getZones(): - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - database_config = config() - site_name = session['selected_site'] - zones = [] - offset = (page - 1) * limit - payload = (limit, offset) - count = 0 - with psycopg2.connect(**database_config) as conn: - zones, count = database.getZonesWithCount(conn, site_name, payload, convert=True) - print(count, len(zones)) - return jsonify(zones=zones, endpage=math.ceil(count[0]/limit)) - - -@items_api.route('/item/getZonesBySku', methods=["GET"]) -def getZonesbySku(): - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - item_id = int(request.args.get('item_id')) - database_config = config() - site_name = session['selected_site'] - zones = [] - offset = (page - 1) * limit - payload = (item_id, limit, offset) - count = 0 - with psycopg2.connect(**database_config) as conn: - zones, count = postsqldb.ZonesTable.paginateZonesBySku(conn, site_name, payload) - print(zones, count) - return jsonify(zones=zones, endpage=math.ceil(count/limit)) - -@items_api.route('/item/getLocationsBySkuZone', methods=['get']) -def getLocationsBySkuZone(): - zone_id = int(request.args.get('zone_id', 1)) - part_id = int(request.args.get('part_id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - locations = [] - count=0 - with psycopg2.connect(**database_config) as conn: - payload = (part_id, zone_id, limit, offset) - locations, count = postsqldb.LocationsTable.paginateLocationsBySkuZone(conn, site_name, payload) - return jsonify(locations=locations, endpage=math.ceil(count/limit)) - - -@items_api.route('/item/getLocations', methods=['get']) -def getLocationsByZone(): - zone_id = int(request.args.get('zone_id', 1)) - part_id = int(request.args.get('part_id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - locations = [] - count=0 - with psycopg2.connect(**database_config) as conn: - sql = f"SELECT * FROM {site_name}_locations WHERE zone_id=%s LIMIT %s OFFSET %s;" - locations = database.queryTuples(conn, sql, (zone_id, limit, offset), convert=True) - sql = f"SELECT COUNT(*) FROM {site_name}_locations WHERE zone_id=%s;" - count = database.queryTuple(conn, sql, (zone_id, )) - return jsonify(locations=locations, endpage=math.ceil(count[0]/limit)) - -@items_api.route('/item/getBrands', methods=['GET']) -def getBrands(): - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - brands = [] - count = 0 - with psycopg2.connect(**database_config) as conn: - brands, count = database._paginateTableTuples(conn, site_name, f"{site_name}_brands", (limit, offset), convert=True) - return jsonify(brands=brands, endpage=math.ceil(count['count']/limit)) - -@items_api.route('/item/updateItem', methods=['POST']) -def updateItem(): - if request.method == "POST": - id = request.get_json()['id'] - data = request.get_json()['data'] - - database_config = config() - site_name = session['selected_site'] - - transaction_data = {} - for key in data.keys(): - for key_2 in data[key].keys(): - transaction_data[f"{key_2}_new"] = data[key][key_2] - - with psycopg2.connect(**database_config) as conn: - item = database.getItemAllByID(conn, site_name, (id, ), convert=True) - if 'item_info' in data.keys() and data['item_info'] != {}: - for key in data['item_info'].keys(): - transaction_data[f"{key}_old"] = item['item_info'][key] - item_info_id = item['item_info_id'] - item_info = database.__updateTuple(conn, site_name, f"{site_name}_item_info", {'id': item_info_id, 'update': data['item_info']}, convert=True) - if 'food_info' in data.keys() and data['food_info'] != {}: - for key in data['food_info'].keys(): - transaction_data[f"{key}_old"] = item['food_info'][key] - food_info_id = item['food_info_id'] - print(food_info_id, data['food_info']) - food_info = database.__updateTuple(conn, site_name, f"{site_name}_food_info", {'id': food_info_id, 'update': data['food_info']}, convert=True) - if 'logistics_info' in data.keys() and data['logistics_info'] != {}: - for key in data['logistics_info'].keys(): - transaction_data[f"{key}_old"] = item['logistics_info'][key] - logistics_info_id = item['logistics_info_id'] - print(logistics_info_id, data['logistics_info']) - logistics_info = database.__updateTuple(conn, site_name, f"{site_name}_logistics_info", {'id': logistics_info_id, 'update': data['logistics_info']}, convert=True) - if 'item' in data.keys() and data['item'] != {}: - for key in data['item'].keys(): - if key == "brand": - transaction_data[f"{key}_old"] = item['brand']['id'] - else: - transaction_data[f"{key}_old"] = item[key] - item = database.__updateTuple(conn, site_name, f"{site_name}_items", {'id': id, 'update': data['item']}, convert=True) - - trans = MyDataclasses.TransactionPayload( - timestamp=datetime.datetime.now(), - logistics_info_id=item['logistics_info_id'], - barcode=item['barcode'], - name=item['item_name'], - transaction_type="UPDATE", - quantity=0.0, - description="Item was updated!", - user_id=session['user_id'], - data=transaction_data - ) - database.insertTransactionsTuple(conn, site_name, trans.payload()) - - return jsonify(error=False, message="Item updated successfully!") - return jsonify(error=True, message="Unable to save, ERROR!") - -@items_api.route('/item/updateItemLink', methods=['POST']) -def updateItemLink(): - if request.method == "POST": - id = request.get_json()['id'] - conv_factor = request.get_json()['conv_factor'] - barcode = request.get_json()['barcode'] - old_conv_factor = request.get_json()['old_conv'] - - - database_config = config() - site_name = session['selected_site'] - user_id = session['user_id'] - transaction_time = datetime.datetime.now() - with psycopg2.connect(**database_config) as conn: - linkedItem = database.getItemAllByBarcode(conn, site_name, (barcode, ), convert=True) - - transaction = MyDataclasses.TransactionPayload( - timestamp=transaction_time, - logistics_info_id=linkedItem['logistics_info_id'], - barcode=barcode, - name=linkedItem['item_name'], - transaction_type='UPDATE', - quantity=0.0, - description='Link updated!', - user_id=user_id, - data={'new_conv_factor': conv_factor, 'old_conv_factor': old_conv_factor} - ) - - database.__updateTuple(conn, site_name, f"{site_name}_itemlinks", {'id': id, 'update': {'conv_factor': conv_factor}}) - database.insertTransactionsTuple(conn, site_name, transaction.payload()) - return jsonify(error=False, message="Linked Item was updated successfully") - return jsonify(error=True, message="Unable to save this change, ERROR!") - - -@items_api.route('/item/getPossibleLocations', methods=["GET"]) -@login_required -def getPossibleLocations(): - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - locations, count = postsqldb.LocationsTable.paginateLocationsWithZone(conn, site_name, (limit, offset)) - return jsonify(locations=locations, end=math.ceil(count/limit)) - -@items_api.route('/item/getLinkedItem', methods=["GET"]) -@login_required -def getLinkedItem(): - linked_item = {} - if request.method == "GET": - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - linked_item = database.__selectTuple(conn, site_name, f"{site_name}_itemlinks", (id, ), convert=True) - return jsonify({'linked_item': linked_item, 'error': False, 'message': 'Linked Item added!!'}) - return jsonify({'linked_item': linked_item, 'error': True, 'message': 'These was an error with adding to the linked list!'}) - -@items_api.route('/item/addLinkedItem', methods=["POST"]) -def addLinkedItem(): - if request.method == "POST": - parent_id = request.get_json()['parent_id'] - child_id = request.get_json()['child_id'] - conv_factor = request.get_json()['conv_factor'] - - database_config = config() - site_name = session['selected_site'] - user_id = session['user_id'] - with psycopg2.connect(**database_config) as conn: - print(parent_id, child_id, conv_factor) - parent_item = database.getItemAllByID(conn, site_name, (parent_id, ), convert=True) - child_item = database.getItemAllByID(conn, site_name, (child_id, ), convert=True) - - # i need to transact out ALL locations for child item. - pprint.pprint(child_item) - sum_child_qoh = 0 - for location in child_item['item_locations']: - print(location) - sum_child_qoh += location['quantity_on_hand'] - payload = { - 'item_id': child_item['id'], - 'logistics_info_id': child_item['logistics_info_id'], - 'barcode': child_item['barcode'], - 'item_name': child_item['item_name'], - 'transaction_type': 'Adjust Out', - 'quantity': location['quantity_on_hand'], - 'description': f'Converted to {parent_item['barcode']}', - 'cost': child_item['item_info']['cost'], - 'vendor': 1, - 'expires': False, - 'location_id': location['location_id'] - } - process.postTransaction(conn, site_name, user_id, payload) - - print(sum_child_qoh) - - primary_location = database.selectItemLocationsTuple(conn, site_name, (parent_item['id'], parent_item['logistics_info']['primary_location']['id']), convert=True) - - - payload = { - 'item_id': parent_item['id'], - 'logistics_info_id': parent_item['logistics_info_id'], - 'barcode': parent_item['barcode'], - 'item_name': parent_item['item_name'], - 'transaction_type': 'Adjust In', - 'quantity': (float(sum_child_qoh)*float(conv_factor)), - 'description': f'Converted from {child_item['barcode']}', - 'cost': child_item['item_info']['cost'], - 'vendor': 1, - 'expires': None, - 'location_id': primary_location['location_id'] - } - - pprint.pprint(payload) - result = process.postTransaction(conn, site_name, user_id, payload) - - if result['error']: - return jsonify(result) - - itemLink = MyDataclasses.ItemLinkPayload( - barcode=child_item['barcode'], - link=parent_item['id'], - data=child_item, - conv_factor=conv_factor - ) - - database.insertItemLinksTuple(conn, site_name, itemLink.payload()) - - database.__updateTuple(conn, site_name, f"{site_name}_items", {'id': child_item['id'], 'update': {'row_type': 'link'}}) - - return jsonify({'error': False, 'message': 'Linked Item added!!'}) - return jsonify({'error': True, 'message': 'These was an error with adding to the linked list!'}) - -@items_api.route('/items/addBlankItem', methods=["POST"]) -def addBlankItem(): - if request.method == "POST": - data = { - 'barcode': request.get_json()['barcode'], - 'name': request.get_json()['name'], - 'subtype': request.get_json()['subtype'] - } - pprint.pprint(data) - database_config = config() - site_name = session['selected_site'] - user_id = session['user_id'] - try: - with psycopg2.connect(**database_config) as conn: - process.postNewBlankItem(conn, site_name, user_id, data) - except Exception as error: - conn.rollback() - return jsonify({'error': True, 'message': error}) - return jsonify({'error': False, 'message': 'Item added!!'}) - return jsonify({'error': True, 'message': 'These was an error with adding Item!'}) - -@items_api.route('/items/addSKUPrefix', methods=["POST"]) -def addSKUPrefix(): - if request.method == "POST": - database_config = config() - site_name = session['selected_site'] - try: - with psycopg2.connect(**database_config) as conn: - prefix = postsqldb.SKUPrefixTable.Payload( - request.get_json()['uuid'], - request.get_json()['name'], - request.get_json()['description'] - ) - postsqldb.SKUPrefixTable.insert_tuple(conn, site_name, prefix.payload()) - except Exception as error: - conn.rollback() - return jsonify({'error': True, 'message': error}) - return jsonify({'error': False, 'message': 'Prefix added!!'}) - return jsonify({'error': True, 'message': 'These was an error with adding this Prefix!'}) - -@items_api.route('/item/addConversion', methods=['POST']) -def addConversion(): - if request.method == "POST": - item_id = request.get_json()['parent_id'] - uom_id = request.get_json()['uom_id'] - conv_factor = request.get_json()['conv_factor'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - conversion = postsqldb.ConversionsTable.Payload( - item_id, uom_id, conv_factor - ) - postsqldb.ConversionsTable.insert_tuple(conn, site_name, conversion.payload()) - - return jsonify(error=False, message="Conversion was added successfully") - return jsonify(error=True, message="Unable to save this conversion, ERROR!") - -@items_api.route('/item/deleteConversion', methods=['POST']) -def deleteConversion(): - if request.method == "POST": - conversion_id = request.get_json()['conversion_id'] - print(conversion_id) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - postsqldb.ConversionsTable.delete_item_tuple(conn, site_name, (conversion_id,)) - - return jsonify(error=False, message="Conversion was deleted successfully") - return jsonify(error=True, message="Unable to delete this conversion, ERROR!") - -@items_api.route('/item/updateConversion', methods=['POST']) -def updateConversion(): - if request.method == "POST": - conversion_id = request.get_json()['conversion_id'] - update_dictionary = request.get_json()['update'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - postsqldb.ConversionsTable.update_item_tuple(conn, site_name, {'id': conversion_id, 'update': update_dictionary}) - return jsonify(error=False, message="Conversion was updated successfully") - return jsonify(error=True, message="Unable to save this conversion, ERROR!") - -@items_api.route('/item/addPrefix', methods=['POST']) -def addPrefix(): - if request.method == "POST": - item_info_id = request.get_json()['parent_id'] - prefix_id = request.get_json()['prefix_id'] - print(item_info_id) - print(prefix_id) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - prefixes = postsqldb.ItemInfoTable.select_tuple(conn, site_name, (item_info_id,))['prefixes'] - print(prefixes) - prefixes.append(prefix_id) - postsqldb.ItemInfoTable.update_tuple(conn, site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) - return jsonify(error=False, message="Prefix was added successfully") - return jsonify(error=True, message="Unable to save this prefix, ERROR!") - -@items_api.route('/item/deletePrefix', methods=['POST']) -def deletePrefix(): - if request.method == "POST": - item_info_id = request.get_json()['item_info_id'] - prefix_id = request.get_json()['prefix_id'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - prefixes = postsqldb.ItemInfoTable.select_tuple(conn, site_name, (item_info_id,))['prefixes'] - prefixes.remove(prefix_id) - postsqldb.ItemInfoTable.update_tuple(conn, site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) - return jsonify(error=False, message="Prefix was deleted successfully") - return jsonify(error=True, message="Unable to delete this prefix, ERROR!") - -@items_api.route('/item/refreshSearchString', methods=['POST']) -def refreshSearchString(): - if request.method == "POST": - item_id = request.get_json()['item_id'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - item = postsqldb.ItemTable.getItemAllByID(conn, site_name, (item_id,)) - parameters = [f"id::{item['id']}", f"barcode::{item['barcode']}", f"name::{item['item_name']}", f"brand::{item['brand']['name']}", - f"expires::{item['food_info']['expires']}", f"row_type::{item['row_type']}", f"item_type::{item['item_type']}"] - - for prefix in item['item_info']['prefixes']: - parameters.append(f"prefix::{prefix['name']}") - - search_string = "&&".join(parameters) - postsqldb.ItemTable.update_tuple(conn, site_name, {'id': item_id, 'update':{'search_string': search_string}}) - - return jsonify(error=False, message="Search String was updated successfully") - return jsonify(error=True, message="Unable to update this search string, ERROR!") - -@items_api.route('/item/postNewItemLocation', methods=['POST']) -def postNewItemLocation(): - if request.method == "POST": - item_id = request.get_json()['item_id'] - location_id = request.get_json()['location_id'] - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - item_location = postsqldb.ItemLocationsTable.Payload( - item_id, - location_id - ) - postsqldb.ItemLocationsTable.insert_tuple(conn, site_name, item_location.payload()) - return jsonify(error=False, message="Location was added successfully") - return jsonify(error=True, message="Unable to save this location, ERROR!") \ No newline at end of file diff --git a/webserver.py b/webserver.py index b21de11..0345489 100644 --- a/webserver.py +++ b/webserver.py @@ -27,7 +27,7 @@ app.secret_key = '11gs22h2h1a4h6ah8e413a45' app.register_blueprint(api.database_api) app.register_blueprint(user_api.login_app) app.register_blueprint(api_admin.admin_api) -app.register_blueprint(items_API.items_api) +app.register_blueprint(items_API.items_api, url_prefix='/items') app.register_blueprint(external_api) app.register_blueprint(workshop_api) app.register_blueprint(receipts_API.receipt_api) @@ -86,33 +86,6 @@ def transactions(id): return render_template("items/transactions.html", id=id, current_site=session['selected_site'], sites=sites) -@app.route("/item/") -@login_required -def item(id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - database_config = config.config() - with psycopg2.connect(**database_config) as conn: - units = postsqldb.UnitsTable.getAll(conn) - return render_template("items/item_new.html", id=id, units=units, current_site=session['selected_site'], sites=sites) - -@app.route("/transaction") -@login_required -def transaction(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - database_config = config.config() - with psycopg2.connect(**database_config) as conn: - units = postsqldb.UnitsTable.getAll(conn) - return render_template("other/transaction.html", units=units, current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}) - -@app.route("/items") -@login_required -def items(): - update_session_user() - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("items/index.html", - current_site=session['selected_site'], - sites=sites) - @app.route("/api/push-subscriptions", methods=["POST"]) def create_push_subscription(): json_data = request.get_json() @@ -139,4 +112,4 @@ def home(): session['selected_site'] = sites[0] return redirect("/items") -app.run(host="0.0.0.0", port=5810, debug=True) \ No newline at end of file +app.run(host="0.0.0.0", port=5811, debug=True) \ No newline at end of file From 37b2a2da980b921026b5c7bdfd1d4a146c641e7b Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 24 May 2025 09:02:55 -0500 Subject: [PATCH 04/38] test --- .gitignore | 1 + __pycache__/MyDataclasses.cpython-312.pyc | Bin 17654 -> 17677 bytes __pycache__/api.cpython-312.pyc | Bin 23020 -> 23045 bytes __pycache__/api_admin.cpython-312.pyc | Bin 18590 -> 18613 bytes __pycache__/config.cpython-312.pyc | Bin 3534 -> 3557 bytes __pycache__/database.cpython-312.pyc | Bin 85819 -> 85842 bytes __pycache__/database_admin.cpython-312.pyc | Bin 1468 -> 1491 bytes __pycache__/external_API.cpython-312.pyc | Bin 8596 -> 8619 bytes __pycache__/group_api.cpython-312.pyc | Bin 2924 -> 2947 bytes __pycache__/main.cpython-312.pyc | Bin 44086 -> 44109 bytes __pycache__/manage.cpython-312.pyc | Bin 6857 -> 6880 bytes __pycache__/postsqldb.cpython-312.pyc | Bin 91610 -> 91633 bytes __pycache__/process.cpython-312.pyc | Bin 16498 -> 16521 bytes __pycache__/receipts_API.cpython-312.pyc | Bin 28210 -> 28233 bytes __pycache__/shopping_list_API.cpython-312.pyc | Bin 12758 -> 12781 bytes __pycache__/user_api.cpython-312.pyc | Bin 7845 -> 7868 bytes __pycache__/webpush.cpython-312.pyc | Bin 2967 -> 2990 bytes __pycache__/workshop_api.cpython-312.pyc | Bin 20549 -> 20572 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 167 -> 194 bytes .../__pycache__/postsqldb.cpython-312.pyc | Bin 94447 -> 94470 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 177 -> 200 bytes .../database_items.cpython-312.pyc | Bin 40469 -> 40492 bytes .../__pycache__/items_API.cpython-312.pyc | Bin 36455 -> 39244 bytes .../items_processes.cpython-312.pyc | Bin 6816 -> 6839 bytes application/items/items_API.py | 41 +- .../items/static}/ItemListHandler.js | 2 +- .../items/static}/itemEditHandler.js | 0 .../items/static}/transactionHandler.js | 0 .../items/static}/transactionsHandler.js | 0 .../items/templates}/index.html | 2 +- .../items/templates}/item_new.html | 0 .../items/templates}/itemlink.html | 0 .../items/templates}/transaction.html | 0 .../items/templates}/transactions.html | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 175 -> 202 bytes .../database_recipes.cpython-312.pyc | Bin 14360 -> 14383 bytes .../__pycache__/recipes_api.cpython-312.pyc | Bin 16402 -> 16425 bytes item_API.py | 546 ------------------ webserver.py | 31 +- 39 files changed, 43 insertions(+), 580 deletions(-) create mode 100644 .gitignore rename {static/handlers => application/items/static}/ItemListHandler.js (99%) rename {static/handlers => application/items/static}/itemEditHandler.js (100%) rename {static/handlers => application/items/static}/transactionHandler.js (100%) rename {static/handlers => application/items/static}/transactionsHandler.js (100%) rename {templates/items => application/items/templates}/index.html (99%) rename {templates/items => application/items/templates}/item_new.html (100%) rename {templates/items => application/items/templates}/itemlink.html (100%) rename {templates/other => application/items/templates}/transaction.html (100%) rename {templates/items => application/items/templates}/transactions.html (100%) delete mode 100644 item_API.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ba0430d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +__pycache__/ \ No newline at end of file diff --git a/__pycache__/MyDataclasses.cpython-312.pyc b/__pycache__/MyDataclasses.cpython-312.pyc index 1ac8066f7ab562dccf8dba7279f10deba35e244c..cbdb3e31acd5e4c70bf9527eda175ade907f2a1f 100644 GIT binary patch delta 84 zcmey?$=KV)$bFiZmx}=iW*;-$$SuZV5tVEe6Iz^FR2-9)n37)}XBj0IWUM>b82tRI^A?&)5Zz79DK(bX#XmM&$aZFZXN`85aUus23a!!6} z3WQ&omm1@opOTuCSe#lM6Ofo!QdAjIl$e}7`2dR+BiH8FES?-}LO>&n_fM|1a@}0d ztIx{lxOu%$IV*b*NZ5jLa-EgfW@iaSHnvQVz^};;PKukmb8h_<_({?BD2-$WKgOINEHztoD7ie;?!cG zSb0EVUP)2qKOr^`#Kx| diff --git a/__pycache__/api_admin.cpython-312.pyc b/__pycache__/api_admin.cpython-312.pyc index c3af222ee26d512c485ffafed6f645b223d85ba2..a5f9c1a8c9b270c10c6c2162c8ed7262149f361d 100644 GIT binary patch delta 84 zcmbO?k#XxpM()$Ryj%=GF#DL{Ms6QAi?C#?n9$r1iH75XEf)vdF diff --git a/__pycache__/config.cpython-312.pyc b/__pycache__/config.cpython-312.pyc index 7cae4092b76aeb831e9409b9f64779f806375fc4..ff7546005cc5266d30ca21b4a784cce06d0bf39f 100644 GIT binary patch delta 83 zcmX>n{ZyLgG%qg~0}#wUW|*;&hlj}`IN2&Dv^ce>I3_DGCBHnzFSVj1IVZm~1;Ve) hOO0{PPf1NmEKV(s2}sNmuFSVj1IVZm~CB`{FB{eCrIJFokRvwU; NS5j2DIe=*@Hvm}^6vO}k diff --git a/__pycache__/database.cpython-312.pyc b/__pycache__/database.cpython-312.pyc index 3aa5ad58815f8733e8670be75c3a6ef5d3e726d1..85fb83d8828dd10f96ee4ad701b35c47d618bf3a 100644 GIT binary patch delta 88 zcmdlzkM+_#R_@chyj%=GF#DL{Ms8MCi_m1Nn9$W diff --git a/__pycache__/database_admin.cpython-312.pyc b/__pycache__/database_admin.cpython-312.pyc index 0b0b2278fa25070222dc8f2cf106604bf3e1e9ec..7bddf549a9341783b06a36a724722a9beb4b14dc 100644 GIT binary patch delta 81 zcmdnPeVLp4G%qg~0}#wUX1I}i0<%SQvQvYDGzMPJU?$gkPDL f8snUwlA4rQoLU?ckeF9eR2fo~n4GJ=0ZE78N delta 58 zcmcc2y@#9oG%qg~0}#00WZTF+fmzWd)hfm>wW1_BC%-f$#yLMFH7T(;wHPQ?9*~$< LQdGJ4GBXnZ3p5jr diff --git a/__pycache__/external_API.cpython-312.pyc b/__pycache__/external_API.cpython-312.pyc index 98e1ac37e2a3ebff31e7b364150eb8628a8910bb..417bbd57d2e8c97fc11535457b3112a61a1b4ca5 100644 GIT binary patch delta 82 zcmbQ@yxN)jG%qg~0}#wUX1I|%n%yEY*(xTqIJKxaCMz)|zdXh-wW1_BC%-fW!mrFr gjd9LTNli*DPA!fJNX#oKsthSgOwQii&dw_Z0EdemXaE2J delta 59 zcmZ4OJjI#&G%qg~0}zB=W8TOe&93N_Y8B&`T2YdmlV6$=4B_?NYp2>Wf9RQ!59&`Wz delta 60 zcmZn`eLI{;LM6=DDY diff --git a/__pycache__/main.cpython-312.pyc b/__pycache__/main.cpython-312.pyc index 534163c09fa5f56313dc1538ad9abcae2b136d51..b66feb956185d03353209313ba554cc4d4830d4e 100644 GIT binary patch delta 84 zcmdmXgX!!IChpU`yj%=G5O>;eBX=W{MPRa3OlWaxQE^OGVoH8_j9+R+NpenpX$pj2 inU@;loS%}Klvtcv921b3S5j0NQk0mSy?HHD=Sl$igdgVs delta 61 zcmX?mgK66hChpU`yj%=GaCI*0M(#!?MXOY+7{AntlH{EH(v%qI{FKzB#NyOqpjdf8 OVqQs6<>n(yoht!}_!fu& diff --git a/__pycache__/manage.cpython-312.pyc b/__pycache__/manage.cpython-312.pyc index 659efe45357add6aa12e1dc8629e7f2141f7ea13..39cfe1a57f3551afb7cea728dea7c38d29446e55 100644 GIT binary patch delta 83 zcmX?U`oNUuG%qg~0}#wUW|*;&$AH5kIN2&Dv^ce>I3_DGCBHnzFSVj1IVZm~1;Ve) hOO0{PPf1NmEKV(s2}sNmuFSVj1IVZm~CB`{FB{eCrIJFokRvwU; NS5j2Dxr8G}2moo<6(Ils diff --git a/__pycache__/postsqldb.cpython-312.pyc b/__pycache__/postsqldb.cpython-312.pyc index 94f16ee855e7136216baa77ddad2ee3da8624d38..f9b71ec2903ff3df6dd473ae5f7ea0e06c061605 100644 GIT binary patch delta 88 zcmcb0n)TypR_@chyj%=GF#DL{M((rB7GcR&F`>n&Ma3~$i7ENzF@C8PCCNGYr6~}8 nWnOBGbAC!{QetsxaZEsBUP)19NKs;PcJoi>?LV0rA0`3-whie;?!cGSb0EV RUP)19vjEF>0T#xGi2%>b7B~O^ diff --git a/__pycache__/process.cpython-312.pyc b/__pycache__/process.cpython-312.pyc index a5ac356d5cebadcb8d80385d3de07e0c72c4ce51..e224feb4897e12e6c639bcac4a91beaf2d5ee346 100644 GIT binary patch delta 84 zcmey=z}VTy$bFiZmx}=iW*;-$$i1A|A|%-=CbT%Us5mAoF(tn|#xJ#^BsnL)GzG%1 i%u9`N&QD2AN-Rz-jtNN2D=DfBDN0Pv-h7#Pz6}7`L?2)P delta 61 zcmeBdWc<{?$bFiZmx}=irY#lP$i19d(Kgj8#xJ#^BsnL)G$qD4KP5FOu{gCDC{`Yj Om{(F%x%n0Id>a5>Nfn;} diff --git a/__pycache__/receipts_API.cpython-312.pyc b/__pycache__/receipts_API.cpython-312.pyc index eff152328572c360162ab701e1012f3930ca81f6..84170dbd6c2b75880da0c7509547d3b18e6d6157 100644 GIT binary patch delta 84 zcmdmVhw delta 61 zcmX?khjG&#M()$Ryj%=Guxq=(M(!dGMWsv%Q&ItndKOIp diff --git a/__pycache__/shopping_list_API.cpython-312.pyc b/__pycache__/shopping_list_API.cpython-312.pyc index 6af6dfdd92ca57d593dc8c6d33aaa42898e0e456..e00d284d923c1a6b11791292f76b47f1dcf99745 100644 GIT binary patch delta 83 zcmcbX{5F~AG%qg~0}#wUW|*;&N1N3mF4-z3v^ce>I3_DGCBHnzFSVj1IVZm~1;Ve) hOO0{PPf1NmEKV(s2}sNvYDGzMPJU?$gkPDL g8snUwlA4rQoLU?ckeF9eR2fo~n4G=&5A#YX0Ib~}_y7O^ delta 59 zcmdmEyVREZG%qg~0}u!=VBN@lfmzWm)hfm>wW1_BC%-f$#yLMFH7T(;wHPQ?9*~$< MQdGHFm}R9D03U-BqW}N^ diff --git a/__pycache__/webpush.cpython-312.pyc b/__pycache__/webpush.cpython-312.pyc index 34fe0561a5a15e2d3266d29a5d57256b3b67b4e5..852bad033ad17eab760ff09bb5b5103e86eeca25 100644 GIT binary patch delta 82 zcmbO(zD}I`G%qg~0}#wUX1I}iHlsyIvQvYDGzMPJU?$gkPDL g8snUwlA4rQoLU?ckeF9eR2fo~n4G=&IO7FQ0DY+*Hvj+t delta 59 zcmZ1{K3$yqG%qg~0}%YZz`T)rHlw0#s#T0%YDGzMPJU@hjB|cUYEoixYB5l(JRmWz Mq^NT9J;n>105s4P`2YX_ diff --git a/__pycache__/workshop_api.cpython-312.pyc b/__pycache__/workshop_api.cpython-312.pyc index 431faa64c39c6544cc27bbe6211882c5551f7c0a..477bf616e001134e3f84f387d5fd7cd39bff0498 100644 GIT binary patch delta 84 zcmX@Qfbq@(M()$Ryj%=GF#DL{M(!yb7LmzTF`>n&Ma3~$i7ENzF@C8PCCNGYr6~}8 iWnOBGbAC!{QetsxaZEsBUP)19NKs;P_T~c|t?mH!86Tej delta 61 zcmcb!fbr-8M()$Ryj%=GpgV_kBli>zMWu=gt?mF_s1;uT diff --git a/application/__pycache__/__init__.cpython-312.pyc b/application/__pycache__/__init__.cpython-312.pyc index d3088b4e4bb24734908180565efeaba6449edef2..8386f227c2e1cd4a85e1560dd4d3e431805938c5 100644 GIT binary patch delta 109 zcmZ3^c!-hvG%qg~0}#wUW;l`CI4m*QDkiizwWv5ID={U%JjO4zq9i#dzcdBHugpu0 zan4UkO-d|IEshCD%quCX3@J)X&Wb8n0?G}Beyz>MN+a=OlWaxQE^OGVoH8_j9+R+NpenpX$pj2 mnU@;loS%}Klvtcv921b3S5j0NQk0mS-5kuaJ(z`YP7VNf9Uwpe delta 65 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 diff --git a/application/items/__pycache__/items_processes.cpython-312.pyc b/application/items/__pycache__/items_processes.cpython-312.pyc index 9d67cee5c36a62b470c78fcdaecfefcb1d1edefc..e04e4360a05a6fe14a0c09ae9f5a5b68c050b7fa 100644 GIT binary patch delta 82 zcmZ2ry4{rfG%qg~0}#wUX1I~tk;5V{*(xTqIJKxaCMz)|zdXh-wW1_BC%-fW!mrFr gjd9LTNli*DPA!fJNX#oKsthSgOwQh%%V8`80EGe_WdHyG delta 59 zcmdmPy1wW1_BC%-f$#yLMFH7T(;wHPQ?9*~$< MQdGIQg~M0~049(Vxc~qF diff --git a/application/items/items_API.py b/application/items/items_API.py index f53b3c0..55499aa 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -7,13 +7,48 @@ import application.postsqldb as db from application.items import database_items from application.items import items_processes -items_api = Blueprint('items_api', __name__) +items_api = Blueprint('items_api', __name__, template_folder="templates", static_folder="static") + + +def update_session_user(): + database_config = config() + with psycopg2.connect(**database_config) as conn: + user = db.LoginsTable.get_washed_tuple(conn, (session['user_id'],)) + session['user'] = user + +@items_api.route("/") +@login_required +def items(): + update_session_user() + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + return render_template("index.html", + current_site=session['selected_site'], + sites=sites) + +@items_api.route("/item/") +@login_required +def item(id): + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + database_config = config() + with psycopg2.connect(**database_config) as conn: + units = db.UnitsTable.getAll(conn) + return render_template("items/item_new.html", id=id, units=units, current_site=session['selected_site'], sites=sites) + +@items_api.route("/transaction") +@login_required +def transaction(): + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + database_config = config() + with psycopg2.connect(**database_config) as conn: + units = db.UnitsTable.getAll(conn) + return render_template("transaction.html", units=units, current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}) + @items_api.route("/item//itemLink/") @login_required def itemLink(parent_id, id): sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("items/itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) + return render_template("itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) @items_api.route("/item/getTransactions", methods=["GET"]) @login_required @@ -87,7 +122,7 @@ def get_item(): return jsonify({'item': item, 'error': False, 'message': ''}) return jsonify({'item': item, 'error': True, 'message': f'method {request.method} not allowed.'}) -@items_api.route("/item/getItemsWithQOH", methods=['GET']) +@items_api.route("/getItemsWithQOH", methods=['GET']) @login_required def pagninate_items(): """ GET items from the system by passing a page, limit, search_string, sort, and order diff --git a/static/handlers/ItemListHandler.js b/application/items/static/ItemListHandler.js similarity index 99% rename from static/handlers/ItemListHandler.js rename to application/items/static/ItemListHandler.js index 3173ab3..3c6e326 100644 --- a/static/handlers/ItemListHandler.js +++ b/application/items/static/ItemListHandler.js @@ -296,7 +296,7 @@ async function setOrder(order_string) { } async function getItems(){ - const url = new URL('/item/getItemsWithQOH', window.location.origin); + const url = new URL('/items/getItemsWithQOH', window.location.origin); url.searchParams.append('page', current_page); url.searchParams.append('limit', limit); url.searchParams.append('search_text', searchText); diff --git a/static/handlers/itemEditHandler.js b/application/items/static/itemEditHandler.js similarity index 100% rename from static/handlers/itemEditHandler.js rename to application/items/static/itemEditHandler.js diff --git a/static/handlers/transactionHandler.js b/application/items/static/transactionHandler.js similarity index 100% rename from static/handlers/transactionHandler.js rename to application/items/static/transactionHandler.js diff --git a/static/handlers/transactionsHandler.js b/application/items/static/transactionsHandler.js similarity index 100% rename from static/handlers/transactionsHandler.js rename to application/items/static/transactionsHandler.js diff --git a/templates/items/index.html b/application/items/templates/index.html similarity index 99% rename from templates/items/index.html rename to application/items/templates/index.html index 1141082..39f3116 100644 --- a/templates/items/index.html +++ b/application/items/templates/index.html @@ -222,5 +222,5 @@ - + \ No newline at end of file diff --git a/templates/items/item_new.html b/application/items/templates/item_new.html similarity index 100% rename from templates/items/item_new.html rename to application/items/templates/item_new.html diff --git a/templates/items/itemlink.html b/application/items/templates/itemlink.html similarity index 100% rename from templates/items/itemlink.html rename to application/items/templates/itemlink.html diff --git a/templates/other/transaction.html b/application/items/templates/transaction.html similarity index 100% rename from templates/other/transaction.html rename to application/items/templates/transaction.html diff --git a/templates/items/transactions.html b/application/items/templates/transactions.html similarity index 100% rename from templates/items/transactions.html rename to application/items/templates/transactions.html diff --git a/application/recipes/__pycache__/__init__.cpython-312.pyc b/application/recipes/__pycache__/__init__.cpython-312.pyc index 553789b86530b87ecb40d17f9338ad802b402eda..3b6993a33f5dd685f8816f419fc1fc670b612e9c 100644 GIT binary patch delta 109 zcmZ3_c#4txG%qg~0}#wUW;l`CI4m>SDkiizwWv5ID={U%JjO4zq9i#dzcdBHugpu0 zan4UkO-d|IEshCD%quCX3@J)X&W$7@BGo/itemLink/") -@login_required -def itemLink(parent_id, id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("items/itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) - -@items_api.route("/item/getTransactions", methods=["GET"]) -def getTransactions(): - if request.method == "GET": - recordset = [] - count = 0 - logistics_info_id = int(request.args.get('logistics_info_id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 50)) - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - sql = f"SELECT * FROM {site_name}_transactions WHERE logistics_info_id=%s LIMIT %s OFFSET %s;" - recordset = database.queryTuples(conn, sql, (logistics_info_id, limit, offset), convert=True) - sql = f"SELECT COUNT(*) FROM {site_name}_transactions WHERE logistics_info_id=%s;" - count = database.queryTuple(conn, sql, payload=(logistics_info_id, )) - return jsonify({"transactions": recordset, "end": math.ceil(count[0]/limit), "error": False, "message": ""}) - return jsonify({"transactions": recordset, "end": math.ceil(count[0]/limit), "error": True, "message": "There was an error in your GET request!"}) - -@items_api.route("/item/getTransaction", methods=["GET"]) -def getTransaction(): - transaction = {} - if request.method == "GET": - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - transaction = database.__selectTuple(conn, site_name, f"{site_name}_transactions", payload=(id, ), convert=True) - return jsonify({"transaction": transaction, "error": False, "message": ""}) - return jsonify({"transaction": transaction, "error": True, "message": "There was an error in your GET request!"}) - -@items_api.route("/item/getItem") -def get_item(): - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - item = [] - with psycopg2.connect(**database_config) as conn: - item = database.getItemAllByID(conn, site_name, payload=(id, ), convert=True) - return jsonify(item=item) - -@items_api.route("/item/getItemsWithQOH", methods=['GET']) -@login_required -def pagninate_items(): - pantry_inventory = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - search_string = str(request.args.get('search_text', "")) - sort = request.args.get('sort', "") - order = request.args.get('order', "") - - view = request.args.get('view', "") - site_name = session['selected_site'] - offset = (page - 1) * limit - if sort == 'total_qoh': - sort_order = f"{sort} {order}" - else: - sort_order = f"{site_name}_items.{sort} {order}" - print(sort_order) - database_config = config() - with psycopg2.connect(**database_config) as conn: - pantry_inventory, count = database.getItemsWithQOH(conn, site_name, (search_string, limit, offset, sort_order), convert=True) - - return jsonify({'items': pantry_inventory, "end": math.ceil(count['count']/limit), 'error':False, 'message': 'Items Loaded Successfully!'}) - return jsonify({'items': pantry_inventory, "end": math.ceil(count['count']/limit), 'error':True, 'message': 'There was a problem loading the items!'}) - -@items_api.route('/item/getModalItems', methods=["GET"]) -@login_required -def getModalItems(): - recordset = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - search_string = request.args.get('search_string', '') - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = (search_string, limit, offset) - recordset, count = database.getItemsForModal(conn, site_name, payload, convert=True) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":False, "message":"items fetched succesfully!"}) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":True, "message":"There was an error with this GET statement"}) - -@items_api.route('/item/getPrefixes', methods=["GET"]) -@login_required -def getModalPrefixes(): - recordset = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = (limit, offset) - recordset, count = postsqldb.SKUPrefixTable.paginatePrefixes(conn, site_name, payload, convert=True) - return jsonify({"prefixes":recordset, "end":math.ceil(count/limit), "error":False, "message":"items fetched succesfully!"}) - return jsonify({"prefixes":recordset, "end":math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) - - -@items_api.route('/item/getZones', methods=['GET']) -def getZones(): - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - database_config = config() - site_name = session['selected_site'] - zones = [] - offset = (page - 1) * limit - payload = (limit, offset) - count = 0 - with psycopg2.connect(**database_config) as conn: - zones, count = database.getZonesWithCount(conn, site_name, payload, convert=True) - print(count, len(zones)) - return jsonify(zones=zones, endpage=math.ceil(count[0]/limit)) - - -@items_api.route('/item/getZonesBySku', methods=["GET"]) -def getZonesbySku(): - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - item_id = int(request.args.get('item_id')) - database_config = config() - site_name = session['selected_site'] - zones = [] - offset = (page - 1) * limit - payload = (item_id, limit, offset) - count = 0 - with psycopg2.connect(**database_config) as conn: - zones, count = postsqldb.ZonesTable.paginateZonesBySku(conn, site_name, payload) - print(zones, count) - return jsonify(zones=zones, endpage=math.ceil(count/limit)) - -@items_api.route('/item/getLocationsBySkuZone', methods=['get']) -def getLocationsBySkuZone(): - zone_id = int(request.args.get('zone_id', 1)) - part_id = int(request.args.get('part_id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - locations = [] - count=0 - with psycopg2.connect(**database_config) as conn: - payload = (part_id, zone_id, limit, offset) - locations, count = postsqldb.LocationsTable.paginateLocationsBySkuZone(conn, site_name, payload) - return jsonify(locations=locations, endpage=math.ceil(count/limit)) - - -@items_api.route('/item/getLocations', methods=['get']) -def getLocationsByZone(): - zone_id = int(request.args.get('zone_id', 1)) - part_id = int(request.args.get('part_id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - locations = [] - count=0 - with psycopg2.connect(**database_config) as conn: - sql = f"SELECT * FROM {site_name}_locations WHERE zone_id=%s LIMIT %s OFFSET %s;" - locations = database.queryTuples(conn, sql, (zone_id, limit, offset), convert=True) - sql = f"SELECT COUNT(*) FROM {site_name}_locations WHERE zone_id=%s;" - count = database.queryTuple(conn, sql, (zone_id, )) - return jsonify(locations=locations, endpage=math.ceil(count[0]/limit)) - -@items_api.route('/item/getBrands', methods=['GET']) -def getBrands(): - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - brands = [] - count = 0 - with psycopg2.connect(**database_config) as conn: - brands, count = database._paginateTableTuples(conn, site_name, f"{site_name}_brands", (limit, offset), convert=True) - return jsonify(brands=brands, endpage=math.ceil(count['count']/limit)) - -@items_api.route('/item/updateItem', methods=['POST']) -def updateItem(): - if request.method == "POST": - id = request.get_json()['id'] - data = request.get_json()['data'] - - database_config = config() - site_name = session['selected_site'] - - transaction_data = {} - for key in data.keys(): - for key_2 in data[key].keys(): - transaction_data[f"{key_2}_new"] = data[key][key_2] - - with psycopg2.connect(**database_config) as conn: - item = database.getItemAllByID(conn, site_name, (id, ), convert=True) - if 'item_info' in data.keys() and data['item_info'] != {}: - for key in data['item_info'].keys(): - transaction_data[f"{key}_old"] = item['item_info'][key] - item_info_id = item['item_info_id'] - item_info = database.__updateTuple(conn, site_name, f"{site_name}_item_info", {'id': item_info_id, 'update': data['item_info']}, convert=True) - if 'food_info' in data.keys() and data['food_info'] != {}: - for key in data['food_info'].keys(): - transaction_data[f"{key}_old"] = item['food_info'][key] - food_info_id = item['food_info_id'] - print(food_info_id, data['food_info']) - food_info = database.__updateTuple(conn, site_name, f"{site_name}_food_info", {'id': food_info_id, 'update': data['food_info']}, convert=True) - if 'logistics_info' in data.keys() and data['logistics_info'] != {}: - for key in data['logistics_info'].keys(): - transaction_data[f"{key}_old"] = item['logistics_info'][key] - logistics_info_id = item['logistics_info_id'] - print(logistics_info_id, data['logistics_info']) - logistics_info = database.__updateTuple(conn, site_name, f"{site_name}_logistics_info", {'id': logistics_info_id, 'update': data['logistics_info']}, convert=True) - if 'item' in data.keys() and data['item'] != {}: - for key in data['item'].keys(): - if key == "brand": - transaction_data[f"{key}_old"] = item['brand']['id'] - else: - transaction_data[f"{key}_old"] = item[key] - item = database.__updateTuple(conn, site_name, f"{site_name}_items", {'id': id, 'update': data['item']}, convert=True) - - trans = MyDataclasses.TransactionPayload( - timestamp=datetime.datetime.now(), - logistics_info_id=item['logistics_info_id'], - barcode=item['barcode'], - name=item['item_name'], - transaction_type="UPDATE", - quantity=0.0, - description="Item was updated!", - user_id=session['user_id'], - data=transaction_data - ) - database.insertTransactionsTuple(conn, site_name, trans.payload()) - - return jsonify(error=False, message="Item updated successfully!") - return jsonify(error=True, message="Unable to save, ERROR!") - -@items_api.route('/item/updateItemLink', methods=['POST']) -def updateItemLink(): - if request.method == "POST": - id = request.get_json()['id'] - conv_factor = request.get_json()['conv_factor'] - barcode = request.get_json()['barcode'] - old_conv_factor = request.get_json()['old_conv'] - - - database_config = config() - site_name = session['selected_site'] - user_id = session['user_id'] - transaction_time = datetime.datetime.now() - with psycopg2.connect(**database_config) as conn: - linkedItem = database.getItemAllByBarcode(conn, site_name, (barcode, ), convert=True) - - transaction = MyDataclasses.TransactionPayload( - timestamp=transaction_time, - logistics_info_id=linkedItem['logistics_info_id'], - barcode=barcode, - name=linkedItem['item_name'], - transaction_type='UPDATE', - quantity=0.0, - description='Link updated!', - user_id=user_id, - data={'new_conv_factor': conv_factor, 'old_conv_factor': old_conv_factor} - ) - - database.__updateTuple(conn, site_name, f"{site_name}_itemlinks", {'id': id, 'update': {'conv_factor': conv_factor}}) - database.insertTransactionsTuple(conn, site_name, transaction.payload()) - return jsonify(error=False, message="Linked Item was updated successfully") - return jsonify(error=True, message="Unable to save this change, ERROR!") - - -@items_api.route('/item/getPossibleLocations', methods=["GET"]) -@login_required -def getPossibleLocations(): - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - locations, count = postsqldb.LocationsTable.paginateLocationsWithZone(conn, site_name, (limit, offset)) - return jsonify(locations=locations, end=math.ceil(count/limit)) - -@items_api.route('/item/getLinkedItem', methods=["GET"]) -@login_required -def getLinkedItem(): - linked_item = {} - if request.method == "GET": - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - linked_item = database.__selectTuple(conn, site_name, f"{site_name}_itemlinks", (id, ), convert=True) - return jsonify({'linked_item': linked_item, 'error': False, 'message': 'Linked Item added!!'}) - return jsonify({'linked_item': linked_item, 'error': True, 'message': 'These was an error with adding to the linked list!'}) - -@items_api.route('/item/addLinkedItem', methods=["POST"]) -def addLinkedItem(): - if request.method == "POST": - parent_id = request.get_json()['parent_id'] - child_id = request.get_json()['child_id'] - conv_factor = request.get_json()['conv_factor'] - - database_config = config() - site_name = session['selected_site'] - user_id = session['user_id'] - with psycopg2.connect(**database_config) as conn: - print(parent_id, child_id, conv_factor) - parent_item = database.getItemAllByID(conn, site_name, (parent_id, ), convert=True) - child_item = database.getItemAllByID(conn, site_name, (child_id, ), convert=True) - - # i need to transact out ALL locations for child item. - pprint.pprint(child_item) - sum_child_qoh = 0 - for location in child_item['item_locations']: - print(location) - sum_child_qoh += location['quantity_on_hand'] - payload = { - 'item_id': child_item['id'], - 'logistics_info_id': child_item['logistics_info_id'], - 'barcode': child_item['barcode'], - 'item_name': child_item['item_name'], - 'transaction_type': 'Adjust Out', - 'quantity': location['quantity_on_hand'], - 'description': f'Converted to {parent_item['barcode']}', - 'cost': child_item['item_info']['cost'], - 'vendor': 1, - 'expires': False, - 'location_id': location['location_id'] - } - process.postTransaction(conn, site_name, user_id, payload) - - print(sum_child_qoh) - - primary_location = database.selectItemLocationsTuple(conn, site_name, (parent_item['id'], parent_item['logistics_info']['primary_location']['id']), convert=True) - - - payload = { - 'item_id': parent_item['id'], - 'logistics_info_id': parent_item['logistics_info_id'], - 'barcode': parent_item['barcode'], - 'item_name': parent_item['item_name'], - 'transaction_type': 'Adjust In', - 'quantity': (float(sum_child_qoh)*float(conv_factor)), - 'description': f'Converted from {child_item['barcode']}', - 'cost': child_item['item_info']['cost'], - 'vendor': 1, - 'expires': None, - 'location_id': primary_location['location_id'] - } - - pprint.pprint(payload) - result = process.postTransaction(conn, site_name, user_id, payload) - - if result['error']: - return jsonify(result) - - itemLink = MyDataclasses.ItemLinkPayload( - barcode=child_item['barcode'], - link=parent_item['id'], - data=child_item, - conv_factor=conv_factor - ) - - database.insertItemLinksTuple(conn, site_name, itemLink.payload()) - - database.__updateTuple(conn, site_name, f"{site_name}_items", {'id': child_item['id'], 'update': {'row_type': 'link'}}) - - return jsonify({'error': False, 'message': 'Linked Item added!!'}) - return jsonify({'error': True, 'message': 'These was an error with adding to the linked list!'}) - -@items_api.route('/items/addBlankItem', methods=["POST"]) -def addBlankItem(): - if request.method == "POST": - data = { - 'barcode': request.get_json()['barcode'], - 'name': request.get_json()['name'], - 'subtype': request.get_json()['subtype'] - } - pprint.pprint(data) - database_config = config() - site_name = session['selected_site'] - user_id = session['user_id'] - try: - with psycopg2.connect(**database_config) as conn: - process.postNewBlankItem(conn, site_name, user_id, data) - except Exception as error: - conn.rollback() - return jsonify({'error': True, 'message': error}) - return jsonify({'error': False, 'message': 'Item added!!'}) - return jsonify({'error': True, 'message': 'These was an error with adding Item!'}) - -@items_api.route('/items/addSKUPrefix', methods=["POST"]) -def addSKUPrefix(): - if request.method == "POST": - database_config = config() - site_name = session['selected_site'] - try: - with psycopg2.connect(**database_config) as conn: - prefix = postsqldb.SKUPrefixTable.Payload( - request.get_json()['uuid'], - request.get_json()['name'], - request.get_json()['description'] - ) - postsqldb.SKUPrefixTable.insert_tuple(conn, site_name, prefix.payload()) - except Exception as error: - conn.rollback() - return jsonify({'error': True, 'message': error}) - return jsonify({'error': False, 'message': 'Prefix added!!'}) - return jsonify({'error': True, 'message': 'These was an error with adding this Prefix!'}) - -@items_api.route('/item/addConversion', methods=['POST']) -def addConversion(): - if request.method == "POST": - item_id = request.get_json()['parent_id'] - uom_id = request.get_json()['uom_id'] - conv_factor = request.get_json()['conv_factor'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - conversion = postsqldb.ConversionsTable.Payload( - item_id, uom_id, conv_factor - ) - postsqldb.ConversionsTable.insert_tuple(conn, site_name, conversion.payload()) - - return jsonify(error=False, message="Conversion was added successfully") - return jsonify(error=True, message="Unable to save this conversion, ERROR!") - -@items_api.route('/item/deleteConversion', methods=['POST']) -def deleteConversion(): - if request.method == "POST": - conversion_id = request.get_json()['conversion_id'] - print(conversion_id) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - postsqldb.ConversionsTable.delete_item_tuple(conn, site_name, (conversion_id,)) - - return jsonify(error=False, message="Conversion was deleted successfully") - return jsonify(error=True, message="Unable to delete this conversion, ERROR!") - -@items_api.route('/item/updateConversion', methods=['POST']) -def updateConversion(): - if request.method == "POST": - conversion_id = request.get_json()['conversion_id'] - update_dictionary = request.get_json()['update'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - postsqldb.ConversionsTable.update_item_tuple(conn, site_name, {'id': conversion_id, 'update': update_dictionary}) - return jsonify(error=False, message="Conversion was updated successfully") - return jsonify(error=True, message="Unable to save this conversion, ERROR!") - -@items_api.route('/item/addPrefix', methods=['POST']) -def addPrefix(): - if request.method == "POST": - item_info_id = request.get_json()['parent_id'] - prefix_id = request.get_json()['prefix_id'] - print(item_info_id) - print(prefix_id) - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - prefixes = postsqldb.ItemInfoTable.select_tuple(conn, site_name, (item_info_id,))['prefixes'] - print(prefixes) - prefixes.append(prefix_id) - postsqldb.ItemInfoTable.update_tuple(conn, site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) - return jsonify(error=False, message="Prefix was added successfully") - return jsonify(error=True, message="Unable to save this prefix, ERROR!") - -@items_api.route('/item/deletePrefix', methods=['POST']) -def deletePrefix(): - if request.method == "POST": - item_info_id = request.get_json()['item_info_id'] - prefix_id = request.get_json()['prefix_id'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - prefixes = postsqldb.ItemInfoTable.select_tuple(conn, site_name, (item_info_id,))['prefixes'] - prefixes.remove(prefix_id) - postsqldb.ItemInfoTable.update_tuple(conn, site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) - return jsonify(error=False, message="Prefix was deleted successfully") - return jsonify(error=True, message="Unable to delete this prefix, ERROR!") - -@items_api.route('/item/refreshSearchString', methods=['POST']) -def refreshSearchString(): - if request.method == "POST": - item_id = request.get_json()['item_id'] - - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - item = postsqldb.ItemTable.getItemAllByID(conn, site_name, (item_id,)) - parameters = [f"id::{item['id']}", f"barcode::{item['barcode']}", f"name::{item['item_name']}", f"brand::{item['brand']['name']}", - f"expires::{item['food_info']['expires']}", f"row_type::{item['row_type']}", f"item_type::{item['item_type']}"] - - for prefix in item['item_info']['prefixes']: - parameters.append(f"prefix::{prefix['name']}") - - search_string = "&&".join(parameters) - postsqldb.ItemTable.update_tuple(conn, site_name, {'id': item_id, 'update':{'search_string': search_string}}) - - return jsonify(error=False, message="Search String was updated successfully") - return jsonify(error=True, message="Unable to update this search string, ERROR!") - -@items_api.route('/item/postNewItemLocation', methods=['POST']) -def postNewItemLocation(): - if request.method == "POST": - item_id = request.get_json()['item_id'] - location_id = request.get_json()['location_id'] - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - item_location = postsqldb.ItemLocationsTable.Payload( - item_id, - location_id - ) - postsqldb.ItemLocationsTable.insert_tuple(conn, site_name, item_location.payload()) - return jsonify(error=False, message="Location was added successfully") - return jsonify(error=True, message="Unable to save this location, ERROR!") \ No newline at end of file diff --git a/webserver.py b/webserver.py index b21de11..0345489 100644 --- a/webserver.py +++ b/webserver.py @@ -27,7 +27,7 @@ app.secret_key = '11gs22h2h1a4h6ah8e413a45' app.register_blueprint(api.database_api) app.register_blueprint(user_api.login_app) app.register_blueprint(api_admin.admin_api) -app.register_blueprint(items_API.items_api) +app.register_blueprint(items_API.items_api, url_prefix='/items') app.register_blueprint(external_api) app.register_blueprint(workshop_api) app.register_blueprint(receipts_API.receipt_api) @@ -86,33 +86,6 @@ def transactions(id): return render_template("items/transactions.html", id=id, current_site=session['selected_site'], sites=sites) -@app.route("/item/") -@login_required -def item(id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - database_config = config.config() - with psycopg2.connect(**database_config) as conn: - units = postsqldb.UnitsTable.getAll(conn) - return render_template("items/item_new.html", id=id, units=units, current_site=session['selected_site'], sites=sites) - -@app.route("/transaction") -@login_required -def transaction(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - database_config = config.config() - with psycopg2.connect(**database_config) as conn: - units = postsqldb.UnitsTable.getAll(conn) - return render_template("other/transaction.html", units=units, current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}) - -@app.route("/items") -@login_required -def items(): - update_session_user() - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("items/index.html", - current_site=session['selected_site'], - sites=sites) - @app.route("/api/push-subscriptions", methods=["POST"]) def create_push_subscription(): json_data = request.get_json() @@ -139,4 +112,4 @@ def home(): session['selected_site'] = sites[0] return redirect("/items") -app.run(host="0.0.0.0", port=5810, debug=True) \ No newline at end of file +app.run(host="0.0.0.0", port=5811, debug=True) \ No newline at end of file From 5933cc7338c550ae85b9e2b2920325ff6559f2d9 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 24 May 2025 09:10:19 -0500 Subject: [PATCH 05/38] working on gitignore --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index ba0430d..50375b1 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -__pycache__/ \ No newline at end of file +__pycache__/ +sites/ \ No newline at end of file From aec8f85a4dc510e8814d0d04759b25b73c602195 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 31 May 2025 17:37:17 -0500 Subject: [PATCH 06/38] Transferred posting new item to new api --- application/database_payloads.py | 461 ++++++++++++++++++ application/items/database_items.py | 207 +++++++- application/items/items_API.py | 96 ++-- application/items/items_processes.py | 93 ++++ application/items/sql/insertFoodInfoTuple.sql | 4 + application/items/sql/insertItemInfoTuple.sql | 4 + .../sql/insertItemLocationsTuple copy.sql | 4 + application/items/sql/insertItemTuple.sql | 5 + .../items/sql/insertLogisticsInfoTuple.sql | 4 + application/items/static/ItemListHandler.js | 8 +- application/items/static/itemEditHandler.js | 34 +- .../items/static/transactionsHandler.js | 4 +- application/items/templates/item_new.html | 2 +- application/items/templates/transactions.html | 2 +- application/postsqldb.py | 61 +++ webserver.py | 19 - 16 files changed, 927 insertions(+), 81 deletions(-) create mode 100644 application/database_payloads.py create mode 100644 application/items/sql/insertFoodInfoTuple.sql create mode 100644 application/items/sql/insertItemInfoTuple.sql create mode 100644 application/items/sql/insertItemLocationsTuple copy.sql create mode 100644 application/items/sql/insertItemTuple.sql create mode 100644 application/items/sql/insertLogisticsInfoTuple.sql diff --git a/application/database_payloads.py b/application/database_payloads.py new file mode 100644 index 0000000..ba7907e --- /dev/null +++ b/application/database_payloads.py @@ -0,0 +1,461 @@ +from dataclasses import dataclass, field +import json, datetime +from database import lst2pgarr + +@dataclass +class LogisticsInfoPayload: + barcode: str + primary_location: int + primary_zone: int + auto_issue_location: int + auto_issue_zone: int + + def payload(self): + return (self.barcode, + self.primary_location, + self.primary_zone, + self.auto_issue_location, + self.auto_issue_zone) + +@dataclass +class ItemInfoPayload: + barcode: str + packaging: str = "" + uom_quantity: float = 1.0 + uom: int = 1 + cost: float = 0.0 + safety_stock: float = 0.0 + lead_time_days: float = 0.0 + ai_pick: bool = False + prefixes: list = field(default_factory=list) + + def __post_init__(self): + if not isinstance(self.barcode, str): + raise TypeError(f"barcode must be of type str; not {type(self.barcode)}") + + def payload(self): + return ( + self.barcode, + self.packaging, + self.uom_quantity, + self.uom, + self.cost, + self.safety_stock, + self.lead_time_days, + self.ai_pick, + lst2pgarr(self.prefixes) + ) + +@dataclass +class FoodInfoPayload: + food_groups: list = field(default_factory=list) + ingrediants: list = field(default_factory=list) + nutrients: dict = field(default_factory=dict) + expires: bool = False + default_expiration: float = 0.0 + + def payload(self): + return ( + lst2pgarr(self.food_groups), + lst2pgarr(self.ingrediants), + json.dumps(self.nutrients), + self.expires, + self.default_expiration + ) + + +@dataclass +class ItemsPayload: + barcode: str + item_name: str + item_info_id: int + logistics_info_id: int + food_info_id: int + brand: int = 0 + description: str = "" + tags: list = field(default_factory=list) + links: dict = field(default_factory=dict) + row_type: str = "" + item_type: str = "" + search_string: str ="" + + + def payload(self): + return ( + self.barcode, + self.item_name, + self.brand, + self.description, + lst2pgarr(self.tags), + json.dumps(self.links), + self.item_info_id, + self.logistics_info_id, + self.food_info_id, + self.row_type, + self.item_type, + self.search_string + ) + + # done +@dataclass +class TransactionPayload: + timestamp: datetime.datetime + logistics_info_id: int + barcode: str + name: str + transaction_type: str + quantity: float + description: str + user_id: int + data: dict = field(default_factory=dict) + + def payload(self): + return ( + self.timestamp, + self.logistics_info_id, + self.barcode, + self.name, + self.transaction_type, + self.quantity, + self.description, + self.user_id, + json.dumps(self.data) + ) + +@dataclass +class CostLayerPayload: + aquisition_date: datetime.datetime + quantity: float + cost: float + currency_type: str + vendor: int = 0 + expires: datetime.datetime = None + + def payload(self): + return ( + self.aquisition_date, + self.quantity, + self.cost, + self.currency_type, + self.expires, + self.vendor + ) + +@dataclass +class ItemLinkPayload: + barcode: str + link: int + data: dict = field(default_factory=dict) + conv_factor: float = 1 + + def __post_init__(self): + if not isinstance(self.barcode, str): + raise TypeError(f"barcode must be of type str; not {type(self.barocde)}") + if not isinstance(self.link, int): + raise TypeError(f"link must be of type str; not {type(self.link)}") + + def payload(self): + return ( + self.barcode, + self.link, + json.dumps(self.data), + self.conv_factor + ) + +@dataclass +class GroupPayload: + name: str + description: str + group_type: str = "plain" + + def payload(self): + return ( + self.name, + self.description, + self.group_type + ) + +@dataclass +class GroupItemPayload: + uuid: str + gr_id: int + item_type: str + item_name:str + uom: str + qty: float = 0.0 + item_id: int = None + links: dict = field(default_factory=dict) + + def payload(self): + return ( + self.uuid, + self.gr_id, + self.item_type, + self.item_name, + self.uom, + self.qty, + self.item_id, + json.dumps(self.links) + ) + +@dataclass +class RecipeItemPayload: + uuid: str + rp_id: int + item_type: str + item_name:str + uom: str + qty: float = 0.0 + item_id: int = None + links: dict = field(default_factory=dict) + + def payload(self): + return ( + self.uuid, + self.rp_id, + self.item_type, + self.item_name, + self.uom, + self.qty, + self.item_id, + json.dumps(self.links) + ) + +@dataclass +class RecipePayload: + name: str + author: int + description: str + creation_date: datetime.datetime = field(init=False) + instructions: list = field(default_factory=list) + picture_path: str = "" + + def __post_init__(self): + self.creation_date = datetime.datetime.now() + + def payload(self): + return ( + self.name, + self.author, + self.description, + self.creation_date, + lst2pgarr(self.instructions), + self.picture_path + ) + +@dataclass +class ReceiptItemPayload: + type: str + receipt_id: int + barcode: str + name: str + qty: float = 1.0 + uom: str = "each" + data: dict = field(default_factory=dict) + status: str = "Unresolved" + + def payload(self): + return ( + self.type, + self.receipt_id, + self.barcode, + self.name, + self.qty, + self.uom, + json.dumps(self.data), + self.status + ) + +@dataclass +class ReceiptPayload: + receipt_id: str + receipt_status: str = "Unresolved" + date_submitted: datetime.datetime = field(init=False) + submitted_by: int = 0 + vendor_id: int = 1 + files: dict = field(default_factory=dict) + + def __post_init__(self): + self.date_submitted = datetime.datetime.now() + + def payload(self): + return ( + self.receipt_id, + self.receipt_status, + self.date_submitted, + self.submitted_by, + self.vendor_id, + json.dumps(self.files) + ) + +@dataclass +class ShoppingListItemPayload: + uuid: str + sl_id: int + item_type: str + item_name: str + uom: str + qty: float + item_id: int = None + links: dict = field(default_factory=dict) + + def payload(self): + return ( + self.uuid, + self.sl_id, + self.item_type, + self.item_name, + self.uom, + self.qty, + self.item_id, + json.dumps(self.links) + ) + +@dataclass +class ShoppingListPayload: + name: str + description: str + author: int + type: str = "plain" + creation_date: datetime.datetime = field(init=False) + + def __post_init__(self): + self.creation_date = datetime.datetime.now() + + def payload(self): + return ( + self.name, + self.description, + self.author, + self.creation_date, + self.type + ) + + +# DONE +@dataclass +class SitePayload: + site_name: str + site_description: str + site_owner_id: int + default_zone: str = None + default_auto_issue_location: str = None + default_primary_location: str = None + creation_date: datetime.datetime = field(init=False) + flags: dict = field(default_factory=dict) + + def __post_init__(self): + self.creation_date = datetime.datetime.now() + + def payload(self): + return ( + self.site_name, + self.site_description, + self.creation_date, + self.site_owner_id, + json.dumps(self.flags), + self.default_zone, + self.default_auto_issue_location, + self.default_primary_location + ) + +#DONE +@dataclass +class RolePayload: + role_name:str + role_description:str + site_id: int + flags: dict = field(default_factory=dict) + + def payload(self): + return ( + self.role_name, + self.role_description, + self.site_id, + json.dumps(self.flags) + ) + +@dataclass +class ItemLocationPayload: + part_id: int + location_id: int + quantity_on_hand: float = 0.0 + cost_layers: list = field(default_factory=list) + + def __post_init__(self): + if not isinstance(self.part_id, int): + raise TypeError(f"part_id must be of type int; not {type(self.part_id)}") + if not isinstance(self.location_id, int): + raise TypeError(f"part_id must be of type int; not {type(self.part_id)}") + + def payload(self): + return ( + self.part_id, + self.location_id, + self.quantity_on_hand, + lst2pgarr(self.cost_layers) + ) + +@dataclass +class SiteManager: + site_name: str + admin_user: tuple + default_zone: int + default_location: int + description: str + create_order: list = field(init=False) + drop_order: list = field(init=False) + + def __post_init__(self): + self.create_order = [ + "logins", + "sites", + "roles", + "units", + "cost_layers", + "linked_items", + "brands", + "food_info", + "item_info", + "zones", + "locations", + "logistics_info", + "transactions", + "item", + "vendors", + "groups", + "group_items", + "receipts", + "receipt_items", + "recipes", + "recipe_items", + "shopping_lists", + "shopping_list_items", + "item_locations", + "conversions", + "sku_prefix" + ] + self.drop_order = [ + "item_info", + "items", + "cost_layers", + "linked_items", + "transactions", + "brands", + "food_info", + "logistics_info", + "zones", + "locations", + "vendors", + "group_items", + "groups", + "receipt_items", + "receipts", + "recipe_items", + "recipes", + "shopping_list_items", + "shopping_lists", + "item_locations", + "conversions", + "sku_prefix" + ] \ No newline at end of file diff --git a/application/items/database_items.py b/application/items/database_items.py index deb2aea..bf87643 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -3,7 +3,6 @@ import config import psycopg2 import datetime - def getTransactions(site:str, payload: tuple, convert:bool=True): database_config = config.config() sql = f"SELECT * FROM {site}_transactions WHERE logistics_info_id=%s LIMIT %s OFFSET %s;" @@ -181,6 +180,23 @@ def getLocation(site:str, payload:tuple, convert:bool=True): return selected except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) + +def getZone(site:str, payload:tuple, convert:bool=True): + selected = () + database_config = config.config() + sql = f"SELECT * FROM {site}_zones WHERE id=%s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + selected = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + selected = rows + return selected + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) def paginateZonesBySku(site: str, payload: tuple, convert=True): database_config = config.config() @@ -513,6 +529,162 @@ def insertItemLocationsTuple(conn, site, payload, convert=True): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def insertLogisticsInfoTuple(conn, site, payload, convert=False): + """insert payload into logistics_info table for site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): (barcode[str], primary_location[str], auto_issue_location[str], dynamic_locations[jsonb], + location_data[jsonb], quantity_on_hand[float]) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + logistics_info = () + with open(f"application/items/sql/insertLogisticsInfoTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + logistics_info = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + logistics_info = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + + return logistics_info + +def insertItemInfoTuple(conn, site, payload, convert=False): + """inserts payload into the item_info table of site + + Args: + conn (_T_connector@connect): Postgresql Connector + site_name (str): + payload (tuple): (barcode[str], linked_items[lst2pgarr], shopping_lists[lst2pgarr], recipes[lst2pgarr], groups[lst2pgarr], + packaging[str], uom[str], cost[float], safety_stock[float], lead_time_days[float], ai_pick[bool]) + convert (bool optional): Determines if to return tuple as dictionary. DEFAULTS to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + item_info = () + with open(f"application/items/sql/insertItemInfoTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + item_info = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + item_info = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return item_info + +def insertFoodInfoTuple(conn, site, payload, convert=False): + """insert payload into food_info table for site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (_type_): (ingrediants[lst2pgarr], food_groups[lst2pgarr], nutrients[jsonstr], expires[bool]) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + food_info = () + with open(f"application/items/sql/insertFoodInfoTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + food_info = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + food_info = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return food_info + +def insertItemTuple(conn, site, payload, convert=False): + """insert payload into items table for site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): (barcode[str], item_name[str], brand[int], description[str], + tags[lst2pgarr], links[jsonb], item_info_id[int], logistics_info_id[int], + food_info_id[int], row_type[str], item_type[str], search_string[str]) + convert (bool, optional): Determines if to return tuple as a dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + item = () + with open(f"application/items/sql/insertItemTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + item = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + item = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + + return item + +def insertItemLocationsTuple(conn, site, payload, convert=False): + """insert payload into item_locations table for site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): (part_id[int], location_id[int], quantity_on_hand[float], cost_layers[lst2pgarr]) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + location = () + with open(f"application/items/sql/insertItemLocationsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + location = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + location = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return location + def selectItemLocationsTuple(site_name, payload, convert=True): """select a single tuple from ItemLocations table for site_name @@ -569,7 +741,37 @@ def selectCostLayersTuple(site_name, payload, convert=True): return cost_layers except Exception as error: return error - + +def selectSiteTuple(payload, convert=True): + """Select a single Site from sites using site_name + + Args: + conn (_T_connector@connect): Postgresql Connector + payload (tuple): (site_name,) + convert (bool, optional): determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: selected tuples + """ + site = () + database_config = config.config() + select_site_sql = f"SELECT * FROM sites WHERE site_name = %s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(select_site_sql, payload) + rows = cur.fetchone() + if rows and convert: + site = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + site = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, select_site_sql) + return site + def postDeleteCostLayer(site_name, payload, convert=True, conn=None): """ payload (tuple): (table_to_delete_from, tuple_id) @@ -660,7 +862,6 @@ def postAddTransaction(site, payload, convert=False, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) - def postInsertItemLink(site, payload, convert=True, conn=None): """insert payload into itemlinks table of site diff --git a/application/items/items_API.py b/application/items/items_API.py index 55499aa..40b0d7c 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -1,7 +1,22 @@ -from flask import Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response -import psycopg2, math, json, datetime, main, copy, requests, process, database, pprint, MyDataclasses +# 3rd Party imports +from flask import ( + Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response + ) +import psycopg2 +import math +import json +import datetime +import copy +import requests +import pprint + +# applications imports from config import config, sites_config from main import unfoldCostLayers +import process +import database +import main +import MyDataclasses from user_api import login_required import application.postsqldb as db from application.items import database_items @@ -25,14 +40,14 @@ def items(): current_site=session['selected_site'], sites=sites) -@items_api.route("/item/") +@items_api.route("/") @login_required def item(id): sites = [site[1] for site in main.get_sites(session['user']['sites'])] database_config = config() with psycopg2.connect(**database_config) as conn: units = db.UnitsTable.getAll(conn) - return render_template("items/item_new.html", id=id, units=units, current_site=session['selected_site'], sites=sites) + return render_template("item_new.html", id=id, units=units, current_site=session['selected_site'], sites=sites) @items_api.route("/transaction") @login_required @@ -43,14 +58,31 @@ def transaction(): units = db.UnitsTable.getAll(conn) return render_template("transaction.html", units=units, current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}) +@items_api.route("/transactions/") +@login_required +def transactions(id): + """This is the main endpoint to reach the webpage for an items transaction history + --- + parameters: + - name: id + in: path + type: integer + required: true + default: all + responses: + 200: + description: Returns the transactions.html webpage for the item with passed ID + """ + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + return render_template("transactions.html", id=id, current_site=session['selected_site'], sites=sites) -@items_api.route("/item//itemLink/") +@items_api.route("//itemLink/") @login_required def itemLink(parent_id, id): sites = [site[1] for site in main.get_sites(session['user']['sites'])] return render_template("itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) -@items_api.route("/item/getTransactions", methods=["GET"]) +@items_api.route("/getTransactions", methods=["GET"]) @login_required def getTransactions(): """ GET a subquery of transactions by passing a logistics_info_id, limit, and page @@ -71,7 +103,7 @@ def getTransactions(): return jsonify({"transactions": recordset, "end": math.ceil(count/limit), "error": False, "message": ""}) return jsonify({"transactions": recordset, "end": math.ceil(count/limit), "error": True, "message": f"method {request.method} is not allowed."}) -@items_api.route("/item/getTransaction", methods=["GET"]) +@items_api.route("/getTransaction", methods=["GET"]) @login_required def getTransaction(): """ GET a transaction from the system by passing an ID @@ -97,7 +129,7 @@ def getTransaction(): return jsonify({"transaction": transaction, "error": False, "message": ""}) return jsonify({"transaction": transaction, "error": True, "message": f"method {request.method} is not allowed."}) -@items_api.route("/item/getItem", methods=["GET"]) +@items_api.route("/getItem", methods=["GET"]) @login_required def get_item(): """ GET item from system by passing its ID @@ -183,7 +215,7 @@ def pagninate_items(): return jsonify({'items': items, "end": math.ceil(count/limit), 'error':False, 'message': 'Items Loaded Successfully!'}) return jsonify({'items': items, "end": math.ceil(count/limit), 'error':True, 'message': 'There was a problem loading the items!'}) -@items_api.route('/item/getModalItems', methods=["GET"]) +@items_api.route('/getModalItems', methods=["GET"]) @login_required def getModalItems(): """ GET items from the system by passing a page, limit, search_string. For select modals @@ -223,7 +255,7 @@ def getModalItems(): return jsonify({"items":recordset, "end":math.ceil(count/limit), "error":False, "message":"items fetched succesfully!"}) return jsonify({"items":recordset, "end":math.ceil(count/limit), "error":True, "message": f"method {request.method} is not allowed."}) -@items_api.route('/item/getPrefixes', methods=["GET"]) +@items_api.route('/getPrefixes', methods=["GET"]) @login_required def getModalPrefixes(): """ GET prefixes from the system by passing page and limit. @@ -259,7 +291,7 @@ def getModalPrefixes(): return jsonify({"prefixes":recordset, "end":math.ceil(count/limit), "error":False, "message":"items fetched succesfully!"}) return jsonify({"prefixes":recordset, "end":math.ceil(count/limit), "error":True, "message":f"method {request.method} is not allowed!"}) -@items_api.route('/item/getZonesBySku', methods=["GET"]) +@items_api.route('/getZonesBySku', methods=["GET"]) @login_required def getZonesbySku(): """ GET zones by sku by passing page, limit, item_id @@ -301,7 +333,7 @@ def getZonesbySku(): return jsonify({'zones': zones, 'endpage': math.ceil(count/limit), 'error':False, 'message': f''}) return jsonify({'zones': zones, 'endpage': math.ceil(count/limit), 'error':False, 'message': f'method {request.method} not allowed.'}) -@items_api.route('/item/getLocationsBySkuZone', methods=['GET']) +@items_api.route('/getLocationsBySkuZone', methods=['GET']) @login_required def getLocationsBySkuZone(): """ GET locations by sku by passing page, limit, item_id, zone_id @@ -351,7 +383,7 @@ def getLocationsBySkuZone(): return jsonify({'locations': locations, 'endpage': math.ceil(count/limit), 'error': False, 'message': f''}) return jsonify({'locations': locations, 'endpage': math.ceil(count/limit), 'error': True, 'message': f'method {request.method} is not allowed.'}) -@items_api.route('/item/getBrands', methods=['GET']) +@items_api.route('/getBrands', methods=['GET']) @login_required def getBrands(): """ GET brands from the system by passing page, limit @@ -386,7 +418,7 @@ def getBrands(): return jsonify({'brands': brands, 'endpage': math.ceil(count/limit), 'error': True, 'message': f'method {request.method} is not allowed.'}) -@items_api.route('/item/updateItem', methods=['POST']) +@items_api.route('/updateItem', methods=['POST']) @login_required def updateItem(): """ POST update to item in the system by passing item_id, data @@ -414,7 +446,7 @@ def updateItem(): return jsonify({'error': False, 'message': f'Item was updated successfully!'}) return jsonify({'error': True, 'message': f'method {request.method} is not allowed!'}) -@items_api.route('/item/updateItemLink', methods=['POST']) +@items_api.route('/updateItemLink', methods=['POST']) @login_required def updateItemLink(): """ UPDATE item link by passing id, conv_factor, barcode, old_conv @@ -462,7 +494,7 @@ def updateItemLink(): return jsonify({'error': True, 'message': f"method {request.method} not allowed."}) -@items_api.route('/item/getPossibleLocations', methods=["GET"]) +@items_api.route('/getPossibleLocations', methods=["GET"]) @login_required def getPossibleLocations(): """ GET locations with zones by passing a page and limit @@ -496,7 +528,7 @@ def getPossibleLocations(): return jsonify({'locations': locations, 'end':math.ceil(count/limit), 'error':False, 'message': f'Locations received successfully!'}) return jsonify({'locations': locations, 'end':math.ceil(count/limit), 'error':True, 'message': f'method {request.method} not allowed.'}) -@items_api.route('/item/getLinkedItem', methods=["GET"]) +@items_api.route('/getLinkedItem', methods=["GET"]) @login_required def getLinkedItem(): """ GET itemlink from system by passing an ID @@ -521,7 +553,7 @@ def getLinkedItem(): return jsonify({'linked_item': linked_item, 'error': False, 'message': 'Linked Item added!!'}) return jsonify({'linked_item': linked_item, 'error': True, 'message': f'method {request.method} not allowed'}) -@items_api.route('/item/addLinkedItem', methods=["POST"]) +@items_api.route('/addLinkedItem', methods=["POST"]) @login_required def addLinkedItem(): """ POST a link between items by passing a parent_id, a child_id, conv_factor @@ -569,7 +601,7 @@ def addLinkedItem(): return jsonify({'error': False, 'message': 'Linked Item added!!'}) return jsonify({'error': True, 'message': 'These was an error with adding to the linked list!'}) -@items_api.route('/items/addBlankItem', methods=["POST"]) +@items_api.route('/addBlankItem', methods=["POST"]) def addBlankItem(): if request.method == "POST": data = { @@ -577,20 +609,16 @@ def addBlankItem(): 'name': request.get_json()['name'], 'subtype': request.get_json()['subtype'] } - pprint.pprint(data) database_config = config() site_name = session['selected_site'] user_id = session['user_id'] - try: - with psycopg2.connect(**database_config) as conn: - process.postNewBlankItem(conn, site_name, user_id, data) - except Exception as error: - conn.rollback() - return jsonify({'error': True, 'message': error}) + + items_processes.postNewBlankItem(site_name, user_id, data) + return jsonify({'error': False, 'message': 'Item added!!'}) return jsonify({'error': True, 'message': 'These was an error with adding Item!'}) -@items_api.route('/items/addSKUPrefix', methods=["POST"]) +@items_api.route('/addSKUPrefix', methods=["POST"]) def addSKUPrefix(): if request.method == "POST": database_config = config() @@ -609,7 +637,7 @@ def addSKUPrefix(): return jsonify({'error': False, 'message': 'Prefix added!!'}) return jsonify({'error': True, 'message': 'These was an error with adding this Prefix!'}) -@items_api.route('/item/addConversion', methods=['POST']) +@items_api.route('/addConversion', methods=['POST']) def addConversion(): if request.method == "POST": item_id = request.get_json()['parent_id'] @@ -627,7 +655,7 @@ def addConversion(): return jsonify(error=False, message="Conversion was added successfully") return jsonify(error=True, message="Unable to save this conversion, ERROR!") -@items_api.route('/item/deleteConversion', methods=['POST']) +@items_api.route('/deleteConversion', methods=['POST']) def deleteConversion(): if request.method == "POST": conversion_id = request.get_json()['conversion_id'] @@ -640,7 +668,7 @@ def deleteConversion(): return jsonify(error=False, message="Conversion was deleted successfully") return jsonify(error=True, message="Unable to delete this conversion, ERROR!") -@items_api.route('/item/updateConversion', methods=['POST']) +@items_api.route('/updateConversion', methods=['POST']) def updateConversion(): if request.method == "POST": conversion_id = request.get_json()['conversion_id'] @@ -653,7 +681,7 @@ def updateConversion(): return jsonify(error=False, message="Conversion was updated successfully") return jsonify(error=True, message="Unable to save this conversion, ERROR!") -@items_api.route('/item/addPrefix', methods=['POST']) +@items_api.route('/addPrefix', methods=['POST']) def addPrefix(): if request.method == "POST": item_info_id = request.get_json()['parent_id'] @@ -670,7 +698,7 @@ def addPrefix(): return jsonify(error=False, message="Prefix was added successfully") return jsonify(error=True, message="Unable to save this prefix, ERROR!") -@items_api.route('/item/deletePrefix', methods=['POST']) +@items_api.route('/deletePrefix', methods=['POST']) def deletePrefix(): if request.method == "POST": item_info_id = request.get_json()['item_info_id'] @@ -685,7 +713,7 @@ def deletePrefix(): return jsonify(error=False, message="Prefix was deleted successfully") return jsonify(error=True, message="Unable to delete this prefix, ERROR!") -@items_api.route('/item/refreshSearchString', methods=['POST']) +@items_api.route('/refreshSearchString', methods=['POST']) def refreshSearchString(): if request.method == "POST": item_id = request.get_json()['item_id'] @@ -706,7 +734,7 @@ def refreshSearchString(): return jsonify(error=False, message="Search String was updated successfully") return jsonify(error=True, message="Unable to update this search string, ERROR!") -@items_api.route('/item/postNewItemLocation', methods=['POST']) +@items_api.route('/postNewItemLocation', methods=['POST']) def postNewItemLocation(): if request.method == "POST": item_id = request.get_json()['item_id'] diff --git a/application/items/items_processes.py b/application/items/items_processes.py index 1d3d1c8..8aca57c 100644 --- a/application/items/items_processes.py +++ b/application/items/items_processes.py @@ -1,9 +1,102 @@ from application.items import database_items import application.postsqldb as db +import application.database_payloads as dbPayloads import config import datetime import psycopg2 +import json + +def postNewBlankItem(site_name: str, user_id: int, data: dict, conn=None): + """ data = {'barcode', 'name', 'subtype'}""" + self_conn = False + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = False + self_conn = True + + site = database_items.selectSiteTuple((site_name,)) + default_zone = database_items.getZone(site_name,(site['default_zone'], )) + default_location = database_items.getLocation(site_name, (site['default_primary_location'],)) + uuid = f"{default_zone['name']}@{default_location['name']}" + + # create logistics info + logistics_info = dbPayloads.LogisticsInfoPayload( + barcode=data['barcode'], + primary_location=site['default_primary_location'], + primary_zone=site['default_zone'], + auto_issue_location=site['default_auto_issue_location'], + auto_issue_zone=site['default_zone'] + ) + + # create item info + item_info = dbPayloads.ItemInfoPayload(data['barcode']) + + # create Food Info + food_info = dbPayloads.FoodInfoPayload() + + logistics_info_id = 0 + item_info_id = 0 + food_info_id = 0 + brand_id = 1 + + + logistics_info = database_items.insertLogisticsInfoTuple(conn, site_name, logistics_info.payload(), convert=True) + item_info = database_items.insertItemInfoTuple(conn, site_name, item_info.payload(), convert=True) + food_info = database_items.insertFoodInfoTuple(conn, site_name, food_info.payload(), convert=True) + + name = data['name'] + name = name.replace("'", "@&apostraphe&") + description = "" + tags = db.lst2pgarr([]) + links = json.dumps({}) + search_string = f"&&{data['barcode']}&&{name}&&" + + + item = dbPayloads.ItemsPayload( + data['barcode'], + data['name'], + item_info['id'], + logistics_info['id'], + food_info['id'], + brand=brand_id, + row_type="single", + item_type=data['subtype'], + search_string=search_string + ) + + item = database_items.insertItemTuple(conn, site_name, item.payload(), convert=True) + + with conn.cursor() as cur: + cur.execute(f"SELECT id FROM {site_name}_locations WHERE uuid=%s;", (uuid, )) + location_id = cur.fetchone()[0] + + dbPayloads.ItemLocationPayload + item_location = dbPayloads.ItemLocationPayload(item['id'], location_id) + database_items.insertItemLocationsTuple(conn, site_name, item_location.payload()) + + + creation_tuple = dbPayloads.TransactionPayload( + datetime.datetime.now(), + logistics_info['id'], + item['barcode'], + item['item_name'], + "SYSTEM", + 0.0, + "Item added to the System!", + user_id, + {'location': uuid} + ) + + database_items.postAddTransaction(site_name, creation_tuple.payload(), conn=conn) + + if self_conn: + conn.commit() + conn.close() + return False + + return conn def postLinkedItem(site, payload): """ diff --git a/application/items/sql/insertFoodInfoTuple.sql b/application/items/sql/insertFoodInfoTuple.sql new file mode 100644 index 0000000..08afdf2 --- /dev/null +++ b/application/items/sql/insertFoodInfoTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_food_info +(ingrediants, food_groups, nutrients, expires, default_expiration) +VALUES (%s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/items/sql/insertItemInfoTuple.sql b/application/items/sql/insertItemInfoTuple.sql new file mode 100644 index 0000000..154e9d3 --- /dev/null +++ b/application/items/sql/insertItemInfoTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_item_info +(barcode, packaging, uom_quantity, uom, cost, safety_stock, lead_time_days, ai_pick, prefixes) +VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/items/sql/insertItemLocationsTuple copy.sql b/application/items/sql/insertItemLocationsTuple copy.sql new file mode 100644 index 0000000..67abbd4 --- /dev/null +++ b/application/items/sql/insertItemLocationsTuple copy.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_item_locations +(part_id, location_id, quantity_on_hand, cost_layers) +VALUES (%s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/items/sql/insertItemTuple.sql b/application/items/sql/insertItemTuple.sql new file mode 100644 index 0000000..4c9b940 --- /dev/null +++ b/application/items/sql/insertItemTuple.sql @@ -0,0 +1,5 @@ +INSERT INTO %%site_name%%_items +(barcode, item_name, brand, description, tags, links, item_info_id, logistics_info_id, +food_info_id, row_type, item_type, search_string) +VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/items/sql/insertLogisticsInfoTuple.sql b/application/items/sql/insertLogisticsInfoTuple.sql new file mode 100644 index 0000000..312ee1c --- /dev/null +++ b/application/items/sql/insertLogisticsInfoTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_logistics_info +(barcode, primary_location, primary_zone, auto_issue_location, auto_issue_zone) +VALUES (%s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/items/static/ItemListHandler.js b/application/items/static/ItemListHandler.js index 3c6e326..72077d0 100644 --- a/application/items/static/ItemListHandler.js +++ b/application/items/static/ItemListHandler.js @@ -214,12 +214,12 @@ async function updateTableElements(){ let viewOp = document.createElement('a') viewOp.innerHTML = `edit ` viewOp.setAttribute('class', 'uk-button uk-button-default uk-button-small') - viewOp.href = `/item/${items[i].id}` + viewOp.href = `/items/${items[i].id}` let historyOp = document.createElement('a') historyOp.innerHTML = `history ` historyOp.setAttribute('class', 'uk-button uk-button-default uk-button-small') - historyOp.href = `/transactions/${items[i].id}` + historyOp.href = `/items/transactions/${items[i].id}` buttonGroup.append(viewOp, historyOp) opsCell.append(buttonGroup) @@ -263,8 +263,8 @@ async function updateListElements(){ let footer = document.createElement('div') footer.classList.add('uk-card-footer') - footer.innerHTML = `edit - History` + footer.innerHTML = `edit + History` listItem.append(header) if(!items[i].description == ""){ diff --git a/application/items/static/itemEditHandler.js b/application/items/static/itemEditHandler.js index a7e594e..88edcfc 100644 --- a/application/items/static/itemEditHandler.js +++ b/application/items/static/itemEditHandler.js @@ -581,7 +581,7 @@ async function updateLinkedItemsTable() { let editOp = document.createElement('a') editOp.setAttribute('class', 'uk-button uk-button-default') editOp.setAttribute('uk-icon', 'icon: pencil') - editOp.setAttribute('href', `/item/${item['id']}/itemLink/${linked_items[i].id}`) + editOp.setAttribute('href', `/items/${item['id']}/itemLink/${linked_items[i].id}`) opCell.append(editOp) @@ -755,7 +755,7 @@ async function openEditConversionsModal(conversion) { async function postConversion() { - const response = await fetch(`/item/addConversion`, { + const response = await fetch(`/items/addConversion`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -786,7 +786,7 @@ async function postConversion() { } async function postConversionUpdate(id, update) { - const response = await fetch(`/item/updateConversion`, { + const response = await fetch(`/items/updateConversion`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -816,7 +816,7 @@ async function postConversionUpdate(id, update) { } async function deleteConversion(conversion_id) { - const response = await fetch(`/item/deleteConversion`, { + const response = await fetch(`/items/deleteConversion`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -858,7 +858,7 @@ async function openAddPrefixesModal() { } async function postPrefix(id) { - const response = await fetch(`/item/addPrefix`, { + const response = await fetch(`/items/addPrefix`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -887,7 +887,7 @@ async function postPrefix(id) { } async function deletePrefix(prefix_id) { - const response = await fetch(`/item/deletePrefix`, { + const response = await fetch(`/items/deletePrefix`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -920,7 +920,7 @@ async function deletePrefix(prefix_id) { let prefix_limit = 2; async function fetchPrefixes() { - const url = new URL('/item/getPrefixes', window.location.origin); + const url = new URL('/items/getPrefixes', window.location.origin); url.searchParams.append('page', current_page); url.searchParams.append('limit', prefix_limit); const response = await fetch(url); @@ -930,7 +930,7 @@ async function fetchPrefixes() { let brands_limit = 25; async function fetchBrands() { - const url = new URL('/item/getBrands', window.location.origin); + const url = new URL('/items/getBrands', window.location.origin); url.searchParams.append('page', current_page); url.searchParams.append('limit', brands_limit); const response = await fetch(url); @@ -940,7 +940,7 @@ async function fetchBrands() { let items_limit = 25; async function fetchItems() { - const url = new URL('/item/getModalItems', window.location.origin); + const url = new URL('/items/getModalItems', window.location.origin); url.searchParams.append('page', current_page); url.searchParams.append('limit', items_limit); url.searchParams.append('search_string', search_string); @@ -951,7 +951,7 @@ async function fetchItems() { let zones_limit = 20; async function fetchZones(){ - const url = new URL('/item/getZonesBySku', window.location.origin); + const url = new URL('/items/getZonesBySku', window.location.origin); url.searchParams.append('page', current_page); url.searchParams.append('limit', zones_limit); url.searchParams.append('item_id', item.id); @@ -962,7 +962,7 @@ async function fetchZones(){ let locations_limit = 10; async function fetchLocations(logis) { - const url = new URL('/item/getLocationsBySkuZone', window.location.origin); + const url = new URL('/items/getLocationsBySkuZone', window.location.origin); url.searchParams.append('page', current_page); url.searchParams.append('limit', locations_limit); url.searchParams.append('part_id', item.id); @@ -977,7 +977,7 @@ async function fetchLocations(logis) { } async function fetchItem() { - const url = new URL('/item/getItem', window.location.origin); + const url = new URL('/items/getItem', window.location.origin); url.searchParams.append('id', item_id); const response = await fetch(url); data = await response.json(); @@ -1106,7 +1106,7 @@ async function addLinkedItem(parent_id, child_id) { if(Number.isInteger(conversion_factor)){ document.getElementById('conversion_factor').classList.remove('uk-form-danger') - const response = await fetch(`/item/addLinkedItem`, { + const response = await fetch(`/items/addLinkedItem`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -1145,7 +1145,7 @@ async function addLinkedItem(parent_id, child_id) { } async function saveUpdated() { - const response = await fetch(`/item/updateItem`, { + const response = await fetch(`/items/updateItem`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -1175,7 +1175,7 @@ async function saveUpdated() { }; async function refreshSearchString() { - const response = await fetch(`/item/refreshSearchString`, { + const response = await fetch(`/items/refreshSearchString`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -1370,7 +1370,7 @@ var new_locations_current_page = 1 var new_locations_end_page = 1 var new_locations_limit = 25 async function fetch_new_locations() { - const url = new URL('/item/getPossibleLocations', window.location.origin); + const url = new URL('/items/getPossibleLocations', window.location.origin); url.searchParams.append('page', new_locations_current_page); url.searchParams.append('limit', new_locations_limit); const response = await fetch(url); @@ -1380,7 +1380,7 @@ async function fetch_new_locations() { }; async function postNewItemLocation(location_id) { - const response = await fetch(`/item/postNewItemLocation`, { + const response = await fetch(`/items/postNewItemLocation`, { method: 'POST', headers: { 'Content-Type': 'application/json', diff --git a/application/items/static/transactionsHandler.js b/application/items/static/transactionsHandler.js index b517777..e2cbca7 100644 --- a/application/items/static/transactionsHandler.js +++ b/application/items/static/transactionsHandler.js @@ -105,7 +105,7 @@ async function getItem(id) { } async function getTransaction(id) { - const url = new URL('/item/getTransaction', window.location.origin); + const url = new URL('/items/getTransaction', window.location.origin); url.searchParams.append('id', id); const response = await fetch(url); data = await response.json(); @@ -114,7 +114,7 @@ async function getTransaction(id) { } async function getTransactions(){ - const url = new URL('/item/getTransactions', window.location.origin); + const url = new URL('/items/getTransactions', window.location.origin); url.searchParams.append('page', pagination_current); url.searchParams.append('limit', limit); url.searchParams.append('logistics_info_id', item.logistics_info_id) diff --git a/application/items/templates/item_new.html b/application/items/templates/item_new.html index ddbeafe..d4e4a11 100644 --- a/application/items/templates/item_new.html +++ b/application/items/templates/item_new.html @@ -691,6 +691,6 @@ - + \ No newline at end of file diff --git a/application/items/templates/transactions.html b/application/items/templates/transactions.html index 928ef6b..dc8cc35 100644 --- a/application/items/templates/transactions.html +++ b/application/items/templates/transactions.html @@ -115,6 +115,6 @@ - + \ No newline at end of file diff --git a/application/postsqldb.py b/application/postsqldb.py index 9a8e00c..64844f8 100644 --- a/application/postsqldb.py +++ b/application/postsqldb.py @@ -2409,3 +2409,64 @@ class ItemLinkPayload: json.dumps(self.data), self.conv_factor ) + +@dataclass +class LogisticsInfoPayload: + barcode: str + primary_location: int + primary_zone: int + auto_issue_location: int + auto_issue_zone: int + + def payload(self): + return (self.barcode, + self.primary_location, + self.primary_zone, + self.auto_issue_location, + self.auto_issue_zone) + +@dataclass +class ItemInfoPayload: + barcode: str + packaging: str = "" + uom_quantity: float = 1.0 + uom: int = 1 + cost: float = 0.0 + safety_stock: float = 0.0 + lead_time_days: float = 0.0 + ai_pick: bool = False + prefixes: list = field(default_factory=list) + + def __post_init__(self): + if not isinstance(self.barcode, str): + raise TypeError(f"barcode must be of type str; not {type(self.barcode)}") + + def payload(self): + return ( + self.barcode, + self.packaging, + self.uom_quantity, + self.uom, + self.cost, + self.safety_stock, + self.lead_time_days, + self.ai_pick, + lst2pgarr(self.prefixes) + ) + +@dataclass +class FoodInfoPayload: + food_groups: list = field(default_factory=list) + ingrediants: list = field(default_factory=list) + nutrients: dict = field(default_factory=dict) + expires: bool = False + default_expiration: float = 0.0 + + def payload(self): + return ( + lst2pgarr(self.food_groups), + lst2pgarr(self.ingrediants), + json.dumps(self.nutrients), + self.expires, + self.default_expiration + ) \ No newline at end of file diff --git a/webserver.py b/webserver.py index 0345489..8965fea 100644 --- a/webserver.py +++ b/webserver.py @@ -67,25 +67,6 @@ def inject_user(): return dict(username="") -@app.route("/transactions/") -@login_required -def transactions(id): - """This is the main endpoint to reach the webpage for an items transaction history - --- - parameters: - - name: id - in: path - type: integer - required: true - default: all - responses: - 200: - description: Returns the transactions.html webpage for the item with passed ID - """ - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("items/transactions.html", id=id, current_site=session['selected_site'], sites=sites) - - @app.route("/api/push-subscriptions", methods=["POST"]) def create_push_subscription(): json_data = request.get_json() From a006668ac19710fd6cb41994d429d4a54fb82202 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 31 May 2025 18:24:32 -0500 Subject: [PATCH 07/38] Finished clean up of posting new item with api --- application/items/database_items.py | 131 ++++++++++++++++++--------- application/items/items_API.py | 31 ++++++- application/items/items_processes.py | 10 +- 3 files changed, 119 insertions(+), 53 deletions(-) diff --git a/application/items/database_items.py b/application/items/database_items.py index bf87643..8f59929 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -510,14 +510,33 @@ def insertCostLayersTuple(site, payload, convert=True, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) -def insertItemLocationsTuple(conn, site, payload, convert=True): +def insertItemLocationsTuple(site, payload, convert=True, conn=None): + """insert payload into item_locations table for site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): (part_id[int], location_id[int], quantity_on_hand[float], cost_layers[lst2pgarr]) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ location = () + self_conn = False database_config = config.config() with open(f"application/items/sql/insertItemLocationsTuple.sql", "r+") as file: sql = file.read().replace("%%site_name%%", site) try: - conn = psycopg2.connect(**database_config) - conn.autocommit = False + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + with conn.cursor() as cur: cur.execute(sql, payload) rows = cur.fetchone() @@ -525,11 +544,16 @@ def insertItemLocationsTuple(conn, site, payload, convert=True): location = postsqldb.tupleDictionaryFactory(cur.description, rows) elif rows and not convert: location = rows - return location, conn + + if self_conn: + conn.commit() + conn.close() + + return location except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) -def insertLogisticsInfoTuple(conn, site, payload, convert=False): +def insertLogisticsInfoTuple(site, payload, convert=True, conn=None): """insert payload into logistics_info table for site Args: @@ -546,9 +570,17 @@ def insertLogisticsInfoTuple(conn, site, payload, convert=False): tuple or dict: inserted tuple """ logistics_info = () + self_conn = False + with open(f"application/items/sql/insertLogisticsInfoTuple.sql", "r+") as file: sql = file.read().replace("%%site_name%%", site) try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + with conn.cursor() as cur: cur.execute(sql, payload) rows = cur.fetchone() @@ -556,12 +588,17 @@ def insertLogisticsInfoTuple(conn, site, payload, convert=False): logistics_info = postsqldb.tupleDictionaryFactory(cur.description, rows) elif rows and not convert: logistics_info = rows + + if self_conn: + conn.commit() + conn.close() + + return logistics_info + except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) - return logistics_info - -def insertItemInfoTuple(conn, site, payload, convert=False): +def insertItemInfoTuple(site, payload, convert=True, conn=None): """inserts payload into the item_info table of site Args: @@ -578,9 +615,16 @@ def insertItemInfoTuple(conn, site, payload, convert=False): tuple or dict: inserted tuple """ item_info = () + self_conn = False with open(f"application/items/sql/insertItemInfoTuple.sql", "r+") as file: sql = file.read().replace("%%site_name%%", site) try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + with conn.cursor() as cur: cur.execute(sql, payload) rows = cur.fetchone() @@ -588,11 +632,15 @@ def insertItemInfoTuple(conn, site, payload, convert=False): item_info = postsqldb.tupleDictionaryFactory(cur.description, rows) elif rows and not convert: item_info = rows + if self_conn: + conn.commit() + conn.close() + + return item_info except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) - return item_info - -def insertFoodInfoTuple(conn, site, payload, convert=False): + +def insertFoodInfoTuple(site, payload, convert=True, conn=None): """insert payload into food_info table for site Args: @@ -608,9 +656,16 @@ def insertFoodInfoTuple(conn, site, payload, convert=False): tuple or dict: inserted tuple """ food_info = () + self_conn = False with open(f"application/items/sql/insertFoodInfoTuple.sql", "r+") as file: sql = file.read().replace("%%site_name%%", site) try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + with conn.cursor() as cur: cur.execute(sql, payload) rows = cur.fetchone() @@ -618,11 +673,16 @@ def insertFoodInfoTuple(conn, site, payload, convert=False): food_info = postsqldb.tupleDictionaryFactory(cur.description, rows) elif rows and not convert: food_info = rows + + if self_conn: + conn.commit() + conn.close() + + return food_info except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) - return food_info -def insertItemTuple(conn, site, payload, convert=False): +def insertItemTuple(site, payload, convert=True, conn=None): """insert payload into items table for site Args: @@ -640,9 +700,16 @@ def insertItemTuple(conn, site, payload, convert=False): tuple or dict: inserted tuple """ item = () + self_conn = False with open(f"application/items/sql/insertItemTuple.sql", "r+") as file: sql = file.read().replace("%%site_name%%", site) try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + with conn.cursor() as cur: cur.execute(sql, payload) rows = cur.fetchone() @@ -650,40 +717,14 @@ def insertItemTuple(conn, site, payload, convert=False): item = postsqldb.tupleDictionaryFactory(cur.description, rows) elif rows and not convert: item = rows + + if self_conn: + conn.commit() + conn.close() + + return item except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) - - return item - -def insertItemLocationsTuple(conn, site, payload, convert=False): - """insert payload into item_locations table for site - - Args: - conn (_T_connector@connect): Postgresql Connector - site (str): - payload (tuple): (part_id[int], location_id[int], quantity_on_hand[float], cost_layers[lst2pgarr]) - convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. - - Raises: - DatabaseError: - - Returns: - tuple or dict: inserted tuple - """ - location = () - with open(f"application/items/sql/insertItemLocationsTuple.sql", "r+") as file: - sql = file.read().replace("%%site_name%%", site) - try: - with conn.cursor() as cur: - cur.execute(sql, payload) - rows = cur.fetchone() - if rows and convert: - location = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - location = rows - except Exception as error: - raise postsqldb.DatabaseError(error, payload, sql) - return location def selectItemLocationsTuple(site_name, payload, convert=True): """select a single tuple from ItemLocations table for site_name diff --git a/application/items/items_API.py b/application/items/items_API.py index 40b0d7c..29969ff 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -417,7 +417,6 @@ def getBrands(): return jsonify({'brands': brands, 'endpage': math.ceil(count/limit), 'error': False, 'message': f''}) return jsonify({'brands': brands, 'endpage': math.ceil(count/limit), 'error': True, 'message': f'method {request.method} is not allowed.'}) - @items_api.route('/updateItem', methods=['POST']) @login_required def updateItem(): @@ -493,7 +492,6 @@ def updateItemLink(): return jsonify({'error':False, 'message': "Linked Item was updated successfully"}) return jsonify({'error': True, 'message': f"method {request.method} not allowed."}) - @items_api.route('/getPossibleLocations', methods=["GET"]) @login_required def getPossibleLocations(): @@ -603,13 +601,40 @@ def addLinkedItem(): @items_api.route('/addBlankItem', methods=["POST"]) def addBlankItem(): + """ POST new Blank item to the system given a barcode, item_name, subtype + --- + parameters: + - in: query + name: barcode + schema: + type: string + default: 1 + required: true + description: barcode for the item + - in: query + name: item_name + schema: + type: string + default: 1 + required: true + description: name of the blank item + - in: query + name: subtype + schema: + type: string + default: 1 + required: true + description: type of item this is categorized to be. + responses: + 200: + description: Item added successfully. + """ if request.method == "POST": data = { 'barcode': request.get_json()['barcode'], 'name': request.get_json()['name'], 'subtype': request.get_json()['subtype'] } - database_config = config() site_name = session['selected_site'] user_id = session['user_id'] diff --git a/application/items/items_processes.py b/application/items/items_processes.py index 8aca57c..453bbba 100644 --- a/application/items/items_processes.py +++ b/application/items/items_processes.py @@ -42,9 +42,9 @@ def postNewBlankItem(site_name: str, user_id: int, data: dict, conn=None): brand_id = 1 - logistics_info = database_items.insertLogisticsInfoTuple(conn, site_name, logistics_info.payload(), convert=True) - item_info = database_items.insertItemInfoTuple(conn, site_name, item_info.payload(), convert=True) - food_info = database_items.insertFoodInfoTuple(conn, site_name, food_info.payload(), convert=True) + logistics_info = database_items.insertLogisticsInfoTuple(site_name, logistics_info.payload(), conn=conn) + item_info = database_items.insertItemInfoTuple(site_name, item_info.payload(), conn=conn) + food_info = database_items.insertFoodInfoTuple(site_name, food_info.payload(), conn=conn) name = data['name'] name = name.replace("'", "@&apostraphe&") @@ -66,7 +66,7 @@ def postNewBlankItem(site_name: str, user_id: int, data: dict, conn=None): search_string=search_string ) - item = database_items.insertItemTuple(conn, site_name, item.payload(), convert=True) + item = database_items.insertItemTuple(site_name, item.payload(), conn=conn) with conn.cursor() as cur: cur.execute(f"SELECT id FROM {site_name}_locations WHERE uuid=%s;", (uuid, )) @@ -74,7 +74,7 @@ def postNewBlankItem(site_name: str, user_id: int, data: dict, conn=None): dbPayloads.ItemLocationPayload item_location = dbPayloads.ItemLocationPayload(item['id'], location_id) - database_items.insertItemLocationsTuple(conn, site_name, item_location.payload()) + database_items.insertItemLocationsTuple(site_name, item_location.payload(), conn=conn) creation_tuple = dbPayloads.TransactionPayload( From 009e3b6b1d7aa75809f1a4e178f7b0503d08836c Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 31 May 2025 19:26:20 -0500 Subject: [PATCH 08/38] Migrated SKUPrefix to the new api design --- application/database_payloads.py | 15 ++ application/items/database_items.py | 209 +++++++++++------- application/items/items_API.py | 47 +++- application/items/items_processes.py | 15 +- .../items/sql/insertSKUPrefixTuple.sql | 4 + 5 files changed, 197 insertions(+), 93 deletions(-) create mode 100644 application/items/sql/insertSKUPrefixTuple.sql diff --git a/application/database_payloads.py b/application/database_payloads.py index ba7907e..ac03ff1 100644 --- a/application/database_payloads.py +++ b/application/database_payloads.py @@ -396,6 +396,21 @@ class ItemLocationPayload: lst2pgarr(self.cost_layers) ) +@dataclass +class SKUPrefixPayload: + __slots__ = ('uuid', 'name', 'description') + + uuid: str + name: str + description: str + + def payload(self): + return ( + self.uuid, + self.name, + self.description + ) + @dataclass class SiteManager: site_name: str diff --git a/application/items/database_items.py b/application/items/database_items.py index 8f59929..b373edb 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -4,6 +4,16 @@ import psycopg2 import datetime def getTransactions(site:str, payload: tuple, convert:bool=True): + """ Page through a sites Transactions by passing a logistics id, limit, and offset through a payload + + Args: + site (str): _description_ + payload (tuple): (logistics_id, limit, offset) + convert (bool, optional): _description_. Defaults to True. + + Returns: + _type_: _description_ + """ database_config = config.config() sql = f"SELECT * FROM {site}_transactions WHERE logistics_info_id=%s LIMIT %s OFFSET %s;" sql_count = f"SELECT COUNT(*) FROM {site}_transactions WHERE logistics_info_id=%s;" @@ -198,6 +208,93 @@ def getZone(site:str, payload:tuple, convert:bool=True): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def selectItemLocationsTuple(site_name, payload, convert=True): + """select a single tuple from ItemLocations table for site_name + + Args: + conn (_T_connector@connect): + site_name (str): + payload (tuple): [item_id, location_id] + convert (bool): defaults to False, used to determine return of tuple/dict + + Returns: + tuple: the row that was returned from the table + """ + item_locations = () + database_config = config.config() + select_item_location_sql = f"SELECT * FROM {site_name}_item_locations WHERE part_id = %s AND location_id = %s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(select_item_location_sql, payload) + rows = cur.fetchone() + if rows and convert: + item_locations = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + item_locations = rows + return item_locations + except Exception as error: + return error + +def selectCostLayersTuple(site_name, payload, convert=True): + """select a single or series of cost layers from the database for site_name + + Args: + conn (_T_connector@connect): + site_name (str): + payload (tuple): (item_locations_id, ) + convert (bool): defaults to False, used for determining return as tuple/dict + + Returns: + list: list of tuples/dict from the cost_layers table for site_name + """ + cost_layers = () + database_config = config.config() + select_cost_layers_sql = f"SELECT cl.* FROM {site_name}_item_locations il JOIN {site_name}_cost_layers cl ON cl.id = ANY(il.cost_layers) where il.id=%s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(select_cost_layers_sql, payload) + rows = cur.fetchall() + if rows and convert: + cost_layers = rows + cost_layers = [postsqldb.tupleDictionaryFactory(cur.description, layer) for layer in rows] + elif rows and not convert: + cost_layers = rows + return cost_layers + except Exception as error: + return error + +def selectSiteTuple(payload, convert=True): + """Select a single Site from sites using site_name + + Args: + conn (_T_connector@connect): Postgresql Connector + payload (tuple): (site_name,) + convert (bool, optional): determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: selected tuples + """ + site = () + database_config = config.config() + select_site_sql = f"SELECT * FROM sites WHERE site_name = %s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(select_site_sql, payload) + rows = cur.fetchone() + if rows and convert: + site = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + site = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, select_site_sql) + return site + def paginateZonesBySku(site: str, payload: tuple, convert=True): database_config = config.config() zones, count = (), 0 @@ -726,92 +823,48 @@ def insertItemTuple(site, payload, convert=True, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) -def selectItemLocationsTuple(site_name, payload, convert=True): - """select a single tuple from ItemLocations table for site_name +def insertSKUPrefixtuple(site, payload, convert=True, conn=None): + """insert payload into zones table of site - Args: - conn (_T_connector@connect): - site_name (str): - payload (tuple): [item_id, location_id] - convert (bool): defaults to False, used to determine return of tuple/dict + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): (name[str],) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + prefix = () + self_conn = False + with open(f"application/items/sql/insertSKUPrefixTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True - Returns: - tuple: the row that was returned from the table - """ - item_locations = () - database_config = config.config() - select_item_location_sql = f"SELECT * FROM {site_name}_item_locations WHERE part_id = %s AND location_id = %s;" - try: - with psycopg2.connect(**database_config) as conn: with conn.cursor() as cur: - cur.execute(select_item_location_sql, payload) + cur.execute(sql, payload) rows = cur.fetchone() if rows and convert: - item_locations = postsqldb.tupleDictionaryFactory(cur.description, rows) + prefix = postsqldb.tupleDictionaryFactory(cur.description, rows) elif rows and not convert: - item_locations = rows - return item_locations - except Exception as error: - return error + prefix = rows -def selectCostLayersTuple(site_name, payload, convert=True): - """select a single or series of cost layers from the database for site_name + if self_conn: + conn.commit() + conn.close() - Args: - conn (_T_connector@connect): - site_name (str): - payload (tuple): (item_locations_id, ) - convert (bool): defaults to False, used for determining return as tuple/dict - - Returns: - list: list of tuples/dict from the cost_layers table for site_name - """ - cost_layers = () - database_config = config.config() - select_cost_layers_sql = f"SELECT cl.* FROM {site_name}_item_locations il JOIN {site_name}_cost_layers cl ON cl.id = ANY(il.cost_layers) where il.id=%s;" - try: - with psycopg2.connect(**database_config) as conn: - with conn.cursor() as cur: - cur.execute(select_cost_layers_sql, payload) - rows = cur.fetchall() - if rows and convert: - cost_layers = rows - cost_layers = [postsqldb.tupleDictionaryFactory(cur.description, layer) for layer in rows] - elif rows and not convert: - cost_layers = rows - return cost_layers - except Exception as error: - return error - -def selectSiteTuple(payload, convert=True): - """Select a single Site from sites using site_name - - Args: - conn (_T_connector@connect): Postgresql Connector - payload (tuple): (site_name,) - convert (bool, optional): determines if to return tuple as dictionary. Defaults to False. - - Raises: - DatabaseError: - - Returns: - tuple or dict: selected tuples - """ - site = () - database_config = config.config() - select_site_sql = f"SELECT * FROM sites WHERE site_name = %s;" - try: - with psycopg2.connect(**database_config) as conn: - with conn.cursor() as cur: - cur.execute(select_site_sql, payload) - rows = cur.fetchone() - if rows and convert: - site = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - site = rows - except Exception as error: - raise postsqldb.DatabaseError(error, payload, select_site_sql) - return site + return prefix + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + def postDeleteCostLayer(site_name, payload, convert=True, conn=None): """ diff --git a/application/items/items_API.py b/application/items/items_API.py index 29969ff..3b6008d 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -21,6 +21,7 @@ from user_api import login_required import application.postsqldb as db from application.items import database_items from application.items import items_processes +import application.database_payloads as dbPayloads items_api = Blueprint('items_api', __name__, template_folder="templates", static_folder="static") @@ -645,20 +646,42 @@ def addBlankItem(): @items_api.route('/addSKUPrefix', methods=["POST"]) def addSKUPrefix(): + """ POST new SKU Prefix to the system given a uuid, name, description + --- + parameters: + - in: query + name: uuid + schema: + type: string + default: 1 + required: true + description: uuid for the sku which will be attached to items + - in: query + name: name + schema: + type: string + default: 1 + required: true + description: name of the Prefix + - in: query + name: description + schema: + type: string + default: 1 + required: true + description: description of the Prefix. + responses: + 200: + description: Prefix added successfully. + """ if request.method == "POST": - database_config = config() site_name = session['selected_site'] - try: - with psycopg2.connect(**database_config) as conn: - prefix = db.SKUPrefixTable.Payload( - request.get_json()['uuid'], - request.get_json()['name'], - request.get_json()['description'] - ) - db.SKUPrefixTable.insert_tuple(conn, site_name, prefix.payload()) - except Exception as error: - conn.rollback() - return jsonify({'error': True, 'message': error}) + prefix = dbPayloads.SKUPrefixPayload( + request.get_json()['uuid'], + request.get_json()['name'], + request.get_json()['description'] + ) + database_items.insertSKUPrefixtuple(site_name, prefix.payload()) return jsonify({'error': False, 'message': 'Prefix added!!'}) return jsonify({'error': True, 'message': 'These was an error with adding this Prefix!'}) diff --git a/application/items/items_processes.py b/application/items/items_processes.py index 453bbba..1d8d28e 100644 --- a/application/items/items_processes.py +++ b/application/items/items_processes.py @@ -1,11 +1,20 @@ +# 3rd party imports +import datetime +import psycopg2 +import json + +# applications imports from application.items import database_items import application.postsqldb as db import application.database_payloads as dbPayloads import config -import datetime -import psycopg2 -import json +""" + +items_processes.py handles more higher order workflows that a single database call would not be able to accomplish +or when more complex logics are needed. + +""" def postNewBlankItem(site_name: str, user_id: int, data: dict, conn=None): """ data = {'barcode', 'name', 'subtype'}""" diff --git a/application/items/sql/insertSKUPrefixTuple.sql b/application/items/sql/insertSKUPrefixTuple.sql new file mode 100644 index 0000000..555146f --- /dev/null +++ b/application/items/sql/insertSKUPrefixTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_sku_prefix +(uuid, name, description) +VALUES (%s, %s, %s) +RETURNING *; \ No newline at end of file From 7c6846dd999c4292e29d4318e2458599c02d1320 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 31 May 2025 21:08:42 -0500 Subject: [PATCH 09/38] Migrated addConversion to new api schema --- application/database_payloads.py | 13 +++++++++ application/items/database_items.py | 44 ++++++++++++++++++++++++++++- application/items/items_API.py | 43 ++++++++++++++++++++++------ 3 files changed, 91 insertions(+), 9 deletions(-) diff --git a/application/database_payloads.py b/application/database_payloads.py index ac03ff1..0828559 100644 --- a/application/database_payloads.py +++ b/application/database_payloads.py @@ -411,6 +411,19 @@ class SKUPrefixPayload: self.description ) +@dataclass +class ConversionPayload: + item_id: int + uom_id: int + conv_factor: float + + def payload(self): + return ( + self.item_id, + self.uom_id, + self.conv_factor + ) + @dataclass class SiteManager: site_name: str diff --git a/application/items/database_items.py b/application/items/database_items.py index b373edb..1eb854d 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -823,7 +823,7 @@ def insertItemTuple(site, payload, convert=True, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) -def insertSKUPrefixtuple(site, payload, convert=True, conn=None): +def insertSKUPrefixtuple(site:str, payload:tuple, convert=True, conn=None): """insert payload into zones table of site Args: @@ -864,7 +864,49 @@ def insertSKUPrefixtuple(site, payload, convert=True, conn=None): return prefix except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) + +def insertConversionTuple(site: str, payload: list, convert=True, conn=None): + """insert into recipes table for site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (stre): + payload (tuple): (item_id, uom_id, conversion_factor) + convert (bool, optional): Determines if to return tuple as a dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + record = () + self_conn = False + with open(f"sql/INSERT/insertConversionsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + record = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + record = rows + + if self_conn: + conn.commit() + conn.close() + + return record + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) def postDeleteCostLayer(site_name, payload, convert=True, conn=None): """ diff --git a/application/items/items_API.py b/application/items/items_API.py index 3b6008d..213d985 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -687,20 +687,47 @@ def addSKUPrefix(): @items_api.route('/addConversion', methods=['POST']) def addConversion(): + """ POST new conversion to the system given a item_id, uom_id, conv_factor + --- + parameters: + - in: header + name: item_id + schema: + type: integer + default: 1 + required: true + description: item_id the conversion applies to + - in: header + name: uom_id + schema: + type: integer + default: 1 + required: true + description: uom_id to match item_id uom to convert to + - in: header + name: conv_factor + schema: + type: float + default: 1 + required: true + description: item_id.uom -> uom_id amount + responses: + 200: + description: Prefix added successfully. + """ if request.method == "POST": item_id = request.get_json()['parent_id'] uom_id = request.get_json()['uom_id'] conv_factor = request.get_json()['conv_factor'] - - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - conversion = db.ConversionsTable.Payload( - item_id, uom_id, conv_factor - ) - db.ConversionsTable.insert_tuple(conn, site_name, conversion.payload()) + + conversion = dbPayloads.ConversionPayload( + item_id, uom_id, conv_factor + ) + + database_items.insertConversionTuple(site_name, conversion.payload()) - return jsonify(error=False, message="Conversion was added successfully") + return jsonify(error=False, message="Conversion was added successfully") return jsonify(error=True, message="Unable to save this conversion, ERROR!") @items_api.route('/deleteConversion', methods=['POST']) From db661111e0997c9bc5e30b626e9ecc461bd81d7e Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 31 May 2025 21:19:35 -0500 Subject: [PATCH 10/38] Migrated deleteConversion to new api schema --- application/items/database_items.py | 443 +++++++++++++++------------- application/items/items_API.py | 22 +- 2 files changed, 259 insertions(+), 206 deletions(-) diff --git a/application/items/database_items.py b/application/items/database_items.py index 1eb854d..3e0808f 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -378,206 +378,6 @@ def paginateBrands(site:str, payload:tuple, convert:bool=True): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) -def postUpdateItem(site:str, payload:dict): - """ POST and update to an item - - Args: - site (str): name of the site the item exists in. - payload (dict): STRICT FORMAT - {id: item_id, data: SEE BELOW, user_id: updater} - - data is complex structure - top level keys should be a combo of: ['item', 'item_info', 'logistics_info', 'food_info'] - with in each of these top levels there are key value pairs in this format - {'column_name': 'new_value'} - """ - def postUpdateData(conn, table, payload, convert=True): - updated = () - - set_clause, values = postsqldb.updateStringFactory(payload['update']) - values.append(payload['id']) - sql = f"UPDATE {table} SET {set_clause} WHERE id=%s RETURNING *;" - try: - with conn.cursor() as cur: - cur.execute(sql, values) - rows = cur.fetchone() - if rows and convert: - updated = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - updated = rows - except Exception as error: - raise postsqldb.DatabaseError(error, payload, sql) - return updated - - def postAddTransaction(conn, site, payload, convert=False): - transaction = () - with open(f"application/items/sql/insertTransactionsTuple.sql", "r+") as file: - sql = file.read().replace("%%site_name%%", site) - try: - with conn.cursor() as cur: - cur.execute(sql, payload) - rows = cur.fetchone() - if rows and convert: - transaction = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - transaction = rows - except Exception as error: - raise postsqldb.DatabaseError(error, payload, sql) - return transaction - - transaction_data = {} - database_config = config.config() - data = payload['update'] - for key in data.keys(): - for key_2 in data[key].keys(): - transaction_data[f"{key_2}_new"] = data[key][key_2] - try: - with psycopg2.connect(**database_config) as conn: - item = getItemAllByID(site, (payload['id'], )) - if 'item_info' in data.keys() and data['item_info'] != {}: - for key in data['item_info'].keys(): - transaction_data[f"{key}_old"] = item['item_info'][key] - postUpdateData(conn, f"{site}_item_info", {'id': item['item_info_id'], 'update': data['item_info']}) - - if 'food_info' in data.keys() and data['food_info'] != {}: - for key in data['food_info'].keys(): - transaction_data[f"{key}_old"] = item['food_info'][key] - postUpdateData(conn, f"{site}_food_info", {'id': item['food_info_id'], 'update': data['food_info']}) - - if 'logistics_info' in data.keys() and data['logistics_info'] != {}: - for key in data['logistics_info'].keys(): - transaction_data[f"{key}_old"] = item['logistics_info'][key] - postUpdateData(conn, f"{site}_logistics_info", {'id': item['logistics_info_id'], 'update': data['logistics_info']}) - - if 'item' in data.keys() and data['item'] != {}: - for key in data['item'].keys(): - if key == "brand": - transaction_data[f"{key}_old"] = item['brand']['id'] - else: - transaction_data[f"{key}_old"] = item[key] - postUpdateData(conn, f"{site}_items", {'id': payload['id'], 'update': data['item']}) - - trans = postsqldb.TransactionPayload( - timestamp=datetime.datetime.now(), - logistics_info_id=item['logistics_info_id'], - barcode=item['barcode'], - name=item['item_name'], - transaction_type="UPDATE", - quantity=0.0, - description="Item was updated!", - user_id=payload['user_id'], - data=transaction_data - ) - postAddTransaction(conn, site, trans.payload()) - except Exception as error: - raise postsqldb.DatabaseError(error, payload, "MULTICALL!") - -def postUpdateItemLink(site: str, payload: dict): - """ POST update to ItemLink - - Args: - site (str): _description_ - payload (dict): {id, update, old_conv_factor, user_id} - """ - def postUpdateData(conn, table, payload, convert=True): - updated = () - set_clause, values = postsqldb.updateStringFactory(payload['update']) - values.append(payload['id']) - sql = f"UPDATE {table} SET {set_clause} WHERE id=%s RETURNING *;" - try: - with conn.cursor() as cur: - cur.execute(sql, values) - rows = cur.fetchone() - if rows and convert: - updated = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - updated = rows - except Exception as error: - raise postsqldb.DatabaseError(error, payload, sql) - return updated - - def postAddTransaction(conn, site, payload, convert=False): - transaction = () - with open(f"application/items/sql/insertTransactionsTuple.sql", "r+") as file: - sql = file.read().replace("%%site_name%%", site) - try: - with conn.cursor() as cur: - cur.execute(sql, payload) - rows = cur.fetchone() - if rows and convert: - transaction = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - transaction = rows - except Exception as error: - raise postsqldb.DatabaseError(error, payload, sql) - return transaction - - database_config = config.config() - transaction_time = datetime.datetime.now() - barcode = payload['barcode'] - with psycopg2.connect(**database_config) as conn: - linkedItem = getItemAllByBarcode(site, (barcode, )) - - transaction = postsqldb.TransactionPayload( - timestamp=transaction_time, - logistics_info_id=linkedItem['logistics_info_id'], - barcode=barcode, - name=linkedItem['item_name'], - transaction_type='UPDATE', - quantity=0.0, - description='Link updated!', - user_id=payload['user_id'], - data={'new_conv_factor': payload['update']['conv_factor'], 'old_conv_factor': payload['old_conv_factor']} - ) - - postUpdateData(conn, f"{site}_itemlinks", {'id': payload['id'], 'update': {'conv_factor': payload['update']['conv_factor']}}) - postAddTransaction(conn, site, transaction.payload()) - -def postUpdateCostLayer(site, payload, convert=True, conn=None): - """_summary_ - - Args: - conn (_T_connector@connect): Postgresql Connector - site (str): - table (str): - payload (dict): {'id': row_id, 'update': {... column_to_update: value_to_update_to...}} - convert (bool, optional): determines if to return tuple as dictionary. Defaults to False. - - Raises: - DatabaseError: - - Returns: - tuple or dict: updated tuple - """ - updated = () - self_conn = False - - set_clause, values = postsqldb.updateStringFactory(payload['update']) - values.append(payload['id']) - sql = f"UPDATE {site}_cost_layers SET {set_clause} WHERE id=%s RETURNING *;" - try: - if not conn: - database_config = config.config() - conn = psycopg2.connect(**database_config) - conn.autocommit = False - self_conn = True - - with conn.cursor() as cur: - cur.execute(sql, values) - rows = cur.fetchone() - if rows and convert: - updated = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - updated = rows - - if self_conn: - conn.commit() - conn.close() - - return updated - except Exception as error: - raise postsqldb.DatabaseError(error, payload, sql) - def insertCostLayersTuple(site, payload, convert=True, conn=None): cost_layer = () self_conn = False @@ -944,6 +744,49 @@ def postDeleteCostLayer(site_name, payload, convert=True, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def deleteConversionTuple(site_name: str, payload: tuple, convert=True, conn=None): + """This is a basic funtion to delete a tuple from a table in site with an id. All + tables in this database has id's associated with them. + + Args: + conn (_T_connector@connect): Postgresql Connector + site_name (str): + payload (tuple): (tuple_id,...) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: deleted tuple + """ + deleted = () + self_conn = False + sql = f"WITH deleted_rows AS (DELETE FROM {site_name}_conversions WHERE id IN ({','.join(['%s'] * len(payload))}) RETURNING *) SELECT * FROM deleted_rows;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = False + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + deleted = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + deleted = rows + + if self_conn: + conn.commit() + conn.close() + + return deleted + + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + def postUpdateItemLocation(site, payload, conn=None): item_location = () @@ -970,7 +813,207 @@ def postUpdateItemLocation(site, payload, conn=None): return item_location except Exception as error: return error + +def postUpdateItem(site:str, payload:dict): + """ POST and update to an item + + Args: + site (str): name of the site the item exists in. + payload (dict): STRICT FORMAT + {id: item_id, data: SEE BELOW, user_id: updater} + + data is complex structure + top level keys should be a combo of: ['item', 'item_info', 'logistics_info', 'food_info'] + with in each of these top levels there are key value pairs in this format + {'column_name': 'new_value'} + """ + def postUpdateData(conn, table, payload, convert=True): + updated = () + + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {table} SET {set_clause} WHERE id=%s RETURNING *;" + try: + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + updated = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + updated = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return updated + def postAddTransaction(conn, site, payload, convert=False): + transaction = () + with open(f"application/items/sql/insertTransactionsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + transaction = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + transaction = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return transaction + + transaction_data = {} + database_config = config.config() + data = payload['update'] + for key in data.keys(): + for key_2 in data[key].keys(): + transaction_data[f"{key_2}_new"] = data[key][key_2] + try: + with psycopg2.connect(**database_config) as conn: + item = getItemAllByID(site, (payload['id'], )) + if 'item_info' in data.keys() and data['item_info'] != {}: + for key in data['item_info'].keys(): + transaction_data[f"{key}_old"] = item['item_info'][key] + postUpdateData(conn, f"{site}_item_info", {'id': item['item_info_id'], 'update': data['item_info']}) + + if 'food_info' in data.keys() and data['food_info'] != {}: + for key in data['food_info'].keys(): + transaction_data[f"{key}_old"] = item['food_info'][key] + postUpdateData(conn, f"{site}_food_info", {'id': item['food_info_id'], 'update': data['food_info']}) + + if 'logistics_info' in data.keys() and data['logistics_info'] != {}: + for key in data['logistics_info'].keys(): + transaction_data[f"{key}_old"] = item['logistics_info'][key] + postUpdateData(conn, f"{site}_logistics_info", {'id': item['logistics_info_id'], 'update': data['logistics_info']}) + + if 'item' in data.keys() and data['item'] != {}: + for key in data['item'].keys(): + if key == "brand": + transaction_data[f"{key}_old"] = item['brand']['id'] + else: + transaction_data[f"{key}_old"] = item[key] + postUpdateData(conn, f"{site}_items", {'id': payload['id'], 'update': data['item']}) + + trans = postsqldb.TransactionPayload( + timestamp=datetime.datetime.now(), + logistics_info_id=item['logistics_info_id'], + barcode=item['barcode'], + name=item['item_name'], + transaction_type="UPDATE", + quantity=0.0, + description="Item was updated!", + user_id=payload['user_id'], + data=transaction_data + ) + postAddTransaction(conn, site, trans.payload()) + except Exception as error: + raise postsqldb.DatabaseError(error, payload, "MULTICALL!") + +def postUpdateItemLink(site: str, payload: dict): + """ POST update to ItemLink + + Args: + site (str): _description_ + payload (dict): {id, update, old_conv_factor, user_id} + """ + def postUpdateData(conn, table, payload, convert=True): + updated = () + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {table} SET {set_clause} WHERE id=%s RETURNING *;" + try: + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + updated = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + updated = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return updated + + def postAddTransaction(conn, site, payload, convert=False): + transaction = () + with open(f"application/items/sql/insertTransactionsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + transaction = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + transaction = rows + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return transaction + + database_config = config.config() + transaction_time = datetime.datetime.now() + barcode = payload['barcode'] + with psycopg2.connect(**database_config) as conn: + linkedItem = getItemAllByBarcode(site, (barcode, )) + + transaction = postsqldb.TransactionPayload( + timestamp=transaction_time, + logistics_info_id=linkedItem['logistics_info_id'], + barcode=barcode, + name=linkedItem['item_name'], + transaction_type='UPDATE', + quantity=0.0, + description='Link updated!', + user_id=payload['user_id'], + data={'new_conv_factor': payload['update']['conv_factor'], 'old_conv_factor': payload['old_conv_factor']} + ) + + postUpdateData(conn, f"{site}_itemlinks", {'id': payload['id'], 'update': {'conv_factor': payload['update']['conv_factor']}}) + postAddTransaction(conn, site, transaction.payload()) + +def postUpdateCostLayer(site, payload, convert=True, conn=None): + """_summary_ + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + table (str): + payload (dict): {'id': row_id, 'update': {... column_to_update: value_to_update_to...}} + convert (bool, optional): determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: updated tuple + """ + updated = () + self_conn = False + + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {site}_cost_layers SET {set_clause} WHERE id=%s RETURNING *;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = False + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + updated = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + updated = rows + + if self_conn: + conn.commit() + conn.close() + + return updated + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + def postAddTransaction(site, payload, convert=False, conn=None): transaction = () self_conn = False diff --git a/application/items/items_API.py b/application/items/items_API.py index 213d985..585c37d 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -732,15 +732,25 @@ def addConversion(): @items_api.route('/deleteConversion', methods=['POST']) def deleteConversion(): + """ POST delete conversion to the system given a conversion_id + --- + parameters: + - in: header + name: conversion_id + schema: + type: integer + default: 1 + required: true + description: conversion_id to be deleted + responses: + 200: + description: Prefix added successfully. + """ if request.method == "POST": conversion_id = request.get_json()['conversion_id'] - print(conversion_id) - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - db.ConversionsTable.delete_item_tuple(conn, site_name, (conversion_id,)) - - return jsonify(error=False, message="Conversion was deleted successfully") + database_items.deleteConversionTuple(site_name, (conversion_id,)) + return jsonify(error=False, message="Conversion was deleted successfully") return jsonify(error=True, message="Unable to delete this conversion, ERROR!") @items_api.route('/updateConversion', methods=['POST']) From a2c26fd6bab252e9e779820d22a0a4bc4211966f Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sun, 1 Jun 2025 09:01:02 -0500 Subject: [PATCH 11/38] items_API.updateConversion migrated to new schema --- application/items/database_items.py | 44 +++++++++++++++++++++++++++++ application/items/items_API.py | 28 ++++++++++++++---- 2 files changed, 67 insertions(+), 5 deletions(-) diff --git a/application/items/database_items.py b/application/items/database_items.py index 3e0808f..117de1a 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -787,6 +787,50 @@ def deleteConversionTuple(site_name: str, payload: tuple, convert=True, conn=Non except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def updateConversionTuple(site:str, payload: dict, convert=True, conn=None): + """_summary_ + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + table (str): + payload (dict): {'id': row_id, 'update': {... column_to_update: value_to_update_to...}} + convert (bool, optional): determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: updated tuple + """ + updated = () + self_conn = False + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {site}_conversions SET {set_clause} WHERE id=%s RETURNING *;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = False + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + updated = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + updated = rows + + if self_conn: + conn.commit() + conn.close() + + return updated + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + def postUpdateItemLocation(site, payload, conn=None): item_location = () diff --git a/application/items/items_API.py b/application/items/items_API.py index 585c37d..7bd3393 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -755,15 +755,33 @@ def deleteConversion(): @items_api.route('/updateConversion', methods=['POST']) def updateConversion(): + """ POST update conversion to the system given a conversion_id, update dictionary + --- + parameters: + - in: header + name: conversion_id + schema: + type: integer + default: 1 + required: true + description: conversion_id to be deleted + - in: header + name: update + schema: + type: dict + default: 1 + required: true + description: data to update in key=column, value=update_data + responses: + 200: + description: conversion updated successfully. + """ if request.method == "POST": conversion_id = request.get_json()['conversion_id'] update_dictionary = request.get_json()['update'] - - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - db.ConversionsTable.update_item_tuple(conn, site_name, {'id': conversion_id, 'update': update_dictionary}) - return jsonify(error=False, message="Conversion was updated successfully") + database_items.updateConversionTuple(site_name, {'id': conversion_id, 'update': update_dictionary}) + return jsonify(error=False, message="Conversion was updated successfully") return jsonify(error=True, message="Unable to save this conversion, ERROR!") @items_api.route('/addPrefix', methods=['POST']) From 1a1ffddddd341e174b4e8d0072ae8cc9c89f5720 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sun, 1 Jun 2025 09:38:06 -0500 Subject: [PATCH 12/38] items_API.addPrefix migrated to new schema --- application/items/database_items.py | 78 ++++++++++++++++++++++++++++- application/items/items_API.py | 34 +++++++++---- 2 files changed, 102 insertions(+), 10 deletions(-) diff --git a/application/items/database_items.py b/application/items/database_items.py index 117de1a..4b622eb 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -208,6 +208,37 @@ def getZone(site:str, payload:tuple, convert:bool=True): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def getItemInfoTuple(site:str, payload:tuple, convert=True): + """_summary_ + + Args: + conn (_type_): _description_ + site (_type_): _description_ + payload (_type_): (item_info_id,) + convert (bool, optional): _description_. Defaults to True. + + Raises: + DatabaseError: _description_ + + Returns: + _type_: _description_ + """ + selected = () + database_config = config.config() + sql = f"SELECT * FROM {site}_item_info WHERE id=%s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + selected = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + selected = rows + return selected + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + def selectItemLocationsTuple(site_name, payload, convert=True): """select a single tuple from ItemLocations table for site_name @@ -826,11 +857,56 @@ def updateConversionTuple(site:str, payload: dict, convert=True, conn=None): if self_conn: conn.commit() conn.close() - + return updated except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def updateItemInfoTuple(site:str, payload: dict, convert=True, conn=None): + """_summary_ + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + table (str): + payload (dict): {'id': row_id, 'update': {... column_to_update: value_to_update_to...}} + convert (bool, optional): determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: updated tuple + """ + updated = () + self_conn = False + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {site}_item_info SET {set_clause} WHERE id=%s RETURNING *;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = False + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + updated = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + updated = rows + + if self_conn: + conn.commit() + conn.close() + + return updated + + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + def postUpdateItemLocation(site, payload, conn=None): item_location = () diff --git a/application/items/items_API.py b/application/items/items_API.py index 7bd3393..7d12431 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -786,19 +786,35 @@ def updateConversion(): @items_api.route('/addPrefix', methods=['POST']) def addPrefix(): + """ POST add prefix to the system given a item_info_id and prefix_id + --- + parameters: + - in: header + name: item_info_id + schema: + type: integer + default: 1 + required: true + description: item_info_id to be updated + - in: header + name: prefix_id + schema: + type: integer + default: 1 + required: true + description: prefix_id to be added + responses: + 200: + description: conversion updated successfully. + """ if request.method == "POST": item_info_id = request.get_json()['parent_id'] prefix_id = request.get_json()['prefix_id'] - print(item_info_id) - print(prefix_id) - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - prefixes = db.ItemInfoTable.select_tuple(conn, site_name, (item_info_id,))['prefixes'] - print(prefixes) - prefixes.append(prefix_id) - db.ItemInfoTable.update_tuple(conn, site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) - return jsonify(error=False, message="Prefix was added successfully") + prefixes = database_items.getItemInfoTuple(site_name, (item_info_id,))['prefixes'] + prefixes.append(prefix_id) + database_items.updateItemInfoTuple(site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) + return jsonify(error=False, message="Prefix was added successfully") return jsonify(error=True, message="Unable to save this prefix, ERROR!") @items_api.route('/deletePrefix', methods=['POST']) From d01a92e17a04973c0c69c0ee6407b7a78eb3a90f Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sun, 1 Jun 2025 09:41:32 -0500 Subject: [PATCH 13/38] items_API.deletePrefix migrated to new schema --- application/items/items_API.py | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/application/items/items_API.py b/application/items/items_API.py index 7d12431..99d0ccc 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -819,17 +819,35 @@ def addPrefix(): @items_api.route('/deletePrefix', methods=['POST']) def deletePrefix(): + """ POST delete prefix from the system given a item_info_id and prefix_id + --- + parameters: + - in: header + name: item_info_id + schema: + type: integer + default: 1 + required: true + description: item_info_id to be updated + - in: header + name: prefix_id + schema: + type: integer + default: 1 + required: true + description: prefix_id to be added + responses: + 200: + description: conversion updated successfully. + """ if request.method == "POST": item_info_id = request.get_json()['item_info_id'] prefix_id = request.get_json()['prefix_id'] - - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - prefixes = db.ItemInfoTable.select_tuple(conn, site_name, (item_info_id,))['prefixes'] - prefixes.remove(prefix_id) - db.ItemInfoTable.update_tuple(conn, site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) - return jsonify(error=False, message="Prefix was deleted successfully") + prefixes = database_items.getItemInfoTuple(site_name, (item_info_id,))['prefixes'] + prefixes.remove(prefix_id) + database_items.updateItemInfoTuple(site_name, {'id': item_info_id, 'update':{'prefixes': prefixes}}) + return jsonify(error=False, message="Prefix was deleted successfully") return jsonify(error=True, message="Unable to delete this prefix, ERROR!") @items_api.route('/refreshSearchString', methods=['POST']) From be1041194115f8d0c5b692da959a0fd08cd76871 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sun, 1 Jun 2025 09:51:57 -0500 Subject: [PATCH 14/38] items_API.refreshSearch... migrated to new schema --- application/items/database_items.py | 3 ++- application/items/items_API.py | 32 ++++++++++++++++------------ application/items/items_processes.py | 12 ++++++++++- 3 files changed, 31 insertions(+), 16 deletions(-) diff --git a/application/items/database_items.py b/application/items/database_items.py index 4b622eb..afef4eb 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -907,7 +907,7 @@ def updateItemInfoTuple(site:str, payload: dict, convert=True, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) -def postUpdateItemLocation(site, payload, conn=None): +def postUpdateItemLocation(site: str, payload: tuple, conn=None): item_location = () self_conn = False @@ -934,6 +934,7 @@ def postUpdateItemLocation(site, payload, conn=None): except Exception as error: return error +# TODO: This should be in the item's process module def postUpdateItem(site:str, payload:dict): """ POST and update to an item diff --git a/application/items/items_API.py b/application/items/items_API.py index 99d0ccc..9e5dd10 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -852,23 +852,27 @@ def deletePrefix(): @items_api.route('/refreshSearchString', methods=['POST']) def refreshSearchString(): + """ POST update search_string to the system given a item_id + --- + parameters: + - in: header + name: item_info_id + schema: + type: integer + default: 1 + required: true + description: item_id to be updated + responses: + 200: + description: conversion updated successfully. + """ if request.method == "POST": item_id = request.get_json()['item_id'] - - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - item = db.ItemTable.getItemAllByID(conn, site_name, (item_id,)) - parameters = [f"id::{item['id']}", f"barcode::{item['barcode']}", f"name::{item['item_name']}", f"brand::{item['brand']['name']}", - f"expires::{item['food_info']['expires']}", f"row_type::{item['row_type']}", f"item_type::{item['item_type']}"] - - for prefix in item['item_info']['prefixes']: - parameters.append(f"prefix::{prefix['name']}") - - search_string = "&&".join(parameters) - db.ItemTable.update_tuple(conn, site_name, {'id': item_id, 'update':{'search_string': search_string}}) - - return jsonify(error=False, message="Search String was updated successfully") + item = database_items.getItemAllByID(site_name, (item_id,)) + search_string = items_processes.createSearchStringFromItem(item) + database_items.postUpdateItemByID(site_name, {'id': item_id, 'update':{'search_string': search_string}}) + return jsonify(error=False, message="Search String was updated successfully") return jsonify(error=True, message="Unable to update this search string, ERROR!") @items_api.route('/postNewItemLocation', methods=['POST']) diff --git a/application/items/items_processes.py b/application/items/items_processes.py index 1d8d28e..17157aa 100644 --- a/application/items/items_processes.py +++ b/application/items/items_processes.py @@ -268,4 +268,14 @@ def postAdjustment(site_name, user_id, data: dict, conn=None): conn.close() return False - return conn \ No newline at end of file + return conn + +def createSearchStringFromItem(item: dict): + parameters = [f"id::{item['id']}", f"barcode::{item['barcode']}", f"name::{item['item_name']}", f"brand::{item['brand']['name']}", + f"expires::{item['food_info']['expires']}", f"row_type::{item['row_type']}", f"item_type::{item['item_type']}"] + + for prefix in item['item_info']['prefixes']: + parameters.append(f"prefix::{prefix['name']}") + + search_string = "&&".join(parameters) + return search_string \ No newline at end of file From cfbac6f31fa77bf39a29bcd63c60b5a58f90fb99 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sun, 1 Jun 2025 09:56:28 -0500 Subject: [PATCH 15/38] items_API.postNewItemLocation migrate to new schema --- application/items/items_API.py | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/application/items/items_API.py b/application/items/items_API.py index 9e5dd10..517f79c 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -877,16 +877,32 @@ def refreshSearchString(): @items_api.route('/postNewItemLocation', methods=['POST']) def postNewItemLocation(): + """ POST add itemlocation to the system given a item_id and location_id + --- + parameters: + - in: header + name: item_id + schema: + type: integer + default: 1 + required: true + description: item_id to be attached location_id to + - in: header + name: item_id + schema: + type: integer + default: 1 + required: true + description: location_id to attach item_id to + responses: + 200: + description: conversion updated successfully. + """ if request.method == "POST": item_id = request.get_json()['item_id'] location_id = request.get_json()['location_id'] - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - item_location = db.ItemLocationsTable.Payload( - item_id, - location_id - ) - db.ItemLocationsTable.insert_tuple(conn, site_name, item_location.payload()) - return jsonify(error=False, message="Location was added successfully") + item_location = dbPayloads.ItemLocationPayload(item_id, location_id) + database_items.insertItemLocationsTuple(site_name, item_location.payload()) + return jsonify(error=False, message="Location was added successfully") return jsonify(error=True, message="Unable to save this location, ERROR!") \ No newline at end of file From d81515d4c5b8b5861ca2d42444d914c812b339ac Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 28 Jun 2025 21:04:07 -0500 Subject: [PATCH 16/38] Updated Transaction Scanner to poe app --- application/items/templates/transaction.html | 43 +- application/poe/poe_api.py | 132 ++ .../poe/static/js/transactionHandler.js | 166 ++ application/poe/templates/scanner.html | 147 ++ process.log | 988 ------------ test.txt | 1401 ----------------- webserver.py | 4 +- 7 files changed, 451 insertions(+), 2430 deletions(-) create mode 100644 application/poe/poe_api.py create mode 100644 application/poe/static/js/transactionHandler.js create mode 100644 application/poe/templates/scanner.html delete mode 100644 process.log delete mode 100644 test.txt diff --git a/application/items/templates/transaction.html b/application/items/templates/transaction.html index b5b35f3..55d7159 100644 --- a/application/items/templates/transaction.html +++ b/application/items/templates/transaction.html @@ -115,7 +115,6 @@ @@ -202,40 +201,6 @@ -
-
-

Using this method of entering transaction receipts does so by transacting a single UOM of the barcode scanned. Its important that you have the - Barcode input focused and use a scanner that places the characters into the field before it finishes up with a press of the ENTER key. -

-
-
-
- - -
-
- -
-
-
- - - - - - - - - - - - -
StatusBarcodeNameTypeLocation
-
-

Using this method of entering receipts does so by adding each barcode to a list and once the receipt has been built the @@ -280,7 +245,7 @@

- +

Select Item

@@ -314,7 +279,7 @@
- +

Item Locations

@@ -331,7 +296,7 @@
- +

Edit Line...

@@ -384,6 +349,6 @@ {% assets "js_all" %} {% endassets %} - + \ No newline at end of file diff --git a/application/poe/poe_api.py b/application/poe/poe_api.py new file mode 100644 index 0000000..46ad57c --- /dev/null +++ b/application/poe/poe_api.py @@ -0,0 +1,132 @@ +from flask import Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response +import psycopg2, math, json, datetime, main, copy, requests, process, database, pprint, MyDataclasses +from config import config, sites_config +from main import unfoldCostLayers +from threading import Thread +from queue import Queue +import time, process +from user_api import login_required +import webpush + +point_of_ease = Blueprint('poe', __name__, template_folder="templates", static_folder="static") + + +@point_of_ease.route('/scanner', methods=["GET"]) +def scannerEndpoint(): + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + return render_template('scanner.html', current_site=session['selected_site'], + sites=sites) + + + +@point_of_ease.route('/getItemLocations', methods=["GET"]) +def getItemLocations(): + recordset = [] + count = 0 + if request.method == "GET": + item_id = int(request.args.get('id', 1)) + page = int(request.args.get('page', 1)) + limit = int(request.args.get('limit', 10)) + site_name = session['selected_site'] + offset = (page - 1) * limit + database_config = config() + with psycopg2.connect(**database_config) as conn: + recordset, count = database.getItemLocations(conn, site_name, (item_id, limit, offset), convert=True) + return jsonify({"locations":recordset, "end":math.ceil(count/limit), "error":False, "message":"item fetched succesfully!"}) + return jsonify({"locations":recordset, "end": math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) + + +# in item api +@point_of_ease.route('/getItem', methods=["GET"]) +def getItem(): + record = {} + if request.method == "GET": + item_id = int(request.args.get('id', 1)) + site_name = session['selected_site'] + database_config = config() + with psycopg2.connect(**database_config) as conn: + record = database.getItemAllByID(conn, site_name, (item_id, ), convert=True) + return jsonify({"item":record, "error":False, "message":"item fetched succesfully!"}) + return jsonify({"item":record, "error":True, "message":"There was an error with this GET statement"}) + +@point_of_ease.route('/getItem/barcode', methods=["GET"]) +def getItemBarcode(): + record = {} + if request.method == "GET": + item_barcode = f"%{str(request.args.get('barcode', 1))}%" + site_name = session['selected_site'] + database_config = config() + with psycopg2.connect(**database_config) as conn: + record = database.getItemAllByBarcode(conn, site_name, (item_barcode, ), convert=True) + if record == {}: + return jsonify({"item":None, "error":True, "message":"Item either does not exist or there was a larger problem!"}) + else: + return jsonify({"item":record, "error":False, "message":"item fetched succesfully!"}) + return jsonify({"item":record, "error":True, "message":"There was an error with this GET statement"}) + +# in items api +@point_of_ease.route('/getModalItems', methods=["GET"]) +@login_required +def getModalItems(): + recordset = [] + count = {'count': 0} + if request.method == "GET": + page = int(request.args.get('page', 1)) + limit = int(request.args.get('limit', 10)) + search_string = request.args.get('search_string', '') + site_name = session['selected_site'] + offset = (page - 1) * limit + database_config = config() + with psycopg2.connect(**database_config) as conn: + payload = (search_string, limit, offset) + recordset, count = database.getItemsForModal(conn, site_name, payload, convert=True) + return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":False, "message":"items fetched succesfully!"}) + return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":True, "message":"There was an error with this GET statement"}) + +@point_of_ease.route('/postTransaction', methods=["POST"]) +def post_transaction(): + if request.method == "POST": + database_config = config() + with psycopg2.connect(**database_config) as conn: + result = process.postTransaction( + conn=conn, + site_name=session['selected_site'], + user_id=session['user_id'], + data=dict(request.json) + ) + return jsonify(result) + return jsonify({"error":True, "message":"There was an error with this POST statement"}) + + +@point_of_ease.route('/postReceipt', methods=["POST"]) +def post_receipt(): + if request.method == "POST": + site_name = session['selected_site'] + user_id = session['user_id'] + database_config = config() + with psycopg2.connect(**database_config) as conn: + items = request.json['items'] + receipt_id = database.request_receipt_id(conn, site_name) + receipt_id = f"SIR-{receipt_id}" + receipt = MyDataclasses.ReceiptPayload( + receipt_id=receipt_id, + submitted_by=user_id + ) + receipt = database.insertReceiptsTuple(conn, site_name, receipt.payload(), convert=True) + + for item in items: + + receipt_item = MyDataclasses.ReceiptItemPayload( + type=item['type'], + receipt_id=receipt['id'], + barcode=item['item']['barcode'], + name=item['item']['item_name'], + qty=item['item']['qty'], + uom=item['item']['uom'], + data=item['item']['data'] + ) + database.insertReceiptItemsTuple(conn, site_name, receipt_item.payload()) + #webpush.push_notifications('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") + webpush.push_ntfy('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") + return jsonify({"error":False, "message":"Transaction Complete!"}) + return jsonify({"error":True, "message":"There was an error with this POST statement"}) \ No newline at end of file diff --git a/application/poe/static/js/transactionHandler.js b/application/poe/static/js/transactionHandler.js new file mode 100644 index 0000000..472a337 --- /dev/null +++ b/application/poe/static/js/transactionHandler.js @@ -0,0 +1,166 @@ +async function changeSite(site){ + console.log(site) + const response = await fetch(`/changeSite`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + site: site, + }), + }); + data = await response.json(); + transaction_status = "success" + if (data.error){ + transaction_status = "danger" + } + + UIkit.notification({ + message: data.message, + status: transaction_status, + pos: 'top-right', + timeout: 5000 + }); + location.reload(true) +} + +var scannedItems = Array(); +const queueLimit = 49; // 49 should be default + +async function addToQueue(event) { + if (event.key == "Enter"){ + let data = await getItemBarcode(document.getElementById('barcode-scan').value) + let scannedItem = data.item + if(data.error){ + UIkit.notification({ + message: data.message, + status: "danger", + pos: 'top-right', + timeout: 5000 + }); + } + if(scannedItems.length > queueLimit){ + scannedItems.shift() + } + if(!Array.isArray(scannedItem) && !data.error){ + let status = await submitScanTransaction(scannedItem) + scannedItems.push({'item': scannedItem, 'type': `${document.getElementById('scan_trans_type').value}`, 'error': status}) + document.getElementById('barcode-scan').value = "" + } + } + await replenishScanTable() +} + +async function getItemBarcode(barcode) { + console.log(`selected item: ${barcode}`) + const url = new URL('/poe/getItem/barcode', window.location.origin); + url.searchParams.append('barcode', barcode); + const response = await fetch(url); + data = await response.json(); + return data; +} + +async function submitScanTransaction(scannedItem) { + /// I need to find the location that matches the items auto issue location id + + let trans_type = document.getElementById('scan_trans_type').value + let scan_transaction_item_location_id = 0 + let comparator = 0 + + if (trans_type === "Adjust In"){ + comparator = scannedItem.logistics_info.primary_location.id + } else if (trans_type === "Adjust Out"){ + comparator = scannedItem.logistics_info.auto_issue_location.id + } + + for (let i = 0; i < scannedItem.item_locations.length; i++){ + if (scannedItem.item_locations[i].location_id === comparator){ + scan_transaction_item_location_id = scannedItem.item_locations[i].id + } + } + + const response = await fetch(`/poe/postTransaction`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + item_id: scannedItem.id, + logistics_info_id: scannedItem.logistics_info_id, + barcode: scannedItem.barcode, + item_name: scannedItem.item_name, + transaction_type: document.getElementById('scan_trans_type').value, + quantity: scannedItem.item_info.uom_quantity, + description: "", + cost: parseFloat(scannedItem.item_info.cost), + vendor: 0, + expires: null, + location_id: scan_transaction_item_location_id + }), + }); + data = await response.json(); + transaction_status = "success" + if (data.error){ + transaction_status = "danger" + } + + UIkit.notification({ + message: data.message, + status: transaction_status, + pos: 'top-right', + timeout: 5000 + }); + + return data.error + +} + +async function replenishScanTable() { + let scanTableBody = document.getElementById("scanTableBody") + scanTableBody.innerHTML = "" + + let reversedScannedItems = scannedItems.slice().reverse() + + for(let i = 0; i < reversedScannedItems.length; i++){ + let tableRow = document.createElement('tr') + + let icon = `` + if(reversedScannedItems[i].error){ + icon = `` + } + + let statusCell = document.createElement('td') + statusCell.innerHTML = icon + let barcodeCell = document.createElement('td') + barcodeCell.innerHTML = reversedScannedItems[i].item.barcode + let nameCell = document.createElement('td') + nameCell.innerHTML = reversedScannedItems[i].item.item_name + let typeCell = document.createElement('td') + typeCell.innerHTML = reversedScannedItems[i].type + let locationCell = document.createElement('td') + if (reversedScannedItems[i].type === "Adjust In"){ + locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.primary_location.uuid + } else { + locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.auto_issue_location.uuid + } + + tableRow.append(statusCell, barcodeCell, nameCell, typeCell, locationCell) + scanTableBody.append(tableRow) + } +} + +var mode = false +async function toggleDarkMode() { + let darkMode = document.getElementById("dark-mode"); + darkMode.disabled = !darkMode.disabled; + mode = !mode; + if(mode){ + document.getElementById('modeToggle').innerHTML = "light_mode" + document.getElementById('main_html').classList.add('uk-light') + } else { + document.getElementById('modeToggle').innerHTML = "dark_mode" + document.getElementById('main_html').classList.remove('uk-light') + + } + +} \ No newline at end of file diff --git a/application/poe/templates/scanner.html b/application/poe/templates/scanner.html new file mode 100644 index 0000000..c948d26 --- /dev/null +++ b/application/poe/templates/scanner.html @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+
+

Using this method of entering transaction receipts does so by transacting a single UOM of the barcode scanned. Its important that you have the + Barcode input focused and use a scanner that places the characters into the field before it finishes up with a press of the ENTER key. +

+
+
+
+ + +
+
+ +
+
+
+ + + + + + + + + + + + +
StatusBarcodeNameTypeLocation
+
+
+
+ + {% assets "js_all" %} + + {% endassets %} + + \ No newline at end of file diff --git a/process.log b/process.log deleted file mode 100644 index b4bf39d..0000000 --- a/process.log +++ /dev/null @@ -1,988 +0,0 @@ - -2025-04-07 18:07:48.193728 --- CAUTION --- 0 - {"Plural": "pinches", " Single": " pinch", " Fullname": " Pinch", " Description": " Less than 1/8 teaspoon."} -2025-04-07 18:07:48.198811 --- CAUTION --- 0 - {"Plural": "tsp", " Single": " tsp", " Fullname": " Teaspoon", " Description": " 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US."} -2025-04-07 18:07:48.202723 --- CAUTION --- 0 - {"Plural": "dsp", " Single": " dsp", " Fullname": " Dessertspoon", " Description": " 10 millilitres in Australia."} -2025-04-07 18:07:48.205733 --- CAUTION --- 0 - {"Plural": "tbsp", " Single": " tbsp", " Fullname": " Tablespoon", " Description": " 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US."} -2025-04-07 18:07:48.208306 --- CAUTION --- 0 - {"Plural": "fl oz", " Single": " fl oz", " Fullname": " Fluid ounce", " Description": " 28.41 millilitres in the UK or approximately 29.57 millilitres in the US."} -2025-04-07 18:07:48.212832 --- CAUTION --- 0 - {"Plural": "cups", " Single": " cup", " Fullname": " Cup", " Description": " 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US."} -2025-04-07 18:07:48.215843 --- CAUTION --- 0 - {"Plural": "pt", " Single": " pt", " Fullname": " Pint", " Description": " 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US."} -2025-04-07 18:07:48.219306 --- CAUTION --- 0 - {"Plural": "qt", " Single": " qt", " Fullname": " Quart", " Description": " Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US."} -2025-04-07 18:07:48.222204 --- CAUTION --- 0 - {"Plural": "gal", " Single": " gal", " Fullname": " Gallon", " Description": " Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US."} -2025-04-07 18:07:48.226717 --- CAUTION --- 0 - {"Plural": "jiggers", " Single": " jigger", " Fullname": " Jigger", " Description": " 1.5 fluid ounces."} -2025-04-07 18:07:48.230038 --- CAUTION --- 0 - {"Plural": "oz", " Single": " oz", " Fullname": " Ounce", " Description": " 1/4 lb for butter which can also be measured as 3 tablespoons."} -2025-04-07 18:07:48.233496 --- CAUTION --- 0 - {"Plural": "L", " Single": " L", " Fullname": " Liter", " Description": " Commonly used for volume measurement in the metric system."} -2025-04-07 18:07:48.236507 --- CAUTION --- 0 - {"Plural": "mL", " Single": " mL", " Fullname": " Milliliter", " Description": " Commonly used for volume measurement in the metric system."} -2025-04-07 18:07:48.240296 --- CAUTION --- 0 - {"Plural": "dm3", " Single": " dm3", " Fullname": " Cubic decimeter", " Description": " Equivalent to 1 liter."} -2025-04-07 18:07:48.242309 --- CAUTION --- 0 - {"Plural": "g", " Single": " g", " Fullname": " Gram", " Description": " Commonly used for weight measurement in the metric system."} -2025-04-07 18:07:48.246896 --- CAUTION --- 0 - {"Plural": "kg", " Single": " kg", " Fullname": " Kilogram", " Description": " Commonly used for weight measurement in the metric system."} -2025-04-07 18:07:48.250308 --- CAUTION --- 0 - {"Plural": "lbs", " Single": " lb", " Fullname": " Pound", " Description": " Used for weight measurement in the US."} -2025-04-07 18:07:48.253557 --- CAUTION --- 0 - {"Plural": "fluid scruples", " Single": " fluid scruple", " Fullname": " Fluid scruple", " Description": " A unit used in the apothecaries' system but not commonly used in cooking."} -2025-04-07 18:07:48.257236 --- CAUTION --- 0 - {"Plural": "cm3", " Single": " cm3", " Fullname": " Cubic centimeter", " Description": " Equivalent to 1 milliliter."} -2025-04-07 18:07:48.261287 --- CAUTION --- 0 - {"Plural": "breakfast cups", " Single": " breakfast cup", " Fullname": " Breakfast cup", " Description": " Similar in size to the US customary cup and the metric cup."} -2025-04-07 18:07:48.263881 --- CAUTION --- 0 - {"Plural": "tumblers", " Single": " tumbler", " Fullname": " Tumblerful", " Description": " A unit used in British cookery books and recipes."} -2025-04-07 18:07:48.266919 --- CAUTION --- 0 - {"Plural": "winefulls", " Single": " winefull", " Fullname": " Wineglassful", " Description": " A unit used in British cookery books and recipes."} -2025-04-07 18:07:48.270307 --- CAUTION --- 0 - {"Plural": "coffee cups", " Single": " coffee cup", " Fullname": " Coffee cup", " Description": " Can vary from 100 to 200 millilitres."} -2025-04-07 18:07:48.273839 --- CAUTION --- 0 - {"Plural": "sticks of butter", " Single": " stick of butter", " Fullname": " Stick of butter", " Description": " 1/4 lb or 3 tablespoons."} -2025-04-07 18:07:48.277370 --- CAUTION --- 0 - {"Plural": "smidgens", " Single": " smidgen", " Fullname": " Smidgen", " Description": " An approximate unit of measure."} -2025-04-07 18:07:48.280470 --- CAUTION --- 0 - {"Plural": "dashes", " Single": " dash", " Fullname": " Dash", " Description": " An approximate unit of measure."} -2025-04-07 18:07:48.283908 --- CAUTION --- 0 - {"Plural": "drops", " Single": " drop", " Fullname": " Drop", " Description": " An approximate unit of measure."} -2025-04-07 18:07:48.286954 --- CAUTION --- 0 - {"Plural": "eaches", " Single": " each", " Fullname": " Each", " Description": " A single unit."} -2025-04-07 18:07:48.290199 --- CAUTION --- 0 - {"Plural": "boxes", " Single": " box", " Fullname": " Box", " Description": " A Single box of a unit."} -2025-04-07 18:07:48.293848 --- CAUTION --- 0 - {"Plural": "crates", " Single": " crate", " Fullname": " Crate", " Description": " a single crate of a unit."} -2025-04-07 18:07:48.297999 --- CAUTION --- 0 - {"Plural": "jars", " Single": " jar", " Fullname": " Jar", " Description": " A single Jar of a unit."} -2025-04-07 18:07:48.301330 --- CAUTION --- 0 - {"Plural": "cans", " Single": " can", " Fullname": " Can", " Description": " A Single Can of a unit."} -2025-04-07 18:07:48.304665 --- CAUTION --- 0 - {"Plural": "bars", " Single": " bar", " Fullname": " Bars", " Description": " A Single bar of a unit."} -2025-04-07 18:07:48.307969 --- CAUTION --- 0 - {"Plural": "loaves", " Single": " loaf", " Fullname": " Loaf", " Description": " A single loaf of a unit."} -2025-04-07 18:07:48.311119 --- CAUTION --- 0 - {"Plural": "packs", " Single": " pack", " Fullname": " Pack", " Description": " A Single Pack of a unit."} -2025-04-07 18:08:49.486023 --- CAUTION --- 0 - {"Plural": "pinches", " Single": " pinch", " Fullname": " Pinch", " Description": " Less than 1/8 teaspoon."} -2025-04-07 18:08:49.492309 --- CAUTION --- 0 - {"Plural": "tsp", " Single": " tsp", " Fullname": " Teaspoon", " Description": " 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US."} -2025-04-07 18:08:49.496834 --- CAUTION --- 0 - {"Plural": "dsp", " Single": " dsp", " Fullname": " Dessertspoon", " Description": " 10 millilitres in Australia."} -2025-04-07 18:08:49.500191 --- CAUTION --- 0 - {"Plural": "tbsp", " Single": " tbsp", " Fullname": " Tablespoon", " Description": " 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US."} -2025-04-07 18:08:49.504607 --- CAUTION --- 0 - {"Plural": "fl oz", " Single": " fl oz", " Fullname": " Fluid ounce", " Description": " 28.41 millilitres in the UK or approximately 29.57 millilitres in the US."} -2025-04-07 18:08:49.508006 --- CAUTION --- 0 - {"Plural": "cups", " Single": " cup", " Fullname": " Cup", " Description": " 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US."} -2025-04-07 18:08:49.512009 --- CAUTION --- 0 - {"Plural": "pt", " Single": " pt", " Fullname": " Pint", " Description": " 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US."} -2025-04-07 18:08:49.514519 --- CAUTION --- 0 - {"Plural": "qt", " Single": " qt", " Fullname": " Quart", " Description": " Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US."} -2025-04-07 18:08:49.519512 --- CAUTION --- 0 - {"Plural": "gal", " Single": " gal", " Fullname": " Gallon", " Description": " Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US."} -2025-04-07 18:08:49.522787 --- CAUTION --- 0 - {"Plural": "jiggers", " Single": " jigger", " Fullname": " Jigger", " Description": " 1.5 fluid ounces."} -2025-04-07 18:08:49.526796 --- CAUTION --- 0 - {"Plural": "oz", " Single": " oz", " Fullname": " Ounce", " Description": " 1/4 lb for butter which can also be measured as 3 tablespoons."} -2025-04-07 18:08:49.529796 --- CAUTION --- 0 - {"Plural": "L", " Single": " L", " Fullname": " Liter", " Description": " Commonly used for volume measurement in the metric system."} -2025-04-07 18:08:49.533807 --- CAUTION --- 0 - {"Plural": "mL", " Single": " mL", " Fullname": " Milliliter", " Description": " Commonly used for volume measurement in the metric system."} -2025-04-07 18:08:49.537268 --- CAUTION --- 0 - {"Plural": "dm3", " Single": " dm3", " Fullname": " Cubic decimeter", " Description": " Equivalent to 1 liter."} -2025-04-07 18:08:49.541002 --- CAUTION --- 0 - {"Plural": "g", " Single": " g", " Fullname": " Gram", " Description": " Commonly used for weight measurement in the metric system."} -2025-04-07 18:08:49.544953 --- CAUTION --- 0 - {"Plural": "kg", " Single": " kg", " Fullname": " Kilogram", " Description": " Commonly used for weight measurement in the metric system."} -2025-04-07 18:08:49.548961 --- CAUTION --- 0 - {"Plural": "lbs", " Single": " lb", " Fullname": " Pound", " Description": " Used for weight measurement in the US."} -2025-04-07 18:08:49.551999 --- CAUTION --- 0 - {"Plural": "fluid scruples", " Single": " fluid scruple", " Fullname": " Fluid scruple", " Description": " A unit used in the apothecaries' system but not commonly used in cooking."} -2025-04-07 18:08:49.556000 --- CAUTION --- 0 - {"Plural": "cm3", " Single": " cm3", " Fullname": " Cubic centimeter", " Description": " Equivalent to 1 milliliter."} -2025-04-07 18:08:49.560003 --- CAUTION --- 0 - {"Plural": "breakfast cups", " Single": " breakfast cup", " Fullname": " Breakfast cup", " Description": " Similar in size to the US customary cup and the metric cup."} -2025-04-07 18:08:49.564002 --- CAUTION --- 0 - {"Plural": "tumblers", " Single": " tumbler", " Fullname": " Tumblerful", " Description": " A unit used in British cookery books and recipes."} -2025-04-07 18:08:49.567064 --- CAUTION --- 0 - {"Plural": "winefulls", " Single": " winefull", " Fullname": " Wineglassful", " Description": " A unit used in British cookery books and recipes."} -2025-04-07 18:08:49.571455 --- CAUTION --- 0 - {"Plural": "coffee cups", " Single": " coffee cup", " Fullname": " Coffee cup", " Description": " Can vary from 100 to 200 millilitres."} -2025-04-07 18:08:49.574950 --- CAUTION --- 0 - {"Plural": "sticks of butter", " Single": " stick of butter", " Fullname": " Stick of butter", " Description": " 1/4 lb or 3 tablespoons."} -2025-04-07 18:08:49.578958 --- CAUTION --- 0 - {"Plural": "smidgens", " Single": " smidgen", " Fullname": " Smidgen", " Description": " An approximate unit of measure."} -2025-04-07 18:08:49.582103 --- CAUTION --- 0 - {"Plural": "dashes", " Single": " dash", " Fullname": " Dash", " Description": " An approximate unit of measure."} -2025-04-07 18:08:49.584615 --- CAUTION --- 0 - {"Plural": "drops", " Single": " drop", " Fullname": " Drop", " Description": " An approximate unit of measure."} -2025-04-07 18:08:49.589280 --- CAUTION --- 0 - {"Plural": "eaches", " Single": " each", " Fullname": " Each", " Description": " A single unit."} -2025-04-07 18:08:49.592278 --- CAUTION --- 0 - {"Plural": "boxes", " Single": " box", " Fullname": " Box", " Description": " A Single box of a unit."} -2025-04-07 18:08:49.595790 --- CAUTION --- 0 - {"Plural": "crates", " Single": " crate", " Fullname": " Crate", " Description": " a single crate of a unit."} -2025-04-07 18:08:49.599333 --- CAUTION --- 0 - {"Plural": "jars", " Single": " jar", " Fullname": " Jar", " Description": " A single Jar of a unit."} -2025-04-07 18:08:49.603568 --- CAUTION --- 0 - {"Plural": "cans", " Single": " can", " Fullname": " Can", " Description": " A Single Can of a unit."} -2025-04-07 18:08:49.607011 --- CAUTION --- 0 - {"Plural": "bars", " Single": " bar", " Fullname": " Bars", " Description": " A Single bar of a unit."} -2025-04-07 18:08:49.611167 --- CAUTION --- 0 - {"Plural": "loaves", " Single": " loaf", " Fullname": " Loaf", " Description": " A single loaf of a unit."} -2025-04-07 18:08:49.614706 --- CAUTION --- 0 - {"Plural": "packs", " Single": " pack", " Fullname": " Pack", " Description": " A Single Pack of a unit."} -2025-04-07 18:10:43.995134 --- CAUTION --- DatabaseError(message='duplicate key value violates unique constraint "units_plural_key"DETAIL: Key (plural)=(pinches) already exists.', payload=('pinches', ' pinch', ' Pinch', ' Less than 1/8 teaspoon.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["pinches", " pinch", " Pinch", " Less than 1/8 teaspoon."] -2025-04-07 18:10:44.005096 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tsp', ' tsp', ' Teaspoon', ' 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tsp", " tsp", " Teaspoon", " 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US."] -2025-04-07 18:10:44.012695 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dsp', ' dsp', ' Dessertspoon', ' 10 millilitres in Australia.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dsp", " dsp", " Dessertspoon", " 10 millilitres in Australia."] -2025-04-07 18:10:44.020587 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tbsp', ' tbsp', ' Tablespoon', ' 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tbsp", " tbsp", " Tablespoon", " 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US."] -2025-04-07 18:10:44.027752 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fl oz', ' fl oz', ' Fluid ounce', ' 28.41 millilitres in the UK or approximately 29.57 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fl oz", " fl oz", " Fluid ounce", " 28.41 millilitres in the UK or approximately 29.57 millilitres in the US."] -2025-04-07 18:10:44.036113 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cups', ' cup', ' Cup', ' 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cups", " cup", " Cup", " 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US."] -2025-04-07 18:10:44.043799 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('pt', ' pt', ' Pint', ' 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["pt", " pt", " Pint", " 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US."] -2025-04-07 18:10:44.051856 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('qt', ' qt', ' Quart', ' Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["qt", " qt", " Quart", " Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US."] -2025-04-07 18:10:44.059206 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('gal', ' gal', ' Gallon', ' Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["gal", " gal", " Gallon", " Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US."] -2025-04-07 18:10:44.067014 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jiggers', ' jigger', ' Jigger', ' 1.5 fluid ounces.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jiggers", " jigger", " Jigger", " 1.5 fluid ounces."] -2025-04-07 18:10:44.074033 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('oz', ' oz', ' Ounce', ' 1/4 lb for butter which can also be measured as 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["oz", " oz", " Ounce", " 1/4 lb for butter which can also be measured as 3 tablespoons."] -2025-04-07 18:10:44.081603 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('L', ' L', ' Liter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["L", " L", " Liter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:10:44.089592 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('mL', ' mL', ' Milliliter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["mL", " mL", " Milliliter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:10:44.097342 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dm3', ' dm3', ' Cubic decimeter', ' Equivalent to 1 liter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dm3", " dm3", " Cubic decimeter", " Equivalent to 1 liter."] -2025-04-07 18:10:44.104724 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('g', ' g', ' Gram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["g", " g", " Gram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:10:44.112144 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('kg', ' kg', ' Kilogram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["kg", " kg", " Kilogram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:10:44.120135 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('lbs', ' lb', ' Pound', ' Used for weight measurement in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["lbs", " lb", " Pound", " Used for weight measurement in the US."] -2025-04-07 18:10:44.127804 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fluid scruples', ' fluid scruple', ' Fluid scruple', " A unit used in the apothecaries' system but not commonly used in cooking."), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fluid scruples", " fluid scruple", " Fluid scruple", " A unit used in the apothecaries' system but not commonly used in cooking."] -2025-04-07 18:10:44.135113 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cm3', ' cm3', ' Cubic centimeter', ' Equivalent to 1 milliliter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cm3", " cm3", " Cubic centimeter", " Equivalent to 1 milliliter."] -2025-04-07 18:10:44.142675 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('breakfast cups', ' breakfast cup', ' Breakfast cup', ' Similar in size to the US customary cup and the metric cup.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["breakfast cups", " breakfast cup", " Breakfast cup", " Similar in size to the US customary cup and the metric cup."] -2025-04-07 18:10:44.151374 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tumblers', ' tumbler', ' Tumblerful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tumblers", " tumbler", " Tumblerful", " A unit used in British cookery books and recipes."] -2025-04-07 18:10:44.158807 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('winefulls', ' winefull', ' Wineglassful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["winefulls", " winefull", " Wineglassful", " A unit used in British cookery books and recipes."] -2025-04-07 18:10:44.167004 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('coffee cups', ' coffee cup', ' Coffee cup', ' Can vary from 100 to 200 millilitres.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["coffee cups", " coffee cup", " Coffee cup", " Can vary from 100 to 200 millilitres."] -2025-04-07 18:10:44.174449 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('sticks of butter', ' stick of butter', ' Stick of butter', ' 1/4 lb or 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["sticks of butter", " stick of butter", " Stick of butter", " 1/4 lb or 3 tablespoons."] -2025-04-07 18:10:44.183729 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('smidgens', ' smidgen', ' Smidgen', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["smidgens", " smidgen", " Smidgen", " An approximate unit of measure."] -2025-04-07 18:10:44.191339 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dashes', ' dash', ' Dash', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dashes", " dash", " Dash", " An approximate unit of measure."] -2025-04-07 18:10:44.198886 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('drops', ' drop', ' Drop', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["drops", " drop", " Drop", " An approximate unit of measure."] -2025-04-07 18:10:44.206287 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('eaches', ' each', ' Each', ' A single unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["eaches", " each", " Each", " A single unit."] -2025-04-07 18:10:44.213758 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('boxes', ' box', ' Box', ' A Single box of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["boxes", " box", " Box", " A Single box of a unit."] -2025-04-07 18:10:44.221833 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('crates', ' crate', ' Crate', ' a single crate of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["crates", " crate", " Crate", " a single crate of a unit."] -2025-04-07 18:10:44.229839 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jars', ' jar', ' Jar', ' A single Jar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jars", " jar", " Jar", " A single Jar of a unit."] -2025-04-07 18:10:44.237064 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cans', ' can', ' Can', ' A Single Can of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cans", " can", " Can", " A Single Can of a unit."] -2025-04-07 18:10:44.244118 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('bars', ' bar', ' Bars', ' A Single bar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["bars", " bar", " Bars", " A Single bar of a unit."] -2025-04-07 18:10:44.252959 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('loaves', ' loaf', ' Loaf', ' A single loaf of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["loaves", " loaf", " Loaf", " A single loaf of a unit."] -2025-04-07 18:10:44.260249 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('packs', ' pack', ' Pack', ' A Single Pack of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["packs", " pack", " Pack", " A Single Pack of a unit."] -2025-04-07 18:11:11.901876 --- CAUTION --- DatabaseError(message='duplicate key value violates unique constraint "units_plural_key"DETAIL: Key (plural)=(pinches) already exists.', payload=('pinches', ' pinch', ' Pinch', ' Less than 1/8 teaspoon.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["pinches", " pinch", " Pinch", " Less than 1/8 teaspoon."] -2025-04-07 18:11:11.913095 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tsp', ' tsp', ' Teaspoon', ' 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tsp", " tsp", " Teaspoon", " 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US."] -2025-04-07 18:11:11.920834 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dsp', ' dsp', ' Dessertspoon', ' 10 millilitres in Australia.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dsp", " dsp", " Dessertspoon", " 10 millilitres in Australia."] -2025-04-07 18:11:11.928118 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tbsp', ' tbsp', ' Tablespoon', ' 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tbsp", " tbsp", " Tablespoon", " 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US."] -2025-04-07 18:11:11.935834 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fl oz', ' fl oz', ' Fluid ounce', ' 28.41 millilitres in the UK or approximately 29.57 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fl oz", " fl oz", " Fluid ounce", " 28.41 millilitres in the UK or approximately 29.57 millilitres in the US."] -2025-04-07 18:11:11.943995 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cups', ' cup', ' Cup', ' 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cups", " cup", " Cup", " 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US."] -2025-04-07 18:11:11.951271 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('pt', ' pt', ' Pint', ' 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["pt", " pt", " Pint", " 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US."] -2025-04-07 18:11:11.958833 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('qt', ' qt', ' Quart', ' Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["qt", " qt", " Quart", " Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US."] -2025-04-07 18:11:11.966926 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('gal', ' gal', ' Gallon', ' Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["gal", " gal", " Gallon", " Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US."] -2025-04-07 18:11:11.974434 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jiggers', ' jigger', ' Jigger', ' 1.5 fluid ounces.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jiggers", " jigger", " Jigger", " 1.5 fluid ounces."] -2025-04-07 18:11:11.982214 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('oz', ' oz', ' Ounce', ' 1/4 lb for butter which can also be measured as 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["oz", " oz", " Ounce", " 1/4 lb for butter which can also be measured as 3 tablespoons."] -2025-04-07 18:11:11.989518 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('L', ' L', ' Liter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["L", " L", " Liter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:11:11.997321 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('mL', ' mL', ' Milliliter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["mL", " mL", " Milliliter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:11:12.005157 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dm3', ' dm3', ' Cubic decimeter', ' Equivalent to 1 liter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dm3", " dm3", " Cubic decimeter", " Equivalent to 1 liter."] -2025-04-07 18:11:12.012662 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('g', ' g', ' Gram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["g", " g", " Gram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:11:12.020544 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('kg', ' kg', ' Kilogram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["kg", " kg", " Kilogram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:11:12.028832 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('lbs', ' lb', ' Pound', ' Used for weight measurement in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["lbs", " lb", " Pound", " Used for weight measurement in the US."] -2025-04-07 18:11:12.035928 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fluid scruples', ' fluid scruple', ' Fluid scruple', " A unit used in the apothecaries' system but not commonly used in cooking."), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fluid scruples", " fluid scruple", " Fluid scruple", " A unit used in the apothecaries' system but not commonly used in cooking."] -2025-04-07 18:11:12.044169 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cm3', ' cm3', ' Cubic centimeter', ' Equivalent to 1 milliliter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cm3", " cm3", " Cubic centimeter", " Equivalent to 1 milliliter."] -2025-04-07 18:11:12.051848 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('breakfast cups', ' breakfast cup', ' Breakfast cup', ' Similar in size to the US customary cup and the metric cup.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["breakfast cups", " breakfast cup", " Breakfast cup", " Similar in size to the US customary cup and the metric cup."] -2025-04-07 18:11:12.059081 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tumblers', ' tumbler', ' Tumblerful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tumblers", " tumbler", " Tumblerful", " A unit used in British cookery books and recipes."] -2025-04-07 18:11:12.067370 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('winefulls', ' winefull', ' Wineglassful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["winefulls", " winefull", " Wineglassful", " A unit used in British cookery books and recipes."] -2025-04-07 18:11:12.074897 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('coffee cups', ' coffee cup', ' Coffee cup', ' Can vary from 100 to 200 millilitres.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["coffee cups", " coffee cup", " Coffee cup", " Can vary from 100 to 200 millilitres."] -2025-04-07 18:11:12.082570 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('sticks of butter', ' stick of butter', ' Stick of butter', ' 1/4 lb or 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["sticks of butter", " stick of butter", " Stick of butter", " 1/4 lb or 3 tablespoons."] -2025-04-07 18:11:12.090585 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('smidgens', ' smidgen', ' Smidgen', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["smidgens", " smidgen", " Smidgen", " An approximate unit of measure."] -2025-04-07 18:11:12.099307 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dashes', ' dash', ' Dash', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dashes", " dash", " Dash", " An approximate unit of measure."] -2025-04-07 18:11:12.106924 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('drops', ' drop', ' Drop', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["drops", " drop", " Drop", " An approximate unit of measure."] -2025-04-07 18:11:12.114986 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('eaches', ' each', ' Each', ' A single unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["eaches", " each", " Each", " A single unit."] -2025-04-07 18:11:12.123785 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('boxes', ' box', ' Box', ' A Single box of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["boxes", " box", " Box", " A Single box of a unit."] -2025-04-07 18:11:12.132171 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('crates', ' crate', ' Crate', ' a single crate of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["crates", " crate", " Crate", " a single crate of a unit."] -2025-04-07 18:11:12.140032 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jars', ' jar', ' Jar', ' A single Jar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jars", " jar", " Jar", " A single Jar of a unit."] -2025-04-07 18:11:12.148143 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cans', ' can', ' Can', ' A Single Can of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cans", " can", " Can", " A Single Can of a unit."] -2025-04-07 18:11:12.157037 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('bars', ' bar', ' Bars', ' A Single bar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["bars", " bar", " Bars", " A Single bar of a unit."] -2025-04-07 18:11:12.165175 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('loaves', ' loaf', ' Loaf', ' A single loaf of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["loaves", " loaf", " Loaf", " A single loaf of a unit."] -2025-04-07 18:11:12.172983 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('packs', ' pack', ' Pack', ' A Single Pack of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["packs", " pack", " Pack", " A Single Pack of a unit."] -2025-04-07 18:12:49.005060 --- CAUTION --- DatabaseError(message='duplicate key value violates unique constraint "units_plural_key"DETAIL: Key (plural)=(Plural) already exists.', payload=('Plural', ' Single', ' Fullname', ' Description'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["Plural", " Single", " Fullname", " Description"] -2025-04-07 18:12:49.018692 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tsp', ' tsp', ' Teaspoon', ' 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tsp", " tsp", " Teaspoon", " 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US."] -2025-04-07 18:12:49.026767 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dsp', ' dsp', ' Dessertspoon', ' 10 millilitres in Australia.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dsp", " dsp", " Dessertspoon", " 10 millilitres in Australia."] -2025-04-07 18:12:49.035142 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tbsp', ' tbsp', ' Tablespoon', ' 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tbsp", " tbsp", " Tablespoon", " 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US."] -2025-04-07 18:12:49.043176 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fl oz', ' fl oz', ' Fluid ounce', ' 28.41 millilitres in the UK or approximately 29.57 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fl oz", " fl oz", " Fluid ounce", " 28.41 millilitres in the UK or approximately 29.57 millilitres in the US."] -2025-04-07 18:12:49.052311 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cups', ' cup', ' Cup', ' 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cups", " cup", " Cup", " 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US."] -2025-04-07 18:12:49.060527 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('pt', ' pt', ' Pint', ' 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["pt", " pt", " Pint", " 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US."] -2025-04-07 18:12:49.068511 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('qt', ' qt', ' Quart', ' Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["qt", " qt", " Quart", " Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US."] -2025-04-07 18:12:49.076951 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('gal', ' gal', ' Gallon', ' Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["gal", " gal", " Gallon", " Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US."] -2025-04-07 18:12:49.086062 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jiggers', ' jigger', ' Jigger', ' 1.5 fluid ounces.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jiggers", " jigger", " Jigger", " 1.5 fluid ounces."] -2025-04-07 18:12:49.095057 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('oz', ' oz', ' Ounce', ' 1/4 lb for butter which can also be measured as 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["oz", " oz", " Ounce", " 1/4 lb for butter which can also be measured as 3 tablespoons."] -2025-04-07 18:12:49.102906 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('L', ' L', ' Liter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["L", " L", " Liter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:12:49.111927 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('mL', ' mL', ' Milliliter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["mL", " mL", " Milliliter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:12:49.119508 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dm3', ' dm3', ' Cubic decimeter', ' Equivalent to 1 liter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dm3", " dm3", " Cubic decimeter", " Equivalent to 1 liter."] -2025-04-07 18:12:49.128094 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('g', ' g', ' Gram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["g", " g", " Gram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:12:49.136293 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('kg', ' kg', ' Kilogram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["kg", " kg", " Kilogram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:12:49.144897 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('lbs', ' lb', ' Pound', ' Used for weight measurement in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["lbs", " lb", " Pound", " Used for weight measurement in the US."] -2025-04-07 18:12:49.153354 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fluid scruples', ' fluid scruple', ' Fluid scruple', " A unit used in the apothecaries' system but not commonly used in cooking."), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fluid scruples", " fluid scruple", " Fluid scruple", " A unit used in the apothecaries' system but not commonly used in cooking."] -2025-04-07 18:12:49.162476 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cm3', ' cm3', ' Cubic centimeter', ' Equivalent to 1 milliliter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cm3", " cm3", " Cubic centimeter", " Equivalent to 1 milliliter."] -2025-04-07 18:12:49.170611 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('breakfast cups', ' breakfast cup', ' Breakfast cup', ' Similar in size to the US customary cup and the metric cup.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["breakfast cups", " breakfast cup", " Breakfast cup", " Similar in size to the US customary cup and the metric cup."] -2025-04-07 18:12:49.178357 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tumblers', ' tumbler', ' Tumblerful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tumblers", " tumbler", " Tumblerful", " A unit used in British cookery books and recipes."] -2025-04-07 18:12:49.186429 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('winefulls', ' winefull', ' Wineglassful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["winefulls", " winefull", " Wineglassful", " A unit used in British cookery books and recipes."] -2025-04-07 18:12:49.195941 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('coffee cups', ' coffee cup', ' Coffee cup', ' Can vary from 100 to 200 millilitres.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["coffee cups", " coffee cup", " Coffee cup", " Can vary from 100 to 200 millilitres."] -2025-04-07 18:12:49.205197 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('sticks of butter', ' stick of butter', ' Stick of butter', ' 1/4 lb or 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["sticks of butter", " stick of butter", " Stick of butter", " 1/4 lb or 3 tablespoons."] -2025-04-07 18:12:49.212492 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('smidgens', ' smidgen', ' Smidgen', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["smidgens", " smidgen", " Smidgen", " An approximate unit of measure."] -2025-04-07 18:12:49.221728 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dashes', ' dash', ' Dash', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dashes", " dash", " Dash", " An approximate unit of measure."] -2025-04-07 18:12:49.231128 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('drops', ' drop', ' Drop', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["drops", " drop", " Drop", " An approximate unit of measure."] -2025-04-07 18:12:49.239584 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('eaches', ' each', ' Each', ' A single unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["eaches", " each", " Each", " A single unit."] -2025-04-07 18:12:49.248671 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('boxes', ' box', ' Box', ' A Single box of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["boxes", " box", " Box", " A Single box of a unit."] -2025-04-07 18:12:49.257268 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('crates', ' crate', ' Crate', ' a single crate of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["crates", " crate", " Crate", " a single crate of a unit."] -2025-04-07 18:12:49.266294 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jars', ' jar', ' Jar', ' A single Jar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jars", " jar", " Jar", " A single Jar of a unit."] -2025-04-07 18:12:49.275199 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cans', ' can', ' Can', ' A Single Can of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cans", " can", " Can", " A Single Can of a unit."] -2025-04-07 18:12:49.282805 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('bars', ' bar', ' Bars', ' A Single bar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["bars", " bar", " Bars", " A Single bar of a unit."] -2025-04-07 18:12:49.291482 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('loaves', ' loaf', ' Loaf', ' A single loaf of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["loaves", " loaf", " Loaf", " A single loaf of a unit."] -2025-04-07 18:12:49.301205 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('packs', ' pack', ' Pack', ' A Single Pack of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["packs", " pack", " Pack", " A Single Pack of a unit."] -2025-04-07 18:13:10.286385 --- CAUTION --- DatabaseError(message='duplicate key value violates unique constraint "units_plural_key"DETAIL: Key (plural)=(Plural) already exists.', payload=('Plural', ' Single', ' Fullname', ' Description'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["Plural", " Single", " Fullname", " Description"] -2025-04-07 18:13:10.298389 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tsp', ' tsp', ' Teaspoon', ' 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tsp", " tsp", " Teaspoon", " 5 millilitres in Australia New Zealand UK Canada and the US but approximately 4.93 millilitres in the US."] -2025-04-07 18:13:10.307226 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dsp', ' dsp', ' Dessertspoon', ' 10 millilitres in Australia.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dsp", " dsp", " Dessertspoon", " 10 millilitres in Australia."] -2025-04-07 18:13:10.316278 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tbsp', ' tbsp', ' Tablespoon', ' 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tbsp", " tbsp", " Tablespoon", " 20 millilitres in Australia or 15 millilitres in New Zealand the UK Canada and the US."] -2025-04-07 18:13:10.324427 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fl oz', ' fl oz', ' Fluid ounce', ' 28.41 millilitres in the UK or approximately 29.57 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fl oz", " fl oz", " Fluid ounce", " 28.41 millilitres in the UK or approximately 29.57 millilitres in the US."] -2025-04-07 18:13:10.333981 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cups', ' cup', ' Cup', ' 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cups", " cup", " Cup", " 250 millilitres in Australia and New Zealand or approximately 170.48 millilitres in the UK or approximately 227.31 millilitres in Canada and approximately 236.59 millilitres in the US."] -2025-04-07 18:13:10.343232 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('pt', ' pt', ' Pint', ' 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["pt", " pt", " Pint", " 570 millilitres in Australia approximately 568.26 millilitres in New Zealand the UK and Canada and approximately 473.18 millilitres in the US."] -2025-04-07 18:13:10.350877 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('qt', ' qt', ' Quart', ' Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["qt", " qt", " Quart", " Approximately 1136.52 millilitres in Australia New Zealand the UK and Canada and approximately 946.35 millilitres in the US."] -2025-04-07 18:13:10.359701 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('gal', ' gal', ' Gallon', ' Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["gal", " gal", " Gallon", " Approximately 4546.09 millilitres in Australia New Zealand the UK and Canada and approximately 3785.41 millilitres in the US."] -2025-04-07 18:13:10.367839 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jiggers', ' jigger', ' Jigger', ' 1.5 fluid ounces.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jiggers", " jigger", " Jigger", " 1.5 fluid ounces."] -2025-04-07 18:13:10.376504 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('oz', ' oz', ' Ounce', ' 1/4 lb for butter which can also be measured as 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["oz", " oz", " Ounce", " 1/4 lb for butter which can also be measured as 3 tablespoons."] -2025-04-07 18:13:10.384509 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('L', ' L', ' Liter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["L", " L", " Liter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:13:10.392478 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('mL', ' mL', ' Milliliter', ' Commonly used for volume measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["mL", " mL", " Milliliter", " Commonly used for volume measurement in the metric system."] -2025-04-07 18:13:10.401408 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dm3', ' dm3', ' Cubic decimeter', ' Equivalent to 1 liter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dm3", " dm3", " Cubic decimeter", " Equivalent to 1 liter."] -2025-04-07 18:13:10.410222 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('g', ' g', ' Gram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["g", " g", " Gram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:13:10.418352 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('kg', ' kg', ' Kilogram', ' Commonly used for weight measurement in the metric system.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["kg", " kg", " Kilogram", " Commonly used for weight measurement in the metric system."] -2025-04-07 18:13:10.426544 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('lbs', ' lb', ' Pound', ' Used for weight measurement in the US.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["lbs", " lb", " Pound", " Used for weight measurement in the US."] -2025-04-07 18:13:10.435351 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('fluid scruples', ' fluid scruple', ' Fluid scruple', " A unit used in the apothecaries' system but not commonly used in cooking."), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["fluid scruples", " fluid scruple", " Fluid scruple", " A unit used in the apothecaries' system but not commonly used in cooking."] -2025-04-07 18:13:10.444346 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cm3', ' cm3', ' Cubic centimeter', ' Equivalent to 1 milliliter.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cm3", " cm3", " Cubic centimeter", " Equivalent to 1 milliliter."] -2025-04-07 18:13:10.452199 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('breakfast cups', ' breakfast cup', ' Breakfast cup', ' Similar in size to the US customary cup and the metric cup.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["breakfast cups", " breakfast cup", " Breakfast cup", " Similar in size to the US customary cup and the metric cup."] -2025-04-07 18:13:10.461058 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('tumblers', ' tumbler', ' Tumblerful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["tumblers", " tumbler", " Tumblerful", " A unit used in British cookery books and recipes."] -2025-04-07 18:13:10.469292 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('winefulls', ' winefull', ' Wineglassful', ' A unit used in British cookery books and recipes.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["winefulls", " winefull", " Wineglassful", " A unit used in British cookery books and recipes."] -2025-04-07 18:13:10.478094 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('coffee cups', ' coffee cup', ' Coffee cup', ' Can vary from 100 to 200 millilitres.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["coffee cups", " coffee cup", " Coffee cup", " Can vary from 100 to 200 millilitres."] -2025-04-07 18:13:10.486368 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('sticks of butter', ' stick of butter', ' Stick of butter', ' 1/4 lb or 3 tablespoons.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["sticks of butter", " stick of butter", " Stick of butter", " 1/4 lb or 3 tablespoons."] -2025-04-07 18:13:10.494021 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('smidgens', ' smidgen', ' Smidgen', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["smidgens", " smidgen", " Smidgen", " An approximate unit of measure."] -2025-04-07 18:13:10.502494 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('dashes', ' dash', ' Dash', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["dashes", " dash", " Dash", " An approximate unit of measure."] -2025-04-07 18:13:10.510827 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('drops', ' drop', ' Drop', ' An approximate unit of measure.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["drops", " drop", " Drop", " An approximate unit of measure."] -2025-04-07 18:13:10.519133 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('eaches', ' each', ' Each', ' A single unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["eaches", " each", " Each", " A single unit."] -2025-04-07 18:13:10.528226 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('boxes', ' box', ' Box', ' A Single box of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["boxes", " box", " Box", " A Single box of a unit."] -2025-04-07 18:13:10.537276 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('crates', ' crate', ' Crate', ' a single crate of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["crates", " crate", " Crate", " a single crate of a unit."] -2025-04-07 18:13:10.544973 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('jars', ' jar', ' Jar', ' A single Jar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["jars", " jar", " Jar", " A single Jar of a unit."] -2025-04-07 18:13:10.554072 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('cans', ' can', ' Can', ' A Single Can of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["cans", " can", " Can", " A Single Can of a unit."] -2025-04-07 18:13:10.561977 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('bars', ' bar', ' Bars', ' A Single bar of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["bars", " bar", " Bars", " A Single bar of a unit."] -2025-04-07 18:13:10.570396 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('loaves', ' loaf', ' Loaf', ' A single loaf of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["loaves", " loaf", " Loaf", " A single loaf of a unit."] -2025-04-07 18:13:10.579705 --- CAUTION --- DatabaseError(message='current transaction is aborted, commands ignored until end of transaction block', payload=('packs', ' pack', ' Pack', ' A Single Pack of a unit.'), sql='INSERT INTO units(plural, single, fullname, description) VALUES (%s, %s, %s, %s) RETURNING *;') - ["packs", " pack", " Pack", " A Single Pack of a unit."]2025-04-20 19:12:42.901904 --- INFO --- logins Created! -2025-04-20 19:12:42.907042 --- INFO --- sites Created! -2025-04-20 19:12:42.916090 --- INFO --- roles Created! -2025-04-20 19:12:42.924299 --- INFO --- units Created! -2025-04-20 19:12:42.936431 --- INFO --- cost_layers Created! -2025-04-20 19:12:42.948063 --- INFO --- linked_items Created! -2025-04-20 19:12:42.956357 --- INFO --- brands Created! -2025-04-20 19:12:42.965966 --- INFO --- food_info Created! -2025-04-20 19:12:42.978005 --- INFO --- item_info Created! -2025-04-20 19:12:42.989756 --- INFO --- zones Created! -2025-04-20 19:12:42.999753 --- INFO --- locations Created! -2025-04-20 19:12:43.010766 --- INFO --- logistics_info Created! -2025-04-20 19:12:43.020793 --- INFO --- transactions Created! -2025-04-20 19:12:43.032889 --- INFO --- item Created! -2025-04-20 19:12:43.042155 --- INFO --- vendors Created! -2025-04-20 19:12:43.052984 --- INFO --- groups Created! -2025-04-20 19:12:43.065257 --- INFO --- group_items Created! -2025-04-20 19:12:43.075250 --- INFO --- receipts Created! -2025-04-20 19:12:43.085279 --- INFO --- receipt_items Created! -2025-04-20 19:12:43.095708 --- INFO --- recipes Created! -2025-04-20 19:12:43.108432 --- INFO --- recipe_items Created! -2025-04-20 19:12:43.118248 --- INFO --- shopping_lists Created! -2025-04-20 19:12:43.130093 --- INFO --- shopping_list_items Created! -2025-04-20 19:12:43.142255 --- INFO --- item_locations Created! -2025-04-20 19:12:43.152766 --- INFO --- conversions Created! -2025-04-20 19:12:43.157756 --- INFO --- Admin User Created! -2025-04-20 19:12:43.173869 --- ERROR --- module 'MyDataclasses' has no attribute 'ZonePayload' -2025-04-20 19:13:09.179803 --- INFO --- logins Created! -2025-04-20 19:13:09.186834 --- INFO --- sites Created! -2025-04-20 19:13:09.191988 --- INFO --- roles Created! -2025-04-20 19:13:09.196031 --- INFO --- units Created! -2025-04-20 19:13:09.203142 --- INFO --- cost_layers Created! -2025-04-20 19:13:09.211122 --- INFO --- linked_items Created! -2025-04-20 19:13:09.217381 --- INFO --- brands Created! -2025-04-20 19:13:09.223367 --- INFO --- food_info Created! -2025-04-20 19:13:09.231980 --- INFO --- item_info Created! -2025-04-20 19:13:09.239962 --- INFO --- zones Created! -2025-04-20 19:13:09.247043 --- INFO --- locations Created! -2025-04-20 19:13:09.254389 --- INFO --- logistics_info Created! -2025-04-20 19:13:09.261528 --- INFO --- transactions Created! -2025-04-20 19:13:09.270171 --- INFO --- item Created! -2025-04-20 19:13:09.276674 --- INFO --- vendors Created! -2025-04-20 19:13:09.283569 --- INFO --- groups Created! -2025-04-20 19:13:09.291142 --- INFO --- group_items Created! -2025-04-20 19:13:09.300047 --- INFO --- receipts Created! -2025-04-20 19:13:09.307082 --- INFO --- receipt_items Created! -2025-04-20 19:13:09.314189 --- INFO --- recipes Created! -2025-04-20 19:13:09.323320 --- INFO --- recipe_items Created! -2025-04-20 19:13:09.331286 --- INFO --- shopping_lists Created! -2025-04-20 19:13:09.338671 --- INFO --- shopping_list_items Created! -2025-04-20 19:13:09.347666 --- INFO --- item_locations Created! -2025-04-20 19:13:09.354290 --- INFO --- conversions Created! -2025-04-20 19:13:09.358352 --- INFO --- Admin User Created! -2025-04-20 19:13:09.373201 --- ERROR --- module 'MyDataclasses' has no attribute 'ZonePayload' -2025-04-20 19:14:30.040093 --- INFO --- logins Created! -2025-04-20 19:14:30.047388 --- INFO --- sites Created! -2025-04-20 19:14:30.053137 --- INFO --- roles Created! -2025-04-20 19:14:30.058339 --- INFO --- units Created! -2025-04-20 19:14:30.066445 --- INFO --- cost_layers Created! -2025-04-20 19:14:30.074589 --- INFO --- linked_items Created! -2025-04-20 19:14:30.080372 --- INFO --- brands Created! -2025-04-20 19:14:30.088112 --- INFO --- food_info Created! -2025-04-20 19:14:30.095435 --- INFO --- item_info Created! -2025-04-20 19:14:30.104268 --- INFO --- zones Created! -2025-04-20 19:14:30.111070 --- INFO --- locations Created! -2025-04-20 19:14:30.118747 --- INFO --- logistics_info Created! -2025-04-20 19:14:30.126464 --- INFO --- transactions Created! -2025-04-20 19:14:30.136123 --- INFO --- item Created! -2025-04-20 19:14:30.142326 --- INFO --- vendors Created! -2025-04-20 19:14:30.150179 --- INFO --- groups Created! -2025-04-20 19:14:30.159002 --- INFO --- group_items Created! -2025-04-20 19:14:30.165728 --- INFO --- receipts Created! -2025-04-20 19:14:30.173195 --- INFO --- receipt_items Created! -2025-04-20 19:14:30.180307 --- INFO --- recipes Created! -2025-04-20 19:14:30.188377 --- INFO --- recipe_items Created! -2025-04-20 19:14:30.195275 --- INFO --- shopping_lists Created! -2025-04-20 19:14:30.204333 --- INFO --- shopping_list_items Created! -2025-04-20 19:14:30.212189 --- INFO --- item_locations Created! -2025-04-20 19:14:30.218980 --- INFO --- conversions Created! -2025-04-20 19:14:30.223144 --- INFO --- Admin User Created! -2025-04-20 19:14:30.237347 --- ERROR --- module 'MyDataclasses' has no attribute 'ZonePayload' -2025-04-20 19:15:37.294592 --- INFO --- logins Created! -2025-04-20 19:15:37.300684 --- INFO --- sites Created! -2025-04-20 19:15:37.306214 --- INFO --- roles Created! -2025-04-20 19:15:37.310743 --- INFO --- units Created! -2025-04-20 19:15:37.320253 --- INFO --- cost_layers Created! -2025-04-20 19:15:37.328204 --- INFO --- linked_items Created! -2025-04-20 19:15:37.334340 --- INFO --- brands Created! -2025-04-20 19:15:37.341236 --- INFO --- food_info Created! -2025-04-20 19:15:37.348720 --- INFO --- item_info Created! -2025-04-20 19:15:37.358766 --- INFO --- zones Created! -2025-04-20 19:15:37.365313 --- INFO --- locations Created! -2025-04-20 19:15:37.373227 --- INFO --- logistics_info Created! -2025-04-20 19:15:37.379296 --- INFO --- transactions Created! -2025-04-20 19:15:37.387641 --- INFO --- item Created! -2025-04-20 19:15:37.395209 --- INFO --- vendors Created! -2025-04-20 19:15:37.402427 --- INFO --- groups Created! -2025-04-20 19:15:37.410391 --- INFO --- group_items Created! -2025-04-20 19:15:37.418421 --- INFO --- receipts Created! -2025-04-20 19:15:37.425524 --- INFO --- receipt_items Created! -2025-04-20 19:15:37.432240 --- INFO --- recipes Created! -2025-04-20 19:15:37.441206 --- INFO --- recipe_items Created! -2025-04-20 19:15:37.448373 --- INFO --- shopping_lists Created! -2025-04-20 19:15:37.456919 --- INFO --- shopping_list_items Created! -2025-04-20 19:15:37.465857 --- INFO --- item_locations Created! -2025-04-20 19:15:37.471974 --- INFO --- conversions Created! -2025-04-20 19:15:37.477332 --- INFO --- Admin User Created! -2025-04-20 19:15:37.488490 --- ERROR --- module 'MyDataclasses' has no attribute 'ZonePayload' -2025-04-20 19:16:04.245426 --- INFO --- logins Created! -2025-04-20 19:16:04.252369 --- INFO --- sites Created! -2025-04-20 19:16:04.257457 --- INFO --- roles Created! -2025-04-20 19:16:04.262528 --- INFO --- units Created! -2025-04-20 19:16:04.268813 --- INFO --- cost_layers Created! -2025-04-20 19:16:04.277403 --- INFO --- linked_items Created! -2025-04-20 19:16:04.282454 --- INFO --- brands Created! -2025-04-20 19:16:04.289349 --- INFO --- food_info Created! -2025-04-20 19:16:04.297588 --- INFO --- item_info Created! -2025-04-20 19:16:04.304872 --- INFO --- zones Created! -2025-04-20 19:16:04.312242 --- INFO --- locations Created! -2025-04-20 19:16:04.320032 --- INFO --- logistics_info Created! -2025-04-20 19:16:04.327526 --- INFO --- transactions Created! -2025-04-20 19:16:04.336107 --- INFO --- item Created! -2025-04-20 19:16:04.342583 --- INFO --- vendors Created! -2025-04-20 19:16:04.350295 --- INFO --- groups Created! -2025-04-20 19:16:04.357531 --- INFO --- group_items Created! -2025-04-20 19:16:04.365626 --- INFO --- receipts Created! -2025-04-20 19:16:04.372230 --- INFO --- receipt_items Created! -2025-04-20 19:16:04.379414 --- INFO --- recipes Created! -2025-04-20 19:16:04.387527 --- INFO --- recipe_items Created! -2025-04-20 19:16:04.394398 --- INFO --- shopping_lists Created! -2025-04-20 19:16:04.403440 --- INFO --- shopping_list_items Created! -2025-04-20 19:16:04.410510 --- INFO --- item_locations Created! -2025-04-20 19:16:04.418073 --- INFO --- conversions Created! -2025-04-20 19:16:04.423218 --- INFO --- Admin User Created! -2025-04-20 19:16:04.436197 --- ERROR --- module 'MyDataclasses' has no attribute 'ZonePayload' -2025-04-20 19:16:58.466588 --- INFO --- logins Created! -2025-04-20 19:16:58.472688 --- INFO --- sites Created! -2025-04-20 19:16:58.477737 --- INFO --- roles Created! -2025-04-20 19:16:58.481251 --- INFO --- units Created! -2025-04-20 19:16:58.489772 --- INFO --- cost_layers Created! -2025-04-20 19:16:58.497672 --- INFO --- linked_items Created! -2025-04-20 19:16:58.502626 --- INFO --- brands Created! -2025-04-20 19:16:58.509339 --- INFO --- food_info Created! -2025-04-20 19:16:58.516796 --- INFO --- item_info Created! -2025-04-20 19:16:58.524536 --- INFO --- zones Created! -2025-04-20 19:16:58.532376 --- INFO --- locations Created! -2025-04-20 19:16:58.540104 --- INFO --- logistics_info Created! -2025-04-20 19:16:58.547122 --- INFO --- transactions Created! -2025-04-20 19:16:58.555955 --- INFO --- item Created! -2025-04-20 19:16:58.562475 --- INFO --- vendors Created! -2025-04-20 19:16:58.570565 --- INFO --- groups Created! -2025-04-20 19:16:58.578991 --- INFO --- group_items Created! -2025-04-20 19:16:58.586669 --- INFO --- receipts Created! -2025-04-20 19:16:58.594838 --- INFO --- receipt_items Created! -2025-04-20 19:16:58.601902 --- INFO --- recipes Created! -2025-04-20 19:16:58.608915 --- INFO --- recipe_items Created! -2025-04-20 19:16:58.617684 --- INFO --- shopping_lists Created! -2025-04-20 19:16:58.625427 --- INFO --- shopping_list_items Created! -2025-04-20 19:16:58.635479 --- INFO --- item_locations Created! -2025-04-20 19:16:58.642372 --- INFO --- conversions Created! -2025-04-20 19:16:58.646415 --- INFO --- Admin User Created! -2025-04-20 19:16:58.668418 --- ERROR --- module 'MyDataclasses' has no attribute 'VendorPayload' -2025-04-20 19:17:15.674844 --- INFO --- logins Created! -2025-04-20 19:17:15.682368 --- INFO --- sites Created! -2025-04-20 19:17:15.687761 --- INFO --- roles Created! -2025-04-20 19:17:15.692281 --- INFO --- units Created! -2025-04-20 19:17:15.700205 --- INFO --- cost_layers Created! -2025-04-20 19:17:15.707736 --- INFO --- linked_items Created! -2025-04-20 19:17:15.714280 --- INFO --- brands Created! -2025-04-20 19:17:15.720500 --- INFO --- food_info Created! -2025-04-20 19:17:15.728902 --- INFO --- item_info Created! -2025-04-20 19:17:15.735575 --- INFO --- zones Created! -2025-04-20 19:17:15.743577 --- INFO --- locations Created! -2025-04-20 19:17:15.750537 --- INFO --- logistics_info Created! -2025-04-20 19:17:15.757739 --- INFO --- transactions Created! -2025-04-20 19:17:15.767727 --- INFO --- item Created! -2025-04-20 19:17:15.773470 --- INFO --- vendors Created! -2025-04-20 19:17:15.781078 --- INFO --- groups Created! -2025-04-20 19:17:15.791354 --- INFO --- group_items Created! -2025-04-20 19:17:15.799134 --- INFO --- receipts Created! -2025-04-20 19:17:15.806841 --- INFO --- receipt_items Created! -2025-04-20 19:17:15.813370 --- INFO --- recipes Created! -2025-04-20 19:17:15.821296 --- INFO --- recipe_items Created! -2025-04-20 19:17:15.828999 --- INFO --- shopping_lists Created! -2025-04-20 19:17:15.837757 --- INFO --- shopping_list_items Created! -2025-04-20 19:17:15.846351 --- INFO --- item_locations Created! -2025-04-20 19:17:15.853372 --- INFO --- conversions Created! -2025-04-20 19:17:15.856625 --- INFO --- Admin User Created! -2025-04-20 19:17:15.871202 --- ERROR --- module 'MyDataclasses' has no attribute 'VendorPayload' -2025-04-20 19:17:59.229086 --- INFO --- logins Created! -2025-04-20 19:17:59.236178 --- INFO --- sites Created! -2025-04-20 19:17:59.241179 --- INFO --- roles Created! -2025-04-20 19:17:59.244639 --- INFO --- units Created! -2025-04-20 19:17:59.252556 --- INFO --- cost_layers Created! -2025-04-20 19:17:59.258931 --- INFO --- linked_items Created! -2025-04-20 19:17:59.265640 --- INFO --- brands Created! -2025-04-20 19:17:59.271635 --- INFO --- food_info Created! -2025-04-20 19:17:59.281402 --- INFO --- item_info Created! -2025-04-20 19:17:59.289153 --- INFO --- zones Created! -2025-04-20 19:17:59.295595 --- INFO --- locations Created! -2025-04-20 19:17:59.303510 --- INFO --- logistics_info Created! -2025-04-20 19:17:59.310620 --- INFO --- transactions Created! -2025-04-20 19:17:59.318745 --- INFO --- item Created! -2025-04-20 19:17:59.325400 --- INFO --- vendors Created! -2025-04-20 19:17:59.333182 --- INFO --- groups Created! -2025-04-20 19:17:59.341367 --- INFO --- group_items Created! -2025-04-20 19:17:59.348914 --- INFO --- receipts Created! -2025-04-20 19:17:59.355674 --- INFO --- receipt_items Created! -2025-04-20 19:17:59.363428 --- INFO --- recipes Created! -2025-04-20 19:17:59.371858 --- INFO --- recipe_items Created! -2025-04-20 19:17:59.378939 --- INFO --- shopping_lists Created! -2025-04-20 19:17:59.388138 --- INFO --- shopping_list_items Created! -2025-04-20 19:17:59.395999 --- INFO --- item_locations Created! -2025-04-20 19:17:59.402528 --- INFO --- conversions Created! -2025-04-20 19:17:59.406967 --- INFO --- Admin User Created! -2025-04-20 19:43:36.914652 --- INFO --- logins Created! -2025-04-20 19:43:36.922436 --- INFO --- sites Created! -2025-04-20 19:43:36.927458 --- INFO --- roles Created! -2025-04-20 19:43:36.931555 --- INFO --- units Created! -2025-04-20 19:43:36.939094 --- INFO --- cost_layers Created! -2025-04-20 19:43:36.947628 --- INFO --- linked_items Created! -2025-04-20 19:43:36.953631 --- INFO --- brands Created! -2025-04-20 19:43:36.959852 --- INFO --- food_info Created! -2025-04-20 19:43:36.968778 --- INFO --- item_info Created! -2025-04-20 19:43:36.976558 --- INFO --- zones Created! -2025-04-20 19:43:36.983310 --- INFO --- locations Created! -2025-04-20 19:43:36.990780 --- INFO --- logistics_info Created! -2025-04-20 19:43:36.998082 --- INFO --- transactions Created! -2025-04-20 19:43:37.005780 --- INFO --- item Created! -2025-04-20 19:43:37.013460 --- INFO --- vendors Created! -2025-04-20 19:43:37.020215 --- INFO --- groups Created! -2025-04-20 19:43:37.028782 --- INFO --- group_items Created! -2025-04-20 19:43:37.036257 --- INFO --- receipts Created! -2025-04-20 19:43:37.043565 --- INFO --- receipt_items Created! -2025-04-20 19:43:37.049814 --- INFO --- recipes Created! -2025-04-20 19:43:37.057702 --- INFO --- recipe_items Created! -2025-04-20 19:43:37.065761 --- INFO --- shopping_lists Created! -2025-04-20 19:43:37.073370 --- INFO --- shopping_list_items Created! -2025-04-20 19:43:37.081053 --- INFO --- item_locations Created! -2025-04-20 19:43:37.088088 --- INFO --- conversions Created! -2025-04-20 19:43:37.093156 --- INFO --- Admin User Created! -2025-04-20 19:45:44.395265 --- INFO --- item_info DROPPED! -2025-04-20 19:45:44.405900 --- INFO --- items DROPPED! -2025-04-20 19:45:44.414804 --- INFO --- cost_layers DROPPED! -2025-04-20 19:45:44.422703 --- INFO --- linked_items DROPPED! -2025-04-20 19:45:44.430346 --- INFO --- transactions DROPPED! -2025-04-20 19:45:44.437350 --- INFO --- brands DROPPED! -2025-04-20 19:45:44.444569 --- INFO --- food_info DROPPED! -2025-04-20 19:45:44.452885 --- INFO --- logistics_info DROPPED! -2025-04-20 19:48:31.583108 --- INFO --- item_info DROPPED! -2025-04-20 19:48:31.591460 --- INFO --- items DROPPED! -2025-04-20 19:48:31.596408 --- INFO --- cost_layers DROPPED! -2025-04-20 19:48:31.601566 --- INFO --- linked_items DROPPED! -2025-04-20 19:48:31.607329 --- INFO --- transactions DROPPED! -2025-04-20 19:48:31.611822 --- INFO --- brands DROPPED! -2025-04-20 19:48:31.615984 --- INFO --- food_info DROPPED! -2025-04-20 19:48:31.621444 --- INFO --- logistics_info DROPPED! -2025-04-20 19:51:08.211394 --- INFO --- item_info DROPPED! -2025-04-20 19:51:08.219628 --- INFO --- items DROPPED! -2025-04-20 19:51:08.225163 --- INFO --- cost_layers DROPPED! -2025-04-20 19:51:08.231236 --- INFO --- linked_items DROPPED! -2025-04-20 19:51:08.236599 --- INFO --- transactions DROPPED! -2025-04-20 19:51:08.241802 --- INFO --- brands DROPPED! -2025-04-20 19:51:08.247341 --- INFO --- food_info DROPPED! -2025-04-20 19:51:08.251883 --- INFO --- logistics_info DROPPED! -2025-04-20 19:52:54.948592 --- INFO --- item_info DROPPED! -2025-04-20 19:52:54.956447 --- INFO --- items DROPPED! -2025-04-20 19:52:54.962023 --- INFO --- cost_layers DROPPED! -2025-04-20 19:52:54.967556 --- INFO --- linked_items DROPPED! -2025-04-20 19:52:54.973165 --- INFO --- transactions DROPPED! -2025-04-20 19:52:54.976632 --- INFO --- brands DROPPED! -2025-04-20 19:52:54.981398 --- INFO --- food_info DROPPED! -2025-04-20 19:52:54.985072 --- INFO --- logistics_info DROPPED! -2025-04-20 19:52:54.989456 --- ERROR --- DatabaseError(message='table "testsite_zones" does not exist', payload=DROP TABLE TestSite_zones CASCADE;, sql='zones') -2025-04-20 19:56:25.272595 --- INFO --- item_info DROPPED! -2025-04-20 19:56:25.282064 --- INFO --- items DROPPED! -2025-04-20 19:56:25.287581 --- INFO --- cost_layers DROPPED! -2025-04-20 19:56:25.293563 --- INFO --- linked_items DROPPED! -2025-04-20 19:56:25.298578 --- INFO --- transactions DROPPED! -2025-04-20 19:56:25.303670 --- INFO --- brands DROPPED! -2025-04-20 19:56:25.307742 --- INFO --- food_info DROPPED! -2025-04-20 19:56:25.313677 --- INFO --- logistics_info DROPPED! -2025-04-20 19:56:25.317716 --- INFO --- zones DROPPED! -2025-04-20 19:56:25.325855 --- INFO --- locations DROPPED! -2025-04-20 19:56:25.330990 --- INFO --- vendors DROPPED! -2025-04-20 19:56:25.337850 --- INFO --- group_items DROPPED! -2025-04-20 19:56:25.346723 --- INFO --- groups DROPPED! -2025-04-20 19:56:25.354480 --- INFO --- receipt_items DROPPED! -2025-04-20 19:56:25.362108 --- INFO --- receipts DROPPED! -2025-04-20 19:56:25.369684 --- INFO --- recipe_items DROPPED! -2025-04-20 19:56:25.377807 --- INFO --- recipes DROPPED! -2025-04-20 19:56:25.385620 --- INFO --- shopping_list_items DROPPED! -2025-04-20 19:56:25.393541 --- INFO --- shopping_lists DROPPED! -2025-04-20 19:56:25.401384 --- INFO --- item_locations DROPPED! -2025-04-20 19:56:25.405523 --- INFO --- conversions DROPPED! -2025-04-20 19:58:10.901757 --- INFO --- item_info DROPPED! -2025-04-20 19:58:10.911845 --- INFO --- items DROPPED! -2025-04-20 19:58:10.917872 --- INFO --- cost_layers DROPPED! -2025-04-20 19:58:10.922065 --- INFO --- linked_items DROPPED! -2025-04-20 19:58:10.928478 --- INFO --- transactions DROPPED! -2025-04-20 19:58:10.932582 --- INFO --- brands DROPPED! -2025-04-20 19:58:10.936689 --- INFO --- food_info DROPPED! -2025-04-20 19:58:10.941754 --- INFO --- logistics_info DROPPED! -2025-04-20 19:58:36.985976 --- INFO --- item_info DROPPED! -2025-04-20 19:58:36.996149 --- INFO --- items DROPPED! -2025-04-20 19:58:37.001166 --- INFO --- cost_layers DROPPED! -2025-04-20 19:58:37.006862 --- INFO --- linked_items DROPPED! -2025-04-20 19:58:37.012179 --- INFO --- transactions DROPPED! -2025-04-20 19:58:37.016694 --- INFO --- brands DROPPED! -2025-04-20 19:58:37.020758 --- INFO --- food_info DROPPED! -2025-04-20 19:58:37.026061 --- INFO --- logistics_info DROPPED! -2025-04-20 20:07:37.732426 --- INFO --- item_info DROPPED! -2025-04-20 20:07:37.740467 --- INFO --- items DROPPED! -2025-04-20 20:07:37.745042 --- INFO --- cost_layers DROPPED! -2025-04-20 20:07:37.750893 --- INFO --- linked_items DROPPED! -2025-04-20 20:07:37.754429 --- INFO --- transactions DROPPED! -2025-04-20 20:07:37.758729 --- INFO --- brands DROPPED! -2025-04-20 20:07:37.763189 --- INFO --- food_info DROPPED! -2025-04-20 20:07:37.767020 --- INFO --- logistics_info DROPPED! -2025-04-20 20:07:37.771055 --- INFO --- zones DROPPED! -2025-04-20 20:07:37.775628 --- INFO --- locations DROPPED! -2025-04-20 20:07:37.779735 --- INFO --- vendors DROPPED! -2025-04-20 20:07:37.784456 --- INFO --- group_items DROPPED! -2025-04-20 20:07:37.788915 --- INFO --- groups DROPPED! -2025-04-20 20:07:37.793395 --- INFO --- receipt_items DROPPED! -2025-04-20 20:07:37.798563 --- INFO --- receipts DROPPED! -2025-04-20 20:07:37.803691 --- INFO --- recipe_items DROPPED! -2025-04-20 20:07:37.808903 --- INFO --- recipes DROPPED! -2025-04-20 20:07:37.813005 --- INFO --- shopping_list_items DROPPED! -2025-04-20 20:07:37.818899 --- INFO --- shopping_lists DROPPED! -2025-04-20 20:07:37.823062 --- INFO --- item_locations DROPPED! -2025-04-20 20:07:37.827577 --- INFO --- conversions DROPPED! -2025-04-20 20:10:51.725827 --- INFO --- item_info DROPPED! -2025-04-20 20:10:51.735709 --- INFO --- items DROPPED! -2025-04-20 20:10:51.741311 --- INFO --- cost_layers DROPPED! -2025-04-20 20:10:51.745890 --- INFO --- linked_items DROPPED! -2025-04-20 20:10:51.750915 --- INFO --- transactions DROPPED! -2025-04-20 20:10:51.755599 --- INFO --- brands DROPPED! -2025-04-20 20:10:51.761188 --- INFO --- food_info DROPPED! -2025-04-20 20:10:51.765063 --- INFO --- logistics_info DROPPED! -2025-04-20 20:10:51.769585 --- INFO --- zones DROPPED! -2025-04-20 20:10:51.774893 --- INFO --- locations DROPPED! -2025-04-20 20:10:51.779100 --- INFO --- vendors DROPPED! -2025-04-20 20:10:51.784704 --- INFO --- group_items DROPPED! -2025-04-20 20:10:51.789211 --- INFO --- groups DROPPED! -2025-04-20 20:10:51.793357 --- INFO --- receipt_items DROPPED! -2025-04-20 20:10:51.799194 --- INFO --- receipts DROPPED! -2025-04-20 20:10:51.803289 --- INFO --- recipe_items DROPPED! -2025-04-20 20:10:51.808076 --- INFO --- recipes DROPPED! -2025-04-20 20:10:51.813010 --- INFO --- shopping_list_items DROPPED! -2025-04-20 20:10:51.817596 --- INFO --- shopping_lists DROPPED! -2025-04-20 20:10:51.821643 --- INFO --- item_locations DROPPED! -2025-04-20 20:10:51.826587 --- INFO --- conversions DROPPED! -2025-04-20 20:11:14.056575 --- INFO --- logins Created! -2025-04-20 20:11:14.063971 --- INFO --- sites Created! -2025-04-20 20:11:14.069365 --- INFO --- roles Created! -2025-04-20 20:11:14.073411 --- INFO --- units Created! -2025-04-20 20:11:14.082962 --- INFO --- cost_layers Created! -2025-04-20 20:11:14.091859 --- INFO --- linked_items Created! -2025-04-20 20:11:14.096907 --- INFO --- brands Created! -2025-04-20 20:11:14.104713 --- INFO --- food_info Created! -2025-04-20 20:11:14.110843 --- INFO --- item_info Created! -2025-04-20 20:11:14.119202 --- INFO --- zones Created! -2025-04-20 20:11:14.125756 --- INFO --- locations Created! -2025-04-20 20:11:14.131825 --- INFO --- logistics_info Created! -2025-04-20 20:11:14.138848 --- INFO --- transactions Created! -2025-04-20 20:11:14.146927 --- INFO --- item Created! -2025-04-20 20:11:14.152932 --- INFO --- vendors Created! -2025-04-20 20:11:14.159374 --- INFO --- groups Created! -2025-04-20 20:11:14.166932 --- INFO --- group_items Created! -2025-04-20 20:11:14.174750 --- INFO --- receipts Created! -2025-04-20 20:11:14.181847 --- INFO --- receipt_items Created! -2025-04-20 20:11:14.186633 --- INFO --- recipes Created! -2025-04-20 20:11:14.194852 --- INFO --- recipe_items Created! -2025-04-20 20:11:14.201475 --- INFO --- shopping_lists Created! -2025-04-20 20:11:14.209506 --- INFO --- shopping_list_items Created! -2025-04-20 20:11:14.217085 --- INFO --- item_locations Created! -2025-04-20 20:11:14.224012 --- INFO --- conversions Created! -2025-04-20 20:11:14.227800 --- INFO --- Admin User Created! -2025-04-20 20:11:14.240274 --- ERROR --- DatabaseError(message='tuple index out of range', payload=('main', ''), sql='INSERT INTO testsite_zones(name, description, site_id) VALUES (%s, %s, %s) RETURNING *;') -2025-04-20 20:12:29.007584 --- INFO --- logins Created! -2025-04-20 20:12:29.015493 --- INFO --- sites Created! -2025-04-20 20:12:29.021142 --- INFO --- roles Created! -2025-04-20 20:12:29.025026 --- INFO --- units Created! -2025-04-20 20:12:29.032140 --- INFO --- cost_layers Created! -2025-04-20 20:12:29.039496 --- INFO --- linked_items Created! -2025-04-20 20:12:29.046115 --- INFO --- brands Created! -2025-04-20 20:12:29.052237 --- INFO --- food_info Created! -2025-04-20 20:12:29.060538 --- INFO --- item_info Created! -2025-04-20 20:12:29.066956 --- INFO --- zones Created! -2025-04-20 20:12:29.073431 --- INFO --- locations Created! -2025-04-20 20:12:29.082564 --- INFO --- logistics_info Created! -2025-04-20 20:12:29.090000 --- INFO --- transactions Created! -2025-04-20 20:12:29.098688 --- INFO --- item Created! -2025-04-20 20:12:29.104873 --- INFO --- vendors Created! -2025-04-20 20:12:29.112717 --- INFO --- groups Created! -2025-04-20 20:12:29.120101 --- INFO --- group_items Created! -2025-04-20 20:12:29.128686 --- INFO --- receipts Created! -2025-04-20 20:12:29.135147 --- INFO --- receipt_items Created! -2025-04-20 20:12:29.141797 --- INFO --- recipes Created! -2025-04-20 20:12:29.151352 --- INFO --- recipe_items Created! -2025-04-20 20:12:29.158714 --- INFO --- shopping_lists Created! -2025-04-20 20:12:29.166933 --- INFO --- shopping_list_items Created! -2025-04-20 20:12:29.175124 --- INFO --- item_locations Created! -2025-04-20 20:12:29.181717 --- INFO --- conversions Created! -2025-04-20 20:12:29.186271 --- INFO --- Admin User Created! -2025-04-20 20:12:38.923616 --- INFO --- item_info DROPPED! -2025-04-20 20:12:38.932843 --- INFO --- items DROPPED! -2025-04-20 20:12:38.937372 --- INFO --- cost_layers DROPPED! -2025-04-20 20:12:38.942503 --- INFO --- linked_items DROPPED! -2025-04-20 20:12:38.946721 --- INFO --- transactions DROPPED! -2025-04-20 20:12:38.951727 --- INFO --- brands DROPPED! -2025-04-20 20:12:38.955969 --- INFO --- food_info DROPPED! -2025-04-20 20:12:38.961360 --- INFO --- logistics_info DROPPED! -2025-04-20 20:12:38.966848 --- INFO --- zones DROPPED! -2025-04-20 20:12:38.970884 --- INFO --- locations DROPPED! -2025-04-20 20:12:38.975885 --- INFO --- vendors DROPPED! -2025-04-20 20:12:38.980966 --- INFO --- group_items DROPPED! -2025-04-20 20:12:38.985746 --- INFO --- groups DROPPED! -2025-04-20 20:12:38.989709 --- INFO --- receipt_items DROPPED! -2025-04-20 20:12:38.994949 --- INFO --- receipts DROPPED! -2025-04-20 20:12:38.998971 --- INFO --- recipe_items DROPPED! -2025-04-20 20:12:39.004057 --- INFO --- recipes DROPPED! -2025-04-20 20:12:39.009013 --- INFO --- shopping_list_items DROPPED! -2025-04-20 20:12:39.013298 --- INFO --- shopping_lists DROPPED! -2025-04-20 20:12:39.017813 --- INFO --- item_locations DROPPED! -2025-04-20 20:12:39.022064 --- INFO --- conversions DROPPED! -2025-04-20 20:32:27.356365 --- INFO --- logins Created! -2025-04-20 20:32:27.364095 --- INFO --- sites Created! -2025-04-20 20:32:27.368637 --- INFO --- roles Created! -2025-04-20 20:32:27.374196 --- INFO --- units Created! -2025-04-20 20:32:27.381877 --- INFO --- cost_layers Created! -2025-04-20 20:32:27.389138 --- INFO --- linked_items Created! -2025-04-20 20:32:27.395362 --- INFO --- brands Created! -2025-04-20 20:32:27.402835 --- INFO --- food_info Created! -2025-04-20 20:32:27.409510 --- INFO --- item_info Created! -2025-04-20 20:32:27.417471 --- INFO --- zones Created! -2025-04-20 20:32:27.424663 --- INFO --- locations Created! -2025-04-20 20:32:27.433133 --- INFO --- logistics_info Created! -2025-04-20 20:32:27.439780 --- INFO --- transactions Created! -2025-04-20 20:32:27.448585 --- INFO --- item Created! -2025-04-20 20:32:27.455303 --- INFO --- vendors Created! -2025-04-20 20:32:27.462869 --- INFO --- groups Created! -2025-04-20 20:32:27.470653 --- INFO --- group_items Created! -2025-04-20 20:32:27.478653 --- INFO --- receipts Created! -2025-04-20 20:32:27.486804 --- INFO --- receipt_items Created! -2025-04-20 20:32:27.493141 --- INFO --- recipes Created! -2025-04-20 20:32:27.500870 --- INFO --- recipe_items Created! -2025-04-20 20:32:27.507862 --- INFO --- shopping_lists Created! -2025-04-20 20:32:27.515340 --- INFO --- shopping_list_items Created! -2025-04-20 20:32:27.524287 --- INFO --- item_locations Created! -2025-04-20 20:32:27.532196 --- INFO --- conversions Created! -2025-04-20 20:32:27.535331 --- INFO --- Admin User Created! -2025-04-20 20:33:25.173233 --- INFO --- item_info DROPPED! -2025-04-20 20:33:25.182788 --- INFO --- items DROPPED! -2025-04-20 20:33:25.187318 --- INFO --- cost_layers DROPPED! -2025-04-20 20:33:25.193746 --- INFO --- linked_items DROPPED! -2025-04-20 20:33:25.197263 --- INFO --- transactions DROPPED! -2025-04-20 20:33:25.202565 --- INFO --- brands DROPPED! -2025-04-20 20:33:25.207124 --- INFO --- food_info DROPPED! -2025-04-20 20:33:25.213012 --- INFO --- logistics_info DROPPED! -2025-04-20 20:33:25.218554 --- INFO --- zones DROPPED! -2025-04-20 20:33:25.222613 --- INFO --- locations DROPPED! -2025-04-20 20:33:25.227136 --- INFO --- vendors DROPPED! -2025-04-20 20:33:25.232695 --- INFO --- group_items DROPPED! -2025-04-20 20:33:25.237264 --- INFO --- groups DROPPED! -2025-04-20 20:33:25.241580 --- INFO --- receipt_items DROPPED! -2025-04-20 20:33:25.246657 --- INFO --- receipts DROPPED! -2025-04-20 20:33:25.251050 --- INFO --- recipe_items DROPPED! -2025-04-20 20:33:25.255068 --- INFO --- recipes DROPPED! -2025-04-20 20:33:25.260690 --- INFO --- shopping_list_items DROPPED! -2025-04-20 20:33:25.265769 --- INFO --- shopping_lists DROPPED! -2025-04-20 20:33:25.269793 --- INFO --- item_locations DROPPED! -2025-04-20 20:33:25.273824 --- INFO --- conversions DROPPED! -2025-04-20 20:34:25.344816 --- INFO --- logins Created! -2025-04-20 20:34:25.352155 --- INFO --- sites Created! -2025-04-20 20:34:25.357696 --- INFO --- roles Created! -2025-04-20 20:34:25.363010 --- INFO --- units Created! -2025-04-20 20:34:25.370030 --- INFO --- cost_layers Created! -2025-04-20 20:34:25.377554 --- INFO --- linked_items Created! -2025-04-20 20:34:25.383668 --- INFO --- brands Created! -2025-04-20 20:34:25.390875 --- INFO --- food_info Created! -2025-04-20 20:34:25.397424 --- INFO --- item_info Created! -2025-04-20 20:34:25.405761 --- INFO --- zones Created! -2025-04-20 20:34:25.412801 --- INFO --- locations Created! -2025-04-20 20:34:25.420564 --- INFO --- logistics_info Created! -2025-04-20 20:34:25.427949 --- INFO --- transactions Created! -2025-04-20 20:34:25.435344 --- INFO --- item Created! -2025-04-20 20:34:25.442389 --- INFO --- vendors Created! -2025-04-20 20:34:25.449534 --- INFO --- groups Created! -2025-04-20 20:34:25.457550 --- INFO --- group_items Created! -2025-04-20 20:34:25.465405 --- INFO --- receipts Created! -2025-04-20 20:34:25.471947 --- INFO --- receipt_items Created! -2025-04-20 20:34:25.478815 --- INFO --- recipes Created! -2025-04-20 20:34:25.486803 --- INFO --- recipe_items Created! -2025-04-20 20:34:25.495032 --- INFO --- shopping_lists Created! -2025-04-20 20:34:25.503567 --- INFO --- shopping_list_items Created! -2025-04-20 20:34:25.511863 --- INFO --- item_locations Created! -2025-04-20 20:34:25.517088 --- INFO --- conversions Created! -2025-04-20 20:34:25.522653 --- INFO --- Admin User Created! -2025-04-20 20:34:40.207702 --- INFO --- item_info DROPPED! -2025-04-20 20:34:40.217297 --- INFO --- items DROPPED! -2025-04-20 20:34:40.223866 --- INFO --- cost_layers DROPPED! -2025-04-20 20:34:40.228928 --- INFO --- linked_items DROPPED! -2025-04-20 20:34:40.233942 --- INFO --- transactions DROPPED! -2025-04-20 20:34:40.238435 --- INFO --- brands DROPPED! -2025-04-20 20:34:40.243588 --- INFO --- food_info DROPPED! -2025-04-20 20:34:40.248615 --- INFO --- logistics_info DROPPED! -2025-04-20 20:34:40.252808 --- INFO --- zones DROPPED! -2025-04-20 20:34:40.258575 --- INFO --- locations DROPPED! -2025-04-20 20:34:40.262926 --- INFO --- vendors DROPPED! -2025-04-20 20:34:40.267004 --- INFO --- group_items DROPPED! -2025-04-20 20:34:40.272103 --- INFO --- groups DROPPED! -2025-04-20 20:34:40.276648 --- INFO --- receipt_items DROPPED! -2025-04-20 20:34:40.281217 --- INFO --- receipts DROPPED! -2025-04-20 20:34:40.287034 --- INFO --- recipe_items DROPPED! -2025-04-20 20:34:40.291009 --- INFO --- recipes DROPPED! -2025-04-20 20:34:40.295365 --- INFO --- shopping_list_items DROPPED! -2025-04-20 20:34:40.301096 --- INFO --- shopping_lists DROPPED! -2025-04-20 20:34:40.305141 --- INFO --- item_locations DROPPED! -2025-04-20 20:34:40.310973 --- INFO --- conversions DROPPED! -2025-04-20 21:03:22.361206 --- INFO --- logins Created! -2025-04-20 21:03:22.368210 --- INFO --- sites Created! -2025-04-20 21:03:22.372737 --- INFO --- roles Created! -2025-04-20 21:03:22.376787 --- INFO --- units Created! -2025-04-20 21:03:22.384390 --- INFO --- cost_layers Created! -2025-04-20 21:03:22.392461 --- INFO --- linked_items Created! -2025-04-20 21:03:22.397727 --- INFO --- brands Created! -2025-04-20 21:03:22.403723 --- INFO --- food_info Created! -2025-04-20 21:03:22.411420 --- INFO --- item_info Created! -2025-04-20 21:03:22.418983 --- INFO --- zones Created! -2025-04-20 21:03:22.426220 --- INFO --- locations Created! -2025-04-20 21:03:22.433434 --- INFO --- logistics_info Created! -2025-04-20 21:03:22.440189 --- INFO --- transactions Created! -2025-04-20 21:03:22.448293 --- INFO --- item Created! -2025-04-20 21:03:22.455434 --- INFO --- vendors Created! -2025-04-20 21:03:22.462439 --- INFO --- groups Created! -2025-04-20 21:03:22.469950 --- INFO --- group_items Created! -2025-04-20 21:03:22.477434 --- INFO --- receipts Created! -2025-04-20 21:03:22.484434 --- INFO --- receipt_items Created! -2025-04-20 21:03:22.491212 --- INFO --- recipes Created! -2025-04-20 21:03:22.499338 --- INFO --- recipe_items Created! -2025-04-20 21:03:22.506939 --- INFO --- shopping_lists Created! -2025-04-20 21:03:22.514674 --- INFO --- shopping_list_items Created! -2025-04-20 21:03:22.522661 --- INFO --- item_locations Created! -2025-04-20 21:03:22.529320 --- INFO --- conversions Created! -2025-04-20 21:03:22.533343 --- INFO --- Admin User Created! -2025-04-20 21:07:46.103441 --- INFO --- item_info DROPPED! -2025-04-20 21:07:46.113647 --- INFO --- items DROPPED! -2025-04-20 21:07:46.119615 --- INFO --- cost_layers DROPPED! -2025-04-20 21:07:46.125899 --- INFO --- linked_items DROPPED! -2025-04-20 21:07:46.130623 --- INFO --- transactions DROPPED! -2025-04-20 21:07:46.134817 --- INFO --- brands DROPPED! -2025-04-20 21:07:46.139474 --- INFO --- food_info DROPPED! -2025-04-20 21:07:46.145048 --- INFO --- logistics_info DROPPED! -2025-04-20 21:07:46.150355 --- INFO --- zones DROPPED! -2025-04-20 21:07:46.155777 --- INFO --- locations DROPPED! -2025-04-20 21:07:46.160313 --- INFO --- vendors DROPPED! -2025-04-20 21:07:46.165662 --- INFO --- group_items DROPPED! -2025-04-20 21:07:46.169670 --- INFO --- groups DROPPED! -2025-04-20 21:07:46.174114 --- INFO --- receipt_items DROPPED! -2025-04-20 21:07:46.179634 --- INFO --- receipts DROPPED! -2025-04-20 21:07:46.184753 --- INFO --- recipe_items DROPPED! -2025-04-20 21:07:46.189291 --- INFO --- recipes DROPPED! -2025-04-20 21:07:46.193588 --- INFO --- shopping_list_items DROPPED! -2025-04-20 21:07:46.197995 --- INFO --- shopping_lists DROPPED! -2025-04-20 21:07:46.203577 --- INFO --- item_locations DROPPED! -2025-04-20 21:07:46.208195 --- INFO --- conversions DROPPED! diff --git a/test.txt b/test.txt deleted file mode 100644 index 2186840..0000000 --- a/test.txt +++ /dev/null @@ -1,1401 +0,0 @@ -ALTER TABLE main_receipt_items -ALTER COLUMN uom TYPE INTEGER -USING uom::INTEGER; - - - - - -{ - "id": "0853555006870", - "lc": "en", - "_id": "0853555006870", - "rev": 17, - "code": "0853555006870", - "lang": "en", - "teams": "chocolatine,la-robe-est-bleue", - "brands": "GoMacro, LLC", - "images": { - "1": { - "sizes": { - "100": { - "h": 87, - "w": 100 - }, - "400": { - "h": 349, - "w": 400 - }, - "full": { - "h": 878, - "w": 1005 - } - }, - "uploader": "kiliweb", - "uploaded_t": 1618700429 - }, - "2": { - "sizes": { - "100": { - "h": 100, - "w": 76 - }, - "400": { - "h": 400, - "w": 303 - }, - "full": { - "h": 465, - "w": 352 - } - }, - "uploader": "kiliweb", - "uploaded_t": 1618700430 - }, - "3": { - "sizes": { - "100": { - "h": 100, - "w": 75 - }, - "400": { - "h": 400, - "w": 300 - }, - "full": { - "h": 4032, - "w": 3024 - } - }, - "uploader": "absmith", - "uploaded_t": 1730328128 - }, - "4": { - "sizes": { - "100": { - "h": 100, - "w": 75 - }, - "400": { - "h": 400, - "w": 300 - }, - "full": { - "h": 4032, - "w": 3024 - } - }, - "uploader": "absmith", - "uploaded_t": 1730328247 - }, - "front_en": { - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1", - "rev": "3", - "angle": 0, - "imgid": "1", - "sizes": { - "100": { - "h": 87, - "w": 100 - }, - "200": { - "h": 175, - "w": 200 - }, - "400": { - "h": 349, - "w": 400 - }, - "full": { - "h": 878, - "w": 1005 - } - }, - "geometry": "0x0--1--1", - "normalize": null, - "white_magic": null, - "coordinates_image_size": "full" - }, - "nutrition_en": { - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1", - "rev": "13", - "angle": 0, - "imgid": "3", - "sizes": { - "100": { - "h": 100, - "w": 75 - }, - "200": { - "h": 200, - "w": 150 - }, - "400": { - "h": 400, - "w": 300 - }, - "full": { - "h": 4032, - "w": 3024 - } - }, - "geometry": "0x0--1--1", - "normalize": null, - "white_magic": null, - "coordinates_image_size": "full" - }, - "ingredients_en": { - "x1": "-1", - "x2": "-1", - "y1": "-1", - "y2": "-1", - "rev": "16", - "angle": 0, - "imgid": "4", - "sizes": { - "100": { - "h": 100, - "w": 75 - }, - "200": { - "h": 200, - "w": 150 - }, - "400": { - "h": 400, - "w": 300 - }, - "full": { - "h": 4032, - "w": 3024 - } - }, - "geometry": "0x0--1--1", - "normalize": null, - "white_magic": null, - "coordinates_image_size": "full" - } - }, - "labels": "Organic, Vegetarian, No gluten, USDA Organic, Vegan, Vegan Action, No GMOs, Non GMO project", - "states": "en:to-be-completed, en:nutrition-facts-completed, en:ingredients-completed, en:expiration-date-to-be-completed, en:packaging-code-to-be-completed, en:characteristics-to-be-completed, en:origins-to-be-completed, en:categories-completed, en:brands-completed, en:packaging-to-be-completed, en:quantity-to-be-completed, en:product-name-completed, en:photos-to-be-validated, en:packaging-photo-to-be-selected, en:nutrition-photo-selected, en:ingredients-photo-selected, en:front-photo-selected, en:photos-uploaded", - "traces": "", - "creator": "kiliweb", - "scans_n": 7, - "sources": [ - { - "id": "org-label-non-gmo-project", - "url": null, - "name": "label-non-gmo-project", - "fields": [ - "product_name_en", - "brands", - "labels", - "countries", - "data_sources" - ], - "images": [], - "import_t": 1718819519, - "manufacturer": 0 - } - ], - "complete": 0, - "_keywords": [ - "action", - "bar", - "butter", - "chip", - "chocolate", - "gluten", - "gmo", - "gomacro", - "llc", - "macrobar", - "no", - "non", - "organic", - "peanut", - "project", - "protein", - "usda", - "vegan", - "vegetarian" - ], - "allergens": "", - "countries": "en:us, World", - "created_t": 1618700428, - "image_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.400.jpg", - "labels_lc": "en", - "languages": { - "en:english": 5 - }, - "max_imgid": "4", - "misc_tags": [ - "en:ecoscore-extended-data-not-computed", - "en:ecoscore-not-computed", - "en:nutriscore-2021-b-2023-c", - "en:nutriscore-2021-better-than-2023", - "en:nutriscore-2021-different-from-2023", - "en:nutriscore-computed", - "en:nutrition-all-nutriscore-values-known", - "en:nutrition-fruits-vegetables-legumes-estimate-from-ingredients", - "en:nutrition-fruits-vegetables-nuts-estimate-from-ingredients", - "en:packagings-empty", - "en:packagings-not-complete", - "en:packagings-number-of-components-0" - ], - "categories": "Protein bars", - "codes_tags": [ - "code-13", - "conflict-with-upc-12", - "0853555006xxx", - "085355500xxxx", - "08535550xxxxx", - "0853555xxxxxx", - "085355xxxxxxx", - "08535xxxxxxxx", - "0853xxxxxxxxx", - "085xxxxxxxxxx", - "08xxxxxxxxxxx", - "0xxxxxxxxxxxx" - ], - "labels_old": "Organic, Vegetarian, No gluten, USDA Organic, Vegan, en:vegan-action", - "nova_group": 3, - "nutriments": { - "fat": 11, - "salt": 0.025, - "fiber": 2, - "energy": 1758, - "sodium": 0.01, - "sugars": 14, - "fat_100g": 11, - "fat_unit": "g", - "proteins": 11, - "fat_value": 11, - "salt_100g": 0.025, - "salt_unit": "g", - "trans-fat": 0, - "fiber_100g": 2, - "fiber_unit": "g", - "nova-group": 3, - "salt_value": 0.025, - "cholesterol": 0, - "energy-kcal": 420.28986, - "energy_100g": 1758, - "energy_unit": "kcal", - "fiber_value": 2, - "sodium_100g": 0.01, - "sodium_unit": "g", - "sugars_100g": 14, - "sugars_unit": "g", - "added-sugars": 12, - "energy_value": 420.28986, - "sodium_value": 0.01, - "sugars_value": 14, - "carbohydrates": 39, - "proteins_100g": 11, - "proteins_unit": "g", - "saturated-fat": 2, - "proteins_value": 11, - "trans-fat_100g": 0, - "trans-fat_unit": "g", - "nova-group_100g": 3, - "trans-fat_value": 0, - "cholesterol_100g": 0, - "cholesterol_unit": "g", - "energy-kcal_100g": 420.28986, - "energy-kcal_unit": "kcal", - "added-sugars_100g": 12, - "added-sugars_unit": "g", - "cholesterol_value": 0, - "energy-kcal_value": 420.28986, - "added-sugars_value": 12, - "carbohydrates_100g": 39, - "carbohydrates_unit": "g", - "nova-group_serving": 3, - "nutrition-score-fr": 5, - "saturated-fat_100g": 2, - "saturated-fat_unit": "g", - "carbohydrates_value": 39, - "saturated-fat_value": 2, - "nutrition-score-fr_100g": 5, - "energy-kcal_value_computed": 303, - "fruits-vegetables-nuts-estimate-from-ingredients_100g": 23.4375, - "fruits-vegetables-legumes-estimate-from-ingredients_100g": 0, - "fruits-vegetables-nuts-estimate-from-ingredients_serving": 23.4375, - "fruits-vegetables-legumes-estimate-from-ingredients_serving": 0 - }, - "nutriscore": { - "2021": { - "data": { - "fiber": 2, - "energy": 1758, - "is_fat": 0, - "sodium": 10, - "sugars": 14, - "is_water": 0, - "proteins": 11, - "is_cheese": 0, - "fiber_value": 2, - "is_beverage": 0, - "energy_value": 1758, - "fiber_points": 2, - "sodium_value": 10, - "sugars_value": 14, - "energy_points": 5, - "saturated_fat": 2, - "sodium_points": 0, - "sugars_points": 3, - "proteins_value": 11, - "negative_points": 9, - "positive_points": 7, - "proteins_points": 5, - "saturated_fat_value": 2, - "saturated_fat_points": 1, - "fruits_vegetables_nuts_colza_walnut_olive_oils": 23.4375, - "fruits_vegetables_nuts_colza_walnut_olive_oils_value": 23.4, - "fruits_vegetables_nuts_colza_walnut_olive_oils_points": 0 - }, - "grade": "b", - "score": 2, - "category_available": 1, - "nutrients_available": 1, - "nutriscore_computed": 1, - "nutriscore_applicable": 1 - }, - "2023": { - "data": { - "is_water": 0, - "is_cheese": 0, - "components": { - "negative": [ - { - "id": "energy", - "unit": "kJ", - "value": 1758, - "points": 5, - "points_max": 10 - }, - { - "id": "sugars", - "unit": "g", - "value": 14, - "points": 3, - "points_max": 15 - }, - { - "id": "saturated_fat", - "unit": "g", - "value": 2, - "points": 1, - "points_max": 10 - }, - { - "id": "salt", - "unit": "g", - "value": 0.03, - "points": 0, - "points_max": 20 - } - ], - "positive": [ - { - "id": "proteins", - "unit": "g", - "value": 11, - "points": 4, - "points_max": 7 - }, - { - "id": "fiber", - "unit": "g", - "value": 2, - "points": 0, - "points_max": 5 - }, - { - "id": "fruits_vegetables_legumes", - "unit": "%", - "value": 0, - "points": 0, - "points_max": 5 - } - ] - }, - "is_beverage": 0, - "count_proteins": 1, - "negative_points": 9, - "positive_points": 4, - "positive_nutrients": [ - "proteins", - "fiber", - "fruits_vegetables_legumes" - ], - "is_red_meat_product": 0, - "negative_points_max": 55, - "positive_points_max": 17, - "count_proteins_reason": "negative_points_less_than_11", - "is_fat_oil_nuts_seeds": 0 - }, - "grade": "c", - "score": 5, - "category_available": 1, - "nutrients_available": 1, - "nutriscore_computed": 1, - "nutriscore_applicable": 1 - } - }, - "packagings": [], - "teams_tags": [ - "chocolatine", - "la-robe-est-bleue" - ], - "update_key": "sort", - "additives_n": 0, - "brands_tags": [ - "gomacro", - "llc" - ], - "ingredients": [ - { - "id": "en:brown-rice-syrup", - "text": "BROWN RICE SYRUP", - "vegan": "yes", - "labels": "en:organic", - "vegetarian": "yes", - "percent_max": 100, - "percent_min": 16.6666666666667, - "is_in_taxonomy": 1, - "percent_estimate": 58.3333333333333 - }, - { - "id": "en:peanut-paste", - "text": "PEANUT BUTTER", - "vegan": "yes", - "labels": "en:organic", - "vegetarian": "yes", - "percent_max": 50, - "percent_min": 0, - "ecobalyse_code": "peanut-organic", - "is_in_taxonomy": 1, - "ciqual_food_code": "15001", - "percent_estimate": 20.8333333333333 - }, - { - "id": "en:protein-blend", - "text": "PROTEIN BLEND", - "labels": "en:organic", - "ingredients": [ - { - "id": "en:sprouted-brown-rice-protein", - "text": "SPROUTED BROWN RICE PROTEIN", - "labels": "en:organic", - "percent_max": 33.3333333333333, - "percent_min": 0, - "is_in_taxonomy": 0, - "percent_estimate": 5.20833333333333 - }, - { - "id": "en:pea-protein", - "text": "PEA PROTEIN", - "vegan": "yes", - "labels": "en:organic", - "vegetarian": "yes", - "percent_max": 16.6666666666667, - "percent_min": 0, - "is_in_taxonomy": 1, - "percent_estimate": 5.20833333333333 - } - ], - "percent_max": 33.3333333333333, - "percent_min": 0, - "is_in_taxonomy": 0, - "percent_estimate": 10.4166666666667 - }, - { - "id": "en:chocolate-chunk", - "text": "CHOCOLATE CHIPS", - "vegan": "maybe", - "labels": "en:organic", - "vegetarian": "yes", - "ingredients": [ - { - "id": "en:coconut-sugar", - "text": "COCONUT SUGAR", - "vegan": "yes", - "labels": "en:organic", - "vegetarian": "yes", - "percent_max": 14, - "percent_min": 0, - "ecobalyse_code": "sugar-beet-organic", - "is_in_taxonomy": 1, - "percent_estimate": 2.60416666666666, - "ciqual_proxy_food_code": "31016" - }, - { - "id": "en:cocoa", - "text": "COCOA", - "vegan": "yes", - "labels": "en:organic", - "vegetarian": "yes", - "percent_max": 12.5, - "percent_min": 0, - "is_in_taxonomy": 1, - "percent_estimate": 1.30208333333333, - "ciqual_proxy_food_code": "18100" - }, - { - "id": "en:cocoa-butter", - "text": "COCOA BUTTER", - "vegan": "yes", - "labels": "en:organic", - "vegetarian": "yes", - "percent_max": 8.33333333333333, - "percent_min": 0, - "is_in_taxonomy": 1, - "ciqual_food_code": "16030", - "percent_estimate": 1.30208333333333 - } - ], - "percent_max": 25, - "percent_min": 0, - "is_in_taxonomy": 1, - "percent_estimate": 5.20833333333333, - "ciqual_proxy_food_code": "31005" - }, - { - "id": "en:brown-rice", - "text": "BROWN RICE", - "vegan": "yes", - "labels": "en:organic", - "processing": "en:puffed", - "vegetarian": "yes", - "percent_max": 20, - "percent_min": 0, - "is_in_taxonomy": 1, - "ciqual_food_code": "9102", - "percent_estimate": 2.60416666666666 - }, - { - "id": "en:peanut", - "text": "PEANUTS", - "vegan": "yes", - "labels": "en:organic", - "vegetarian": "yes", - "percent_max": 16.6666666666667, - "percent_min": 0, - "ecobalyse_code": "peanut-organic", - "is_in_taxonomy": 1, - "ciqual_food_code": "15001", - "percent_estimate": 2.60416666666666 - } - ], - "labels_tags": [ - "en:no-gluten", - "en:organic", - "en:vegetarian", - "en:no-gmos", - "en:usda-organic", - "en:vegan", - "en:non-gmo-project", - "en:vegan-action" - ], - "last_editor": "absmith", - "nova_groups": "3", - "states_tags": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:expiration-date-to-be-completed", - "en:packaging-code-to-be-completed", - "en:characteristics-to-be-completed", - "en:origins-to-be-completed", - "en:categories-completed", - "en:brands-completed", - "en:packaging-to-be-completed", - "en:quantity-to-be-completed", - "en:product-name-completed", - "en:photos-to-be-validated", - "en:packaging-photo-to-be-selected", - "en:nutrition-photo-selected", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "traces_tags": [], - "completeness": 0.5875, - "countries_lc": "en", - "data_sources": "App - yuka, Apps, App - smoothie-openfoodfacts, Labels, label-non-gmo-project", - "editors_tags": [ - "absmith", - "austinpowell", - "itsjustruby", - "kiliweb", - "org-label-non-gmo-project", - "roboto-app", - "teolemon", - "yuka.sY2b0xO6T85zoF3NwEKvlkFKX4bmkwjoahPTkxa04u6sFLLue_Zuy7DqIag" - ], - "last_image_t": 1730328248, - "owner_fields": {}, - "product_name": "Macrobar Peanut Butter Chocolate Chip", - "product_type": "food", - "serving_size": "1 bar", - "categories_lc": "en", - "checkers_tags": [], - "ecoscore_data": { - "scores": {}, - "status": "unknown", - "missing": { - "labels": 1, - "origins": 1, - "packagings": 1, - "agb_category": 1 - }, - "agribalyse": { - "warning": "missing_agribalyse_match" - }, - "adjustments": { - "packaging": { - "value": -15, - "warning": "packaging_data_missing" - }, - "production_system": { - "value": 0, - "labels": [], - "warning": "no_label" - }, - "threatened_species": {}, - "origins_of_ingredients": { - "value": -5, - "values": { - "ad": -5, - "al": -5, - "at": -5, - "ax": -5, - "ba": -5, - "be": -5, - "bg": -5, - "ch": -5, - "cy": -5, - "cz": -5, - "de": -5, - "dk": -5, - "dz": -5, - "ee": -5, - "eg": -5, - "es": -5, - "fi": -5, - "fo": -5, - "fr": -5, - "gg": -5, - "gi": -5, - "gr": -5, - "hr": -5, - "hu": -5, - "ie": -5, - "il": -5, - "im": -5, - "is": -5, - "it": -5, - "je": -5, - "lb": -5, - "li": -5, - "lt": -5, - "lu": -5, - "lv": -5, - "ly": -5, - "ma": -5, - "mc": -5, - "md": -5, - "me": -5, - "mk": -5, - "mt": -5, - "nl": -5, - "no": -5, - "pl": -5, - "ps": -5, - "pt": -5, - "ro": -5, - "rs": -5, - "se": -5, - "si": -5, - "sj": -5, - "sk": -5, - "sm": -5, - "sy": -5, - "tn": -5, - "tr": -5, - "ua": -5, - "uk": -5, - "us": -5, - "va": -5, - "xk": -5, - "world": -5 - }, - "warning": "origins_are_100_percent_unknown", - "epi_score": 0, - "epi_value": -5, - "aggregated_origins": [ - { - "origin": "en:unknown", - "percent": 100, - "epi_score": "0", - "transportation_score": 0 - } - ], - "transportation_score": 0, - "transportation_value": 0, - "transportation_scores": { - "ad": 0, - "al": 0, - "at": 0, - "ax": 0, - "ba": 0, - "be": 0, - "bg": 0, - "ch": 0, - "cy": 0, - "cz": 0, - "de": 0, - "dk": 0, - "dz": 0, - "ee": 0, - "eg": 0, - "es": 0, - "fi": 0, - "fo": 0, - "fr": 0, - "gg": 0, - "gi": 0, - "gr": 0, - "hr": 0, - "hu": 0, - "ie": 0, - "il": 0, - "im": 0, - "is": 0, - "it": 0, - "je": 0, - "lb": 0, - "li": 0, - "lt": 0, - "lu": 0, - "lv": 0, - "ly": 0, - "ma": 0, - "mc": 0, - "md": 0, - "me": 0, - "mk": 0, - "mt": 0, - "nl": 0, - "no": 0, - "pl": 0, - "ps": 0, - "pt": 0, - "ro": 0, - "rs": 0, - "se": 0, - "si": 0, - "sj": 0, - "sk": 0, - "sm": 0, - "sy": 0, - "tn": 0, - "tr": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "xk": 0, - "world": 0 - }, - "transportation_values": { - "ad": 0, - "al": 0, - "at": 0, - "ax": 0, - "ba": 0, - "be": 0, - "bg": 0, - "ch": 0, - "cy": 0, - "cz": 0, - "de": 0, - "dk": 0, - "dz": 0, - "ee": 0, - "eg": 0, - "es": 0, - "fi": 0, - "fo": 0, - "fr": 0, - "gg": 0, - "gi": 0, - "gr": 0, - "hr": 0, - "hu": 0, - "ie": 0, - "il": 0, - "im": 0, - "is": 0, - "it": 0, - "je": 0, - "lb": 0, - "li": 0, - "lt": 0, - "lu": 0, - "lv": 0, - "ly": 0, - "ma": 0, - "mc": 0, - "md": 0, - "me": 0, - "mk": 0, - "mt": 0, - "nl": 0, - "no": 0, - "pl": 0, - "ps": 0, - "pt": 0, - "ro": 0, - "rs": 0, - "se": 0, - "si": 0, - "sj": 0, - "sk": 0, - "sm": 0, - "sy": 0, - "tn": 0, - "tr": 0, - "ua": 0, - "uk": 0, - "us": 0, - "va": 0, - "xk": 0, - "world": 0 - }, - "origins_from_categories": [ - "en:unknown" - ], - "origins_from_origins_field": [ - "en:unknown" - ] - } - }, - "missing_key_data": 1, - "missing_agribalyse_match_warning": 1 - }, - "ecoscore_tags": [ - "unknown" - ], - "ingredients_n": 11, - "minerals_tags": [], - "pnns_groups_1": "unknown", - "pnns_groups_2": "unknown", - "vitamins_tags": [], - "weighers_tags": [], - "additives_tags": [], - "allergens_tags": [ - "en:peanuts" - ], - "countries_tags": [ - "en:united-states", - "en:world" - ], - "ecoscore_grade": "unknown", - "informers_tags": [ - "yuka.sY2b0xO6T85zoF3NwEKvlkFKX4bmkwjoahPTkxa04u6sFLLue_Zuy7DqIag", - "kiliweb", - "roboto-app", - "austinpowell", - "org-label-non-gmo-project", - "absmith" - ], - "ingredients_lc": "en", - "languages_tags": [ - "en:english", - "en:1" - ], - "last_updated_t": 1738799980, - "nutrition_data": "", - "popularity_key": 23900000016, - "unique_scans_n": 7, - "categories_tags": [ - "en:dietary-supplements", - "en:bodybuilding-supplements", - "en:protein-bars" - ], - "correctors_tags": [ - "roboto-app", - "teolemon", - "itsjustruby", - "austinpowell", - "org-label-non-gmo-project", - "absmith" - ], - "image_front_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.400.jpg", - "image_small_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.200.jpg", - "image_thumb_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.100.jpg", - "languages_codes": { - "en": 5 - }, - "last_modified_t": 1730328292, - "nutrient_levels": { - "fat": "moderate", - "salt": "low", - "sugars": "high", - "saturated-fat": "moderate" - }, - "nutriscore_data": { - "grade": "c", - "score": 5, - "is_water": 0, - "is_cheese": 0, - "components": { - "negative": [ - { - "id": "energy", - "unit": "kJ", - "value": 1758, - "points": 5, - "points_max": 10 - }, - { - "id": "sugars", - "unit": "g", - "value": 14, - "points": 3, - "points_max": 15 - }, - { - "id": "saturated_fat", - "unit": "g", - "value": 2, - "points": 1, - "points_max": 10 - }, - { - "id": "salt", - "unit": "g", - "value": 0.03, - "points": 0, - "points_max": 20 - } - ], - "positive": [ - { - "id": "proteins", - "unit": "g", - "value": 11, - "points": 4, - "points_max": 7 - }, - { - "id": "fiber", - "unit": "g", - "value": 2, - "points": 0, - "points_max": 5 - }, - { - "id": "fruits_vegetables_legumes", - "unit": "%", - "value": 0, - "points": 0, - "points_max": 5 - } - ] - }, - "is_beverage": 0, - "count_proteins": 1, - "negative_points": 9, - "positive_points": 4, - "positive_nutrients": [ - "proteins", - "fiber", - "fruits_vegetables_legumes" - ], - "is_red_meat_product": 0, - "negative_points_max": 55, - "positive_points_max": 17, - "count_proteins_reason": "negative_points_less_than_11", - "is_fat_oil_nuts_seeds": 0 - }, - "nutriscore_tags": [ - "c" - ], - "popularity_tags": [ - "bottom-25-percent-scans-2022", - "top-80-percent-scans-2022", - "top-85-percent-scans-2022", - "top-90-percent-scans-2022", - "top-10000-us-scans-2022", - "top-50000-us-scans-2022", - "top-100000-us-scans-2022", - "top-country-us-scans-2022", - "top-100000-scans-2024", - "at-least-5-scans-2024", - "top-75-percent-scans-2024", - "top-80-percent-scans-2024", - "top-85-percent-scans-2024", - "top-90-percent-scans-2024", - "top-5000-us-scans-2024", - "top-10000-us-scans-2024", - "top-50000-us-scans-2024", - "top-100000-us-scans-2024", - "top-country-us-scans-2024", - "at-least-5-us-scans-2024" - ], - "product_name_en": "Macrobar Peanut Butter Chocolate Chip", - "selected_images": { - "front": { - "small": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.100.jpg" - }, - "display": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.400.jpg" - } - }, - "nutrition": { - "small": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/nutrition_en.13.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/nutrition_en.13.100.jpg" - }, - "display": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/nutrition_en.13.400.jpg" - } - }, - "ingredients": { - "small": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/ingredients_en.16.200.jpg" - }, - "thumb": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/ingredients_en.16.100.jpg" - }, - "display": { - "en": "https://images.openfoodfacts.org/images/products/085/355/500/6870/ingredients_en.16.400.jpg" - } - } - }, - "amino_acids_tags": [], - "entry_dates_tags": [ - "2021-04-17", - "2021-04", - "2021" - ], - "food_groups_tags": [], - "ingredients_tags": [ - "en:brown-rice-syrup", - "en:added-sugar", - "en:disaccharide", - "en:rice-syrup", - "en:peanut-paste", - "en:nut", - "en:peanut", - "en:protein-blend", - "en:chocolate-chunk", - "en:chocolate", - "en:brown-rice", - "en:rice", - "en:sprouted-brown-rice-protein", - "en:pea-protein", - "en:protein", - "en:plant-protein", - "en:coconut-sugar", - "en:sugar", - "en:palm-sugar", - "en:cocoa", - "en:plant", - "en:cocoa-butter" - ], - "ingredients_text": "ORGANIC BROWN RICE SYRUP, ORGANIC PEANUT BUTTER, ORGANIC PROTEIN BLEND (ORGANIC SPROUTED BROWN RICE PROTEIN, ORGANIC PEA PROTEIN), ORGANIC CHOCOLATE CHIPS (ORGANIC COCONUT SUGAR, ORGANIC COCOA, ORGANIC COCOA BUTTER), ORGANIC PUFFED BROWN RICE, ORGANIC PEANUTS.", - "labels_hierarchy": [ - "en:no-gluten", - "en:organic", - "en:vegetarian", - "en:no-gmos", - "en:usda-organic", - "en:vegan", - "en:non-gmo-project", - "en:vegan-action" - ], - "last_modified_by": "absmith", - "nova_group_debug": "", - "nova_groups_tags": [ - "en:3-processed-foods" - ], - "nucleotides_tags": [], - "nutriscore_grade": "c", - "nutriscore_score": 5, - "nutrition_grades": "c", - "states_hierarchy": [ - "en:to-be-completed", - "en:nutrition-facts-completed", - "en:ingredients-completed", - "en:expiration-date-to-be-completed", - "en:packaging-code-to-be-completed", - "en:characteristics-to-be-completed", - "en:origins-to-be-completed", - "en:categories-completed", - "en:brands-completed", - "en:packaging-to-be-completed", - "en:quantity-to-be-completed", - "en:product-name-completed", - "en:photos-to-be-validated", - "en:packaging-photo-to-be-selected", - "en:nutrition-photo-selected", - "en:ingredients-photo-selected", - "en:front-photo-selected", - "en:photos-uploaded" - ], - "traces_from_user": "(en) ", - "traces_hierarchy": [], - "data_quality_tags": [ - "en:no-packaging-data", - "en:ingredients-percent-analysis-ok", - "en:ecoscore-extended-data-not-computed", - "en:food-groups-1-unknown", - "en:food-groups-2-unknown", - "en:food-groups-3-unknown", - "en:energy-value-in-kcal-may-not-match-value-computed-from-other-nutrients", - "en:nutrition-data-per-serving-serving-quantity-is-not-recognized", - "en:vegan-label-but-could-not-confirm-for-all-ingredients", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-packaging-packaging-data-missing", - "en:ecoscore-production-system-no-label" - ], - "data_sources_tags": [ - "app-yuka", - "apps", - "app-smoothie-openfoodfacts", - "labels", - "label-non-gmo-project" - ], - "no_nutrition_data": "", - "ingredients_n_tags": [ - "11", - "11-20" - ], - "nutriscore_version": "2023", - "nutrition_data_per": "100g", - "nutrition_grade_fr": "c", - "photographers_tags": [ - "kiliweb", - "absmith" - ], - "pnns_groups_1_tags": [ - "unknown", - "missing-association" - ], - "pnns_groups_2_tags": [ - "unknown", - "missing-association" - ], - "allergens_from_user": "(en) ", - "allergens_hierarchy": [ - "en:peanuts" - ], - "countries_hierarchy": [ - "en:united-states", - "en:world" - ], - "image_nutrition_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/nutrition_en.13.400.jpg", - "ingredients_text_en": "ORGANIC BROWN RICE SYRUP, ORGANIC PEANUT BUTTER, ORGANIC PROTEIN BLEND (ORGANIC SPROUTED BROWN RICE PROTEIN, ORGANIC PEA PROTEIN), ORGANIC CHOCOLATE CHIPS (ORGANIC COCONUT SUGAR, ORGANIC COCOA, ORGANIC COCOA BUTTER), ORGANIC PUFFED BROWN RICE, ORGANIC PEANUTS.", - "known_ingredients_n": 20, - "languages_hierarchy": [ - "en:english" - ], - "main_countries_tags": [], - "nova_groups_markers": { - "3": [ - [ - "ingredients", - "en:sugar" - ] - ] - }, - "added_countries_tags": [], - "categories_hierarchy": [ - "en:dietary-supplements", - "en:bodybuilding-supplements", - "en:protein-bars" - ], - "compared_to_category": "en:protein-bars", - "ingredients_analysis": { - "en:vegan-status-unknown": [ - "en:protein-blend", - "en:sprouted-brown-rice-protein" - ], - "en:palm-oil-content-unknown": [ - "en:protein-blend", - "en:sprouted-brown-rice-protein" - ], - "en:vegetarian-status-unknown": [ - "en:protein-blend", - "en:sprouted-brown-rice-protein" - ] - }, - "last_edit_dates_tags": [ - "2024-10-30", - "2024-10", - "2024" - ], - "nutrient_levels_tags": [ - "en:fat-in-moderate-quantity", - "en:saturated-fat-in-moderate-quantity", - "en:sugars-in-high-quantity", - "en:salt-in-low-quantity" - ], - "nutriscore_2021_tags": [ - "b" - ], - "nutriscore_2023_tags": [ - "c" - ], - "packagings_materials": {}, - "categories_properties": {}, - "image_front_small_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.200.jpg", - "image_front_thumb_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/front_en.3.100.jpg", - "image_ingredients_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/ingredients_en.16.400.jpg", - "ingredients_hierarchy": [ - "en:brown-rice-syrup", - "en:added-sugar", - "en:disaccharide", - "en:rice-syrup", - "en:peanut-paste", - "en:nut", - "en:peanut", - "en:protein-blend", - "en:chocolate-chunk", - "en:chocolate", - "en:brown-rice", - "en:rice", - "en:sprouted-brown-rice-protein", - "en:pea-protein", - "en:protein", - "en:plant-protein", - "en:coconut-sugar", - "en:sugar", - "en:palm-sugar", - "en:cocoa", - "en:plant", - "en:cocoa-butter" - ], - "last_image_dates_tags": [ - "2024-10-30", - "2024-10", - "2024" - ], - "nutrition_grades_tags": [ - "c" - ], - "nutrition_score_debug": "", - "packaging_shapes_tags": [], - "unknown_ingredients_n": 2, - "data_quality_bugs_tags": [], - "data_quality_info_tags": [ - "en:no-packaging-data", - "en:ingredients-percent-analysis-ok", - "en:ecoscore-extended-data-not-computed", - "en:food-groups-1-unknown", - "en:food-groups-2-unknown", - "en:food-groups-3-unknown" - ], - "removed_countries_tags": [], - "unknown_nutrients_tags": [], - "additives_original_tags": [], - "traces_from_ingredients": "", - "data_quality_errors_tags": [], - "ingredients_sweeteners_n": 0, - "nutrition_score_beverage": 0, - "packaging_materials_tags": [], - "packaging_recycling_tags": [], - "image_nutrition_small_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/nutrition_en.13.200.jpg", - "image_nutrition_thumb_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/nutrition_en.13.100.jpg", - "ingredients_analysis_tags": [ - "en:palm-oil-content-unknown", - "en:vegan", - "en:vegetarian" - ], - "ingredients_original_tags": [ - "en:brown-rice-syrup", - "en:peanut-paste", - "en:protein-blend", - "en:chocolate-chunk", - "en:brown-rice", - "en:peanut", - "en:sprouted-brown-rice-protein", - "en:pea-protein", - "en:coconut-sugar", - "en:cocoa", - "en:cocoa-butter" - ], - "interface_version_created": "20150316.jqm2", - "nutriscore_score_opposite": -5, - "allergens_from_ingredients": "en:peanuts, en:peanuts", - "categories_properties_tags": [ - "all-products", - "categories-known", - "agribalyse-food-code-unknown", - "agribalyse-proxy-food-code-unknown", - "ciqual-food-code-unknown", - "agribalyse-unknown" - ], - "data_quality_warnings_tags": [ - "en:energy-value-in-kcal-may-not-match-value-computed-from-other-nutrients", - "en:nutrition-data-per-serving-serving-quantity-is-not-recognized", - "en:vegan-label-but-could-not-confirm-for-all-ingredients", - "en:vegetarian-label-but-could-not-confirm-for-all-ingredients", - "en:ecoscore-origins-of-ingredients-origins-are-100-percent-unknown", - "en:ecoscore-packaging-packaging-data-missing", - "en:ecoscore-production-system-no-label" - ], - "interface_version_modified": "20150316.jqm2", - "image_ingredients_small_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/ingredients_en.16.200.jpg", - "image_ingredients_thumb_url": "https://images.openfoodfacts.org/images/products/085/355/500/6870/ingredients_en.16.100.jpg", - "nutrition_data_prepared_per": "100g", - "ingredients_percent_analysis": 1, - "ingredients_text_with_allergens": "ORGANIC BROWN RICE SYRUP, ORGANIC PEANUT BUTTER, ORGANIC PROTEIN BLEND (ORGANIC SPROUTED BROWN RICE PROTEIN, ORGANIC PEA PROTEIN), ORGANIC CHOCOLATE CHIPS (ORGANIC COCONUT SUGAR, ORGANIC COCOA, ORGANIC COCOA BUTTER), ORGANIC PUFFED BROWN RICE, ORGANIC PEANUTS.", - "ingredients_without_ciqual_codes": [ - "en:brown-rice-syrup", - "en:pea-protein", - "en:protein-blend", - "en:sprouted-brown-rice-protein" - ], - "ingredients_without_ecobalyse_ids": [ - "en:brown-rice", - "en:brown-rice-syrup", - "en:chocolate-chunk", - "en:cocoa", - "en:cocoa-butter", - "en:pea-protein", - "en:protein-blend", - "en:sprouted-brown-rice-protein" - ], - "other_nutritional_substances_tags": [], - "ingredients_text_with_allergens_en": "ORGANIC BROWN RICE SYRUP, ORGANIC PEANUT BUTTER, ORGANIC PROTEIN BLEND (ORGANIC SPROUTED BROWN RICE PROTEIN, ORGANIC PEA PROTEIN), ORGANIC CHOCOLATE CHIPS (ORGANIC COCONUT SUGAR, ORGANIC COCOA, ORGANIC COCOA BUTTER), ORGANIC PUFFED BROWN RICE, ORGANIC PEANUTS.", - "ingredients_without_ciqual_codes_n": 4, - "ingredients_without_ecobalyse_ids_n": 8, - "ingredients_with_specified_percent_n": 0, - "ingredients_non_nutritive_sweeteners_n": 0, - "ingredients_with_specified_percent_sum": 0, - "ingredients_with_unspecified_percent_n": 9, - "ingredients_with_unspecified_percent_sum": 100, - "nutrition_score_warning_fruits_vegetables_nuts_estimate_from_ingredients": 1, - "nutrition_score_warning_fruits_vegetables_legumes_estimate_from_ingredients": 1, - "nutrition_score_warning_fruits_vegetables_nuts_estimate_from_ingredients_value": 23.4375, - "nutrition_score_warning_fruits_vegetables_legumes_estimate_from_ingredients_value": 0 -} \ No newline at end of file diff --git a/webserver.py b/webserver.py index 8965fea..f9347f9 100644 --- a/webserver.py +++ b/webserver.py @@ -3,13 +3,13 @@ from flask import Flask, render_template, session, request, redirect, jsonify from flask_assets import Environment, Bundle import api, config, user_api, psycopg2, main, api_admin, receipts_API, shopping_list_API, group_api from user_api import login_required, update_session_user -from external_API import external_api from workshop_api import workshop_api import database import postsqldb from webpush import trigger_push_notifications_for_subscriptions from application.recipes import recipes_api from application.items import items_API +from application.poe import poe_api from flasgger import Swagger @@ -28,7 +28,7 @@ app.register_blueprint(api.database_api) app.register_blueprint(user_api.login_app) app.register_blueprint(api_admin.admin_api) app.register_blueprint(items_API.items_api, url_prefix='/items') -app.register_blueprint(external_api) +app.register_blueprint(poe_api.point_of_ease, url_prefix='/poe') app.register_blueprint(workshop_api) app.register_blueprint(receipts_API.receipt_api) app.register_blueprint(shopping_list_API.shopping_list_api) From 61661db80719cb197da22a17dac50d2c562cabf7 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Wed, 2 Jul 2025 18:20:52 -0500 Subject: [PATCH 17/38] Finished migration of poe/scanner --- application/items/templates/transaction.html | 42 - application/poe/poe_api.py | 27 +- application/poe/poe_database.py | 313 ++++++++ application/poe/poe_processes.py | 103 +++ application/poe/sql/insertCostLayersTuple.sql | 4 + .../poe/sql/insertTransactionsTuple.sql | 5 + application/poe/sql/updateItemLocation.sql | 4 + application/poe/static/js/receiptsHandler.js | 734 ++++++++++++++++++ .../poe/static/js/transactionHandler.js | 1 - application/poe/templates/receipts.html | 154 ++++ database.log | 5 +- 11 files changed, 1339 insertions(+), 53 deletions(-) create mode 100644 application/poe/poe_database.py create mode 100644 application/poe/poe_processes.py create mode 100644 application/poe/sql/insertCostLayersTuple.sql create mode 100644 application/poe/sql/insertTransactionsTuple.sql create mode 100644 application/poe/sql/updateItemLocation.sql create mode 100644 application/poe/static/js/receiptsHandler.js create mode 100644 application/poe/templates/receipts.html diff --git a/application/items/templates/transaction.html b/application/items/templates/transaction.html index 55d7159..7149f2c 100644 --- a/application/items/templates/transaction.html +++ b/application/items/templates/transaction.html @@ -115,7 +115,6 @@
@@ -201,47 +200,6 @@
-
-
-

Using this method of entering receipts does so by adding each barcode to a list and once the receipt has been built the - the system will then add the receipt to the system. Its important that you have the Barcode input focused and use a scanner that places the - characters into the field before it finishes up with a press of the ENTER key. -

-
-
-
- -
-
- -
-
- -
-
-
-
-
-
-
- - -
-
-
- - - - - - - - - - -
TypeBarcodeName
-
-
diff --git a/application/poe/poe_api.py b/application/poe/poe_api.py index 46ad57c..3cdfc8d 100644 --- a/application/poe/poe_api.py +++ b/application/poe/poe_api.py @@ -7,6 +7,7 @@ from queue import Queue import time, process from user_api import login_required import webpush +from application.poe import poe_processes point_of_ease = Blueprint('poe', __name__, template_folder="templates", static_folder="static") @@ -17,7 +18,11 @@ def scannerEndpoint(): return render_template('scanner.html', current_site=session['selected_site'], sites=sites) - +@point_of_ease.route('/receipts', methods=["GET"]) +def receiptsEndpoint(): + sites = [site[1] for site in main.get_sites(session['user']['sites'])] + return render_template('receipts.html', current_site=session['selected_site'], + sites=sites) @point_of_ease.route('/getItemLocations', methods=["GET"]) def getItemLocations(): @@ -86,14 +91,18 @@ def getModalItems(): @point_of_ease.route('/postTransaction', methods=["POST"]) def post_transaction(): if request.method == "POST": - database_config = config() - with psycopg2.connect(**database_config) as conn: - result = process.postTransaction( - conn=conn, - site_name=session['selected_site'], - user_id=session['user_id'], - data=dict(request.json) - ) + print('test two') + result = poe_processes.postTransaction( + site_name=session['selected_site'], + user_id=session['user_id'], + data=dict(request.json) + ) + #result = process.postTransaction( + # conn=conn, + # site_name=session['selected_site'], + # user_id=session['user_id'], + # data=dict(request.json) + #) return jsonify(result) return jsonify({"error":True, "message":"There was an error with this POST statement"}) diff --git a/application/poe/poe_database.py b/application/poe/poe_database.py new file mode 100644 index 0000000..3b93697 --- /dev/null +++ b/application/poe/poe_database.py @@ -0,0 +1,313 @@ +import psycopg2 +import config +from application import postsqldb + + +def selectItemLocationsTuple(site_name, payload, convert=True): + """select a single tuple from ItemLocations table for site_name + + Args: + conn (_T_connector@connect): + site_name (str): + payload (tuple): [item_id, location_id] + convert (bool): defaults to False, used to determine return of tuple/dict + + Returns: + tuple: the row that was returned from the table + """ + item_locations = () + database_config = config.config() + select_item_location_sql = f"SELECT * FROM {site_name}_item_locations WHERE part_id = %s AND location_id = %s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(select_item_location_sql, payload) + rows = cur.fetchone() + if rows and convert: + item_locations = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + item_locations = rows + return item_locations + except Exception as error: + return error + +def selectCostLayersTuple(site_name, payload, convert=True): + """select a single or series of cost layers from the database for site_name + + Args: + conn (_T_connector@connect): + site_name (str): + payload (tuple): (item_locations_id, ) + convert (bool): defaults to False, used for determining return as tuple/dict + + Returns: + list: list of tuples/dict from the cost_layers table for site_name + """ + cost_layers = () + database_config = config.config() + select_cost_layers_sql = f"SELECT cl.* FROM {site_name}_item_locations il JOIN {site_name}_cost_layers cl ON cl.id = ANY(il.cost_layers) where il.id=%s;" + try: + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(select_cost_layers_sql, payload) + rows = cur.fetchall() + if rows and convert: + cost_layers = rows + cost_layers = [postsqldb.tupleDictionaryFactory(cur.description, layer) for layer in rows] + elif rows and not convert: + cost_layers = rows + return cost_layers + except Exception as error: + return error + +def selectLocationsTuple(site, payload, convert=True, conn=None): + selected = () + self_conn = False + sql = f"SELECT * FROM {site}_locations WHERE id=%s;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + selected = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + selected = rows + + if self_conn: + conn.commit() + conn.close() + + return selected + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def selectItemLocationsTuple(site_name, payload, convert=True, conn=None): + """select a single tuple from ItemLocations table for site_name + + Args: + conn (_T_connector@connect): + site_name (str): + payload (tuple): [item_id, location_id] + convert (bool): defaults to False, used to determine return of tuple/dict + + Returns: + tuple: the row that was returned from the table + """ + item_locations = () + self_conn = False + select_item_location_sql = f"SELECT * FROM {site_name}_item_locations WHERE part_id = %s AND location_id = %s;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(select_item_location_sql, payload) + rows = cur.fetchone() + if rows and convert: + item_locations = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + item_locations = rows + + if self_conn: + conn.commit() + conn.close() + + return item_locations + + except Exception as error: + return error + +def insertCostLayersTuple(site, payload, convert=True, conn=None): + cost_layer = () + self_conn = False + + with open(f"application/poe/sql/insertCostLayersTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + cost_layer = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + cost_layer = rows + + if self_conn: + conn.commit() + conn.close() + + return cost_layer + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def insertTransactionsTuple(site, payload, convert=True, conn=None): + """insert payload into transactions table for site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): (timestamp[timestamp], logistics_info_id[int], barcode[str], name[str], + transaction_type[str], quantity[float], description[str], user_id[int], data[jsonb]) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + transaction = () + self_conn = False + with open(f"application/poe/sql/insertTransactionsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + transaction = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + transaction = rows + + if self_conn: + conn.commit() + conn.close() + + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + return transaction + + +def updateCostLayersTuple(site, payload, convert=True, conn=None): + """_summary_ + + Args: + conn (_type_): _description_ + site (_type_): _description_ + payload (_type_): {'id': cost_layer_id, 'update': {column: data...}} + + Returns: + _type_: _description_ + """ + cost_layer = () + self_conn = False + + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {site}_cost_layers SET {set_clause} WHERE id=%s RETURNING *;" + + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + cost_layer = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + cost_layer = rows + + if self_conn: + conn.commit() + conn.close() + + return cost_layer + except Exception as error: + return error + +def updateItemLocation(site, payload, convert=True, conn=None): + item_location = () + self_conn = False + + with open(f"application/poe/sql/updateItemLocation.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + item_location = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + item_location = rows + + if self_conn: + conn.commit() + conn.close() + + return item_location + except Exception as error: + return error + + +def deleteCostLayersTuple(site, payload, convert=True, conn=None): + """This is a basic funtion to delete a tuple from a table in site with an id. All + tables in this database has id's associated with them. + + Args: + conn (_T_connector@connect): Postgresql Connector + site_name (str): + payload (tuple): (tuple_id,) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to True. + + Raises: + DatabaseError: + + Returns: + tuple or dict: deleted tuple + """ + deleted = () + self_conn = False + sql = f"WITH deleted_rows AS (DELETE FROM {site}_cost_layers WHERE id IN ({','.join(['%s'] * len(payload))}) RETURNING *) SELECT * FROM deleted_rows;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchall() + if rows and convert: + deleted = [postsqldb.tupleDictionaryFactory(cur.description, r) for r in rows] + elif rows and not convert: + deleted = rows + + if self_conn: + conn.commit() + conn.close() + + return deleted + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) diff --git a/application/poe/poe_processes.py b/application/poe/poe_processes.py new file mode 100644 index 0000000..dcfc930 --- /dev/null +++ b/application/poe/poe_processes.py @@ -0,0 +1,103 @@ +from application import postsqldb +from application.poe import poe_database + +import datetime +import psycopg2 + +import config + +def postTransaction(site_name, user_id, data: dict, conn=None): + #dict_keys(['item_id', 'logistics_info_id', 'barcode', 'item_name', 'transaction_type', + # 'quantity', 'description', 'cost', 'vendor', 'expires', 'location_id']) + def quantityFactory(quantity_on_hand:float, quantity:float, transaction_type:str): + if transaction_type == "Adjust In": + quantity_on_hand += quantity + return quantity_on_hand + if transaction_type == "Adjust Out": + quantity_on_hand -= quantity + return quantity_on_hand + raise Exception("The transaction type is wrong!") + + self_conn = False + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = False + self_conn = True + + + transaction_time = datetime.datetime.now() + + cost_layer = postsqldb.CostLayerPayload( + aquisition_date=transaction_time, + quantity=float(data['quantity']), + cost=float(data['cost']), + currency_type="USD", + vendor=int(data['vendor']), + expires=data['expires'] + ) + transaction = postsqldb.TransactionPayload( + timestamp=transaction_time, + logistics_info_id=int(data['logistics_info_id']), + barcode=data['barcode'], + name=data['item_name'], + transaction_type=data['transaction_type'], + quantity=float(data['quantity']), + description=data['description'], + user_id=user_id, + ) + + #location = database.selectItemLocationsTuple(conn, site_name, payload=(data['item_id'], data['location_id']), convert=True) + location = poe_database.selectItemLocationsTuple(site_name, payload=(data['item_id'], data['location_id']), conn=conn) + cost_layers: list = location['cost_layers'] + if data['transaction_type'] == "Adjust In": + cost_layer = poe_database.insertCostLayersTuple(site_name, cost_layer.payload(), conn=conn) + #cost_layer = database.insertCostLayersTuple(conn, site_name, cost_layer.payload(), convert=True) + cost_layers.append(cost_layer['id']) + + if data['transaction_type'] == "Adjust Out": + if float(location['quantity_on_hand']) < float(data['quantity']): + return {"error":True, "message":f"The quantity on hand in the chosen location is not enough to satisfy your transaction!"} + #cost_layers = database.selectCostLayersTuple(conn, site_name, (location['id'], ), convert=True) + cost_layers = poe_database.selectCostLayersTuple(site_name, payload=(location['id'], )) + + new_cost_layers = [] + qty = float(data['quantity']) + for layer in cost_layers: + if qty == 0.0: + new_cost_layers.append(layer['id']) + elif qty >= float(layer['quantity']): + qty -= float(layer['quantity']) + layer['quantity'] = 0.0 + else: + layer['quantity'] -= qty + new_cost_layers.append(layer['id']) + poe_database.updateCostLayersTuple(site_name, {'id': layer['id'], 'update': {'quantity': layer['quantity']}}, conn=conn) + #database.__updateTuple(conn, site_name, f"{site_name}_cost_layers", {'id': layer['id'], 'update': {'quantity': layer['quantity']}}) + qty = 0.0 + + if layer['quantity'] == 0.0: + poe_database.deleteCostLayersTuple(site_name, (layer['id'],), conn=conn) + #database.deleteCostLayersTuple(conn, site_name, (layer['id'], )) + + cost_layers = new_cost_layers + + quantity_on_hand = quantityFactory(float(location['quantity_on_hand']), data['quantity'], data['transaction_type']) + + updated_item_location_payload = (cost_layers, quantity_on_hand, data['item_id'], data['location_id']) + poe_database.updateItemLocation(site_name, updated_item_location_payload, conn=conn) + #database.updateItemLocation(conn, site_name, updated_item_location_payload) + + site_location = poe_database.selectLocationsTuple(site_name, (location['location_id'], ), conn=conn) + #site_location = database.__selectTuple(conn, site_name, f"{site_name}_locations", (location['location_id'], ), convert=True) + + transaction.data = {'location': site_location['uuid']} + + poe_database.insertTransactionsTuple(site_name, transaction.payload(), conn=conn) + #database.insertTransactionsTuple(conn, site_name, transaction.payload()) + + if self_conn: + conn.rollback() + conn.close() + + return {"error": False, "message":f"Transaction Successful!"} \ No newline at end of file diff --git a/application/poe/sql/insertCostLayersTuple.sql b/application/poe/sql/insertCostLayersTuple.sql new file mode 100644 index 0000000..c3d381f --- /dev/null +++ b/application/poe/sql/insertCostLayersTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_cost_layers +(aquisition_date, quantity, cost, currency_type, expires, vendor) +VALUES (%s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/poe/sql/insertTransactionsTuple.sql b/application/poe/sql/insertTransactionsTuple.sql new file mode 100644 index 0000000..d8ee48d --- /dev/null +++ b/application/poe/sql/insertTransactionsTuple.sql @@ -0,0 +1,5 @@ +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) +RETURNING *; \ No newline at end of file diff --git a/application/poe/sql/updateItemLocation.sql b/application/poe/sql/updateItemLocation.sql new file mode 100644 index 0000000..7316d94 --- /dev/null +++ b/application/poe/sql/updateItemLocation.sql @@ -0,0 +1,4 @@ +UPDATE %%site_name%%_item_locations +SET cost_layers = %s, quantity_on_hand = %s +WHERE part_id=%s AND location_id=%s +RETURNING *; \ No newline at end of file diff --git a/application/poe/static/js/receiptsHandler.js b/application/poe/static/js/receiptsHandler.js new file mode 100644 index 0000000..0ecb98b --- /dev/null +++ b/application/poe/static/js/receiptsHandler.js @@ -0,0 +1,734 @@ +var pagination_current = 1; +var search_string = ''; +var defaqult_limit = 2; +var pagination_end = 1; +var item; + +async function changeSite(site){ + console.log(site) + const response = await fetch(`/changeSite`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + site: site, + }), + }); + data = await response.json(); + transaction_status = "success" + if (data.error){ + transaction_status = "danger" + } + + UIkit.notification({ + message: data.message, + status: transaction_status, + pos: 'top-right', + timeout: 5000 + }); + location.reload(true) +} + +async function replenishItemsTable(items) { + let itemsTableBody = document.getElementById("itemsTableBody") + itemsTableBody.innerHTML = "" + + for(let i = 0; i < items.length; i++){ + let tableRow = document.createElement('tr') + + + let idCell = document.createElement('td') + idCell.innerHTML = items[i].id + let barcodeCell = document.createElement('td') + barcodeCell.innerHTML = items[i].barcode + let nameCell = document.createElement('td') + nameCell.innerHTML = items[i].item_name + + tableRow.append(idCell) + tableRow.append(barcodeCell) + tableRow.append(nameCell) + + tableRow.onclick = function(){ + selectItem(items[i].id) + } + + itemsTableBody.append(tableRow) + } +} + +async function populateForm() { + if (item){ + console.log(item) + document.getElementById('database_id').value = item.id + document.getElementById('barcode').value = item.barcode + document.getElementById('name').value = item.item_name + document.getElementById('transaction_cost').value = parseFloat(item.item_info.cost) + + await selectLocation( + item.logistics_info.primary_zone.id, + item.logistics_info.primary_location.id, + item.logistics_info.primary_zone.name, + item.logistics_info.primary_location.name + ) + + + let quantity_on_hand = 0 + let locations = await getItemLocations() + for(let i = 0; i < locations.length; i++){ + quantity_on_hand = quantity_on_hand + locations[i].quantity_on_hand + } + document.getElementById('QOH').value = quantity_on_hand + document.getElementById('UOM').value = item.item_info.uom.fullname + + await replenishItemLocationsTable(locations) + + } +} + +async function selectItem(id) { + UIkit.modal(document.getElementById("itemsModal")).hide(); + item = await getItem(id) + await populateForm() +} + +var transaction_zone_id = 0 +var transaction_item_location_id = 0 +async function selectLocation(zone_id, location_id, zone_name, location_name) { + document.getElementById('zone').value = zone_name + document.getElementById('location').value = location_name + transaction_zone_id = zone_id + transaction_item_location_id = location_id +} + +async function openItemsModal(elementID){ + UIkit.modal(document.getElementById("itemsModal")).show(); + pagination_current = 1 + search_string = '' + let items = await getItems() + await replenishItemsTable(items) + await updatePaginationElement(elementID) + setFormButtonsEnabled(true) +} + +async function setFormButtonsEnabled(state) { + let item_location_button = document.getElementById("itemLocations") + + if(state){ + item_location_button.classList.remove("uk-disabled") + } else { + item_location_button.classList.add("uk-disabled") + } +} + +async function setTransactionTypeAdjustments() { + let trans_type = document.getElementById('trans_type').value + + if(trans_type=="Adjust Out"){ + document.getElementById('transaction_cost').classList.add('uk-disabled') + } + if(trans_type=="Adjust In"){ + document.getElementById('transaction_cost').classList.remove('uk-disabled') + } + +} + +async function replenishItemLocationsTable(locations) { + let itemLocationTableBody = document.getElementById('itemLocationTableBody') + itemLocationTableBody.innerHTML = "" + for(let i = 0; i < locations.length; i++){ + let tableRow = document.createElement('tr') + + let loca = locations[i].uuid.split('@') + + let zoneCell = document.createElement('td') + zoneCell.innerHTML = loca[0] + + let locationCell = document.createElement('td') + locationCell.innerHTML = loca[1] + + let qohCell = document.createElement('td') + qohCell.innerHTML = parseFloat(locations[i].quantity_on_hand) + + tableRow.append(zoneCell, locationCell, qohCell) + tableRow.onclick = async function(){ + await selectLocation( + locations[i].zone_id, + locations[i].id, + loca[0], + loca[1] + ) + } + itemLocationTableBody.append(tableRow) + } +} + +let locations_limit = 10; +async function getItemLocations() { + console.log("getting Locations") + const url = new URL('/external/getItemLocations', window.location.origin); + url.searchParams.append('page', pagination_current); + url.searchParams.append('limit', locations_limit); + url.searchParams.append('id', item.id); + const response = await fetch(url); + data = await response.json(); + pagination_end = data.end + let locations = data.locations; + console.log(locations) + return locations; +} + + +let items_limit = 50; +async function getItems() { + console.log("getting items") + const url = new URL('/external/getModalItems', window.location.origin); + url.searchParams.append('page', pagination_current); + url.searchParams.append('limit', items_limit); + url.searchParams.append('search_string', search_string) + const response = await fetch(url); + data = await response.json(); + pagination_end = data.end + let items = data.items; + return items; +} + +async function getItem(id) { + console.log(`selected item: ${id}`) + const url = new URL('/external/getItem', window.location.origin); + url.searchParams.append('id', id); + const response = await fetch(url); + data = await response.json(); + item = data.item; + return item; +} + +async function validateTransaction() { + let database_id = document.getElementById("database_id") + let transaction_type = document.getElementById("trans_type") + let transaction_zone = document.getElementById("zone") + let transaction_location = document.getElementById("location") + let transaction_quantity = document.getElementById("transaction_quantity") + let transaction_cost = document.getElementById("transaction_cost") + + + let error_count = 0 + if(database_id.value === ""){ + error_count = error_count + 1 + database_id.classList.add("uk-form-danger") + } else { + database_id.classList.remove("uk-form-danger") + } + if(transaction_type.value === "0"){ + error_count = error_count + 1 + transaction_type.classList.add("uk-form-danger") + } else { + transaction_type.classList.remove("uk-form-danger") + } + + if (transaction_zone.value === ""){ + error_count = error_count + 1 + transaction_zone.classList.add("uk-form-danger") + } else { + transaction_zone.classList.remove("uk-form-danger") + } + + if (transaction_location.value === ""){ + error_count = error_count + 1 + transaction_location.classList.add("uk-form-danger") + } else { + transaction_location.classList.remove("uk-form-danger") + } + + let transaction_quantity_int = parseFloat(transaction_quantity.value) + if (transaction_quantity_int === 0.00 || transaction_quantity_int < 0.00){ + error_count = error_count + 1 + transaction_quantity.classList.add("uk-form-danger") + } else { + transaction_quantity.classList.remove("uk-form-danger") + } + + let transaction_cost_int = parseFloat(transaction_cost.value) + if (transaction_cost_int == 0.00 && transaction_type.value == "Adjust In"){ + error_count = error_count + 1 + transaction_cost.classList.add("uk-form-danger") + } else { + transaction_cost.classList.remove("uk-form-danger") + } + + if(error_count > 0){ + return false + } + + return true +} + +async function submitTransaction() { + let validated = await validateTransaction() + if (validated){ + let cost = parseFloat(document.getElementById('transaction_cost').value.replace(/[^0-9.-]+/g, "")); + const response = await fetch(`/external/postTransaction`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + item_id: item.id, + logistics_info_id: item.logistics_info_id, + barcode: item.barcode, + item_name: item.item_name, + transaction_type: document.getElementById('trans_type').value, + quantity: parseFloat(document.getElementById('transaction_quantity').value), + description: document.getElementById('transaction_description').value, + cost: cost, + vendor: 0, + expires: null, + location_id: transaction_item_location_id + }), + }); + data = await response.json(); + transaction_status = "success" + if (data.error){ + transaction_status = "danger" + } + + UIkit.notification({ + message: data.message, + status: transaction_status, + pos: 'top-right', + timeout: 5000 + }); + + item = await getItem(item.id) + await populateForm() + document.getElementById('transaction_quantity').value = '0.00' + + } else { + UIkit.notification({ + message: 'Please verify your transaction receipt.', + status: 'warning', + pos: 'top-right', + timeout: 5000 + }) +} +} + +async function searchTable(event, logis, elementID) { + if(event.key==='Enter' && logis==='items'){ + search_string = event.srcElement.value + let items = await getItems() + await replenishItemsTable(items) + } + await updatePaginationElement(elementID) +} + +async function setPage(pageNumber, elementID){ + pagination_current = pageNumber; + + if(elementID=="itemsPage"){ + let items = await getItems() + await replenishItemsTable(items) + } + await updatePaginationElement(elementID) +} + +async function updatePaginationElement(elementID) { + let paginationElement = document.getElementById(elementID); + paginationElement.innerHTML = ""; + // previous + let previousElement = document.createElement('li') + if(pagination_current<=1){ + previousElement.innerHTML = ``; + previousElement.classList.add('uk-disabled'); + }else { + previousElement.innerHTML = ``; + } + paginationElement.append(previousElement) + + //first + let firstElement = document.createElement('li') + if(pagination_current<=1){ + firstElement.innerHTML = `1`; + firstElement.classList.add('uk-disabled'); + }else { + firstElement.innerHTML = `1`; + } + paginationElement.append(firstElement) + + // ... + if(pagination_current-2>1){ + let firstDotElement = document.createElement('li') + firstDotElement.classList.add('uk-disabled') + firstDotElement.innerHTML = `…`; + paginationElement.append(firstDotElement) + } + // last + if(pagination_current-2>0){ + let lastElement = document.createElement('li') + lastElement.innerHTML = `${pagination_current-1}` + paginationElement.append(lastElement) + } + // current + if(pagination_current!=1 && pagination_current != pagination_end){ + let currentElement = document.createElement('li') + currentElement.innerHTML = `
  • ${pagination_current}
  • ` + paginationElement.append(currentElement) + } + // next + if(pagination_current+2${pagination_current+1}` + paginationElement.append(nextElement) + } + // ... + if(pagination_current+2<=pagination_end){ + let secondDotElement = document.createElement('li') + secondDotElement.classList.add('uk-disabled') + secondDotElement.innerHTML = `…`; + paginationElement.append(secondDotElement) + } + //end + let endElement = document.createElement('li') + if(pagination_current>=pagination_end){ + endElement.innerHTML = `${pagination_end}`; + endElement.classList.add('uk-disabled'); + }else { + endElement.innerHTML = `${pagination_end}`; + } + paginationElement.append(endElement) + //next button + let nextElement = document.createElement('li') + if(pagination_current>=pagination_end){ + nextElement.innerHTML = ``; + nextElement.classList.add('uk-disabled'); + }else { + nextElement.innerHTML = ``; + console.log(nextElement.innerHTML) + } + paginationElement.append(nextElement) +} + +var scannedItems = Array(); +const queueLimit = 5; // 49 should be default + +async function addToQueue(event) { + if (event.key == "Enter"){ + let data = await getItemBarcode(document.getElementById('barcode-scan').value) + let scannedItem = data.item + if(data.error){ + UIkit.notification({ + message: data.message, + status: "danger", + pos: 'top-right', + timeout: 5000 + }); + } + if(scannedItems.length > queueLimit){ + scannedItems.shift() + } + if(!Array.isArray(scannedItem) && !data.error){ + let status = await submitScanTransaction(scannedItem) + scannedItems.push({'item': scannedItem, 'type': `${document.getElementById('scan_trans_type').value}`, 'error': status}) + document.getElementById('barcode-scan').value = "" + } + } + await replenishScanTable() +} + +async function getItemBarcode(barcode) { + console.log(`selected item: ${barcode}`) + const url = new URL('/external/getItem/barcode', window.location.origin); + url.searchParams.append('barcode', barcode); + const response = await fetch(url); + data = await response.json(); + return data; +} + +async function submitScanTransaction(scannedItem) { + /// I need to find the location that matches the items auto issue location id + + let trans_type = document.getElementById('scan_trans_type').value + let scan_transaction_item_location_id = 0 + let comparator = 0 + + if (trans_type === "Adjust In"){ + comparator = scannedItem.logistics_info.primary_location.id + } else if (trans_type === "Adjust Out"){ + comparator = scannedItem.logistics_info.auto_issue_location.id + } + + for (let i = 0; i < scannedItem.item_locations.length; i++){ + if (scannedItem.item_locations[i].location_id === comparator){ + scan_transaction_item_location_id = scannedItem.item_locations[i].id + } + } + + const response = await fetch(`/external/postTransaction`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + item_id: scannedItem.id, + logistics_info_id: scannedItem.logistics_info_id, + barcode: scannedItem.barcode, + item_name: scannedItem.item_name, + transaction_type: document.getElementById('scan_trans_type').value, + quantity: scannedItem.item_info.uom_quantity, + description: "", + cost: parseFloat(scannedItem.item_info.cost), + vendor: 0, + expires: null, + location_id: scan_transaction_item_location_id + }), + }); + data = await response.json(); + transaction_status = "success" + if (data.error){ + transaction_status = "danger" + } + + UIkit.notification({ + message: data.message, + status: transaction_status, + pos: 'top-right', + timeout: 5000 + }); + + return data.error + +} + +async function replenishScanTable() { + let scanTableBody = document.getElementById("scanTableBody") + scanTableBody.innerHTML = "" + + let reversedScannedItems = scannedItems.slice().reverse() + + for(let i = 0; i < reversedScannedItems.length; i++){ + let tableRow = document.createElement('tr') + + let icon = `` + if(reversedScannedItems[i].error){ + icon = `` + } + + let statusCell = document.createElement('td') + statusCell.innerHTML = icon + let barcodeCell = document.createElement('td') + barcodeCell.innerHTML = reversedScannedItems[i].item.barcode + let nameCell = document.createElement('td') + nameCell.innerHTML = reversedScannedItems[i].item.item_name + let typeCell = document.createElement('td') + typeCell.innerHTML = reversedScannedItems[i].type + let locationCell = document.createElement('td') + if (reversedScannedItems[i].type === "Adjust In"){ + locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.primary_location.uuid + } else { + locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.auto_issue_location.uuid + } + + tableRow.append(statusCell, barcodeCell, nameCell, typeCell, locationCell) + scanTableBody.append(tableRow) + } +} + +async function submitScanReceipt(items) { + const response = await fetch(`/external/postReceipt`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + items: items + }), + }); + data = await response.json(); + transaction_status = "success" + if (data.error){ + transaction_status = "danger" + } + + UIkit.notification({ + message: data.message, + status: transaction_status, + pos: 'top-right', + timeout: 5000 + }); + + return data.error +} + +var openedReceipt = false +async function startReceipt() { + openedReceipt = true + document.getElementById('barcode-input').classList.remove('uk-disabled') + document.getElementById('barcode-table').classList.remove('uk-disabled') + + document.getElementById('receiptStart').classList.add('uk-disabled') + document.getElementById('receiptComplete').classList.remove('uk-disabled') + document.getElementById('receiptClose').classList.remove('uk-disabled') + +} + +async function completeReceipt() { + openedReceipt = false + document.getElementById('barcode-input').classList.add('uk-disabled') + document.getElementById('barcode-table').classList.add('uk-disabled') + + document.getElementById('receiptStart').classList.remove('uk-disabled') + document.getElementById('receiptComplete').classList.add('uk-disabled') + document.getElementById('receiptClose').classList.add('uk-disabled') + + await submitScanReceipt(scannedReceiptItems) + let scanReceiptTableBody = document.getElementById("scanReceiptTableBody") + scanReceiptTableBody.innerHTML = "" + + scannedReceiptItems = Array() + +} + +async function closeReceipt(){ + openedReceipt = false + document.getElementById('barcode-input').classList.add('uk-disabled') + document.getElementById('barcode-table').classList.add('uk-disabled') + + document.getElementById('receiptStart').classList.remove('uk-disabled') + document.getElementById('receiptComplete').classList.add('uk-disabled') + document.getElementById('receiptClose').classList.add('uk-disabled') + + let scanReceiptTableBody = document.getElementById("scanReceiptTableBody") + scanReceiptTableBody.innerHTML = "" + + scannedReceiptItems = Array() +} + +var scannedReceiptItems = Array(); +async function addToReceipt(event) { + if (event.key == "Enter"){ + let barcode = document.getElementById('barcode-scan-receipt').value + let data = await getItemBarcode(barcode) + let scannedItem = data.item + if(scannedItem){ + let expires = scannedItem.food_info.expires + console.log(expires) + if(scannedItem.food_info.expires){ + let today = new Date(); + today.setDate(today.getDate() + Number(scannedItem.food_info.default_expiration)) + expires = today.toISOString().split('T')[0]; + } + scannedReceiptItems.push({item: { + barcode: scannedItem.barcode, + item_name: scannedItem.item_name, + qty: scannedItem.item_info.uom_quantity, + uom: scannedItem.item_info.uom.id, + data: {cost: scannedItem.item_info.cost, expires: expires} + }, type: 'sku'}) + document.getElementById('barcode-scan-receipt').value = "" + } else { + scannedReceiptItems.push({item: { + barcode: `%${barcode}%`, + item_name: "unknown", + qty: 1, + uom: 1, + data: {'cost': 0.00, 'expires': false} + }, type: 'new sku'}) + document.getElementById('barcode-scan-receipt').value = "" + } + } + await replenishScannedReceiptTable(scannedReceiptItems) +} + +async function replenishScannedReceiptTable(items) { + let scanReceiptTableBody = document.getElementById("scanReceiptTableBody") + scanReceiptTableBody.innerHTML = "" + + for(let i = 0; i < items.length; i++){ + let tableRow = document.createElement('tr') + + let typeCell = document.createElement('td') + typeCell.innerHTML = items[i].type + let barcodeCell = document.createElement('td') + barcodeCell.innerHTML = items[i].item.barcode + let nameCell = document.createElement('td') + nameCell.innerHTML = items[i].item.item_name + + let operationsCell = document.createElement('td') + + let editOp = document.createElement('a') + editOp.style = "margin-right: 5px;" + editOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') + editOp.setAttribute('uk-icon', 'icon: pencil') + editOp.onclick = async function () { + await openLineEditModal(i, items[i]) + } + + let deleteOp = document.createElement('a') + deleteOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') + deleteOp.setAttribute('uk-icon', 'icon: trash') + deleteOp.onclick = async function() { + scannedReceiptItems.splice(i, 1) + await replenishScannedReceiptTable(scannedReceiptItems) + } + + operationsCell.append(editOp, deleteOp) + + operationsCell.classList.add("uk-flex") + operationsCell.classList.add("uk-flex-right") + + tableRow.append(typeCell, barcodeCell, nameCell, operationsCell) + scanReceiptTableBody.append(tableRow) + } +} + +async function openLineEditModal(ind, line_data) { + console.log(line_data) + document.getElementById('lineName').value = line_data.item.item_name + document.getElementById('lineQty').value = line_data.item.qty + document.getElementById('lineUOM').value = line_data.item.uom + document.getElementById('lineCost').value = line_data.item.data.cost + document.getElementById('lineExpires').value = line_data.item.data.expires + if(line_data.type === 'sku'){ + document.getElementById('lineUOM').classList.add('uk-disabled') + } else { + document.getElementById('lineUOM').classList.remove('uk-disabled') + } + + if(!line_data.item.data.expires){ + document.getElementById('lineExpires').classList.add('uk-disabled') + } else { + document.getElementById('lineExpires').classList.remove('uk-disabled') + } + + document.getElementById('saveLineButton').onclick = async function() { + line_data.item.item_name = document.getElementById('lineName').value + line_data.item.qty = document.getElementById('lineQty').value + line_data.item.uom = document.getElementById('lineUOM').value + line_data.item.data.cost = document.getElementById('lineCost').value + if(line_data.item.data.expires){ + line_data.item.data.expires = document.getElementById('lineExpires').value + } + + scannedReceiptItems[ind] = line_data + UIkit.modal(document.getElementById("lineEditModal")).hide(); + await replenishScannedReceiptTable(scannedReceiptItems) + } + + UIkit.modal(document.getElementById("lineEditModal")).show(); +} + +var mode = false +async function toggleDarkMode() { + let darkMode = document.getElementById("dark-mode"); + darkMode.disabled = !darkMode.disabled; + mode = !mode; + if(mode){ + document.getElementById('modeToggle').innerHTML = "light_mode" + document.getElementById('main_html').classList.add('uk-light') + } else { + document.getElementById('modeToggle').innerHTML = "dark_mode" + document.getElementById('main_html').classList.remove('uk-light') + + } + +} \ No newline at end of file diff --git a/application/poe/static/js/transactionHandler.js b/application/poe/static/js/transactionHandler.js index 472a337..59162ad 100644 --- a/application/poe/static/js/transactionHandler.js +++ b/application/poe/static/js/transactionHandler.js @@ -78,7 +78,6 @@ async function submitScanTransaction(scannedItem) { scan_transaction_item_location_id = scannedItem.item_locations[i].id } } - const response = await fetch(`/poe/postTransaction`, { method: 'POST', headers: { diff --git a/application/poe/templates/receipts.html b/application/poe/templates/receipts.html new file mode 100644 index 0000000..5eed667 --- /dev/null +++ b/application/poe/templates/receipts.html @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    +
    +
    +
    +

    Using this method of entering receipts does so by adding each barcode to a list and once the receipt has been built the + the system will then add the receipt to the system. Its important that you have the Barcode input focused and use a scanner that places the + characters into the field before it finishes up with a press of the ENTER key. +

    +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    +
    + + +
    +
    +
    + + + + + + + + + + +
    TypeBarcodeName
    +
    +
    +
    + + {% assets "js_all" %} + + {% endassets %} + + \ No newline at end of file diff --git a/database.log b/database.log index abc5896..fca24ac 100644 --- a/database.log +++ b/database.log @@ -1934,4 +1934,7 @@ sql='UPDATE test_items SET brand = %s, item_type = %s WHERE id=%s RETURNING *;') 2025-04-28 06:46:35.145654 --- ERROR --- DatabaseError(message='can't adapt type 'builtin_function_or_method'', payload={'id': , 'update': {'conv_factor': 3}}, - sql='UPDATE test_itemlinks SET conv_factor = %s WHERE id=%s RETURNING *;') \ No newline at end of file + sql='UPDATE test_itemlinks SET conv_factor = %s WHERE id=%s RETURNING *;') +2025-07-02 18:04:47.600077 --- ERROR --- DatabaseError(message='not all arguments converted during string formatting', + payload=(1, 2), + sql='SELECT * FROM main_locations WHERE id=%s;') \ No newline at end of file From 109c7fbd315c2c451ac19b77b7a7cac2a80787e6 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Fri, 4 Jul 2025 08:26:53 -0500 Subject: [PATCH 18/38] Migrated scanning to receipt process to poe --- application/items/templates/transaction.html | 50 -- application/poe/__init__.py | 0 application/poe/poe_api.py | 47 +- application/poe/poe_database.py | 117 +++++ application/poe/poe_processes.py | 46 +- .../poe/sql/insertReceiptItemsTuple.sql | 4 + application/poe/sql/insertReceiptsTuple.sql | 4 + application/poe/static/js/receiptsHandler.js | 497 +----------------- application/poe/templates/receipts.html | 47 ++ database.log | 8 +- 10 files changed, 236 insertions(+), 584 deletions(-) create mode 100644 application/poe/__init__.py create mode 100644 application/poe/sql/insertReceiptItemsTuple.sql create mode 100644 application/poe/sql/insertReceiptsTuple.sql diff --git a/application/items/templates/transaction.html b/application/items/templates/transaction.html index 7149f2c..184e898 100644 --- a/application/items/templates/transaction.html +++ b/application/items/templates/transaction.html @@ -254,56 +254,6 @@ - -
    -
    -

    Edit Line...

    -

    Edit any fields here for the selected Line and then save them.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    QTY
    QTY
    UOM - -
    COST
    EXPIRES
    -

    - - -

    -
    -
    - - - {% assets "js_all" %} {% endassets %} diff --git a/application/poe/__init__.py b/application/poe/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/application/poe/poe_api.py b/application/poe/poe_api.py index 3cdfc8d..c1a49f2 100644 --- a/application/poe/poe_api.py +++ b/application/poe/poe_api.py @@ -8,6 +8,7 @@ import time, process from user_api import login_required import webpush from application.poe import poe_processes +from application import postsqldb point_of_ease = Blueprint('poe', __name__, template_folder="templates", static_folder="static") @@ -21,9 +22,14 @@ def scannerEndpoint(): @point_of_ease.route('/receipts', methods=["GET"]) def receiptsEndpoint(): sites = [site[1] for site in main.get_sites(session['user']['sites'])] + database_config = config() + with psycopg2.connect(**database_config) as conn: + units = postsqldb.UnitsTable.getAll(conn) + #units = db.UnitsTable.getAll(conn) return render_template('receipts.html', current_site=session['selected_site'], - sites=sites) + sites=sites, units=units) +# DONT NEED @point_of_ease.route('/getItemLocations', methods=["GET"]) def getItemLocations(): recordset = [] @@ -41,7 +47,7 @@ def getItemLocations(): return jsonify({"locations":recordset, "end": math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) -# in item api +# in item api, DONT NEED @point_of_ease.route('/getItem', methods=["GET"]) def getItem(): record = {} @@ -69,7 +75,7 @@ def getItemBarcode(): return jsonify({"item":record, "error":False, "message":"item fetched succesfully!"}) return jsonify({"item":record, "error":True, "message":"There was an error with this GET statement"}) -# in items api +# in items api DONT NEED @point_of_ease.route('/getModalItems', methods=["GET"]) @login_required def getModalItems(): @@ -97,12 +103,6 @@ def post_transaction(): user_id=session['user_id'], data=dict(request.json) ) - #result = process.postTransaction( - # conn=conn, - # site_name=session['selected_site'], - # user_id=session['user_id'], - # data=dict(request.json) - #) return jsonify(result) return jsonify({"error":True, "message":"There was an error with this POST statement"}) @@ -112,30 +112,7 @@ def post_receipt(): if request.method == "POST": site_name = session['selected_site'] user_id = session['user_id'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - items = request.json['items'] - receipt_id = database.request_receipt_id(conn, site_name) - receipt_id = f"SIR-{receipt_id}" - receipt = MyDataclasses.ReceiptPayload( - receipt_id=receipt_id, - submitted_by=user_id - ) - receipt = database.insertReceiptsTuple(conn, site_name, receipt.payload(), convert=True) - - for item in items: - - receipt_item = MyDataclasses.ReceiptItemPayload( - type=item['type'], - receipt_id=receipt['id'], - barcode=item['item']['barcode'], - name=item['item']['item_name'], - qty=item['item']['qty'], - uom=item['item']['uom'], - data=item['item']['data'] - ) - database.insertReceiptItemsTuple(conn, site_name, receipt_item.payload()) - #webpush.push_notifications('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") - webpush.push_ntfy('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") - return jsonify({"error":False, "message":"Transaction Complete!"}) + data= {'items': request.json['items']} + status = poe_processes.post_receipt(site_name, user_id, data) + return jsonify(status) return jsonify({"error":True, "message":"There was an error with this POST statement"}) \ No newline at end of file diff --git a/application/poe/poe_database.py b/application/poe/poe_database.py index 3b93697..3d690b2 100644 --- a/application/poe/poe_database.py +++ b/application/poe/poe_database.py @@ -2,6 +2,36 @@ import psycopg2 import config from application import postsqldb +def request_receipt_id(conn, site_name): + """gets the next id for receipts_id, currently returns a 8 digit number + + Args: + site (str): site to get the next id for + + Returns: + json: receipt_id, message, error keys + """ + next_receipt_id = None + sql = f"SELECT receipt_id FROM {site_name}_receipts ORDER BY id DESC LIMIT 1;" + try: + database_config = config.config() + with psycopg2.connect(**database_config) as conn: + with conn.cursor() as cur: + cur.execute(sql) + next_receipt_id = cur.fetchone() + if next_receipt_id == None: + next_receipt_id = "00000001" + else: + next_receipt_id = next_receipt_id[0] + next_receipt_id = int(next_receipt_id.split("-")[1]) + 1 + y = str(next_receipt_id) + len_str = len(y) + x = "".join(["0" for _ in range(8 - len_str)]) + next_receipt_id = x + y + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload=(), sql=sql) + + return next_receipt_id def selectItemLocationsTuple(site_name, payload, convert=True): """select a single tuple from ItemLocations table for site_name @@ -198,6 +228,93 @@ def insertTransactionsTuple(site, payload, convert=True, conn=None): raise postsqldb.DatabaseError(error, payload, sql) return transaction +def insertReceiptsTuple(site, payload, convert=True, conn=None): + """insert payload into receipt table of site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + receipt = () + self_conn = False + with open(f"application/poe/sql/insertReceiptsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + receipt = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + receipt = rows + + if self_conn: + conn.commit() + conn.close() + + return receipt + + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def insertReceiptItemsTuple(site, payload, convert=True, conn=None): + """insert payload into receipt_items table of site + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (tuple): (type[str], receipt_id[int], barcode[str], name[str], + qty[float], data[jsonb], status[str]) + convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. + + Raises: + DatabaseError: + + Returns: + tuple or dict: inserted tuple + """ + receipt_item = () + self_conn = False + + with open(f"application/poe/sql/insertReceiptItemsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + receipt_item = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + receipt_item = rows + + if self_conn: + conn.commit() + conn.close() + + return receipt_item + + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) def updateCostLayersTuple(site, payload, convert=True, conn=None): """_summary_ diff --git a/application/poe/poe_processes.py b/application/poe/poe_processes.py index dcfc930..1d0a9e0 100644 --- a/application/poe/poe_processes.py +++ b/application/poe/poe_processes.py @@ -1,4 +1,4 @@ -from application import postsqldb +from application import postsqldb, database_payloads from application.poe import poe_database import datetime @@ -97,7 +97,47 @@ def postTransaction(site_name, user_id, data: dict, conn=None): #database.insertTransactionsTuple(conn, site_name, transaction.payload()) if self_conn: - conn.rollback() + conn.commit() conn.close() - return {"error": False, "message":f"Transaction Successful!"} \ No newline at end of file + return {"error": False, "message":f"Transaction Successful!"} + +def post_receipt(site_name, user_id, data: dict, conn=None): + # data = {'items': items} + self_conn = False + items = data['items'] + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = False + self_conn = True + + receipt_id = poe_database.request_receipt_id(conn, site_name) + receipt_id = f"SIR-{receipt_id}" + receipt = database_payloads.ReceiptPayload( + receipt_id=receipt_id, + submitted_by=user_id + ) + #receipt = database.insertReceiptsTuple(conn, site_name, receipt.payload(), convert=True) + receipt = poe_database.insertReceiptsTuple(site_name, receipt.payload(), conn=conn) + for item in items: + + receipt_item = database_payloads.ReceiptItemPayload( + type=item['type'], + receipt_id=receipt['id'], + barcode=item['item']['barcode'], + name=item['item']['item_name'], + qty=item['item']['qty'], + uom=item['item']['uom'], + data=item['item']['data'] + ) + #database.insertReceiptItemsTuple(conn, site_name, receipt_item.payload()) + poe_database.insertReceiptItemsTuple(site_name, receipt_item.payload(), conn=conn) + #webpush.push_notifications('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") + #webpush.push_ntfy('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") + + if self_conn: + conn.commit() + conn.close() + + return {"error":False, "message":"Transaction Complete!"} diff --git a/application/poe/sql/insertReceiptItemsTuple.sql b/application/poe/sql/insertReceiptItemsTuple.sql new file mode 100644 index 0000000..6aeb85f --- /dev/null +++ b/application/poe/sql/insertReceiptItemsTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_receipt_items +(type, receipt_id, barcode, name, qty, uom, data, status) +VALUES (%s, %s, %s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/poe/sql/insertReceiptsTuple.sql b/application/poe/sql/insertReceiptsTuple.sql new file mode 100644 index 0000000..8ddaf60 --- /dev/null +++ b/application/poe/sql/insertReceiptsTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_receipts +(receipt_id, receipt_status, date_submitted, submitted_by, vendor_id, files) +VALUES (%s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/poe/static/js/receiptsHandler.js b/application/poe/static/js/receiptsHandler.js index 0ecb98b..67b9c34 100644 --- a/application/poe/static/js/receiptsHandler.js +++ b/application/poe/static/js/receiptsHandler.js @@ -30,511 +30,20 @@ async function changeSite(site){ location.reload(true) } -async function replenishItemsTable(items) { - let itemsTableBody = document.getElementById("itemsTableBody") - itemsTableBody.innerHTML = "" - - for(let i = 0; i < items.length; i++){ - let tableRow = document.createElement('tr') - let idCell = document.createElement('td') - idCell.innerHTML = items[i].id - let barcodeCell = document.createElement('td') - barcodeCell.innerHTML = items[i].barcode - let nameCell = document.createElement('td') - nameCell.innerHTML = items[i].item_name - - tableRow.append(idCell) - tableRow.append(barcodeCell) - tableRow.append(nameCell) - - tableRow.onclick = function(){ - selectItem(items[i].id) - } - - itemsTableBody.append(tableRow) - } -} - -async function populateForm() { - if (item){ - console.log(item) - document.getElementById('database_id').value = item.id - document.getElementById('barcode').value = item.barcode - document.getElementById('name').value = item.item_name - document.getElementById('transaction_cost').value = parseFloat(item.item_info.cost) - - await selectLocation( - item.logistics_info.primary_zone.id, - item.logistics_info.primary_location.id, - item.logistics_info.primary_zone.name, - item.logistics_info.primary_location.name - ) - - - let quantity_on_hand = 0 - let locations = await getItemLocations() - for(let i = 0; i < locations.length; i++){ - quantity_on_hand = quantity_on_hand + locations[i].quantity_on_hand - } - document.getElementById('QOH').value = quantity_on_hand - document.getElementById('UOM').value = item.item_info.uom.fullname - - await replenishItemLocationsTable(locations) - - } -} - -async function selectItem(id) { - UIkit.modal(document.getElementById("itemsModal")).hide(); - item = await getItem(id) - await populateForm() -} - -var transaction_zone_id = 0 -var transaction_item_location_id = 0 -async function selectLocation(zone_id, location_id, zone_name, location_name) { - document.getElementById('zone').value = zone_name - document.getElementById('location').value = location_name - transaction_zone_id = zone_id - transaction_item_location_id = location_id -} - -async function openItemsModal(elementID){ - UIkit.modal(document.getElementById("itemsModal")).show(); - pagination_current = 1 - search_string = '' - let items = await getItems() - await replenishItemsTable(items) - await updatePaginationElement(elementID) - setFormButtonsEnabled(true) -} - -async function setFormButtonsEnabled(state) { - let item_location_button = document.getElementById("itemLocations") - - if(state){ - item_location_button.classList.remove("uk-disabled") - } else { - item_location_button.classList.add("uk-disabled") - } -} - -async function setTransactionTypeAdjustments() { - let trans_type = document.getElementById('trans_type').value - - if(trans_type=="Adjust Out"){ - document.getElementById('transaction_cost').classList.add('uk-disabled') - } - if(trans_type=="Adjust In"){ - document.getElementById('transaction_cost').classList.remove('uk-disabled') - } - -} - -async function replenishItemLocationsTable(locations) { - let itemLocationTableBody = document.getElementById('itemLocationTableBody') - itemLocationTableBody.innerHTML = "" - for(let i = 0; i < locations.length; i++){ - let tableRow = document.createElement('tr') - - let loca = locations[i].uuid.split('@') - - let zoneCell = document.createElement('td') - zoneCell.innerHTML = loca[0] - - let locationCell = document.createElement('td') - locationCell.innerHTML = loca[1] - - let qohCell = document.createElement('td') - qohCell.innerHTML = parseFloat(locations[i].quantity_on_hand) - - tableRow.append(zoneCell, locationCell, qohCell) - tableRow.onclick = async function(){ - await selectLocation( - locations[i].zone_id, - locations[i].id, - loca[0], - loca[1] - ) - } - itemLocationTableBody.append(tableRow) - } -} - -let locations_limit = 10; -async function getItemLocations() { - console.log("getting Locations") - const url = new URL('/external/getItemLocations', window.location.origin); - url.searchParams.append('page', pagination_current); - url.searchParams.append('limit', locations_limit); - url.searchParams.append('id', item.id); - const response = await fetch(url); - data = await response.json(); - pagination_end = data.end - let locations = data.locations; - console.log(locations) - return locations; -} - - -let items_limit = 50; -async function getItems() { - console.log("getting items") - const url = new URL('/external/getModalItems', window.location.origin); - url.searchParams.append('page', pagination_current); - url.searchParams.append('limit', items_limit); - url.searchParams.append('search_string', search_string) - const response = await fetch(url); - data = await response.json(); - pagination_end = data.end - let items = data.items; - return items; -} - -async function getItem(id) { - console.log(`selected item: ${id}`) - const url = new URL('/external/getItem', window.location.origin); - url.searchParams.append('id', id); - const response = await fetch(url); - data = await response.json(); - item = data.item; - return item; -} - -async function validateTransaction() { - let database_id = document.getElementById("database_id") - let transaction_type = document.getElementById("trans_type") - let transaction_zone = document.getElementById("zone") - let transaction_location = document.getElementById("location") - let transaction_quantity = document.getElementById("transaction_quantity") - let transaction_cost = document.getElementById("transaction_cost") - - - let error_count = 0 - if(database_id.value === ""){ - error_count = error_count + 1 - database_id.classList.add("uk-form-danger") - } else { - database_id.classList.remove("uk-form-danger") - } - if(transaction_type.value === "0"){ - error_count = error_count + 1 - transaction_type.classList.add("uk-form-danger") - } else { - transaction_type.classList.remove("uk-form-danger") - } - - if (transaction_zone.value === ""){ - error_count = error_count + 1 - transaction_zone.classList.add("uk-form-danger") - } else { - transaction_zone.classList.remove("uk-form-danger") - } - - if (transaction_location.value === ""){ - error_count = error_count + 1 - transaction_location.classList.add("uk-form-danger") - } else { - transaction_location.classList.remove("uk-form-danger") - } - - let transaction_quantity_int = parseFloat(transaction_quantity.value) - if (transaction_quantity_int === 0.00 || transaction_quantity_int < 0.00){ - error_count = error_count + 1 - transaction_quantity.classList.add("uk-form-danger") - } else { - transaction_quantity.classList.remove("uk-form-danger") - } - - let transaction_cost_int = parseFloat(transaction_cost.value) - if (transaction_cost_int == 0.00 && transaction_type.value == "Adjust In"){ - error_count = error_count + 1 - transaction_cost.classList.add("uk-form-danger") - } else { - transaction_cost.classList.remove("uk-form-danger") - } - - if(error_count > 0){ - return false - } - - return true -} - -async function submitTransaction() { - let validated = await validateTransaction() - if (validated){ - let cost = parseFloat(document.getElementById('transaction_cost').value.replace(/[^0-9.-]+/g, "")); - const response = await fetch(`/external/postTransaction`, { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - item_id: item.id, - logistics_info_id: item.logistics_info_id, - barcode: item.barcode, - item_name: item.item_name, - transaction_type: document.getElementById('trans_type').value, - quantity: parseFloat(document.getElementById('transaction_quantity').value), - description: document.getElementById('transaction_description').value, - cost: cost, - vendor: 0, - expires: null, - location_id: transaction_item_location_id - }), - }); - data = await response.json(); - transaction_status = "success" - if (data.error){ - transaction_status = "danger" - } - - UIkit.notification({ - message: data.message, - status: transaction_status, - pos: 'top-right', - timeout: 5000 - }); - - item = await getItem(item.id) - await populateForm() - document.getElementById('transaction_quantity').value = '0.00' - - } else { - UIkit.notification({ - message: 'Please verify your transaction receipt.', - status: 'warning', - pos: 'top-right', - timeout: 5000 - }) -} -} - -async function searchTable(event, logis, elementID) { - if(event.key==='Enter' && logis==='items'){ - search_string = event.srcElement.value - let items = await getItems() - await replenishItemsTable(items) - } - await updatePaginationElement(elementID) -} - -async function setPage(pageNumber, elementID){ - pagination_current = pageNumber; - - if(elementID=="itemsPage"){ - let items = await getItems() - await replenishItemsTable(items) - } - await updatePaginationElement(elementID) -} - -async function updatePaginationElement(elementID) { - let paginationElement = document.getElementById(elementID); - paginationElement.innerHTML = ""; - // previous - let previousElement = document.createElement('li') - if(pagination_current<=1){ - previousElement.innerHTML = ``; - previousElement.classList.add('uk-disabled'); - }else { - previousElement.innerHTML = ``; - } - paginationElement.append(previousElement) - - //first - let firstElement = document.createElement('li') - if(pagination_current<=1){ - firstElement.innerHTML = `1`; - firstElement.classList.add('uk-disabled'); - }else { - firstElement.innerHTML = `1`; - } - paginationElement.append(firstElement) - - // ... - if(pagination_current-2>1){ - let firstDotElement = document.createElement('li') - firstDotElement.classList.add('uk-disabled') - firstDotElement.innerHTML = `…`; - paginationElement.append(firstDotElement) - } - // last - if(pagination_current-2>0){ - let lastElement = document.createElement('li') - lastElement.innerHTML = `${pagination_current-1}` - paginationElement.append(lastElement) - } - // current - if(pagination_current!=1 && pagination_current != pagination_end){ - let currentElement = document.createElement('li') - currentElement.innerHTML = `
  • ${pagination_current}
  • ` - paginationElement.append(currentElement) - } - // next - if(pagination_current+2${pagination_current+1}` - paginationElement.append(nextElement) - } - // ... - if(pagination_current+2<=pagination_end){ - let secondDotElement = document.createElement('li') - secondDotElement.classList.add('uk-disabled') - secondDotElement.innerHTML = `…`; - paginationElement.append(secondDotElement) - } - //end - let endElement = document.createElement('li') - if(pagination_current>=pagination_end){ - endElement.innerHTML = `${pagination_end}`; - endElement.classList.add('uk-disabled'); - }else { - endElement.innerHTML = `${pagination_end}`; - } - paginationElement.append(endElement) - //next button - let nextElement = document.createElement('li') - if(pagination_current>=pagination_end){ - nextElement.innerHTML = ``; - nextElement.classList.add('uk-disabled'); - }else { - nextElement.innerHTML = ``; - console.log(nextElement.innerHTML) - } - paginationElement.append(nextElement) -} - -var scannedItems = Array(); -const queueLimit = 5; // 49 should be default - -async function addToQueue(event) { - if (event.key == "Enter"){ - let data = await getItemBarcode(document.getElementById('barcode-scan').value) - let scannedItem = data.item - if(data.error){ - UIkit.notification({ - message: data.message, - status: "danger", - pos: 'top-right', - timeout: 5000 - }); - } - if(scannedItems.length > queueLimit){ - scannedItems.shift() - } - if(!Array.isArray(scannedItem) && !data.error){ - let status = await submitScanTransaction(scannedItem) - scannedItems.push({'item': scannedItem, 'type': `${document.getElementById('scan_trans_type').value}`, 'error': status}) - document.getElementById('barcode-scan').value = "" - } - } - await replenishScanTable() -} async function getItemBarcode(barcode) { console.log(`selected item: ${barcode}`) - const url = new URL('/external/getItem/barcode', window.location.origin); + const url = new URL('/poe/getItem/barcode', window.location.origin); url.searchParams.append('barcode', barcode); const response = await fetch(url); data = await response.json(); return data; } -async function submitScanTransaction(scannedItem) { - /// I need to find the location that matches the items auto issue location id - - let trans_type = document.getElementById('scan_trans_type').value - let scan_transaction_item_location_id = 0 - let comparator = 0 - - if (trans_type === "Adjust In"){ - comparator = scannedItem.logistics_info.primary_location.id - } else if (trans_type === "Adjust Out"){ - comparator = scannedItem.logistics_info.auto_issue_location.id - } - - for (let i = 0; i < scannedItem.item_locations.length; i++){ - if (scannedItem.item_locations[i].location_id === comparator){ - scan_transaction_item_location_id = scannedItem.item_locations[i].id - } - } - - const response = await fetch(`/external/postTransaction`, { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - item_id: scannedItem.id, - logistics_info_id: scannedItem.logistics_info_id, - barcode: scannedItem.barcode, - item_name: scannedItem.item_name, - transaction_type: document.getElementById('scan_trans_type').value, - quantity: scannedItem.item_info.uom_quantity, - description: "", - cost: parseFloat(scannedItem.item_info.cost), - vendor: 0, - expires: null, - location_id: scan_transaction_item_location_id - }), - }); - data = await response.json(); - transaction_status = "success" - if (data.error){ - transaction_status = "danger" - } - - UIkit.notification({ - message: data.message, - status: transaction_status, - pos: 'top-right', - timeout: 5000 - }); - - return data.error - -} - -async function replenishScanTable() { - let scanTableBody = document.getElementById("scanTableBody") - scanTableBody.innerHTML = "" - - let reversedScannedItems = scannedItems.slice().reverse() - - for(let i = 0; i < reversedScannedItems.length; i++){ - let tableRow = document.createElement('tr') - - let icon = `` - if(reversedScannedItems[i].error){ - icon = `` - } - - let statusCell = document.createElement('td') - statusCell.innerHTML = icon - let barcodeCell = document.createElement('td') - barcodeCell.innerHTML = reversedScannedItems[i].item.barcode - let nameCell = document.createElement('td') - nameCell.innerHTML = reversedScannedItems[i].item.item_name - let typeCell = document.createElement('td') - typeCell.innerHTML = reversedScannedItems[i].type - let locationCell = document.createElement('td') - if (reversedScannedItems[i].type === "Adjust In"){ - locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.primary_location.uuid - } else { - locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.auto_issue_location.uuid - } - - tableRow.append(statusCell, barcodeCell, nameCell, typeCell, locationCell) - scanTableBody.append(tableRow) - } -} - async function submitScanReceipt(items) { - const response = await fetch(`/external/postReceipt`, { + const response = await fetch(`/poe/postReceipt`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -585,7 +94,6 @@ async function completeReceipt() { scanReceiptTableBody.innerHTML = "" scannedReceiptItems = Array() - } async function closeReceipt(){ @@ -611,7 +119,6 @@ async function addToReceipt(event) { let scannedItem = data.item if(scannedItem){ let expires = scannedItem.food_info.expires - console.log(expires) if(scannedItem.food_info.expires){ let today = new Date(); today.setDate(today.getDate() + Number(scannedItem.food_info.default_expiration)) diff --git a/application/poe/templates/receipts.html b/application/poe/templates/receipts.html index 5eed667..f812556 100644 --- a/application/poe/templates/receipts.html +++ b/application/poe/templates/receipts.html @@ -146,6 +146,53 @@ + +
    +
    +

    Edit Line...

    +

    Edit any fields here for the selected Line and then save them.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    QTY
    QTY
    UOM + +
    COST
    EXPIRES
    +

    + + +

    +
    +
    {% assets "js_all" %} diff --git a/database.log b/database.log index fca24ac..edaa2c5 100644 --- a/database.log +++ b/database.log @@ -1937,4 +1937,10 @@ sql='UPDATE test_itemlinks SET conv_factor = %s WHERE id=%s RETURNING *;') 2025-07-02 18:04:47.600077 --- ERROR --- DatabaseError(message='not all arguments converted during string formatting', payload=(1, 2), - sql='SELECT * FROM main_locations WHERE id=%s;') \ No newline at end of file + sql='SELECT * FROM main_locations WHERE id=%s;') +2025-07-02 18:32:23.140191 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: ""LINE 3: ...041789001314%', 'Chicken Ramen Noodle Soup', '2', '', '{"cos... ^', + payload=('sku', 19, '%041789001314%', 'Chicken Ramen Noodle Soup', '2', '', '{"cost": "1.99", "expires": false}', 'Unresolved'), + sql='INSERT INTO test_receipt_items(type, receipt_id, barcode, name, qty, uom, data, status) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') +2025-07-04 08:19:34.889657 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: "{"cost": 1.99, "expires": false}"LINE 3: ...41789001314%', 'Chicken Ramen Noodle Soup', 1, 5, '{"cost": ... ^', + payload=('sku', 23, '%041789001314%', 'Chicken Ramen Noodle Soup', 1, 5, '{"cost": 1.99, "expires": false}', 'Unresolved'), + sql='INSERT INTO test_recipe_items(uuid, rp_id, item_type, item_name, uom, qty, item_id, links) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') \ No newline at end of file From 1018414200b49bc069578a4eae1b057e19fa4312 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Fri, 4 Jul 2025 12:38:25 -0500 Subject: [PATCH 19/38] Finished basic migration for POE module --- application/items/items_API.py | 23 ++---- application/poe/poe_api.py | 83 +++++-------------- application/poe/poe_database.py | 90 +++++++++++++++++++++ application/poe/poe_processes.py | 28 +++---- application/poe/sql/getItemAllByBarcode.sql | 75 +++++++++++++++++ application/poe/sql/getItemAllByID.sql | 86 ++++++++++++++++++++ application/poe/templates/receipts.html | 5 +- application/poe/templates/scanner.html | 7 +- application/postsqldb.py | 17 ++++ 9 files changed, 310 insertions(+), 104 deletions(-) create mode 100644 application/poe/sql/getItemAllByBarcode.sql create mode 100644 application/poe/sql/getItemAllByID.sql diff --git a/application/items/items_API.py b/application/items/items_API.py index 517f79c..d6af383 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -4,19 +4,10 @@ from flask import ( ) import psycopg2 import math -import json -import datetime -import copy -import requests -import pprint + # applications imports -from config import config, sites_config -from main import unfoldCostLayers -import process -import database -import main -import MyDataclasses +from config import config from user_api import login_required import application.postsqldb as db from application.items import database_items @@ -36,7 +27,7 @@ def update_session_user(): @login_required def items(): update_session_user() - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in db.get_sites(session['user']['sites'])] return render_template("index.html", current_site=session['selected_site'], sites=sites) @@ -44,7 +35,7 @@ def items(): @items_api.route("/") @login_required def item(id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in db.get_sites(session['user']['sites'])] database_config = config() with psycopg2.connect(**database_config) as conn: units = db.UnitsTable.getAll(conn) @@ -53,7 +44,7 @@ def item(id): @items_api.route("/transaction") @login_required def transaction(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in db.get_sites(session['user']['sites'])] database_config = config() with psycopg2.connect(**database_config) as conn: units = db.UnitsTable.getAll(conn) @@ -74,13 +65,13 @@ def transactions(id): 200: description: Returns the transactions.html webpage for the item with passed ID """ - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in db.get_sites(session['user']['sites'])] return render_template("transactions.html", id=id, current_site=session['selected_site'], sites=sites) @items_api.route("//itemLink/") @login_required def itemLink(parent_id, id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in db.get_sites(session['user']['sites'])] return render_template("itemlink.html", current_site=session['selected_site'], sites=sites, proto={'referrer': request.referrer}, id=id) @items_api.route("/getTransactions", methods=["GET"]) diff --git a/application/poe/poe_api.py b/application/poe/poe_api.py index c1a49f2..5447570 100644 --- a/application/poe/poe_api.py +++ b/application/poe/poe_api.py @@ -1,103 +1,55 @@ -from flask import Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response -import psycopg2, math, json, datetime, main, copy, requests, process, database, pprint, MyDataclasses -from config import config, sites_config -from main import unfoldCostLayers -from threading import Thread -from queue import Queue -import time, process +# 3rd Party imports +from flask import ( + Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response + ) +import psycopg2 + +# applications imports +from config import config from user_api import login_required -import webpush -from application.poe import poe_processes +from application.poe import poe_processes, poe_database from application import postsqldb + point_of_ease = Blueprint('poe', __name__, template_folder="templates", static_folder="static") @point_of_ease.route('/scanner', methods=["GET"]) +@login_required def scannerEndpoint(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in postsqldb.get_sites(session['user']['sites'])] return render_template('scanner.html', current_site=session['selected_site'], sites=sites) @point_of_ease.route('/receipts', methods=["GET"]) +@login_required def receiptsEndpoint(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in postsqldb.get_sites(session['user']['sites'])] database_config = config() with psycopg2.connect(**database_config) as conn: units = postsqldb.UnitsTable.getAll(conn) - #units = db.UnitsTable.getAll(conn) return render_template('receipts.html', current_site=session['selected_site'], sites=sites, units=units) -# DONT NEED -@point_of_ease.route('/getItemLocations', methods=["GET"]) -def getItemLocations(): - recordset = [] - count = 0 - if request.method == "GET": - item_id = int(request.args.get('id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - recordset, count = database.getItemLocations(conn, site_name, (item_id, limit, offset), convert=True) - return jsonify({"locations":recordset, "end":math.ceil(count/limit), "error":False, "message":"item fetched succesfully!"}) - return jsonify({"locations":recordset, "end": math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) - - -# in item api, DONT NEED -@point_of_ease.route('/getItem', methods=["GET"]) -def getItem(): - record = {} - if request.method == "GET": - item_id = int(request.args.get('id', 1)) - site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - record = database.getItemAllByID(conn, site_name, (item_id, ), convert=True) - return jsonify({"item":record, "error":False, "message":"item fetched succesfully!"}) - return jsonify({"item":record, "error":True, "message":"There was an error with this GET statement"}) - @point_of_ease.route('/getItem/barcode', methods=["GET"]) +@login_required def getItemBarcode(): record = {} if request.method == "GET": item_barcode = f"%{str(request.args.get('barcode', 1))}%" site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - record = database.getItemAllByBarcode(conn, site_name, (item_barcode, ), convert=True) + record = poe_database.selectItemAllByBarcode(site_name, (item_barcode,)) if record == {}: return jsonify({"item":None, "error":True, "message":"Item either does not exist or there was a larger problem!"}) else: return jsonify({"item":record, "error":False, "message":"item fetched succesfully!"}) return jsonify({"item":record, "error":True, "message":"There was an error with this GET statement"}) -# in items api DONT NEED -@point_of_ease.route('/getModalItems', methods=["GET"]) -@login_required -def getModalItems(): - recordset = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - search_string = request.args.get('search_string', '') - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = (search_string, limit, offset) - recordset, count = database.getItemsForModal(conn, site_name, payload, convert=True) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":False, "message":"items fetched succesfully!"}) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":True, "message":"There was an error with this GET statement"}) @point_of_ease.route('/postTransaction', methods=["POST"]) +@login_required def post_transaction(): if request.method == "POST": - print('test two') result = poe_processes.postTransaction( site_name=session['selected_site'], user_id=session['user_id'], @@ -108,6 +60,7 @@ def post_transaction(): @point_of_ease.route('/postReceipt', methods=["POST"]) +@login_required def post_receipt(): if request.method == "POST": site_name = session['selected_site'] diff --git a/application/poe/poe_database.py b/application/poe/poe_database.py index 3d690b2..d7440b2 100644 --- a/application/poe/poe_database.py +++ b/application/poe/poe_database.py @@ -155,6 +155,96 @@ def selectItemLocationsTuple(site_name, payload, convert=True, conn=None): except Exception as error: return error + +def selectLinkedItemByBarcode(site, payload, convert=True, conn=None): + item = () + self_conn = False + sql = f"SELECT * FROM {site}_itemlinks WHERE barcode=%s;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + item = postsqldb.tupleDictionaryFactory(cur.description, rows) + if rows and not convert: + item = rows + + if self_conn: + conn.commit() + conn.close() + + return item + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def selectItemAllByID(site, payload, convert=True, conn=None): + item = () + self_conn = False + + with open(f"application/poe/sql/getItemAllByID.sql", "r+") as file: + getItemAllByID_sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(getItemAllByID_sql, payload) + rows = cur.fetchone() + if rows and convert: + item = postsqldb.tupleDictionaryFactory(cur.description, rows) + if rows and not convert: + item = rows + + if self_conn: + conn.commit() + conn.close() + + return item + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, getItemAllByID_sql) + +def selectItemAllByBarcode(site, payload, convert=True, conn=None): + item = () + self_conn = False + linked_item = selectLinkedItemByBarcode(site, (payload[0],)) + + if len(linked_item) > 1: + item = selectItemAllByID(site, payload=(linked_item['link'], ), convert=convert) + item['item_info']['uom_quantity'] = linked_item['conv_factor'] + else: + with open(f"application/poe/sql/getItemAllByBarcode.sql", "r+") as file: + getItemAllByBarcode_sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(getItemAllByBarcode_sql, payload) + rows = cur.fetchone() + if rows and convert: + item = postsqldb.tupleDictionaryFactory(cur.description, rows) + if rows and not convert: + item = rows + + if self_conn: + conn.commit() + conn.close() + + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, getItemAllByBarcode_sql) + return item def insertCostLayersTuple(site, payload, convert=True, conn=None): cost_layer = () diff --git a/application/poe/poe_processes.py b/application/poe/poe_processes.py index 1d0a9e0..a8510f0 100644 --- a/application/poe/poe_processes.py +++ b/application/poe/poe_processes.py @@ -1,12 +1,18 @@ -from application import postsqldb, database_payloads -from application.poe import poe_database - +# 3rd Party imports import datetime import psycopg2 +# applications imports +from application import postsqldb, database_payloads +from application.poe import poe_database import config +""" This module will hold all the multilayerd/complex process used in the +point of ease module. """ + + def postTransaction(site_name, user_id, data: dict, conn=None): + '''Takes a set of data as a dictionary and inserts them into the system for passed site_name. ''' #dict_keys(['item_id', 'logistics_info_id', 'barcode', 'item_name', 'transaction_type', # 'quantity', 'description', 'cost', 'vendor', 'expires', 'location_id']) def quantityFactory(quantity_on_hand:float, quantity:float, transaction_type:str): @@ -47,18 +53,15 @@ def postTransaction(site_name, user_id, data: dict, conn=None): user_id=user_id, ) - #location = database.selectItemLocationsTuple(conn, site_name, payload=(data['item_id'], data['location_id']), convert=True) location = poe_database.selectItemLocationsTuple(site_name, payload=(data['item_id'], data['location_id']), conn=conn) cost_layers: list = location['cost_layers'] if data['transaction_type'] == "Adjust In": cost_layer = poe_database.insertCostLayersTuple(site_name, cost_layer.payload(), conn=conn) - #cost_layer = database.insertCostLayersTuple(conn, site_name, cost_layer.payload(), convert=True) cost_layers.append(cost_layer['id']) if data['transaction_type'] == "Adjust Out": if float(location['quantity_on_hand']) < float(data['quantity']): return {"error":True, "message":f"The quantity on hand in the chosen location is not enough to satisfy your transaction!"} - #cost_layers = database.selectCostLayersTuple(conn, site_name, (location['id'], ), convert=True) cost_layers = poe_database.selectCostLayersTuple(site_name, payload=(location['id'], )) new_cost_layers = [] @@ -73,12 +76,10 @@ def postTransaction(site_name, user_id, data: dict, conn=None): layer['quantity'] -= qty new_cost_layers.append(layer['id']) poe_database.updateCostLayersTuple(site_name, {'id': layer['id'], 'update': {'quantity': layer['quantity']}}, conn=conn) - #database.__updateTuple(conn, site_name, f"{site_name}_cost_layers", {'id': layer['id'], 'update': {'quantity': layer['quantity']}}) qty = 0.0 if layer['quantity'] == 0.0: poe_database.deleteCostLayersTuple(site_name, (layer['id'],), conn=conn) - #database.deleteCostLayersTuple(conn, site_name, (layer['id'], )) cost_layers = new_cost_layers @@ -86,15 +87,12 @@ def postTransaction(site_name, user_id, data: dict, conn=None): updated_item_location_payload = (cost_layers, quantity_on_hand, data['item_id'], data['location_id']) poe_database.updateItemLocation(site_name, updated_item_location_payload, conn=conn) - #database.updateItemLocation(conn, site_name, updated_item_location_payload) site_location = poe_database.selectLocationsTuple(site_name, (location['location_id'], ), conn=conn) - #site_location = database.__selectTuple(conn, site_name, f"{site_name}_locations", (location['location_id'], ), convert=True) transaction.data = {'location': site_location['uuid']} poe_database.insertTransactionsTuple(site_name, transaction.payload(), conn=conn) - #database.insertTransactionsTuple(conn, site_name, transaction.payload()) if self_conn: conn.commit() @@ -103,6 +101,8 @@ def postTransaction(site_name, user_id, data: dict, conn=None): return {"error": False, "message":f"Transaction Successful!"} def post_receipt(site_name, user_id, data: dict, conn=None): + '''Takes a list of items and opens and creates a SIR (SCANNED IN RECEIPT) into the system with the items linked + to said receipt.''' # data = {'items': items} self_conn = False items = data['items'] @@ -118,10 +118,9 @@ def post_receipt(site_name, user_id, data: dict, conn=None): receipt_id=receipt_id, submitted_by=user_id ) - #receipt = database.insertReceiptsTuple(conn, site_name, receipt.payload(), convert=True) receipt = poe_database.insertReceiptsTuple(site_name, receipt.payload(), conn=conn) + for item in items: - receipt_item = database_payloads.ReceiptItemPayload( type=item['type'], receipt_id=receipt['id'], @@ -131,10 +130,7 @@ def post_receipt(site_name, user_id, data: dict, conn=None): uom=item['item']['uom'], data=item['item']['data'] ) - #database.insertReceiptItemsTuple(conn, site_name, receipt_item.payload()) poe_database.insertReceiptItemsTuple(site_name, receipt_item.payload(), conn=conn) - #webpush.push_notifications('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") - #webpush.push_ntfy('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") if self_conn: conn.commit() diff --git a/application/poe/sql/getItemAllByBarcode.sql b/application/poe/sql/getItemAllByBarcode.sql new file mode 100644 index 0000000..b2c4b8d --- /dev/null +++ b/application/poe/sql/getItemAllByBarcode.sql @@ -0,0 +1,75 @@ +WITH passed_id AS (SELECT id AS passed_id FROM %%site_name%%_items WHERE barcode=%s), + logistics_id AS (SELECT logistics_info_id FROM %%site_name%%_items WHERE id=(SELECT passed_id FROM passed_id)), + info_id AS (SELECT item_info_id FROM %%site_name%%_items WHERE id=(SELECT passed_id FROM passed_id)), + cte_item_info AS ( + SELECT + %%site_name%%_item_info.*, + row_to_json(units.*) as uom + FROM %%site_name%%_item_info + LEFT JOIN units ON %%site_name%%_item_info.uom = units.id + WHERE %%site_name%%_item_info.id = (SELECT item_info_id FROM info_id) + ), + cte_groups AS ( + SELECT + %%site_name%%_groups.*, + %%site_name%%_group_items.uuid, + %%site_name%%_group_items.item_type, + %%site_name%%_group_items.qty + FROM %%site_name%%_groups + JOIN %%site_name%%_group_items ON %%site_name%%_groups.id = %%site_name%%_group_items.gr_id + WHERE %%site_name%%_group_items.item_id = (SELECT passed_id FROM passed_id) + ), + cte_shopping_lists AS ( + SELECT + %%site_name%%_shopping_lists.*, + %%site_name%%_shopping_list_items.uuid, + %%site_name%%_shopping_list_items.item_type, + %%site_name%%_shopping_list_items.qty + FROM %%site_name%%_shopping_lists + JOIN %%site_name%%_shopping_list_items ON %%site_name%%_shopping_lists.id = %%site_name%%_shopping_list_items.sl_id + WHERE %%site_name%%_shopping_list_items.item_id = (SELECT passed_id FROM passed_id) + ), + cte_itemlinks AS ( + SELECT * FROM %%site_name%%_itemlinks WHERE link=(SELECT passed_id FROM passed_id) + ), + cte_item_locations AS ( + SELECT * FROM %%site_name%%_item_locations + LEFT JOIN %%site_name%%_locations ON %%site_name%%_locations.id = %%site_name%%_item_locations.location_id + WHERE part_id = (SELECT passed_id FROM passed_id) + ), + cte_logistics_info AS ( + SELECT + li.*, + row_to_json(pl) AS primary_location, + row_to_json(ail) AS auto_issue_location, + row_to_json(pz) AS primary_zone, + row_to_json(aiz) AS auto_issue_zone + FROM %%site_name%%_logistics_info AS li + LEFT JOIN %%site_name%%_locations AS pl ON li.primary_location = pl.id + LEFT JOIN %%site_name%%_locations AS ail ON li.auto_issue_location = ail.id + LEFT JOIN %%site_name%%_zones AS pz ON li.primary_zone = pz.id + LEFT JOIN %%site_name%%_zones AS aiz ON li.auto_issue_zone = aiz.id + WHERE li.id=(SELECT logistics_info_id FROM logistics_id) + ) + +SELECT + (SELECT passed_id FROM passed_id) AS passed_id, + %%site_name%%_items.*, + (SELECT COALESCE(row_to_json(logis), '{}') FROM cte_logistics_info logis) AS logistics_info, + row_to_json(%%site_name%%_food_info.*) as food_info, + row_to_json(%%site_name%%_brands.*) as brand, + (SELECT COALESCE(row_to_json(ii), '{}') FROM cte_item_info ii) AS item_info, + (SELECT COALESCE(array_agg(row_to_json(g)), '{}') FROM cte_groups g) AS item_groups, + (SELECT COALESCE(array_agg(row_to_json(sl)), '{}') FROM cte_shopping_lists sl) AS item_shopping_lists, + (SELECT COALESCE(array_agg(row_to_json(il)), '{}') FROM cte_itemlinks il) AS linked_items, + (SELECT COALESCE(array_agg(row_to_json(ils)), '{}') FROM cte_item_locations ils) AS item_locations +FROM %%site_name%%_items + LEFT JOIN %%site_name%%_item_info ON %%site_name%%_items.item_info_id = %%site_name%%_item_info.id + LEFT JOIN %%site_name%%_food_info ON %%site_name%%_items.food_info_id = %%site_name%%_food_info.id + LEFT JOIN %%site_name%%_brands ON %%site_name%%_items.brand = %%site_name%%_brands.id + LEFT JOIN units ON %%site_name%%_item_info.uom = units.id + LEFT JOIN cte_groups ON %%site_name%%_items.id = cte_groups.id + LEFT JOIN cte_shopping_lists ON %%site_name%%_items.id = cte_shopping_lists.id +WHERE %%site_name%%_items.id=(SELECT passed_id FROM passed_id) +GROUP BY + %%site_name%%_items.id, %%site_name%%_item_info.id, %%site_name%%_food_info.id, %%site_name%%_brands.id; \ No newline at end of file diff --git a/application/poe/sql/getItemAllByID.sql b/application/poe/sql/getItemAllByID.sql new file mode 100644 index 0000000..8b5ca81 --- /dev/null +++ b/application/poe/sql/getItemAllByID.sql @@ -0,0 +1,86 @@ +WITH passed_id AS (SELECT %s AS passed_id), + logistics_id AS (SELECT logistics_info_id FROM %%site_name%%_items WHERE id=(SELECT passed_id FROM passed_id)), + info_id AS (SELECT item_info_id FROM %%site_name%%_items WHERE id=(SELECT passed_id FROM passed_id)), + cte_conversions AS ( + SELECT + %%site_name%%_conversions.id as conv_id, + %%site_name%%_conversions.conv_factor as conv_factor, + units.* as uom + FROM %%site_name%%_conversions + LEFT JOIN units ON %%site_name%%_conversions.uom_id = units.id + WHERE %%site_name%%_conversions.item_id = (SELECT passed_id FROM passed_id) + ), + cte_item_info AS ( + SELECT + %%site_name%%_item_info.*, + row_to_json(units.*) as uom, + COALESCE((SELECT json_agg(convs) FROM cte_conversions convs), '[]'::json) AS conversions, + COALESCE((SELECT json_agg(p.*) FROM %%site_name%%_sku_prefix as p WHERE p.id = ANY(%%site_name%%_item_info.prefixes)), '[]'::json) as prefixes + FROM %%site_name%%_item_info + LEFT JOIN units ON %%site_name%%_item_info.uom = units.id + WHERE %%site_name%%_item_info.id = (SELECT item_info_id FROM info_id) + ), + cte_groups AS ( + SELECT + %%site_name%%_groups.*, + %%site_name%%_group_items.uuid, + %%site_name%%_group_items.item_type, + %%site_name%%_group_items.qty + FROM %%site_name%%_groups + JOIN %%site_name%%_group_items ON %%site_name%%_groups.id = %%site_name%%_group_items.gr_id + WHERE %%site_name%%_group_items.item_id = (SELECT passed_id FROM passed_id) + ), + cte_shopping_lists AS ( + SELECT + %%site_name%%_shopping_lists.*, + %%site_name%%_shopping_list_items.uuid, + %%site_name%%_shopping_list_items.item_type, + %%site_name%%_shopping_list_items.qty + FROM %%site_name%%_shopping_lists + JOIN %%site_name%%_shopping_list_items ON %%site_name%%_shopping_lists.id = %%site_name%%_shopping_list_items.sl_id + WHERE %%site_name%%_shopping_list_items.item_id = (SELECT passed_id FROM passed_id) + ), + cte_itemlinks AS ( + SELECT * FROM %%site_name%%_itemlinks WHERE link=(SELECT passed_id FROM passed_id) + ), + cte_item_locations AS ( + SELECT * FROM %%site_name%%_item_locations + LEFT JOIN %%site_name%%_locations ON %%site_name%%_locations.id = %%site_name%%_item_locations.location_id + WHERE part_id = (SELECT passed_id FROM passed_id) + ), + cte_logistics_info AS ( + SELECT + li.*, + row_to_json(pl) AS primary_location, + row_to_json(ail) AS auto_issue_location, + row_to_json(pz) AS primary_zone, + row_to_json(aiz) AS auto_issue_zone + FROM %%site_name%%_logistics_info AS li + LEFT JOIN %%site_name%%_locations AS pl ON li.primary_location = pl.id + LEFT JOIN %%site_name%%_locations AS ail ON li.auto_issue_location = ail.id + LEFT JOIN %%site_name%%_zones AS pz ON li.primary_zone = pz.id + LEFT JOIN %%site_name%%_zones AS aiz ON li.auto_issue_zone = aiz.id + WHERE li.id=(SELECT logistics_info_id FROM logistics_id) + ) + +SELECT + (SELECT passed_id FROM passed_id) AS passed_id, + %%site_name%%_items.*, + (SELECT COALESCE(row_to_json(logis), '{}') FROM cte_logistics_info logis) AS logistics_info, + row_to_json(%%site_name%%_food_info.*) as food_info, + row_to_json(%%site_name%%_brands.*) as brand, + (SELECT COALESCE(row_to_json(ii), '{}') FROM cte_item_info ii) AS item_info, + (SELECT COALESCE(array_agg(row_to_json(g)), '{}') FROM cte_groups g) AS item_groups, + (SELECT COALESCE(array_agg(row_to_json(sl)), '{}') FROM cte_shopping_lists sl) AS item_shopping_lists, + (SELECT COALESCE(array_agg(row_to_json(il)), '{}') FROM cte_itemlinks il) AS linked_items, + (SELECT COALESCE(array_agg(row_to_json(ils)), '{}') FROM cte_item_locations ils) AS item_locations +FROM %%site_name%%_items + LEFT JOIN %%site_name%%_item_info ON %%site_name%%_items.item_info_id = %%site_name%%_item_info.id + LEFT JOIN %%site_name%%_food_info ON %%site_name%%_items.food_info_id = %%site_name%%_food_info.id + LEFT JOIN %%site_name%%_brands ON %%site_name%%_items.brand = %%site_name%%_brands.id + LEFT JOIN units ON %%site_name%%_item_info.uom = units.id + LEFT JOIN cte_groups ON %%site_name%%_items.id = cte_groups.id + LEFT JOIN cte_shopping_lists ON %%site_name%%_items.id = cte_shopping_lists.id +WHERE %%site_name%%_items.id=(SELECT passed_id FROM passed_id) +GROUP BY + %%site_name%%_items.id, %%site_name%%_item_info.id, %%site_name%%_food_info.id, %%site_name%%_brands.id; \ No newline at end of file diff --git a/application/poe/templates/receipts.html b/application/poe/templates/receipts.html index f812556..7555adc 100644 --- a/application/poe/templates/receipts.html +++ b/application/poe/templates/receipts.html @@ -86,9 +86,8 @@ -
  • Logistics
  • -
  • Items
  • -
  • Add Transaction
  • +
  • Point of Ease
  • +
  • Scan to Receipt
  • diff --git a/application/poe/templates/scanner.html b/application/poe/templates/scanner.html index c948d26..098fb9c 100644 --- a/application/poe/templates/scanner.html +++ b/application/poe/templates/scanner.html @@ -73,7 +73,7 @@
      -
    • {{current_site}} +
    • {{current_site}}
        {% for site in sites %} @@ -86,9 +86,8 @@
    • -
    • Logistics
    • -
    • Items
    • -
    • Add Transaction
    • +
    • Point of Ease
    • +
    • Scan To Transaction
    diff --git a/application/postsqldb.py b/application/postsqldb.py index 64844f8..57e8288 100644 --- a/application/postsqldb.py +++ b/application/postsqldb.py @@ -4,6 +4,7 @@ import psycopg2.extras from dataclasses import dataclass, field import random import string +import config class DatabaseError(Exception): def __init__(self, message, payload=[], sql=""): @@ -44,6 +45,22 @@ def getUUID(n): random_string = ''.join(random.choices(string.ascii_letters + string.digits, k=n)) return random_string +def get_sites(sites=[]): + database_config = config.config() + with psycopg2.connect(**database_config) as conn: + try: + with conn.cursor() as cur: + site_rows = [] + for each in sites: + cur.execute(f"SELECT * FROM sites WHERE id=%s;", (each, )) + site_rows.append(cur.fetchone()) + return site_rows + except (Exception, psycopg2.DatabaseError) as error: + print(error) + conn.rollback() + return False + + class ConversionsTable: @dataclass class Payload: From ce8e63b596ab6486b9da33eac4aab48c0a22cae7 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 12 Jul 2025 08:54:27 -0500 Subject: [PATCH 20/38] Migrating Shoppinglist Module to new schema --- application/poe/poe_database.py | 111 +------------ application/shoppinglists/__init__.py | 0 .../shoppinglists/shoplist_api.py | 81 +++++----- .../shoppinglists/shoplist_database.py | 146 ++++++++++++++++++ .../shoppinglists/shoplist_processess.py | 0 .../shoppinglists/sql/getItemsWithQOH.sql | 18 +++ .../sql/insertShoppingListItemsTuple.sql | 4 + .../sql/selectShoppingListItem.sql | 4 + .../static/js}/shoppingListEditHandler.js | 12 +- .../static/js}/shoppingListViewHandler.js | 0 .../static/js}/shoppingListsHandler.js | 8 +- .../shoppinglists/templates}/edit.html | 2 +- .../shoppinglists/templates/lists.html | 2 +- .../shoppinglists/templates}/view.html | 2 +- database.log | 14 +- webserver.py | 5 +- 16 files changed, 244 insertions(+), 165 deletions(-) create mode 100644 application/shoppinglists/__init__.py rename shopping_list_API.py => application/shoppinglists/shoplist_api.py (74%) create mode 100644 application/shoppinglists/shoplist_database.py create mode 100644 application/shoppinglists/shoplist_processess.py create mode 100644 application/shoppinglists/sql/getItemsWithQOH.sql create mode 100644 application/shoppinglists/sql/insertShoppingListItemsTuple.sql create mode 100644 application/shoppinglists/sql/selectShoppingListItem.sql rename {static/handlers => application/shoppinglists/static/js}/shoppingListEditHandler.js (96%) rename {static/handlers => application/shoppinglists/static/js}/shoppingListViewHandler.js (100%) rename {static/handlers => application/shoppinglists/static/js}/shoppingListsHandler.js (97%) rename {templates/shopping-lists => application/shoppinglists/templates}/edit.html (99%) rename templates/shopping-lists/index.html => application/shoppinglists/templates/lists.html (98%) rename {templates/shopping-lists => application/shoppinglists/templates}/view.html (98%) diff --git a/application/poe/poe_database.py b/application/poe/poe_database.py index d7440b2..fc8df36 100644 --- a/application/poe/poe_database.py +++ b/application/poe/poe_database.py @@ -3,14 +3,6 @@ import config from application import postsqldb def request_receipt_id(conn, site_name): - """gets the next id for receipts_id, currently returns a 8 digit number - - Args: - site (str): site to get the next id for - - Returns: - json: receipt_id, message, error keys - """ next_receipt_id = None sql = f"SELECT receipt_id FROM {site_name}_receipts ORDER BY id DESC LIMIT 1;" try: @@ -34,17 +26,6 @@ def request_receipt_id(conn, site_name): return next_receipt_id def selectItemLocationsTuple(site_name, payload, convert=True): - """select a single tuple from ItemLocations table for site_name - - Args: - conn (_T_connector@connect): - site_name (str): - payload (tuple): [item_id, location_id] - convert (bool): defaults to False, used to determine return of tuple/dict - - Returns: - tuple: the row that was returned from the table - """ item_locations = () database_config = config.config() select_item_location_sql = f"SELECT * FROM {site_name}_item_locations WHERE part_id = %s AND location_id = %s;" @@ -62,17 +43,6 @@ def selectItemLocationsTuple(site_name, payload, convert=True): return error def selectCostLayersTuple(site_name, payload, convert=True): - """select a single or series of cost layers from the database for site_name - - Args: - conn (_T_connector@connect): - site_name (str): - payload (tuple): (item_locations_id, ) - convert (bool): defaults to False, used for determining return as tuple/dict - - Returns: - list: list of tuples/dict from the cost_layers table for site_name - """ cost_layers = () database_config = config.config() select_cost_layers_sql = f"SELECT cl.* FROM {site_name}_item_locations il JOIN {site_name}_cost_layers cl ON cl.id = ANY(il.cost_layers) where il.id=%s;" @@ -118,17 +88,6 @@ def selectLocationsTuple(site, payload, convert=True, conn=None): raise postsqldb.DatabaseError(error, payload, sql) def selectItemLocationsTuple(site_name, payload, convert=True, conn=None): - """select a single tuple from ItemLocations table for site_name - - Args: - conn (_T_connector@connect): - site_name (str): - payload (tuple): [item_id, location_id] - convert (bool): defaults to False, used to determine return of tuple/dict - - Returns: - tuple: the row that was returned from the table - """ item_locations = () self_conn = False select_item_location_sql = f"SELECT * FROM {site_name}_item_locations WHERE part_id = %s AND location_id = %s;" @@ -276,21 +235,7 @@ def insertCostLayersTuple(site, payload, convert=True, conn=None): raise postsqldb.DatabaseError(error, payload, sql) def insertTransactionsTuple(site, payload, convert=True, conn=None): - """insert payload into transactions table for site - - Args: - conn (_T_connector@connect): Postgresql Connector - site (str): - payload (tuple): (timestamp[timestamp], logistics_info_id[int], barcode[str], name[str], - transaction_type[str], quantity[float], description[str], user_id[int], data[jsonb]) - convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. - - Raises: - DatabaseError: - - Returns: - tuple or dict: inserted tuple - """ + # payload (tuple): (timestamp[timestamp], logistics_info_id[int], barcode[str], name[str], transaction = () self_conn = False with open(f"application/poe/sql/insertTransactionsTuple.sql", "r+") as file: @@ -319,20 +264,6 @@ def insertTransactionsTuple(site, payload, convert=True, conn=None): return transaction def insertReceiptsTuple(site, payload, convert=True, conn=None): - """insert payload into receipt table of site - - Args: - conn (_T_connector@connect): Postgresql Connector - site (str): - payload (tuple): - convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. - - Raises: - DatabaseError: - - Returns: - tuple or dict: inserted tuple - """ receipt = () self_conn = False with open(f"application/poe/sql/insertReceiptsTuple.sql", "r+") as file: @@ -362,21 +293,6 @@ def insertReceiptsTuple(site, payload, convert=True, conn=None): raise postsqldb.DatabaseError(error, payload, sql) def insertReceiptItemsTuple(site, payload, convert=True, conn=None): - """insert payload into receipt_items table of site - - Args: - conn (_T_connector@connect): Postgresql Connector - site (str): - payload (tuple): (type[str], receipt_id[int], barcode[str], name[str], - qty[float], data[jsonb], status[str]) - convert (bool, optional): Determines if to return tuple as dictionary. Defaults to False. - - Raises: - DatabaseError: - - Returns: - tuple or dict: inserted tuple - """ receipt_item = () self_conn = False @@ -407,16 +323,6 @@ def insertReceiptItemsTuple(site, payload, convert=True, conn=None): raise postsqldb.DatabaseError(error, payload, sql) def updateCostLayersTuple(site, payload, convert=True, conn=None): - """_summary_ - - Args: - conn (_type_): _description_ - site (_type_): _description_ - payload (_type_): {'id': cost_layer_id, 'update': {column: data...}} - - Returns: - _type_: _description_ - """ cost_layer = () self_conn = False @@ -478,21 +384,6 @@ def updateItemLocation(site, payload, convert=True, conn=None): def deleteCostLayersTuple(site, payload, convert=True, conn=None): - """This is a basic funtion to delete a tuple from a table in site with an id. All - tables in this database has id's associated with them. - - Args: - conn (_T_connector@connect): Postgresql Connector - site_name (str): - payload (tuple): (tuple_id,) - convert (bool, optional): Determines if to return tuple as dictionary. Defaults to True. - - Raises: - DatabaseError: - - Returns: - tuple or dict: deleted tuple - """ deleted = () self_conn = False sql = f"WITH deleted_rows AS (DELETE FROM {site}_cost_layers WHERE id IN ({','.join(['%s'] * len(payload))}) RETURNING *) SELECT * FROM deleted_rows;" diff --git a/application/shoppinglists/__init__.py b/application/shoppinglists/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/shopping_list_API.py b/application/shoppinglists/shoplist_api.py similarity index 74% rename from shopping_list_API.py rename to application/shoppinglists/shoplist_api.py index 5becc3e..e17b92c 100644 --- a/shopping_list_API.py +++ b/application/shoppinglists/shoplist_api.py @@ -4,26 +4,32 @@ from config import config, sites_config from main import unfoldCostLayers from user_api import login_required import postsqldb +from application.shoppinglists import shoplist_database +from application import database_payloads -shopping_list_api = Blueprint('shopping_list_API', __name__) +shopping_list_api = Blueprint('shopping_list_API', __name__, template_folder="templates", static_folder="static") -@shopping_list_api.route("/shopping-lists") + +# ROOT TEMPLATE CALLS +@shopping_list_api.route("/") @login_required def shopping_lists(): sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("shopping-lists/index.html", current_site=session['selected_site'], sites=sites) + return render_template("lists.html", current_site=session['selected_site'], sites=sites) -@shopping_list_api.route("/shopping-list//") +@shopping_list_api.route("//") @login_required def shopping_list(mode, id): sites = [site[1] for site in main.get_sites(session['user']['sites'])] if mode == "view": - return render_template("shopping-lists/view.html", id=id, current_site=session['selected_site'], sites=sites) + return render_template("view.html", id=id, current_site=session['selected_site'], sites=sites) if mode == "edit": - return render_template("shopping-lists/edit.html", id=id, current_site=session['selected_site'], sites=sites) + return render_template("edit.html", id=id, current_site=session['selected_site'], sites=sites) return redirect("/") -@shopping_list_api.route('/shopping-lists/addList', methods=["POST"]) + +# API CALLS +@shopping_list_api.route('/api/addList', methods=["POST"]) def addList(): if request.method == "POST": list_name = request.get_json()['list_name'] @@ -43,7 +49,7 @@ def addList(): return jsonify({'error': False, 'message': 'List added!!'}) return jsonify({'error': True, 'message': 'These was an error with adding the list!'}) -@shopping_list_api.route('/shopping-lists/getLists', methods=["GET"]) +@shopping_list_api.route('/api/getLists', methods=["GET"]) def getShoppingLists(): lists = [] if request.method == "GET": @@ -77,7 +83,7 @@ def getShoppingLists(): return jsonify({'shopping_lists': lists, 'end':math.ceil(count/limit), 'error': False, 'message': 'Lists queried successfully!'}) -@shopping_list_api.route('/shopping-lists/getList', methods=["GET"]) +@shopping_list_api.route('/api/getList', methods=["GET"]) def getShoppingList(): if request.method == "GET": sl_id = int(request.args.get('id', 1)) @@ -87,19 +93,19 @@ def getShoppingList(): lists = database.getShoppingList(conn, site_name, (sl_id, ), convert=True) return jsonify({'shopping_list': lists, 'error': False, 'message': 'Lists queried successfully!'}) -@shopping_list_api.route('/shopping-lists/getListItem', methods=["GET"]) +# Added to Database +@shopping_list_api.route('/api/getListItem', methods=["GET"]) def getShoppingListItem(): list_item = {} if request.method == "GET": sli_id = int(request.args.get('sli_id', 1)) - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - list_item = postsqldb.ShoppingListsTable.getItem(conn, site_name, (sli_id, )) + list_item = shoplist_database.getShoppingListItem(site_name, (sli_id, )) return jsonify({'list_item': list_item, 'error': False, 'message': 'Lists Items queried successfully!'}) return jsonify({'list_item': list_item, 'error': True, 'message': 'List Items queried unsuccessfully!'}) -@shopping_list_api.route('/shopping-lists/getItems', methods=["GET"]) +# Added to database +@shopping_list_api.route('/api/getItems', methods=["GET"]) def getItems(): recordset = [] count = {'count': 0} @@ -108,47 +114,44 @@ def getItems(): limit = int(request.args.get('limit', 10)) search_string = request.args.get('search_string', 10) site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = (search_string, limit, offset) - recordset, count = database.getItemsWithQOH(conn, site_name, payload, convert=True) + offset = (page - 1) * limit + sort_order = "ID ASC" + payload = (search_string, limit, offset, sort_order) + recordset, count = shoplist_database.getItemsWithQOH(site_name, payload, convert=True) return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":False, "message":"items fetched succesfully!"}) return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":True, "message":"There was an error with this GET statement"}) -@shopping_list_api.route('/shopping-lists/postListItem', methods=["POST"]) +# Added to database +@shopping_list_api.route('/api/postListItem', methods=["POST"]) def postListItem(): if request.method == "POST": data = request.get_json()['data'] site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - sl_item = MyDataclasses.ShoppingListItemPayload( - uuid = data['uuid'], - sl_id = data['sl_id'], - item_type=data['item_type'], - item_name=data['item_name'], - uom=data['uom'], - qty=data['qty'], - item_id=data['item_id'], - links=data['links'] - ) - database.insertShoppingListItemsTuple(conn, site_name, sl_item.payload()) + sl_item = database_payloads.ShoppingListItemPayload( + uuid = data['uuid'], + sl_id = data['sl_id'], + item_type=data['item_type'], + item_name=data['item_name'], + uom=data['uom'], + qty=data['qty'], + item_id=data['item_id'], + links=data['links'] + ) + shoplist_database.insertShoppingListItemsTuple(site_name, sl_item.payload()) return jsonify({"error":False, "message":"items fetched succesfully!"}) return jsonify({"error":True, "message":"There was an error with this GET statement"}) -@shopping_list_api.route('/shopping-lists/deleteListItem', methods=["POST"]) +# Added to Database +@shopping_list_api.route('/api/deleteListItem', methods=["POST"]) def deleteListItem(): if request.method == "POST": sli_id = request.get_json()['sli_id'] site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - database.deleteShoppingListItemsTuple(conn, site_name, (sli_id, )) + shoplist_database.deleteShoppingListItemsTuple(site_name, (sli_id, )) return jsonify({"error":False, "message":"item deleted succesfully!"}) return jsonify({"error":True, "message":"There was an error with this POST statement"}) -@shopping_list_api.route('/shopping-lists/saveListItem', methods=["POST"]) +@shopping_list_api.route('/api/saveListItem', methods=["POST"]) def saveListItem(): if request.method == "POST": sli_id = request.get_json()['sli_id'] @@ -160,7 +163,7 @@ def saveListItem(): return jsonify({"error":False, "message":"items fetched succesfully!"}) return jsonify({"error":True, "message":"There was an error with this GET statement"}) -@shopping_list_api.route('/shopping-lists/getSKUItemsFull', methods=["GET"]) +@shopping_list_api.route('/api/getSKUItemsFull', methods=["GET"]) def getSKUItemsFull(): items = [] count = {'count': 0} diff --git a/application/shoppinglists/shoplist_database.py b/application/shoppinglists/shoplist_database.py new file mode 100644 index 0000000..920f030 --- /dev/null +++ b/application/shoppinglists/shoplist_database.py @@ -0,0 +1,146 @@ + +import psycopg2 + +import config +from application import postsqldb + +def getShoppingListItem(site, payload, convert=True, conn=None): + """_summary_ + + Args: + conn (_type_): _description_ + site (_type_): _description_ + payload (_type_): (id, ) + convert (bool, optional): _description_. Defaults to True. + + Raises: + DatabaseError: _description_ + + Returns: + _type_: _description_ + """ + record = () + self_conn = False + with open('application/shoppinglists/sql/selectShoppingListItem.sql', 'r') as file: + sql = file.read().replace("%%site_name%%", site) + try: + + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + record = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + record = rows + + if self_conn: + conn.close() + + return record + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + + +def getItemsWithQOH(site, payload, convert=True, conn=None): + recordset = [] + count = 0 + self_conn = False + + with open(f"application/shoppinglists/sql/getItemsWithQOH.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site).replace("%%sort_order%%", payload[3]) + + payload = list(payload) + payload.pop(3) + try: + + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + if convert: + with conn.cursor(cursor_factory=psycopg2.extras.RealDictCursor) as cur: + cur.execute(sql, payload) + recordset = cur.fetchall() + recordset = [dict(record) for record in recordset] + cur.execute(f"SELECT COUNT(*) FROM {site}_items WHERE search_string LIKE '%%' || %s || '%%';", (payload[0], )) + count = cur.fetchone() + else: + with conn.cursor() as cur: + cur.execute(sql, payload) + recordset = cur.fetchall() + cur.execute(f"SELECT COUNT(*) FROM {site}_items WHERE search_string LIKE '%%' || %s || '%%';", (payload[0], )) + count = cur.fetchone() + + if self_conn: + conn.close() + + return recordset, count + + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def deleteShoppingListItemsTuple(site_name, payload, convert=True, conn=None): + deleted = () + self_conn = False + sql = f"WITH deleted_rows AS (DELETE FROM {site_name}_shopping_list_items WHERE id IN ({','.join(['%s'] * len(payload))}) RETURNING *) SELECT * FROM deleted_rows;" + try: + + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchall() + if rows and convert: + deleted = [postsqldb.tupleDictionaryFactory(cur.description, r) for r in rows] + elif rows and not convert: + deleted = rows + + if self_conn: + conn.commit() + conn.close() + + return deleted + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def insertShoppingListItemsTuple(site, payload, convert=True, conn=None): + shopping_list_item = () + self_conn = False + with open(f"application/shoppinglists/sql/insertShoppingListItemsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + shopping_list_item = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + shopping_list_item = rows + + if self_conn: + conn.commit() + conn.close() + + return shopping_list_item + + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) diff --git a/application/shoppinglists/shoplist_processess.py b/application/shoppinglists/shoplist_processess.py new file mode 100644 index 0000000..e69de29 diff --git a/application/shoppinglists/sql/getItemsWithQOH.sql b/application/shoppinglists/sql/getItemsWithQOH.sql new file mode 100644 index 0000000..e86c053 --- /dev/null +++ b/application/shoppinglists/sql/getItemsWithQOH.sql @@ -0,0 +1,18 @@ +WITH sum_cte AS ( + SELECT mi.id, SUM(mil.quantity_on_hand)::FLOAT8 AS total_sum + FROM %%site_name%%_item_locations mil + JOIN %%site_name%%_items mi ON mil.part_id = mi.id + GROUP BY mi.id + ) + +SELECT %%site_name%%_items.*, + row_to_json(%%site_name%%_item_info.*) as item_info, + sum_cte.total_sum as total_qoh, + (SELECT COALESCE(row_to_json(u), '{}') FROM units as u WHERE u.id=%%site_name%%_item_info.uom) as uom +FROM %%site_name%%_items +LEFT JOIN sum_cte ON %%site_name%%_items.id = sum_cte.id +LEFT JOIN %%site_name%%_item_info ON %%site_name%%_items.item_info_id = %%site_name%%_item_info.id +WHERE %%site_name%%_items.search_string LIKE '%%' || %s || '%%' +ORDER BY %%sort_order%% +LIMIT %s OFFSET %s; + diff --git a/application/shoppinglists/sql/insertShoppingListItemsTuple.sql b/application/shoppinglists/sql/insertShoppingListItemsTuple.sql new file mode 100644 index 0000000..0e45d8c --- /dev/null +++ b/application/shoppinglists/sql/insertShoppingListItemsTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_shopping_list_items +(uuid, sl_id, item_type, item_name, uom, qty, item_id, links) +VALUES (%s, %s, %s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/shoppinglists/sql/selectShoppingListItem.sql b/application/shoppinglists/sql/selectShoppingListItem.sql new file mode 100644 index 0000000..64a029f --- /dev/null +++ b/application/shoppinglists/sql/selectShoppingListItem.sql @@ -0,0 +1,4 @@ +SELECT items.*, + (SELECT COALESCE(row_to_json(un), '{}') FROM units un WHERE un.id = items.uom LIMIT 1) AS uom +FROM %%site_name%%_shopping_list_items items +WHERE items.id = %s; \ No newline at end of file diff --git a/static/handlers/shoppingListEditHandler.js b/application/shoppinglists/static/js/shoppingListEditHandler.js similarity index 96% rename from static/handlers/shoppingListEditHandler.js rename to application/shoppinglists/static/js/shoppingListEditHandler.js index 2f71022..e2b0d65 100644 --- a/static/handlers/shoppingListEditHandler.js +++ b/application/shoppinglists/static/js/shoppingListEditHandler.js @@ -88,7 +88,7 @@ async function replenishLineTable(sl_items){ } async function fetchShoppingList() { - const url = new URL('/shopping-lists/getList', window.location.origin); + const url = new URL('/shopping-lists/api/getList', window.location.origin); url.searchParams.append('id', sl_id); const response = await fetch(url); data = await response.json(); @@ -277,7 +277,7 @@ async function updateItemsPaginationElement() { let items_limit = 25; async function fetchItems() { - const url = new URL('/shopping-lists/getItems', window.location.origin); + const url = new URL('/shopping-lists/api/getItems', window.location.origin); url.searchParams.append('page', pagination_current); url.searchParams.append('limit', items_limit); url.searchParams.append('search_string', search_string); @@ -288,7 +288,7 @@ async function fetchItems() { } async function fetchSLItem(sli_id) { - const url = new URL('/shopping-lists/getListItem', window.location.origin); + const url = new URL('/shopping-lists/api/getListItem', window.location.origin); url.searchParams.append('sli_id', sli_id); const response = await fetch(url); data = await response.json(); @@ -320,7 +320,7 @@ async function addCustomItem() { } async function submitItemToList(newItem) { - const response = await fetch(`/shopping-lists/postListItem`, { + const response = await fetch(`/shopping-lists/api/postListItem`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -345,7 +345,7 @@ async function submitItemToList(newItem) { } async function deleteLineItem(sli_id) { - const response = await fetch(`/shopping-lists/deleteListItem`, { + const response = await fetch(`/shopping-lists/api/deleteListItem`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -374,7 +374,7 @@ async function deleteLineItem(sli_id) { } async function saveLineItem(sli_id, update) { - const response = await fetch(`/shopping-lists/saveListItem`, { + const response = await fetch(`/shopping-lists/api/saveListItem`, { method: 'POST', headers: { 'Content-Type': 'application/json', diff --git a/static/handlers/shoppingListViewHandler.js b/application/shoppinglists/static/js/shoppingListViewHandler.js similarity index 100% rename from static/handlers/shoppingListViewHandler.js rename to application/shoppinglists/static/js/shoppingListViewHandler.js diff --git a/static/handlers/shoppingListsHandler.js b/application/shoppinglists/static/js/shoppingListsHandler.js similarity index 97% rename from static/handlers/shoppingListsHandler.js rename to application/shoppinglists/static/js/shoppingListsHandler.js index a3166bd..a4e4603 100644 --- a/static/handlers/shoppingListsHandler.js +++ b/application/shoppinglists/static/js/shoppingListsHandler.js @@ -58,12 +58,12 @@ async function replenishShoppingListCards(lists) { editOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') editOp.innerHTML = ' Edit' editOp.style = "margin-right: 10px;" - editOp.href = `/shopping-list/edit/${lists[i].id}` + editOp.href = `/shopping-lists/edit/${lists[i].id}` let viewOp = document.createElement('a') viewOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') viewOp.innerHTML = ' View' - viewOp.href = `/shopping-list/view/${lists[i].id}` + viewOp.href = `/shopping-lists/view/${lists[i].id}` //viewOp.style = "margin-right: 20px;" @@ -83,7 +83,7 @@ async function openAddListModal() { var listLimit = 5; async function getShoppingLists(){ console.log(pagination_current) - const url = new URL('/shopping-lists/getLists', window.location.origin); + const url = new URL('/shopping-lists/api/getLists', window.location.origin); url.searchParams.append('page', pagination_current); url.searchParams.append('limit', listLimit); response = await fetch(url) @@ -98,7 +98,7 @@ async function addList() { let list_description = document.getElementById('addListDescription').value let list_type = document.getElementById('list_type').value - const response = await fetch(`/shopping-lists/addList`, { + const response = await fetch(`/shopping-lists/api/addList`, { method: 'POST', headers: { 'Content-Type': 'application/json', diff --git a/templates/shopping-lists/edit.html b/application/shoppinglists/templates/edit.html similarity index 99% rename from templates/shopping-lists/edit.html rename to application/shoppinglists/templates/edit.html index 16333a2..0b40b38 100644 --- a/templates/shopping-lists/edit.html +++ b/application/shoppinglists/templates/edit.html @@ -304,6 +304,6 @@
    - + \ No newline at end of file diff --git a/templates/shopping-lists/index.html b/application/shoppinglists/templates/lists.html similarity index 98% rename from templates/shopping-lists/index.html rename to application/shoppinglists/templates/lists.html index 8b34b82..f7d415c 100644 --- a/templates/shopping-lists/index.html +++ b/application/shoppinglists/templates/lists.html @@ -156,5 +156,5 @@ - + \ No newline at end of file diff --git a/templates/shopping-lists/view.html b/application/shoppinglists/templates/view.html similarity index 98% rename from templates/shopping-lists/view.html rename to application/shoppinglists/templates/view.html index 9023292..9edeb6f 100644 --- a/templates/shopping-lists/view.html +++ b/application/shoppinglists/templates/view.html @@ -116,6 +116,6 @@ - + \ No newline at end of file diff --git a/database.log b/database.log index edaa2c5..b920576 100644 --- a/database.log +++ b/database.log @@ -1943,4 +1943,16 @@ sql='INSERT INTO test_receipt_items(type, receipt_id, barcode, name, qty, uom, data, status) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') 2025-07-04 08:19:34.889657 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: "{"cost": 1.99, "expires": false}"LINE 3: ...41789001314%', 'Chicken Ramen Noodle Soup', 1, 5, '{"cost": ... ^', payload=('sku', 23, '%041789001314%', 'Chicken Ramen Noodle Soup', 1, 5, '{"cost": 1.99, "expires": false}', 'Unresolved'), - sql='INSERT INTO test_recipe_items(uuid, rp_id, item_type, item_name, uom, qty, item_id, links) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') \ No newline at end of file + sql='INSERT INTO test_recipe_items(uuid, rp_id, item_type, item_name, uom, qty, item_id, links) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') +2025-07-12 07:48:13.460875 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: "each"LINE 3: VALUES ('5g89bj2', '5', 'custom', 'test', 'each', 1, NULL, '... ^', + payload=('5g89bj2', '5', 'custom', 'test', 'each', 1, None, '{"main": ""}'), + sql='INSERT INTO test_shopping_list_items(uuid, sl_id, item_type, item_name, uom, qty, item_id, links) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') +2025-07-12 07:57:23.925776 --- ERROR --- DatabaseError(message='syntax error at or near "ASC"LINE 16: ORDER BY ASC ^', + payload=['', 25, 0], + sql='WITH sum_cte AS ( SELECT mi.id, SUM(mil.quantity_on_hand)::FLOAT8 AS total_sum FROM test_item_locations mil JOIN test_items mi ON mil.part_id = mi.id GROUP BY mi.id )SELECT test_items.*, row_to_json(test_item_info.*) as item_info, sum_cte.total_sum as total_qoh, (SELECT COALESCE(row_to_json(u), '{}') FROM units as u WHERE u.id=test_item_info.uom) as uomFROM test_itemsLEFT JOIN sum_cte ON test_items.id = sum_cte.idLEFT JOIN test_item_info ON test_items.item_info_id = test_item_info.idWHERE test_items.search_string LIKE '%%' || %s || '%%'ORDER BY ASCLIMIT %s OFFSET %s;') +2025-07-12 07:58:21.551161 --- ERROR --- DatabaseError(message='syntax error at or near "ASC"LINE 16: ORDER BY ASC ^', + payload=['', 25, 0], + sql='WITH sum_cte AS ( SELECT mi.id, SUM(mil.quantity_on_hand)::FLOAT8 AS total_sum FROM test_item_locations mil JOIN test_items mi ON mil.part_id = mi.id GROUP BY mi.id )SELECT test_items.*, row_to_json(test_item_info.*) as item_info, sum_cte.total_sum as total_qoh, (SELECT COALESCE(row_to_json(u), '{}') FROM units as u WHERE u.id=test_item_info.uom) as uomFROM test_itemsLEFT JOIN sum_cte ON test_items.id = sum_cte.idLEFT JOIN test_item_info ON test_items.item_info_id = test_item_info.idWHERE test_items.search_string LIKE '%%' || %s || '%%' ORDER BY ASC LIMIT %s OFFSET %s;') +2025-07-12 08:43:43.017720 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: " Pinch"LINE 1: ... = 'Acai-Blueberry-Pomegranate', qty = '1', uom = ' Pinch', ... ^', + payload={'id': 12, 'update': {'item_name': 'Acai-Blueberry-Pomegranate', 'qty': '1', 'uom': ' Pinch', 'links': {'main': 'test'}}}, + sql='UPDATE test_shopping_list_items SET item_name = %s, qty = %s, uom = %s, links = %s WHERE id=%s RETURNING *;') \ No newline at end of file diff --git a/webserver.py b/webserver.py index f9347f9..9937fe6 100644 --- a/webserver.py +++ b/webserver.py @@ -1,7 +1,7 @@ import celery.schedules from flask import Flask, render_template, session, request, redirect, jsonify from flask_assets import Environment, Bundle -import api, config, user_api, psycopg2, main, api_admin, receipts_API, shopping_list_API, group_api +import api, config, user_api, psycopg2, main, api_admin, receipts_API, group_api from user_api import login_required, update_session_user from workshop_api import workshop_api import database @@ -10,6 +10,7 @@ from webpush import trigger_push_notifications_for_subscriptions from application.recipes import recipes_api from application.items import items_API from application.poe import poe_api +from application.shoppinglists import shoplist_api from flasgger import Swagger @@ -31,7 +32,7 @@ app.register_blueprint(items_API.items_api, url_prefix='/items') app.register_blueprint(poe_api.point_of_ease, url_prefix='/poe') app.register_blueprint(workshop_api) app.register_blueprint(receipts_API.receipt_api) -app.register_blueprint(shopping_list_API.shopping_list_api) +app.register_blueprint(shoplist_api.shopping_list_api, url_prefix="/shopping-lists") app.register_blueprint(group_api.groups_api) app.register_blueprint(recipes_api.recipes_api, url_prefix='/recipes') From 0cca96bb1380b287eebc9b47e2a76fed1a45b882 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 12 Jul 2025 09:43:02 -0500 Subject: [PATCH 21/38] Finished Basic Migration to new Schema --- application/shoppinglists/shoplist_api.py | 105 +++++---- .../shoppinglists/shoplist_database.py | 206 ++++++++++++++---- .../shoppinglists/sql/getItemsSafetyStock.sql | 11 + .../shoppinglists/sql/getShoppingListByID.sql | 15 ++ .../shoppinglists/sql/getShoppingLists.sql | 3 + .../sql/insertShoppingListsTuple.sql | 4 + .../static/js/shoppingListEditHandler.js | 2 +- .../static/js/shoppingListViewHandler.js | 6 +- database.log | 8 +- 9 files changed, 263 insertions(+), 97 deletions(-) create mode 100644 application/shoppinglists/sql/getItemsSafetyStock.sql create mode 100644 application/shoppinglists/sql/getShoppingListByID.sql create mode 100644 application/shoppinglists/sql/getShoppingLists.sql create mode 100644 application/shoppinglists/sql/insertShoppingListsTuple.sql diff --git a/application/shoppinglists/shoplist_api.py b/application/shoppinglists/shoplist_api.py index e17b92c..fd6a38d 100644 --- a/application/shoppinglists/shoplist_api.py +++ b/application/shoppinglists/shoplist_api.py @@ -29,26 +29,26 @@ def shopping_list(mode, id): # API CALLS +# Added to Database @shopping_list_api.route('/api/addList', methods=["POST"]) def addList(): if request.method == "POST": list_name = request.get_json()['list_name'] list_description = request.get_json()['list_description'] list_type = request.get_json()['list_type'] - database_config = config() site_name = session['selected_site'] user_id = session['user_id'] - with psycopg2.connect(**database_config) as conn: - shopping_list = MyDataclasses.ShoppingListPayload( - name=list_name, - description=list_description, - author=user_id, - type=list_type - ) - database.insertShoppingListsTuple(conn, site_name, shopping_list.payload()) + shopping_list = database_payloads.ShoppingListPayload( + name=list_name, + description=list_description, + author=user_id, + type=list_type + ) + shoplist_database.insertShoppingListsTuple(site_name, shopping_list.payload()) return jsonify({'error': False, 'message': 'List added!!'}) return jsonify({'error': True, 'message': 'These was an error with adding the list!'}) +# Added to Database @shopping_list_api.route('/api/getLists', methods=["GET"]) def getShoppingLists(): lists = [] @@ -56,42 +56,40 @@ def getShoppingLists(): page = int(request.args.get('page', 1)) limit = int(request.args.get('limit', 1)) offset = (page-1)*limit - database_config = config() + site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - lists, count = database.getShoppingLists(conn, site_name, (limit, offset), convert=True) + lists, count = shoplist_database.getShoppingLists(site_name, (limit, offset)) - for list in lists: - - if list['type'] == 'calculated': - items = [] - not_items = database.getItemsSafetyStock(conn, site_name, convert=True) - for item in not_items: - new_item = { - 'id': item['id'], - 'uuid': item['barcode'], - 'sl_id': 0, - 'item_type': 'sku', - 'item_name': item['item_name'], - 'uom': item['uom'], - 'qty': float(float(item['safety_stock']) - float(item['total_sum'])), - 'item_id': item['id'], - 'links': item['links'] - } - items.append(new_item) - list['sl_items'] = items + for list in lists: + + if list['type'] == 'calculated': + items = [] + not_items = shoplist_database.getItemsSafetyStock(site_name) + for item in not_items: + new_item = { + 'id': item['id'], + 'uuid': item['barcode'], + 'sl_id': 0, + 'item_type': 'sku', + 'item_name': item['item_name'], + 'uom': item['uom'], + 'qty': float(float(item['safety_stock']) - float(item['total_sum'])), + 'item_id': item['id'], + 'links': item['links'] + } + items.append(new_item) + list['sl_items'] = items return jsonify({'shopping_lists': lists, 'end':math.ceil(count/limit), 'error': False, 'message': 'Lists queried successfully!'}) +# Added to Database @shopping_list_api.route('/api/getList', methods=["GET"]) def getShoppingList(): if request.method == "GET": sl_id = int(request.args.get('id', 1)) - database_config = config() site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - lists = database.getShoppingList(conn, site_name, (sl_id, ), convert=True) - return jsonify({'shopping_list': lists, 'error': False, 'message': 'Lists queried successfully!'}) + list = shoplist_database.getShoppingList(site_name, (sl_id, )) + return jsonify({'shopping_list': list, 'error': False, 'message': 'Lists queried successfully!'}) # Added to Database @shopping_list_api.route('/api/getListItem', methods=["GET"]) @@ -151,39 +149,38 @@ def deleteListItem(): return jsonify({"error":False, "message":"item deleted succesfully!"}) return jsonify({"error":True, "message":"There was an error with this POST statement"}) +# Added to Database @shopping_list_api.route('/api/saveListItem', methods=["POST"]) def saveListItem(): if request.method == "POST": sli_id = request.get_json()['sli_id'] update = request.get_json()['update'] site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - database.__updateTuple(conn, site_name, f"{site_name}_shopping_list_items", {'id': sli_id, 'update': update}) + shoplist_database.updateShoppingListItemsTuple(site_name, {'id': sli_id, 'update': update}) return jsonify({"error":False, "message":"items fetched succesfully!"}) return jsonify({"error":True, "message":"There was an error with this GET statement"}) +# Added to Database @shopping_list_api.route('/api/getSKUItemsFull', methods=["GET"]) def getSKUItemsFull(): items = [] count = {'count': 0} if request.method == "GET": site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - not_items = database.getItemsSafetyStock(conn, site_name, convert=True) - for item in not_items: - new_item = { - 'id': item['id'], - 'uuid': item['barcode'], - 'sl_id': 0, - 'item_type': 'sku', - 'item_name': item['item_name'], - 'uom': item['uom'], - 'qty': float(float(item['safety_stock']) - float(item['total_sum'])), - 'item_id': item['id'], - 'links': item['links'] - } - items.append(new_item) + + not_items = shoplist_database.getItemsSafetyStock(site_name) + for item in not_items: + new_item = { + 'id': item['id'], + 'uuid': item['barcode'], + 'sl_id': 0, + 'item_type': 'sku', + 'item_name': item['item_name'], + 'uom': item['uom'], + 'qty': float(float(item['safety_stock']) - float(item['total_sum'])), + 'item_id': item['id'], + 'links': item['links'] + } + items.append(new_item) return jsonify({"list_items":items, "error":False, "message":"items fetched succesfully!"}) return jsonify({"list_items":items, "error":True, "message":"There was an error with this GET statement"}) diff --git a/application/shoppinglists/shoplist_database.py b/application/shoppinglists/shoplist_database.py index 920f030..6f9338f 100644 --- a/application/shoppinglists/shoplist_database.py +++ b/application/shoppinglists/shoplist_database.py @@ -4,48 +4,121 @@ import psycopg2 import config from application import postsqldb +def getShoppingList(site, payload, convert=True, conn=None): + recordset = [] + self_conn = False + + with open(f"application/shoppinglists/sql/getShoppingListByID.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + recordset = postsqldb.tupleDictionaryFactory(cur.description, rows) + if rows and not convert: + recordset = rows + + if self_conn: + conn.close() + + return recordset + + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def getShoppingLists(site, payload, convert=True, conn=None): + recordset = [] + count = 0 + self_conn = False + with open(f"application/shoppinglists/sql/getShoppingLists.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchall() + if rows and convert: + recordset = [postsqldb.tupleDictionaryFactory(cur.description, row) for row in rows] + if rows and not convert: + recordset = rows + + cur.execute(f"SELECT COUNT(*) FROM {site}_shopping_lists;") + count = cur.fetchone()[0] + + if self_conn: + conn.close() + + return recordset, count + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def getItemsSafetyStock(site, convert=True, conn=None): + recordsets = [] + self_conn = False + with open(f"application/shoppinglists/sql/getItemsSafetyStock.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql) + rows = cur.fetchall() + if rows and convert: + recordsets = [postsqldb.tupleDictionaryFactory(cur.description, row) for row in rows] + if rows and not convert: + recordsets = rows + + if self_conn: + conn.close() + + return recordsets + + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, None, sql) + def getShoppingListItem(site, payload, convert=True, conn=None): - """_summary_ + record = () + self_conn = False + with open('application/shoppinglists/sql/selectShoppingListItem.sql', 'r') as file: + sql = file.read().replace("%%site_name%%", site) + try: - Args: - conn (_type_): _description_ - site (_type_): _description_ - payload (_type_): (id, ) - convert (bool, optional): _description_. Defaults to True. + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True - Raises: - DatabaseError: _description_ - - Returns: - _type_: _description_ - """ - record = () - self_conn = False - with open('application/shoppinglists/sql/selectShoppingListItem.sql', 'r') as file: - sql = file.read().replace("%%site_name%%", site) - try: - - if not conn: - database_config = config.config() - conn = psycopg2.connect(**database_config) - conn.autocommit = True - self_conn = True - - with conn.cursor() as cur: - cur.execute(sql, payload) - rows = cur.fetchone() - if rows and convert: - record = postsqldb.tupleDictionaryFactory(cur.description, rows) - elif rows and not convert: - record = rows - - if self_conn: - conn.close() - - return record - except Exception as error: - raise postsqldb.DatabaseError(error, payload, sql) + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + record = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + record = rows + + if self_conn: + conn.close() + return record + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) def getItemsWithQOH(site, payload, convert=True, conn=None): recordset = [] @@ -115,6 +188,34 @@ def deleteShoppingListItemsTuple(site_name, payload, convert=True, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def insertShoppingListsTuple(site, payload, convert=True, conn=None): + shopping_list = () + self_conn = False + with open(f"application/shoppinglists/sql/insertShoppingListsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + shopping_list = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + shopping_list = rows + + if self_conn: + conn.commit() + conn.close() + + return shopping_list + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + def insertShoppingListItemsTuple(site, payload, convert=True, conn=None): shopping_list_item = () self_conn = False @@ -144,3 +245,32 @@ def insertShoppingListItemsTuple(site, payload, convert=True, conn=None): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) + +def updateShoppingListItemsTuple(site, payload, convert=True, conn=None): + updated = () + self_conn = False + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {site}_shopping_list_items SET {set_clause} WHERE id=%s RETURNING *;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + updated = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + updated = rows + + if self_conn: + conn.commit() + conn.close() + + return updated + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) \ No newline at end of file diff --git a/application/shoppinglists/sql/getItemsSafetyStock.sql b/application/shoppinglists/sql/getItemsSafetyStock.sql new file mode 100644 index 0000000..de6a42f --- /dev/null +++ b/application/shoppinglists/sql/getItemsSafetyStock.sql @@ -0,0 +1,11 @@ +WITH sum_cte AS ( + SELECT mi.id, SUM(mil.quantity_on_hand) AS total_sum + FROM %%site_name%%_item_locations mil + JOIN %%site_name%%_items mi ON mil.part_id = mi.id + GROUP BY mi.id +) +SELECT * +FROM %%site_name%%_items +LEFT JOIN %%site_name%%_item_info ON %%site_name%%_items.item_info_id = %%site_name%%_item_info.id +LEFT JOIN sum_cte ON %%site_name%%_items.id = sum_cte.id +WHERE %%site_name%%_item_info.safety_stock > COALESCE(sum_cte.total_sum, 0); diff --git a/application/shoppinglists/sql/getShoppingListByID.sql b/application/shoppinglists/sql/getShoppingListByID.sql new file mode 100644 index 0000000..de06f2e --- /dev/null +++ b/application/shoppinglists/sql/getShoppingListByID.sql @@ -0,0 +1,15 @@ +WITH passed_id AS (SELECT %s AS passed_id), + cte_sl_items AS ( + SELECT items.*, + (SELECT COALESCE(row_to_json(un), '{}') FROM units un WHERE un.id = items.uom LIMIT 1) AS uom + FROM %%site_name%%_shopping_list_items items + WHERE items.sl_id = (SELECT passed_id FROM passed_id) + ) + +SELECT (SELECT passed_id FROM passed_id) AS passed_id, + %%site_name%%_shopping_lists.*, + logins.username as author, + (SELECT COALESCE(array_agg(row_to_json(slis)), '{}') FROM cte_sl_items slis) AS sl_items +FROM %%site_name%%_shopping_lists +JOIN logins ON %%site_name%%_shopping_lists.author = logins.id +WHERE %%site_name%%_shopping_lists.id=(SELECT passed_id FROM passed_id) \ No newline at end of file diff --git a/application/shoppinglists/sql/getShoppingLists.sql b/application/shoppinglists/sql/getShoppingLists.sql new file mode 100644 index 0000000..acccf96 --- /dev/null +++ b/application/shoppinglists/sql/getShoppingLists.sql @@ -0,0 +1,3 @@ +SELECT *, + (SELECT COALESCE(array_agg(row_to_json(g)), '{}') FROM %%site_name%%_shopping_list_items g WHERE sl_id = %%site_name%%_shopping_lists.id) AS sl_items + FROM %%site_name%%_shopping_lists LIMIT %s OFFSET %s; \ No newline at end of file diff --git a/application/shoppinglists/sql/insertShoppingListsTuple.sql b/application/shoppinglists/sql/insertShoppingListsTuple.sql new file mode 100644 index 0000000..6816ef5 --- /dev/null +++ b/application/shoppinglists/sql/insertShoppingListsTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_shopping_lists +(name, description, author, creation_date, type) +VALUES (%s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/shoppinglists/static/js/shoppingListEditHandler.js b/application/shoppinglists/static/js/shoppingListEditHandler.js index e2b0d65..b390ab8 100644 --- a/application/shoppinglists/static/js/shoppingListEditHandler.js +++ b/application/shoppinglists/static/js/shoppingListEditHandler.js @@ -158,7 +158,7 @@ async function openLineEditModal(sli_id) { console.log(sl_item) document.getElementById('lineName').value = sl_item.item_name document.getElementById('lineQty').value = sl_item.qty - document.getElementById('lineUOM').value = sl_item.uom.fullname + document.getElementById('lineUOM').value = sl_item.uom.id console.log(sl_item.links) if(!sl_item.links.hasOwnProperty('main')){ diff --git a/application/shoppinglists/static/js/shoppingListViewHandler.js b/application/shoppinglists/static/js/shoppingListViewHandler.js index 1b4cf8d..b2cf155 100644 --- a/application/shoppinglists/static/js/shoppingListViewHandler.js +++ b/application/shoppinglists/static/js/shoppingListViewHandler.js @@ -60,7 +60,7 @@ async function replenishLineTable(sl_items){ } async function fetchShoppingList() { - const url = new URL('/shopping-lists/getList', window.location.origin); + const url = new URL('/shopping-lists/api/getList', window.location.origin); url.searchParams.append('id', sl_id); const response = await fetch(url); data = await response.json(); @@ -68,7 +68,7 @@ async function fetchShoppingList() { } async function fetchSLItem(sli_id) { - const url = new URL('/shopping-lists/getListItem', window.location.origin); + const url = new URL('/shopping-lists/api/getListItem', window.location.origin); url.searchParams.append('sli_id', sli_id); const response = await fetch(url); data = await response.json(); @@ -76,7 +76,7 @@ async function fetchSLItem(sli_id) { } async function fetchItemsFullCalculated() { - const url = new URL('/shopping-lists/getSKUItemsFull', window.location.origin); + const url = new URL('/shopping-lists/api/getSKUItemsFull', window.location.origin); const response = await fetch(url); data = await response.json(); return data.list_items; diff --git a/database.log b/database.log index b920576..0a169c5 100644 --- a/database.log +++ b/database.log @@ -1955,4 +1955,10 @@ sql='WITH sum_cte AS ( SELECT mi.id, SUM(mil.quantity_on_hand)::FLOAT8 AS total_sum FROM test_item_locations mil JOIN test_items mi ON mil.part_id = mi.id GROUP BY mi.id )SELECT test_items.*, row_to_json(test_item_info.*) as item_info, sum_cte.total_sum as total_qoh, (SELECT COALESCE(row_to_json(u), '{}') FROM units as u WHERE u.id=test_item_info.uom) as uomFROM test_itemsLEFT JOIN sum_cte ON test_items.id = sum_cte.idLEFT JOIN test_item_info ON test_items.item_info_id = test_item_info.idWHERE test_items.search_string LIKE '%%' || %s || '%%' ORDER BY ASC LIMIT %s OFFSET %s;') 2025-07-12 08:43:43.017720 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: " Pinch"LINE 1: ... = 'Acai-Blueberry-Pomegranate', qty = '1', uom = ' Pinch', ... ^', payload={'id': 12, 'update': {'item_name': 'Acai-Blueberry-Pomegranate', 'qty': '1', 'uom': ' Pinch', 'links': {'main': 'test'}}}, - sql='UPDATE test_shopping_list_items SET item_name = %s, qty = %s, uom = %s, links = %s WHERE id=%s RETURNING *;') \ No newline at end of file + sql='UPDATE test_shopping_list_items SET item_name = %s, qty = %s, uom = %s, links = %s WHERE id=%s RETURNING *;') +2025-07-12 09:06:37.431664 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: "each"LINE 3: VALUES ('5vpg73z', '5', 'custom', 'test', 'each', 2, NULL, '... ^', + payload=('5vpg73z', '5', 'custom', 'test', 'each', 2, None, '{"main": "test"}'), + sql='INSERT INTO test_shopping_list_items(uuid, sl_id, item_type, item_name, uom, qty, item_id, links) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') +2025-07-12 09:29:10.063362 --- ERROR --- DatabaseError(message='tuple index out of range', + payload=(5,), + sql='SELECT *, (SELECT COALESCE(array_agg(row_to_json(g)), '{}') FROM test_shopping_list_items g WHERE sl_id = test_shopping_lists.id) AS sl_items FROM test_shopping_lists LIMIT %s OFFSET %s;') \ No newline at end of file From f127680164c662171cb671ff01bdb8d66abf739c Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 12 Jul 2025 09:53:56 -0500 Subject: [PATCH 22/38] Import organization in shopping list module --- application/shoppinglists/shoplist_api.py | 18 ++++++++++-------- application/shoppinglists/shoplist_database.py | 4 +++- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/application/shoppinglists/shoplist_api.py b/application/shoppinglists/shoplist_api.py index fd6a38d..314f831 100644 --- a/application/shoppinglists/shoplist_api.py +++ b/application/shoppinglists/shoplist_api.py @@ -1,11 +1,13 @@ -from flask import Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response -import psycopg2, math, json, datetime, main, copy, requests, process, database, pprint, MyDataclasses -from config import config, sites_config -from main import unfoldCostLayers +# 3rd Party imports +from flask import ( + Blueprint, request, render_template, redirect, session, jsonify + ) +import math + +# applications imports +from application import postsqldb, database_payloads from user_api import login_required -import postsqldb from application.shoppinglists import shoplist_database -from application import database_payloads shopping_list_api = Blueprint('shopping_list_API', __name__, template_folder="templates", static_folder="static") @@ -14,13 +16,13 @@ shopping_list_api = Blueprint('shopping_list_API', __name__, template_folder="te @shopping_list_api.route("/") @login_required def shopping_lists(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in postsqldb.get_sites(session['user']['sites'])] return render_template("lists.html", current_site=session['selected_site'], sites=sites) @shopping_list_api.route("//") @login_required def shopping_list(mode, id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] + sites = [site[1] for site in postsqldb.get_sites(session['user']['sites'])] if mode == "view": return render_template("view.html", id=id, current_site=session['selected_site'], sites=sites) if mode == "edit": diff --git a/application/shoppinglists/shoplist_database.py b/application/shoppinglists/shoplist_database.py index 6f9338f..1258824 100644 --- a/application/shoppinglists/shoplist_database.py +++ b/application/shoppinglists/shoplist_database.py @@ -1,6 +1,8 @@ - +# 3rd Party imports import psycopg2 + +# applications imports import config from application import postsqldb From ee2bdda22647470e3e2064e7d1be53c51083c21f Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sat, 12 Jul 2025 15:49:23 -0500 Subject: [PATCH 23/38] Began Migration of Receipts Module to new Schema --- api.py | 343 +----------------- application/items/database_items.py | 32 ++ application/items/items_API.py | 28 +- application/items/sql/getItemLocations.sql | 5 + .../items/static/transactionHandler.js | 273 +------------- .../items/static/transactionsHandler.js | 2 +- application/poe/poe_database.py | 1 - application/postsqldb.py | 25 ++ application/receipts/__init__.py | 0 .../receipts/receipts_api.py | 121 +++--- application/receipts/receipts_database.py | 100 +++++ application/receipts/receipts_processes.py | 14 + application/receipts/sql/getItemAllByID.sql | 86 +++++ application/receipts/sql/getItemsWithQOH.sql | 18 + .../receipts/sql/insertReceiptItemsTuple.sql | 4 + .../receipts/static/js}/receiptHandler.js | 28 +- .../receipts/static/js}/receiptsHandler.js | 4 +- .../receipts/templates}/receipt.html | 2 +- .../receipts/templates/receipts_index.html | 2 +- application/recipes/recipes_api.py | 2 +- .../{index.html => recipes_index.html} | 0 database.log | 11 +- external_API.py | 120 ------ group_api.py | 34 -- scratch.py | 235 ------------ .../Order_details_-_Walmart.com_07122025.pdf | Bin 0 -> 243881 bytes .../Order_details_-_Walmart.com_07122025.jpg | Bin 0 -> 8755 bytes static/pictures/recipes/image.png | Bin 0 -> 1612918 bytes task_manager.py | 22 -- webserver.py | 8 +- 30 files changed, 406 insertions(+), 1114 deletions(-) create mode 100644 application/items/sql/getItemLocations.sql create mode 100644 application/receipts/__init__.py rename receipts_API.py => application/receipts/receipts_api.py (84%) create mode 100644 application/receipts/receipts_database.py create mode 100644 application/receipts/receipts_processes.py create mode 100644 application/receipts/sql/getItemAllByID.sql create mode 100644 application/receipts/sql/getItemsWithQOH.sql create mode 100644 application/receipts/sql/insertReceiptItemsTuple.sql rename {static/handlers => application/receipts/static/js}/receiptHandler.js (96%) rename {static/handlers => application/receipts/static/js}/receiptsHandler.js (97%) rename {templates/receipts => application/receipts/templates}/receipt.html (99%) rename templates/receipts/index.html => application/receipts/templates/receipts_index.html (98%) rename application/recipes/templates/{index.html => recipes_index.html} (100%) delete mode 100644 external_API.py delete mode 100644 group_api.py delete mode 100644 scratch.py create mode 100644 static/files/receipts/Order_details_-_Walmart.com_07122025.pdf create mode 100644 static/files/receipts/previews/Order_details_-_Walmart.com_07122025.jpg create mode 100644 static/pictures/recipes/image.png delete mode 100644 task_manager.py diff --git a/api.py b/api.py index 7adada4..9267eac 100644 --- a/api.py +++ b/api.py @@ -14,54 +14,6 @@ def changeSite(): session['selected_site'] = site return jsonify({'error': False, 'message': 'Site Changed!'}) - -@database_api.route("/getGroups") -def paginate_groups(): - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - site_name = session['selected_site'] - offset = (page - 1) * limit - - groups = [] - count = 0 - - database_config = config() - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - sql = f"SELECT * FROM {site_name}_groups LIMIT %s OFFSET %s;" - count = f"SELECT COUNT(*) FROM {site_name}_groups" - - cur.execute(sql, (limit, offset)) - groups = cur.fetchall() - cur.execute(count) - count = cur.fetchone()[0] - - - sql_item = f"SELECT {site_name}_items.barcode, {site_name}_items.item_name, {site_name}_logistics_info.quantity_on_hand FROM {site_name}_items LEFT JOIN {site_name}_logistics_info ON {site_name}_items.logistics_info_id = {site_name}_logistics_info.id WHERE {site_name}_items.id = %s; " - new_groups = [] - for group in groups: - qty = 0 - group = list(group) - items = [] - print(group[3]) - for item_id in group[3]: - cur.execute(sql_item, (item_id,)) - item_row = list(cur.fetchone()) - cur.execute(f"SELECT quantity_on_hand FROM {site_name}_item_locations WHERE part_id=%s;", (item_id, )) - item_locations = cur.fetchall()[0] - qty += float(sum(item_locations)) - item_row[2] = sum(item_locations) - items.append(item_row) - group[3] = items - group.append(qty) - new_groups.append(group) - except (Exception, psycopg2.DatabaseError) as error: - print(error) - - return jsonify({'groups': new_groups, "end": math.ceil(count/limit)}) - - @database_api.route("/getVendors") def get_vendors(): database_config = config() @@ -76,297 +28,4 @@ def get_vendors(): except (Exception, psycopg2.DatabaseError) as error: print(error) - return jsonify(vendors=vendors) - - -@database_api.route("/addGroup") -def addGroup(): - name = str(request.args.get('name', "")) - description = str(request.args.get('description', "")) - group_type = str(request.args.get('type', "")) - site_name = session['selected_site'] - state = "FAILED" - - database_config = config() - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - sql = f"INSERT INTO {site_name}_groups (name, description, included_items, group_type) VALUES (%s, %s, %s, %s);" - cur.execute(sql, (name, description, json.dumps({}), group_type)) - state = "SUCCESS" - conn.commit() - except (Exception, psycopg2.DatabaseError) as error: - print(error) - conn.rollback() - - - return jsonify({'state': state}) - -@database_api.route("/getGroup") -def get_group(): - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - - group = [] - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - sql = f"SELECT * FROM {site_name}_groups WHERE id=%s;" - cur.execute(sql, (id, )) - group = list(cur.fetchone()) - - sql_item = f"SELECT {site_name}_items.id, {site_name}_items.barcode, {site_name}_items.item_name, {site_name}_logistics_info.quantity_on_hand FROM {site_name}_items LEFT JOIN {site_name}_logistics_info ON {site_name}_items.logistics_info_id = {site_name}_logistics_info.id WHERE {site_name}_items.id = %s;" - qty = 0 - group = list(group) - items = [] - print(group[3]) - for item_id in group[3]: - cur.execute(sql_item, (item_id,)) - item_row = cur.fetchone() - qty += float(item_row[3]) - items.append(item_row) - group[3] = items - group.append(qty) - except (Exception, psycopg2.DatabaseError) as error: - print(error) - - return jsonify(group=group) - -@database_api.route("/updateGroup", methods=["POST"]) -def update_group(): - if request.method == "POST": - site_name = session['selected_site'] - group_id = request.get_json()['id'] - items = request.get_json()['items'] - name = request.get_json()['name'] - description = request.get_json()['description'] - group_type = request.get_json()['group_type'] - data = (name, description, items, group_type, group_id) - database_config = config() - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - # Start by updating the group -> included items with the up to date list - sql = f"UPDATE {site_name}_groups SET name = %s, description = %s, included_items = %s, group_type = %s WHERE id=%s;" - cur.execute(sql, data) - - update_item_sql = f"UPDATE {site_name}_item_info SET groups = %s WHERE id = %s;" - select_item_sql = f"SELECT {site_name}_item_info.id, {site_name}_item_info.groups FROM {site_name}_items LEFT JOIN {site_name}_item_info ON {site_name}_items.item_info_id = {site_name}_item_info.id WHERE {site_name}_items.id = %s;" - # Now we will fetch each item row one by one and check if the group id is already inside of its groups array - for item_id in items: - cur.execute(select_item_sql, (item_id, )) - item = cur.fetchone() - print(item) - item_groups: set = set(item[1]) - # Condition check, adds it if it doesnt exist. - if group_id not in item_groups: - item_groups.add(group_id) - cur.execute(update_item_sql, (list(item_groups), item[0])) - - # Now we fetch all items that have the group id in its groups array - fetch_items_with_group = f"SELECT {site_name}_items.id, groups, {site_name}_item_info.id FROM {site_name}_item_info LEFT JOIN {site_name}_items ON {site_name}_items.item_info_id = {site_name}_item_info.id WHERE groups @> ARRAY[%s];" - cur.execute(fetch_items_with_group, (group_id, )) - group_items = cur.fetchall() - print(items) - # We will then check each item id against the groups new included_items list to see if the item should be in there - for item_id, group, info_id in group_items: - # If it is not we remove the group form the items list and update the item - if item_id not in items: - groups: list = list(group) - groups.remove(group_id) - cur.execute(update_item_sql, (list(groups), info_id)) - - conn.commit() - except (Exception, psycopg2.DatabaseError) as error: - print(error) - conn.rollback() - - return jsonify({"state": "SUCCESS"}) - return jsonify({"state": "FAILED"}) - -@database_api.route("/addList") -def addList(): - name = str(request.args.get('name', "")) - description = str(request.args.get('description', "")) - list_type = str(request.args.get('type', "")) - site_name = session['selected_site'] - - print(name, description, list_type) - state = "FAILED" - - #if name or description or group_type == "": - # print("this is empty") - # return jsonify({'state': state}) - timestamp = datetime.datetime.now() - data = (name, description, [], json.dumps({}), [], [], 0, timestamp, list_type) - database_config = config() - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - sql = f"INSERT INTO {site_name}_shopping_lists (name, description, pantry_items, custom_items, recipes, groups, author, creation_date, type) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s);" - cur.execute(sql, data) - state = "SUCCESS" - conn.commit() - except (Exception, psycopg2.DatabaseError) as error: - print(error) - conn.rollback() - - - return jsonify({'state': state}) - -@database_api.route("/getLists") -def paginate_lists(): - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - site_name = session['selected_site'] - - offset = (page - 1) * limit - - lists = [] - count = 0 - - database_config = config() - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - sql = f"SELECT * FROM {site_name}_shopping_lists LIMIT %s OFFSET %s;" - count = f"SELECT COUNT(*) FROM {site_name}_shopping_lists;" - - cur.execute(sql, (limit, offset)) - temp_lists = list(cur.fetchall()) - cur.execute(count) - count = cur.fetchone()[0] - - for shopping_list in temp_lists: - shopping_list: list = list(shopping_list) - pantry_items = shopping_list[3] - custom_items = shopping_list[4] - list_length = len(custom_items) - - sqlfile = open(f"sites/{site_name}/sql/unique/shopping_lists_safetystock_count.sql", "r+") - sql = "\n".join(sqlfile.readlines()) - sqlfile.close() - print(sql) - if shopping_list[10] == 'calculated': - print(shopping_list[0]) - cur.execute(sql, (shopping_list[0], )) - list_length += cur.fetchone()[0] - - else: - list_length += len(pantry_items) - - shopping_list.append(list_length) - lists.append(shopping_list) - - except (Exception, psycopg2.DatabaseError) as error: - print(error) - - return jsonify({'lists': lists, 'end': math.ceil(count/limit)}) - -@database_api.route("/getListView") -def get_list_view(): - id = int(request.args.get('id', 1)) - site_name = session['selected_site'] - shopping_list = [] - database_config = config() - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - sql = f"SELECT * FROM {site_name}_shopping_lists WHERE id=%s;" - cur.execute(sql, (id, )) - shopping_list = list(cur.fetchone()) - - if shopping_list[10] == "calculated": - sqlfile = open(f"sites/{site_name}/sql/unique/shopping_lists_safetystock.sql", "r+") - sql = "\n".join(sqlfile.readlines()) - sqlfile.close() - else: - sqlfile = open(f"sites/{site_name}/sql/unique/shopping_lists_safetystock_uncalculated.sql", "r+") - sql = "\n".join(sqlfile.readlines()) - sqlfile.close() - - cur.execute(sql, (id, )) - shopping_list[3] = list(cur.fetchall()) - print(shopping_list[4]) - - except (Exception, psycopg2.DatabaseError) as error: - print(error) - - return jsonify(shopping_list=shopping_list) - -@database_api.route("/getList") -def get_list(): - id = int(request.args.get('id', 1)) - database_config = config() - site_name = session['selected_site'] - shopping_list = [] - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - sql = f"SELECT * FROM {site_name}_shopping_lists WHERE id=%s;" - cur.execute(sql, (id, )) - shopping_list = list(cur.fetchone()) - itemSQL = f"SELECT {site_name}_items.id, {site_name}_items.barcode, {site_name}_items.item_name, {site_name}_items.links, {site_name}_item_info.uom FROM {site_name}_items LEFT JOIN {site_name}_item_info ON {site_name}_items.item_info_id = {site_name}_item_info.id WHERE {site_name}_item_info.shopping_lists @> ARRAY[%s];" - cur.execute(itemSQL, (id, )) - shopping_list[3] = list(cur.fetchall()) - print(shopping_list) - except (Exception, psycopg2.DatabaseError) as error: - print(error) - - return jsonify(shopping_list=shopping_list) - -@database_api.route("/updateList", methods=["POST"]) -def update_list(): - if request.method == "POST": - site_name = session['selected_site'] - list_id = request.get_json()['id'] - items = request.get_json()['items'] - print(items) - custom_items = request.get_json()['custom'] - name = request.get_json()['name'] - description = request.get_json()['description'] - list_type = request.get_json()['list_type'] - quantities = request.get_json()['quantities'] - data = (name, description, items, json.dumps(custom_items), list_type, json.dumps(quantities), list_id) - database_config = config() - with psycopg2.connect(**database_config) as conn: - try: - with conn.cursor() as cur: - # Start by updating the group -> included items with the up to date list - sql = f"UPDATE {site_name}_shopping_lists SET name = %s, description = %s, pantry_items = %s, custom_items = %s, type = %s, quantities = %s WHERE id=%s;" - cur.execute(sql, data) - - update_item_sql = f"UPDATE {site_name}_item_info SET shopping_lists = %s WHERE id = %s;" - select_item_sql = f"SELECT {site_name}_item_info.id, {site_name}_item_info.shopping_lists FROM {site_name}_items LEFT JOIN {site_name}_item_info ON {site_name}_items.item_info_id = {site_name}_item_info.id WHERE {site_name}_items.id = %s;" - # Now we will fetch each item row one by one and check if the group id is already inside of its groups array - for item_id in items: - cur.execute(select_item_sql, (item_id, )) - item = cur.fetchone() - print(item) - shopping_lists: set = set(item[1]) - # Condition check, adds it if it doesnt exist. - if list_id not in shopping_lists: - shopping_lists.add(list_id) - cur.execute(update_item_sql, (list(shopping_lists), item[0])) - - # Now we fetch all items that have the group id in its groups array - fetch_items_with_list = f"SELECT {site_name}_items.id, {site_name}_item_info.shopping_lists, {site_name}_item_info.id FROM {site_name}_item_info LEFT JOIN {site_name}_items ON {site_name}_items.item_info_id = {site_name}_item_info.id WHERE {site_name}_item_info.shopping_lists @> ARRAY[%s];" - cur.execute(fetch_items_with_list, (list_id, )) - list_items = cur.fetchall() - print(items) - # We will then check each item id against the groups new included_items list to see if the item should be in there - for item_id, shopping_list, info_id in list_items: - # If it is not we remove the group form the items list and update the item - if item_id not in items: - shopping_lists: list = list(shopping_list) - shopping_lists.remove(list_id) - cur.execute(update_item_sql, (list(shopping_lists), info_id)) - - conn.commit() - except (Exception, psycopg2.DatabaseError) as error: - print(error) - conn.rollback() - - return jsonify({"state": "SUCCESS"}) - return jsonify({"state": "FAILED"}) \ No newline at end of file + return jsonify(vendors=vendors) \ No newline at end of file diff --git a/application/items/database_items.py b/application/items/database_items.py index afef4eb..6415df2 100644 --- a/application/items/database_items.py +++ b/application/items/database_items.py @@ -208,6 +208,38 @@ def getZone(site:str, payload:tuple, convert:bool=True): except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) +def getItemLocations(site, payload, convert=True, conn=None): + locations = [] + count = 0 + self_conn = False + with open(f"application/items/sql/getItemLocations.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchall() + if rows and convert: + locations = [postsqldb.tupleDictionaryFactory(cur.description, row) for row in rows] + if rows and not convert: + locations = rows + + cur.execute(f"SELECT COUNT(*) FROM {site}_item_locations WHERE part_id=%s;", (payload[0],)) + count = cur.fetchone()[0] + + if self_conn: + conn.close() + + return locations, count + + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, sql) + def getItemInfoTuple(site:str, payload:tuple, convert=True): """_summary_ diff --git a/application/items/items_API.py b/application/items/items_API.py index d6af383..0223169 100644 --- a/application/items/items_API.py +++ b/application/items/items_API.py @@ -896,4 +896,30 @@ def postNewItemLocation(): item_location = dbPayloads.ItemLocationPayload(item_id, location_id) database_items.insertItemLocationsTuple(site_name, item_location.payload()) return jsonify(error=False, message="Location was added successfully") - return jsonify(error=True, message="Unable to save this location, ERROR!") \ No newline at end of file + return jsonify(error=True, message="Unable to save this location, ERROR!") + +@items_api.route("/getItemLocations", methods=["GET"]) +def getItemLocations(): + recordset = [] + count = 0 + if request.method == "GET": + item_id = int(request.args.get('id', 1)) + page = int(request.args.get('page', 1)) + limit = int(request.args.get('limit', 10)) + site_name = session['selected_site'] + offset = (page - 1) * limit + recordset, count = database_items.getItemLocations(site_name, (item_id, limit, offset)) + return jsonify({"locations":recordset, "end":math.ceil(count/limit), "error":False, "message":"item fetched succesfully!"}) + return jsonify({"locations":recordset, "end": math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) + + +@items_api.route('/postTransaction', methods=["POST"]) +def post_transaction(): + if request.method == "POST": + result = items_processes.postAdjustment( + site_name=session['selected_site'], + user_id=session['user_id'], + data=dict(request.json) + ) + return jsonify(result) + return jsonify({"error":True, "message":"There was an error with this POST statement"}) \ No newline at end of file diff --git a/application/items/sql/getItemLocations.sql b/application/items/sql/getItemLocations.sql new file mode 100644 index 0000000..59e72cf --- /dev/null +++ b/application/items/sql/getItemLocations.sql @@ -0,0 +1,5 @@ +SELECT * FROM %%site_name%%_item_locations +LEFT JOIN %%site_name%%_locations ON %%site_name%%_locations.id = %%site_name%%_item_locations.location_id +WHERE part_id = %s +LIMIT %s +OFFSET %s; \ No newline at end of file diff --git a/application/items/static/transactionHandler.js b/application/items/static/transactionHandler.js index 0ecb98b..5a81136 100644 --- a/application/items/static/transactionHandler.js +++ b/application/items/static/transactionHandler.js @@ -166,7 +166,7 @@ async function replenishItemLocationsTable(locations) { let locations_limit = 10; async function getItemLocations() { console.log("getting Locations") - const url = new URL('/external/getItemLocations', window.location.origin); + const url = new URL('/items/getItemLocations', window.location.origin); url.searchParams.append('page', pagination_current); url.searchParams.append('limit', locations_limit); url.searchParams.append('id', item.id); @@ -182,7 +182,7 @@ async function getItemLocations() { let items_limit = 50; async function getItems() { console.log("getting items") - const url = new URL('/external/getModalItems', window.location.origin); + const url = new URL('/items/getModalItems', window.location.origin); url.searchParams.append('page', pagination_current); url.searchParams.append('limit', items_limit); url.searchParams.append('search_string', search_string) @@ -195,7 +195,7 @@ async function getItems() { async function getItem(id) { console.log(`selected item: ${id}`) - const url = new URL('/external/getItem', window.location.origin); + const url = new URL('/items/getItem', window.location.origin); url.searchParams.append('id', id); const response = await fetch(url); data = await response.json(); @@ -267,7 +267,7 @@ async function submitTransaction() { let validated = await validateTransaction() if (validated){ let cost = parseFloat(document.getElementById('transaction_cost').value.replace(/[^0-9.-]+/g, "")); - const response = await fetch(`/external/postTransaction`, { + const response = await fetch(`/items/postTransaction`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -408,278 +408,15 @@ async function updatePaginationElement(elementID) { paginationElement.append(nextElement) } -var scannedItems = Array(); -const queueLimit = 5; // 49 should be default - -async function addToQueue(event) { - if (event.key == "Enter"){ - let data = await getItemBarcode(document.getElementById('barcode-scan').value) - let scannedItem = data.item - if(data.error){ - UIkit.notification({ - message: data.message, - status: "danger", - pos: 'top-right', - timeout: 5000 - }); - } - if(scannedItems.length > queueLimit){ - scannedItems.shift() - } - if(!Array.isArray(scannedItem) && !data.error){ - let status = await submitScanTransaction(scannedItem) - scannedItems.push({'item': scannedItem, 'type': `${document.getElementById('scan_trans_type').value}`, 'error': status}) - document.getElementById('barcode-scan').value = "" - } - } - await replenishScanTable() -} - async function getItemBarcode(barcode) { console.log(`selected item: ${barcode}`) - const url = new URL('/external/getItem/barcode', window.location.origin); + const url = new URL('/items/getItem/barcode', window.location.origin); url.searchParams.append('barcode', barcode); const response = await fetch(url); data = await response.json(); return data; } -async function submitScanTransaction(scannedItem) { - /// I need to find the location that matches the items auto issue location id - - let trans_type = document.getElementById('scan_trans_type').value - let scan_transaction_item_location_id = 0 - let comparator = 0 - - if (trans_type === "Adjust In"){ - comparator = scannedItem.logistics_info.primary_location.id - } else if (trans_type === "Adjust Out"){ - comparator = scannedItem.logistics_info.auto_issue_location.id - } - - for (let i = 0; i < scannedItem.item_locations.length; i++){ - if (scannedItem.item_locations[i].location_id === comparator){ - scan_transaction_item_location_id = scannedItem.item_locations[i].id - } - } - - const response = await fetch(`/external/postTransaction`, { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - item_id: scannedItem.id, - logistics_info_id: scannedItem.logistics_info_id, - barcode: scannedItem.barcode, - item_name: scannedItem.item_name, - transaction_type: document.getElementById('scan_trans_type').value, - quantity: scannedItem.item_info.uom_quantity, - description: "", - cost: parseFloat(scannedItem.item_info.cost), - vendor: 0, - expires: null, - location_id: scan_transaction_item_location_id - }), - }); - data = await response.json(); - transaction_status = "success" - if (data.error){ - transaction_status = "danger" - } - - UIkit.notification({ - message: data.message, - status: transaction_status, - pos: 'top-right', - timeout: 5000 - }); - - return data.error - -} - -async function replenishScanTable() { - let scanTableBody = document.getElementById("scanTableBody") - scanTableBody.innerHTML = "" - - let reversedScannedItems = scannedItems.slice().reverse() - - for(let i = 0; i < reversedScannedItems.length; i++){ - let tableRow = document.createElement('tr') - - let icon = `` - if(reversedScannedItems[i].error){ - icon = `` - } - - let statusCell = document.createElement('td') - statusCell.innerHTML = icon - let barcodeCell = document.createElement('td') - barcodeCell.innerHTML = reversedScannedItems[i].item.barcode - let nameCell = document.createElement('td') - nameCell.innerHTML = reversedScannedItems[i].item.item_name - let typeCell = document.createElement('td') - typeCell.innerHTML = reversedScannedItems[i].type - let locationCell = document.createElement('td') - if (reversedScannedItems[i].type === "Adjust In"){ - locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.primary_location.uuid - } else { - locationCell.innerHTML = reversedScannedItems[i].item.logistics_info.auto_issue_location.uuid - } - - tableRow.append(statusCell, barcodeCell, nameCell, typeCell, locationCell) - scanTableBody.append(tableRow) - } -} - -async function submitScanReceipt(items) { - const response = await fetch(`/external/postReceipt`, { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - items: items - }), - }); - data = await response.json(); - transaction_status = "success" - if (data.error){ - transaction_status = "danger" - } - - UIkit.notification({ - message: data.message, - status: transaction_status, - pos: 'top-right', - timeout: 5000 - }); - - return data.error -} - -var openedReceipt = false -async function startReceipt() { - openedReceipt = true - document.getElementById('barcode-input').classList.remove('uk-disabled') - document.getElementById('barcode-table').classList.remove('uk-disabled') - - document.getElementById('receiptStart').classList.add('uk-disabled') - document.getElementById('receiptComplete').classList.remove('uk-disabled') - document.getElementById('receiptClose').classList.remove('uk-disabled') - -} - -async function completeReceipt() { - openedReceipt = false - document.getElementById('barcode-input').classList.add('uk-disabled') - document.getElementById('barcode-table').classList.add('uk-disabled') - - document.getElementById('receiptStart').classList.remove('uk-disabled') - document.getElementById('receiptComplete').classList.add('uk-disabled') - document.getElementById('receiptClose').classList.add('uk-disabled') - - await submitScanReceipt(scannedReceiptItems) - let scanReceiptTableBody = document.getElementById("scanReceiptTableBody") - scanReceiptTableBody.innerHTML = "" - - scannedReceiptItems = Array() - -} - -async function closeReceipt(){ - openedReceipt = false - document.getElementById('barcode-input').classList.add('uk-disabled') - document.getElementById('barcode-table').classList.add('uk-disabled') - - document.getElementById('receiptStart').classList.remove('uk-disabled') - document.getElementById('receiptComplete').classList.add('uk-disabled') - document.getElementById('receiptClose').classList.add('uk-disabled') - - let scanReceiptTableBody = document.getElementById("scanReceiptTableBody") - scanReceiptTableBody.innerHTML = "" - - scannedReceiptItems = Array() -} - -var scannedReceiptItems = Array(); -async function addToReceipt(event) { - if (event.key == "Enter"){ - let barcode = document.getElementById('barcode-scan-receipt').value - let data = await getItemBarcode(barcode) - let scannedItem = data.item - if(scannedItem){ - let expires = scannedItem.food_info.expires - console.log(expires) - if(scannedItem.food_info.expires){ - let today = new Date(); - today.setDate(today.getDate() + Number(scannedItem.food_info.default_expiration)) - expires = today.toISOString().split('T')[0]; - } - scannedReceiptItems.push({item: { - barcode: scannedItem.barcode, - item_name: scannedItem.item_name, - qty: scannedItem.item_info.uom_quantity, - uom: scannedItem.item_info.uom.id, - data: {cost: scannedItem.item_info.cost, expires: expires} - }, type: 'sku'}) - document.getElementById('barcode-scan-receipt').value = "" - } else { - scannedReceiptItems.push({item: { - barcode: `%${barcode}%`, - item_name: "unknown", - qty: 1, - uom: 1, - data: {'cost': 0.00, 'expires': false} - }, type: 'new sku'}) - document.getElementById('barcode-scan-receipt').value = "" - } - } - await replenishScannedReceiptTable(scannedReceiptItems) -} - -async function replenishScannedReceiptTable(items) { - let scanReceiptTableBody = document.getElementById("scanReceiptTableBody") - scanReceiptTableBody.innerHTML = "" - - for(let i = 0; i < items.length; i++){ - let tableRow = document.createElement('tr') - - let typeCell = document.createElement('td') - typeCell.innerHTML = items[i].type - let barcodeCell = document.createElement('td') - barcodeCell.innerHTML = items[i].item.barcode - let nameCell = document.createElement('td') - nameCell.innerHTML = items[i].item.item_name - - let operationsCell = document.createElement('td') - - let editOp = document.createElement('a') - editOp.style = "margin-right: 5px;" - editOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') - editOp.setAttribute('uk-icon', 'icon: pencil') - editOp.onclick = async function () { - await openLineEditModal(i, items[i]) - } - - let deleteOp = document.createElement('a') - deleteOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') - deleteOp.setAttribute('uk-icon', 'icon: trash') - deleteOp.onclick = async function() { - scannedReceiptItems.splice(i, 1) - await replenishScannedReceiptTable(scannedReceiptItems) - } - - operationsCell.append(editOp, deleteOp) - - operationsCell.classList.add("uk-flex") - operationsCell.classList.add("uk-flex-right") - - tableRow.append(typeCell, barcodeCell, nameCell, operationsCell) - scanReceiptTableBody.append(tableRow) - } -} async function openLineEditModal(ind, line_data) { console.log(line_data) diff --git a/application/items/static/transactionsHandler.js b/application/items/static/transactionsHandler.js index e2cbca7..7047302 100644 --- a/application/items/static/transactionsHandler.js +++ b/application/items/static/transactionsHandler.js @@ -96,7 +96,7 @@ async function replenishTransactionsTable(transactions) { } async function getItem(id) { - const url = new URL('/external/getItem', window.location.origin); + const url = new URL('/items/getItem', window.location.origin); url.searchParams.append('id', id); const response = await fetch(url); data = await response.json(); diff --git a/application/poe/poe_database.py b/application/poe/poe_database.py index fc8df36..bd59bfe 100644 --- a/application/poe/poe_database.py +++ b/application/poe/poe_database.py @@ -175,7 +175,6 @@ def selectItemAllByBarcode(site, payload, convert=True, conn=None): item = () self_conn = False linked_item = selectLinkedItemByBarcode(site, (payload[0],)) - if len(linked_item) > 1: item = selectItemAllByID(site, payload=(linked_item['link'], ), convert=convert) item['item_info']['uom_quantity'] = linked_item['conv_factor'] diff --git a/application/postsqldb.py b/application/postsqldb.py index 57e8288..27b82d2 100644 --- a/application/postsqldb.py +++ b/application/postsqldb.py @@ -61,6 +61,31 @@ def get_sites(sites=[]): return False +def get_units_of_measure(convert=True, conn=None): + records = () + self_conn = False + sql = f"SELECT * FROM units;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql) + rows = cur.fetchall() + if rows and convert: + records = [tupleDictionaryFactory(cur.description, row) for row in rows] + elif rows and not convert: + records = rows + + if self_conn: + conn.close() + return records + except Exception as error: + raise DatabaseError(error, "", sql) + class ConversionsTable: @dataclass class Payload: diff --git a/application/receipts/__init__.py b/application/receipts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/receipts_API.py b/application/receipts/receipts_api.py similarity index 84% rename from receipts_API.py rename to application/receipts/receipts_api.py index a9a6d56..80d9e13 100644 --- a/receipts_API.py +++ b/application/receipts/receipts_api.py @@ -1,44 +1,37 @@ from flask import Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response, current_app, send_from_directory -import psycopg2, math, json, datetime, main, copy, requests, process, database, pprint, MyDataclasses -from config import config, sites_config +import psycopg2, math, datetime, process, database, MyDataclasses +from config import config from user_api import login_required import openfoodfacts import postsqldb import mimetypes, os -import pymupdf, PIL import webpush - -def create_pdf_preview(pdf_path, output_path, size=(600, 400)): - pdf = pymupdf.open(pdf_path) - page = pdf[0] - file_name = os.path.basename(pdf_path).replace('.pdf', "") - pix = page.get_pixmap() - img = PIL.Image.frombytes("RGB", (pix.width, pix.height), pix.samples) - output_path = output_path + file_name + '.jpg' - img.thumbnail(size) - img.save(output_path) - return file_name + '.jpg' +from application import postsqldb, database_payloads +from application.receipts import receipts_processes, receipts_database -receipt_api = Blueprint('receipt_api', __name__) +receipt_api = Blueprint('receipt_api', __name__, template_folder='templates', static_folder='static') -@receipt_api.route("/receipt/") -@login_required -def receipt(id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - database_config = config() - with psycopg2.connect(**database_config) as conn: - units = postsqldb.UnitsTable.getAll(conn) - return render_template("receipts/receipt.html", id=id, current_site=session['selected_site'], sites=sites, units=units) -@receipt_api.route("/receipts") +# ROOT TEMPLATE ROUTES +@receipt_api.route("/") @login_required def receipts(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("receipts/index.html", current_site=session['selected_site'], sites=sites) + sites = [site[1] for site in postsqldb.get_sites(session['user']['sites'])] + return render_template("receipts_index.html", current_site=session['selected_site'], sites=sites) -@receipt_api.route('/receipts/getItems', methods=["GET"]) +@receipt_api.route("/") +@login_required +def receipt(id): + sites = [site[1] for site in postsqldb.get_sites(session['user']['sites'])] + units = postsqldb.get_units_of_measure() + return render_template("receipt.html", id=id, current_site=session['selected_site'], sites=sites, units=units) + + +# API ROUTES +# Added to Database +@receipt_api.route('/api/getItems', methods=["GET"]) def getItems(): recordset = [] count = {'count': 0} @@ -47,14 +40,13 @@ def getItems(): limit = int(request.args.get('limit', 10)) site_name = session['selected_site'] offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = ("%%", limit, offset) - recordset, count = database.getItemsWithQOH(conn, site_name, payload, convert=True) + sort_order = "ID ASC" + payload = ("%%", limit, offset, sort_order) + recordset, count = receipts_database.getItemsWithQOH(site_name, payload) return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":False, "message":"items fetched succesfully!"}) return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":True, "message":"There was an error with this GET statement"}) -@receipt_api.route('/receipt/getVendors', methods=["GET"]) +@receipt_api.route('/api/getVendors', methods=["GET"]) def getVendors(): recordset = [] count = 0 @@ -70,7 +62,7 @@ def getVendors(): return jsonify({"vendors":recordset, "end":math.ceil(count/limit), "error":False, "message":"items fetched succesfully!"}) return jsonify({"vendors":recordset, "end":math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) -@receipt_api.route('/receipt/getLinkedLists', methods=["GET"]) +@receipt_api.route('/api/getLinkedLists', methods=["GET"]) def getLinkedLists(): recordset = [] count = 0 @@ -86,7 +78,7 @@ def getLinkedLists(): return jsonify({"items":recordset, "end":math.ceil(count/limit), "error":False, "message":"items fetched succesfully!"}) return jsonify({"items":recordset, "end":math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) -@receipt_api.route('/receipts/getReceipts', methods=["GET"]) +@receipt_api.route('/api/getReceipts', methods=["GET"]) def getReceipts(): recordset = [] if request.method == "GET": @@ -100,7 +92,7 @@ def getReceipts(): return jsonify({'receipts':recordset, "end": math.ceil(count/limit), 'error': False, "message": "Get Receipts Successful!"}) return jsonify({'receipts': recordset, "end": math.ceil(count/limit), 'error': True, "message": "Something went wrong while getting receipts!"}) -@receipt_api.route('/receipts/getReceipt', methods=["GET"]) +@receipt_api.route('/api/getReceipt', methods=["GET"]) def getReceipt(): record = [] if request.method == "GET": @@ -112,7 +104,7 @@ def getReceipt(): return jsonify({'receipt': record, 'error': False, "message": "Get Receipts Successful!"}) return jsonify({'receipt': record, 'error': True, "message": "Something went wrong while getting receipts!"}) -@receipt_api.route('/receipts/addReceipt', methods=["POST", "GET"]) +@receipt_api.route('/api/addReceipt', methods=["POST", "GET"]) def addReceipt(): if request.method == "GET": user_id = session['user_id'] @@ -127,34 +119,33 @@ def addReceipt(): return jsonify({'error': False, "message": "Receipt Added Successful!"}) return jsonify({'error': True, "message": "Something went wrong while adding receipt!"}) -@receipt_api.route('/receipts/addSKULine', methods=["POST"]) +# Added to Database +@receipt_api.route('/api/addSKULine', methods=["POST"]) def addSKULine(): if request.method == "POST": item_id = int(request.get_json()['item_id']) receipt_id = int(request.get_json()['receipt_id']) site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - item = database.getItemAllByID(conn, site_name, (item_id, ), convert=True) - data = { - 'cost': item['item_info']['cost'], - 'expires': item['food_info']['expires'] - } - receipt_item = MyDataclasses.ReceiptItemPayload( - type="sku", - receipt_id=receipt_id, - barcode=item['barcode'], - name=item['item_name'], - qty=item['item_info']['uom_quantity'], - uom=item['item_info']['uom'], - data=data - ) - database.insertReceiptItemsTuple(conn, site_name, receipt_item.payload()) + item = receipts_database.getItemAllByID(site_name, (item_id, )) + data = { + 'cost': item['item_info']['cost'], + 'expires': item['food_info']['expires'] + } + receipt_item = database_payloads.ReceiptItemPayload( + type="sku", + receipt_id=receipt_id, + barcode=item['barcode'], + name=item['item_name'], + qty=item['item_info']['uom_quantity'], + uom=item['item_info']['uom']['id'], + data=data + ) + receipts_database.insertReceiptItemsTuple(site_name, receipt_item.payload()) return jsonify({'error': False, "message": "Line added Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while add SKU line!"}) -@receipt_api.route('/receipts/deleteLine', methods=["POST"]) +@receipt_api.route('/api/deleteLine', methods=["POST"]) def deleteLine(): if request.method == "POST": line_id = int(request.get_json()['line_id']) @@ -166,7 +157,7 @@ def deleteLine(): return jsonify({'error': False, "message": "Line Deleted Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while deleting line!"}) -@receipt_api.route('/receipts/denyLine', methods=["POST"]) +@receipt_api.route('/api/denyLine', methods=["POST"]) def denyLine(): if request.method == "POST": line_id = int(request.get_json()['line_id']) @@ -177,7 +168,7 @@ def denyLine(): return jsonify({'error': False, "message": "Line Denied Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while denying line!"}) -@receipt_api.route('/receipts/saveLine', methods=["POST"]) +@receipt_api.route('/api/saveLine', methods=["POST"]) def saveLine(): if request.method == "POST": line_id = int(request.get_json()['line_id']) @@ -192,7 +183,7 @@ def saveLine(): return jsonify({'error': False, "message": "Line Saved Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while saving line!"}) -@receipt_api.route('/receipt/postLinkedItem', methods=["POST"]) +@receipt_api.route('/api/postLinkedItem', methods=["POST"]) def postLinkedItem(): if request.method == "POST": receipt_item_id = int(request.get_json()['receipt_item_id']) @@ -251,7 +242,7 @@ def postLinkedItem(): return jsonify({'error': False, "message": "Line Saved Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while saving line!"}) -@receipt_api.route('/receipts/resolveLine', methods=["POST"]) +@receipt_api.route('/api/resolveLine', methods=["POST"]) def resolveLine(): if request.method == "POST": line_id = int(request.get_json()['line_id']) @@ -339,7 +330,7 @@ def resolveLine(): return jsonify({'error': False, "message": "Line Saved Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while saving line!"}) -@receipt_api.route('/receipt/postVendorUpdate', methods=["POST"]) +@receipt_api.route('/api/postVendorUpdate', methods=["POST"]) def postVendorUpdate(): if request.method == "POST": receipt_id = int(request.get_json()['receipt_id']) @@ -351,7 +342,7 @@ def postVendorUpdate(): return jsonify({'error': False, "message": "Line Saved Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while saving line!"}) -@receipt_api.route('/receipts/resolveReceipt', methods=["POST"]) +@receipt_api.route('/api/resolveReceipt', methods=["POST"]) def resolveReceipt(): if request.method == "POST": receipt_id = int(request.get_json()['receipt_id']) @@ -364,7 +355,7 @@ def resolveReceipt(): return jsonify({'error': False, "message": "Line Saved Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while saving line!"}) -@receipt_api.route('/receipt/uploadfile/', methods=["POST"]) +@receipt_api.route('/api/uploadfile/', methods=["POST"]) def uploadFile(receipt_id): file = request.files['file'] file_path = current_app.config['FILES_FOLDER'] + f"/receipts/{file.filename.replace(" ", "_")}" @@ -373,7 +364,7 @@ def uploadFile(receipt_id): preview_image = "" if file_type == "application/pdf": output_path = "static/files/receipts/previews/" - preview_image = create_pdf_preview(file_path, output_path) + preview_image = receipts_processes.create_pdf_preview(file_path, output_path) file_size = os.path.getsize(file_path) database_config = config() @@ -386,11 +377,11 @@ def uploadFile(receipt_id): return jsonify({}) -@receipt_api.route('/receipt/getFile/') +@receipt_api.route('/api/getFile/') def getFile(file_name): return send_from_directory('static/files/receipts', file_name) -@receipt_api.route('/receipts/checkAPI', methods=["POST"]) +@receipt_api.route('/api/checkAPI', methods=["POST"]) def checkAPI(): if request.method == "POST": line_id = int(request.get_json()['line_id']) diff --git a/application/receipts/receipts_database.py b/application/receipts/receipts_database.py new file mode 100644 index 0000000..2ddaa2b --- /dev/null +++ b/application/receipts/receipts_database.py @@ -0,0 +1,100 @@ +import psycopg2 + + +import config +from application import postsqldb + +def getItemsWithQOH(site, payload, convert=True, conn=None): + recordset = [] + count = 0 + self_conn = False + with open(f"application/receipts/sql/getItemsWithQOH.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site).replace("%%sort_order%%", payload[3]) + + payload = list(payload) + payload.pop(3) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + if convert: + with conn.cursor(cursor_factory=psycopg2.extras.RealDictCursor) as cur: + cur.execute(sql, payload) + recordset = cur.fetchall() + recordset = [dict(record) for record in recordset] + cur.execute(f"SELECT COUNT(*) FROM {site}_items WHERE search_string LIKE '%%' || %s || '%%';", (payload[0], )) + count = cur.fetchone() + else: + with conn.cursor() as cur: + cur.execute(sql, payload) + recordset = cur.fetchall() + cur.execute(f"SELECT COUNT(*) FROM {site}_items WHERE search_string LIKE '%%' || %s || '%%';", (payload[0], )) + count = cur.fetchone() + + if self_conn: + conn.close() + + return recordset, count + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def getItemAllByID(site, payload, convert=True, conn=None): + item = () + self_conn = False + + with open(f"application/receipts/sql/getItemAllByID.sql", "r+") as file: + getItemAllByID_sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(getItemAllByID_sql, payload) + rows = cur.fetchone() + if rows and convert: + item = postsqldb.tupleDictionaryFactory(cur.description, rows) + if rows and not convert: + item = rows + + if self_conn: + conn.close() + + return item + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, getItemAllByID_sql) + + + +def insertReceiptItemsTuple(site, payload, convert=True, conn=None): + receipt_item = () + self_conn = False + with open(f"application/receipts/sql/insertReceiptItemsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + receipt_item = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + receipt_item = rows + + if self_conn: + conn.commit() + conn.close() + + return receipt_item + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) \ No newline at end of file diff --git a/application/receipts/receipts_processes.py b/application/receipts/receipts_processes.py new file mode 100644 index 0000000..1d36b84 --- /dev/null +++ b/application/receipts/receipts_processes.py @@ -0,0 +1,14 @@ +import pymupdf +import os +import PIL + +def create_pdf_preview(pdf_path, output_path, size=(600, 400)): + pdf = pymupdf.open(pdf_path) + page = pdf[0] + file_name = os.path.basename(pdf_path).replace('.pdf', "") + pix = page.get_pixmap() + img = PIL.Image.frombytes("RGB", (pix.width, pix.height), pix.samples) + output_path = output_path + file_name + '.jpg' + img.thumbnail(size) + img.save(output_path) + return file_name + '.jpg' \ No newline at end of file diff --git a/application/receipts/sql/getItemAllByID.sql b/application/receipts/sql/getItemAllByID.sql new file mode 100644 index 0000000..8b5ca81 --- /dev/null +++ b/application/receipts/sql/getItemAllByID.sql @@ -0,0 +1,86 @@ +WITH passed_id AS (SELECT %s AS passed_id), + logistics_id AS (SELECT logistics_info_id FROM %%site_name%%_items WHERE id=(SELECT passed_id FROM passed_id)), + info_id AS (SELECT item_info_id FROM %%site_name%%_items WHERE id=(SELECT passed_id FROM passed_id)), + cte_conversions AS ( + SELECT + %%site_name%%_conversions.id as conv_id, + %%site_name%%_conversions.conv_factor as conv_factor, + units.* as uom + FROM %%site_name%%_conversions + LEFT JOIN units ON %%site_name%%_conversions.uom_id = units.id + WHERE %%site_name%%_conversions.item_id = (SELECT passed_id FROM passed_id) + ), + cte_item_info AS ( + SELECT + %%site_name%%_item_info.*, + row_to_json(units.*) as uom, + COALESCE((SELECT json_agg(convs) FROM cte_conversions convs), '[]'::json) AS conversions, + COALESCE((SELECT json_agg(p.*) FROM %%site_name%%_sku_prefix as p WHERE p.id = ANY(%%site_name%%_item_info.prefixes)), '[]'::json) as prefixes + FROM %%site_name%%_item_info + LEFT JOIN units ON %%site_name%%_item_info.uom = units.id + WHERE %%site_name%%_item_info.id = (SELECT item_info_id FROM info_id) + ), + cte_groups AS ( + SELECT + %%site_name%%_groups.*, + %%site_name%%_group_items.uuid, + %%site_name%%_group_items.item_type, + %%site_name%%_group_items.qty + FROM %%site_name%%_groups + JOIN %%site_name%%_group_items ON %%site_name%%_groups.id = %%site_name%%_group_items.gr_id + WHERE %%site_name%%_group_items.item_id = (SELECT passed_id FROM passed_id) + ), + cte_shopping_lists AS ( + SELECT + %%site_name%%_shopping_lists.*, + %%site_name%%_shopping_list_items.uuid, + %%site_name%%_shopping_list_items.item_type, + %%site_name%%_shopping_list_items.qty + FROM %%site_name%%_shopping_lists + JOIN %%site_name%%_shopping_list_items ON %%site_name%%_shopping_lists.id = %%site_name%%_shopping_list_items.sl_id + WHERE %%site_name%%_shopping_list_items.item_id = (SELECT passed_id FROM passed_id) + ), + cte_itemlinks AS ( + SELECT * FROM %%site_name%%_itemlinks WHERE link=(SELECT passed_id FROM passed_id) + ), + cte_item_locations AS ( + SELECT * FROM %%site_name%%_item_locations + LEFT JOIN %%site_name%%_locations ON %%site_name%%_locations.id = %%site_name%%_item_locations.location_id + WHERE part_id = (SELECT passed_id FROM passed_id) + ), + cte_logistics_info AS ( + SELECT + li.*, + row_to_json(pl) AS primary_location, + row_to_json(ail) AS auto_issue_location, + row_to_json(pz) AS primary_zone, + row_to_json(aiz) AS auto_issue_zone + FROM %%site_name%%_logistics_info AS li + LEFT JOIN %%site_name%%_locations AS pl ON li.primary_location = pl.id + LEFT JOIN %%site_name%%_locations AS ail ON li.auto_issue_location = ail.id + LEFT JOIN %%site_name%%_zones AS pz ON li.primary_zone = pz.id + LEFT JOIN %%site_name%%_zones AS aiz ON li.auto_issue_zone = aiz.id + WHERE li.id=(SELECT logistics_info_id FROM logistics_id) + ) + +SELECT + (SELECT passed_id FROM passed_id) AS passed_id, + %%site_name%%_items.*, + (SELECT COALESCE(row_to_json(logis), '{}') FROM cte_logistics_info logis) AS logistics_info, + row_to_json(%%site_name%%_food_info.*) as food_info, + row_to_json(%%site_name%%_brands.*) as brand, + (SELECT COALESCE(row_to_json(ii), '{}') FROM cte_item_info ii) AS item_info, + (SELECT COALESCE(array_agg(row_to_json(g)), '{}') FROM cte_groups g) AS item_groups, + (SELECT COALESCE(array_agg(row_to_json(sl)), '{}') FROM cte_shopping_lists sl) AS item_shopping_lists, + (SELECT COALESCE(array_agg(row_to_json(il)), '{}') FROM cte_itemlinks il) AS linked_items, + (SELECT COALESCE(array_agg(row_to_json(ils)), '{}') FROM cte_item_locations ils) AS item_locations +FROM %%site_name%%_items + LEFT JOIN %%site_name%%_item_info ON %%site_name%%_items.item_info_id = %%site_name%%_item_info.id + LEFT JOIN %%site_name%%_food_info ON %%site_name%%_items.food_info_id = %%site_name%%_food_info.id + LEFT JOIN %%site_name%%_brands ON %%site_name%%_items.brand = %%site_name%%_brands.id + LEFT JOIN units ON %%site_name%%_item_info.uom = units.id + LEFT JOIN cte_groups ON %%site_name%%_items.id = cte_groups.id + LEFT JOIN cte_shopping_lists ON %%site_name%%_items.id = cte_shopping_lists.id +WHERE %%site_name%%_items.id=(SELECT passed_id FROM passed_id) +GROUP BY + %%site_name%%_items.id, %%site_name%%_item_info.id, %%site_name%%_food_info.id, %%site_name%%_brands.id; \ No newline at end of file diff --git a/application/receipts/sql/getItemsWithQOH.sql b/application/receipts/sql/getItemsWithQOH.sql new file mode 100644 index 0000000..fb1b171 --- /dev/null +++ b/application/receipts/sql/getItemsWithQOH.sql @@ -0,0 +1,18 @@ +WITH sum_cte AS ( + SELECT mi.id, SUM(mil.quantity_on_hand)::FLOAT8 AS total_sum + FROM %%site_name%%_item_locations mil + JOIN %%site_name%%_items mi ON mil.part_id = mi.id + GROUP BY mi.id + ) + +SELECT %%site_name%%_items.*, + row_to_json(%%site_name%%_item_info.*) as item_info, + sum_cte.total_sum as total_qoh, + (SELECT COALESCE(row_to_json(u), '{}') FROM units as u WHERE u.id=%%site_name%%_item_info.uom) as uom +FROM %%site_name%%_items +LEFT JOIN sum_cte ON %%site_name%%_items.id = sum_cte.id +LEFT JOIN %%site_name%%_item_info ON %%site_name%%_items.item_info_id = %%site_name%%_item_info.id +WHERE %%site_name%%_items.search_string LIKE '%%' || %s || '%%' +ORDER BY %%sort_order%% +LIMIT %s OFFSET %s; + diff --git a/application/receipts/sql/insertReceiptItemsTuple.sql b/application/receipts/sql/insertReceiptItemsTuple.sql new file mode 100644 index 0000000..6aeb85f --- /dev/null +++ b/application/receipts/sql/insertReceiptItemsTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_receipt_items +(type, receipt_id, barcode, name, qty, uom, data, status) +VALUES (%s, %s, %s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/static/handlers/receiptHandler.js b/application/receipts/static/js/receiptHandler.js similarity index 96% rename from static/handlers/receiptHandler.js rename to application/receipts/static/js/receiptHandler.js index 993fbb3..a20f9b7 100644 --- a/static/handlers/receiptHandler.js +++ b/application/receipts/static/js/receiptHandler.js @@ -38,7 +38,7 @@ async function replenishFields(receipt) { async function checkAPI(line_id, barcode) { console.log(barcode) - const response = await fetch(`/receipts/checkAPI`, { + const response = await fetch(`/receipts/api/checkAPI`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -300,7 +300,7 @@ async function openLineEditModal(line_data) { async function addSKULine(item_id) { console.log(item_id) - const response = await fetch(`/receipts/addSKULine`, { + const response = await fetch(`/receipts/api/addSKULine`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -316,7 +316,7 @@ async function addSKULine(item_id) { } async function resolveLine(line_id) { - const response = await fetch(`/receipts/resolveLine`, { + const response = await fetch(`/receipts/api/resolveLine`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -329,7 +329,7 @@ async function resolveLine(line_id) { } async function resolveReceipt() { - const response = await fetch(`/receipts/resolveReceipt`, { + const response = await fetch(`/receipts/api/resolveReceipt`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -346,7 +346,7 @@ async function uploadFile() { const formData = new FormData(); formData.append('file', fileInput.files[0]); - await fetch(`/receipt/uploadfile/${receipt_id}`, { + await fetch(`/receipts/api/uploadfile/${receipt_id}`, { method: 'POST', body: formData }) @@ -379,7 +379,7 @@ async function saveLine(line_id){ } } - const response = await fetch(`/receipts/saveLine`, { + const response = await fetch(`/receipts/api/saveLine`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -395,7 +395,7 @@ async function saveLine(line_id){ } async function deleteLine(id) { - const response = await fetch(`/receipts/deleteLine`, { + const response = await fetch(`/receipts/api/deleteLine`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -409,7 +409,7 @@ async function deleteLine(id) { async function denyLine(id) { console.log(id) - const response = await fetch(`/receipts/denyLine`, { + const response = await fetch(`/receipts/api/denyLine`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -422,7 +422,7 @@ async function denyLine(id) { } async function getReceipt(id) { - const url = new URL('/receipts/getReceipt', window.location.origin); + const url = new URL('/receipts/api/getReceipt', window.location.origin); url.searchParams.append('id', id); const response = await fetch(url); data = await response.json(); @@ -433,7 +433,7 @@ async function getReceipt(id) { let items_limit = 50; async function getItems() { console.log("getting items") - const url = new URL('/receipts/getItems', window.location.origin); + const url = new URL('/receipts/api/getItems', window.location.origin); url.searchParams.append('page', pagination_current); url.searchParams.append('limit', items_limit); const response = await fetch(url); @@ -531,7 +531,7 @@ let vendor_limit = 25 let vendor_current_page = 1 let vendor_end_page = 10 async function getVendors() { - const url = new URL('/receipt/getVendors', window.location.origin); + const url = new URL('/receipts/api/getVendors', window.location.origin); url.searchParams.append('page', vendor_current_page); url.searchParams.append('limit', vendor_limit); const response = await fetch(url); @@ -541,7 +541,7 @@ async function getVendors() { } async function postVendorUpdate(vendor_id) { - const response = await fetch(`/receipt/postVendorUpdate`, { + const response = await fetch(`/receipts/api/postVendorUpdate`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -691,7 +691,7 @@ let links_limit = 25 let links_current_page = 1 let links_end_page = 10 async function getLinkedLists() { - const url = new URL('/receipt/getLinkedLists', window.location.origin); + const url = new URL('/receipts/api/getLinkedLists', window.location.origin); url.searchParams.append('page', vendor_current_page); url.searchParams.append('limit', vendor_limit); const response = await fetch(url); @@ -701,7 +701,7 @@ async function getLinkedLists() { } async function postLinkedItem(receipt_item_id, link_list_id, conv_factor) { - const response = await fetch(`/receipt/postLinkedItem`, { + const response = await fetch(`/receipts/api/postLinkedItem`, { method: 'POST', headers: { 'Content-Type': 'application/json', diff --git a/static/handlers/receiptsHandler.js b/application/receipts/static/js/receiptsHandler.js similarity index 97% rename from static/handlers/receiptsHandler.js rename to application/receipts/static/js/receiptsHandler.js index 54d8a93..d929d2d 100644 --- a/static/handlers/receiptsHandler.js +++ b/application/receipts/static/js/receiptsHandler.js @@ -64,7 +64,7 @@ async function replenishReceiptsTable(receipts) { ) tableRow.onclick = async function() { - let url = `${window.location.origin}/receipt/${receipts[i].id}`; + let url = `${window.location.origin}/receipts/${receipts[i].id}`; window.location.href = url; } @@ -77,7 +77,7 @@ async function replenishReceiptsTable(receipts) { var receipts_limit = 10 async function getReceipts() { - const url = new URL('/receipts/getReceipts', window.location.origin); + const url = new URL('/receipts/api/getReceipts', window.location.origin); url.searchParams.append('page', pagination_current); url.searchParams.append('limit', receipts_limit); const response = await fetch(url); diff --git a/templates/receipts/receipt.html b/application/receipts/templates/receipt.html similarity index 99% rename from templates/receipts/receipt.html rename to application/receipts/templates/receipt.html index 2b1ea1e..d702f47 100644 --- a/templates/receipts/receipt.html +++ b/application/receipts/templates/receipt.html @@ -390,6 +390,6 @@ - + \ No newline at end of file diff --git a/templates/receipts/index.html b/application/receipts/templates/receipts_index.html similarity index 98% rename from templates/receipts/index.html rename to application/receipts/templates/receipts_index.html index 744c85e..da5b01b 100644 --- a/templates/receipts/index.html +++ b/application/receipts/templates/receipts_index.html @@ -124,6 +124,6 @@ - + \ No newline at end of file diff --git a/application/recipes/recipes_api.py b/application/recipes/recipes_api.py index 9719ce9..790b053 100644 --- a/application/recipes/recipes_api.py +++ b/application/recipes/recipes_api.py @@ -23,7 +23,7 @@ def recipes(): description: returns recipes/index.html with sites, current_site. """ sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("index.html", + return render_template("recipes_index.html", current_site=session['selected_site'], sites=sites) diff --git a/application/recipes/templates/index.html b/application/recipes/templates/recipes_index.html similarity index 100% rename from application/recipes/templates/index.html rename to application/recipes/templates/recipes_index.html diff --git a/database.log b/database.log index 0a169c5..91cf20d 100644 --- a/database.log +++ b/database.log @@ -1961,4 +1961,13 @@ sql='INSERT INTO test_shopping_list_items(uuid, sl_id, item_type, item_name, uom, qty, item_id, links) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') 2025-07-12 09:29:10.063362 --- ERROR --- DatabaseError(message='tuple index out of range', payload=(5,), - sql='SELECT *, (SELECT COALESCE(array_agg(row_to_json(g)), '{}') FROM test_shopping_list_items g WHERE sl_id = test_shopping_lists.id) AS sl_items FROM test_shopping_lists LIMIT %s OFFSET %s;') \ No newline at end of file + sql='SELECT *, (SELECT COALESCE(array_agg(row_to_json(g)), '{}') FROM test_shopping_list_items g WHERE sl_id = test_shopping_lists.id) AS sl_items FROM test_shopping_lists LIMIT %s OFFSET %s;') +2025-07-12 10:32:47.237422 --- ERROR --- DatabaseError(message='invalid input syntax for type integer: "each"LINE 3: VALUES ('13kitql4', '13', 'custom', 'test', 'each', 1, NULL,... ^', + payload=('13kitql4', '13', 'custom', 'test', 'each', 1, None, '{"main": "test2"}'), + sql='INSERT INTO test_shopping_list_items(uuid, sl_id, item_type, item_name, uom, qty, item_id, links) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') +2025-07-12 15:35:45.537855 --- ERROR --- DatabaseError(message='can't adapt type 'dict'', + payload=('sku', 26, '%041667029362%', 'Microwave popcorn', 1, {'id': 1, 'plural': 'pinches', 'single': ' pinch', 'fullname': ' Pinch', 'description': ' Less than 1/8 teaspoon.'}, '{"cost": 0, "expires": false}', 'Unresolved'), + sql='INSERT INTO test_receipt_items(type, receipt_id, barcode, name, qty, uom, data, status) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') +2025-07-12 15:45:15.171378 --- ERROR --- DatabaseError(message='can't adapt type 'dict'', + payload=('sku', 26, '%028400517829%', 'Tostitos', 1, {'id': 1, 'plural': 'pinches', 'single': ' pinch', 'fullname': ' Pinch', 'description': ' Less than 1/8 teaspoon.'}, '{"cost": 0, "expires": false}', 'Unresolved'), + sql='INSERT INTO test_receipt_items(type, receipt_id, barcode, name, qty, uom, data, status) VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING *;') \ No newline at end of file diff --git a/external_API.py b/external_API.py deleted file mode 100644 index 64ac9a6..0000000 --- a/external_API.py +++ /dev/null @@ -1,120 +0,0 @@ -from flask import Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response -import psycopg2, math, json, datetime, main, copy, requests, process, database, pprint, MyDataclasses -from config import config, sites_config -from main import unfoldCostLayers -from threading import Thread -from queue import Queue -import time, process -from user_api import login_required -import webpush - -external_api = Blueprint('external', __name__) - -@external_api.route('/external/getItemLocations', methods=["GET"]) -def getItemLocations(): - recordset = [] - count = 0 - if request.method == "GET": - item_id = int(request.args.get('id', 1)) - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - recordset, count = database.getItemLocations(conn, site_name, (item_id, limit, offset), convert=True) - return jsonify({"locations":recordset, "end":math.ceil(count/limit), "error":False, "message":"item fetched succesfully!"}) - return jsonify({"locations":recordset, "end": math.ceil(count/limit), "error":True, "message":"There was an error with this GET statement"}) - -@external_api.route('/external/getItem', methods=["GET"]) -def getItem(): - record = {} - if request.method == "GET": - item_id = int(request.args.get('id', 1)) - site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - record = database.getItemAllByID(conn, site_name, (item_id, ), convert=True) - return jsonify({"item":record, "error":False, "message":"item fetched succesfully!"}) - return jsonify({"item":record, "error":True, "message":"There was an error with this GET statement"}) - -@external_api.route('/external/getItem/barcode', methods=["GET"]) -def getItemBarcode(): - record = {} - if request.method == "GET": - item_barcode = f"%{str(request.args.get('barcode', 1))}%" - site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - record = database.getItemAllByBarcode(conn, site_name, (item_barcode, ), convert=True) - if record == {}: - return jsonify({"item":None, "error":True, "message":"Item either does not exist or there was a larger problem!"}) - else: - return jsonify({"item":record, "error":False, "message":"item fetched succesfully!"}) - return jsonify({"item":record, "error":True, "message":"There was an error with this GET statement"}) - -@external_api.route('/external/getModalItems', methods=["GET"]) -@login_required -def getModalItems(): - recordset = [] - count = {'count': 0} - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 10)) - search_string = request.args.get('search_string', '') - site_name = session['selected_site'] - offset = (page - 1) * limit - database_config = config() - with psycopg2.connect(**database_config) as conn: - payload = (search_string, limit, offset) - recordset, count = database.getItemsForModal(conn, site_name, payload, convert=True) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":False, "message":"items fetched succesfully!"}) - return jsonify({"items":recordset, "end":math.ceil(count['count']/limit), "error":True, "message":"There was an error with this GET statement"}) - -@external_api.route('/external/postTransaction', methods=["POST"]) -def post_transaction(): - if request.method == "POST": - database_config = config() - with psycopg2.connect(**database_config) as conn: - result = process.postTransaction( - conn=conn, - site_name=session['selected_site'], - user_id=session['user_id'], - data=dict(request.json) - ) - return jsonify(result) - return jsonify({"error":True, "message":"There was an error with this POST statement"}) - - -@external_api.route('/external/postReceipt', methods=["POST"]) -def post_receipt(): - if request.method == "POST": - site_name = session['selected_site'] - user_id = session['user_id'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - items = request.json['items'] - receipt_id = database.request_receipt_id(conn, site_name) - receipt_id = f"SIR-{receipt_id}" - receipt = MyDataclasses.ReceiptPayload( - receipt_id=receipt_id, - submitted_by=user_id - ) - receipt = database.insertReceiptsTuple(conn, site_name, receipt.payload(), convert=True) - - for item in items: - - receipt_item = MyDataclasses.ReceiptItemPayload( - type=item['type'], - receipt_id=receipt['id'], - barcode=item['item']['barcode'], - name=item['item']['item_name'], - qty=item['item']['qty'], - uom=item['item']['uom'], - data=item['item']['data'] - ) - database.insertReceiptItemsTuple(conn, site_name, receipt_item.payload()) - #webpush.push_notifications('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") - webpush.push_ntfy('New Receipt', f"Receipt {receipt['receipt_id']} was added to Site -> {site_name}!") - return jsonify({"error":False, "message":"Transaction Complete!"}) - return jsonify({"error":True, "message":"There was an error with this POST statement"}) \ No newline at end of file diff --git a/group_api.py b/group_api.py deleted file mode 100644 index f0066ee..0000000 --- a/group_api.py +++ /dev/null @@ -1,34 +0,0 @@ -from flask import Blueprint, request, render_template, redirect, session, url_for, send_file, jsonify, Response -import psycopg2, math, json, datetime, main, copy, requests, process, database, pprint, MyDataclasses -from config import config, sites_config -from main import unfoldCostLayers -from user_api import login_required - -groups_api = Blueprint('groups_api', __name__) - -@groups_api.route("/groups") -@login_required -def groups(): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("groups/index.html", - current_site=session['selected_site'], - sites=sites) - -@groups_api.route("/group/") -@login_required -def group(id): - sites = [site[1] for site in main.get_sites(session['user']['sites'])] - return render_template("groups/group.html", id=id, current_site=session['selected_site'], sites=sites) - -@groups_api.route('/groups/getGroups', methods=["GET"]) -def getGroups(): - groups = [] - if request.method == "GET": - page = int(request.args.get('page', 1)) - limit = int(request.args.get('limit', 1)) - offset = (page-1)*limit - database_config = config() - site_name = session['selected_site'] - with psycopg2.connect(**database_config) as conn: - groups, count = database.getGroups(conn, site_name, (limit, offset), convert=True) - return jsonify({'groups': groups, 'end': math.ceil(count/limit), 'error': False, 'message': 'bleh'}) \ No newline at end of file diff --git a/scratch.py b/scratch.py deleted file mode 100644 index 8ed4f3f..0000000 --- a/scratch.py +++ /dev/null @@ -1,235 +0,0 @@ - -from config import config -import psycopg2, requests, database, MyDataclasses -import main, datetime, json, csv -from main import lst2pgarr -import process - -def importItemFromCSV(test, site_name, uuid, site): - logistics_info = MyDataclasses.LogisticsInfoPayload( - barcode=test['barcode'], - primary_location=site['default_primary_location'], - primary_zone=site['default_zone'], - auto_issue_location=site['default_auto_issue_location'], - auto_issue_zone=site['default_zone']) - - item_info = MyDataclasses.ItemInfoPayload(test['barcode']) - - - # Food Info - t = ['serving', 'serving_unit', 'calories', 'calories_unit', 'proteins', - 'proteins_unit', 'fats', 'fats_unit', 'carbohydrates', 'carbohydrates_unit', 'sugars', 'sugars_unit', 'sodium', 'sodium_unit', - 'fibers', 'fibers_unit'] - - other_tags = [ - 'serving', - 'serving_unit', - 'calories', - 'calories_unit', - 'proteins_serving', - 'proteins_unit', - 'fat_serving', - 'fat_unit', - 'carbohydrates_serving', - 'carbohydrates_unit', - 'sugars_serving', - 'sugars_unit', - 'sodium_serving', - 'sodium_unit', - 'fiber_serving', - 'fiber_unit', - ] - - nutriments = test['nutriments'].replace("'", '"') - nutriments = nutriments.replace("{", "").replace("}", "") - key_values = nutriments.split(", ") - nutriments = {} - - if key_values != ['']: - for s in key_values: - s= s.split(": ") - k = s[0].replace('"', "") - v = s[1].replace('"', "") - nutriments[k] = v - - nutrients = {} - for i in range(len(other_tags)): - if other_tags[i] in nutriments.keys(): - nutrients[t[i]] = nutriments[other_tags[i]] - else: - nutrients[t[i]] = '' - - food_groups = test['food_groups_tags'] - food_groups = food_groups.replace('[', "").replace("]", "") - food_groups = food_groups.replace("'", "") - food_groups = food_groups.split(", ") - - ingrediants = test['ingredients_hierarchy'] - ingrediants = ingrediants.replace('[', "").replace("]", "") - ingrediants = ingrediants.replace("'", "") - ingrediants = ingrediants.split(", ") - - - food_info = MyDataclasses.FoodInfoPayload(food_groups, ingrediants, nutrients) - - if test['brands'] != "": - brand = MyDataclasses.BrandsPayload(test['brands']) - - logistics_info_id = 0 - item_info_id = 0 - food_info_id = 0 - brand_id = 1 - - database_config = config() - try: - with psycopg2.connect(**database_config) as conn: - logistics_info = database.insertLogisticsInfoTuple(conn, site_name, logistics_info.payload()) - item_info = database.insertItemInfoTuple(conn, site_name, item_info.payload()) - food_info = database.insertFoodInfoTuple(conn, site_name, food_info.payload()) - if test['brands'] != "": - brand = database.insertBrandsTuple(conn, site_name, brand.payload()) - brand_id = brand[0] - - print("Logistics:", logistics_info) - print("item_info:", item_info) - print("food_info:", food_info) - print("brand:", brand_id) - - name = test['name'] - name = name.replace("'", "@&apostraphe&") - description = "" - tags = lst2pgarr([]) - links = json.dumps({}) - search_string = f"&&{test['barcode']}&&{name}&&" - - - item = MyDataclasses.ItemsPayload(test['barcode'], test['name'], item_info[0], - logistics_info[0], food_info[0], brand=brand_id, - row_type="single", item_type=test["sub_type"], search_string=search_string) - - item = database.insertItemTuple(conn, site_name, item.payload(), convert=True) - item = database.getItemAllByID(conn, site_name, (item['id'], ), convert=True) - print("Item:", item) - with conn.cursor() as cur: - cur.execute(f"SELECT id FROM {site_name}_locations WHERE uuid=%s;", (uuid, )) - location_id = cur.fetchone()[0] - - - print("Location ID:", location_id) - item_location = MyDataclasses.ItemLocationPayload(item['id'], location_id) - location = database.insertItemLocationsTuple(conn, site_name, item_location.payload(), convert=True) - - print("Item location:", location) - - creation_tuple = MyDataclasses.TransactionPayload( - datetime.datetime.now(), - logistics_info[0], - item['barcode'], - item['item_name'], - "SYSTEM", - 0.0, - "Item added to the System!", - 1, - {'location': uuid} - ) - - - database.insertTransactionsTuple(conn, site_name, creation_tuple.payload()) - - qoh = float(test['qty_on_hand']) - print(qoh, type(qoh)) - trans_type = "Adjust In" - if qoh != 0.0: - if qoh >= 0.0: - trans_type = "Adjust In" - else: - trans_type = "Adjust Out" - - payload = { - 'item_id': item['id'], - 'logistics_info_id': item['logistics_info_id'], - 'barcode': item['barcode'], - 'item_name': item['item_name'], - 'transaction_type': trans_type, - 'quantity': float(qoh), - 'description': f'creation quantity', - 'cost': item['item_info']['cost'], - 'vendor': 1, - 'expires': None, - 'location_id': location_id - } - - process.postTransaction(conn, site_name, 1, payload) - conn.commit() - except Exception as error: - print(error, item_info) - - -def importCSV(path, site_name): - database_config = config() - with psycopg2.connect(**database_config) as conn: - site = database.selectSiteTuple(conn, (site_name,), convert=True) - default_zone = database.__selectTuple(conn, site_name, f"{site_name}_zones", (site['default_zone'], ), convert=True) - default_location = database.__selectTuple(conn, site_name, f"{site_name}_locations", (site['default_primary_location'],), convert=True) - - - uuid = f"{default_zone['name']}@{default_location['name']}" - print(uuid) - with open(path, "r+", encoding="utf-8") as file: - csv_reader = csv.DictReader(file) - for row in csv_reader: - try: - importItemFromCSV(row, site_name, uuid, site) - except Exception as error: - with open("process.log", "a+") as file: - file.write("\n") - file.write(f"{datetime.datetime.now()} --- CAUTION --- {error}\n") - file.write(f"{" "*41}{json.dumps(row)}") - -#importCSV("2025-03-19-Pantry (1).csv", "main") - -def importLinkFromCSV(row, site_name, conn): - barcode = row['barcode'] - link_barcode=row['link_barcode'] - item_data=json.loads(row['data'].replace('\\j*s*o*n\\', "")) - conv_factor=row['conv_factor'] - - link_item = database.getItemAllByBarcode(conn, site_name, (link_barcode, ), convert=True) - - link = MyDataclasses.ItemLinkPayload( - barcode=barcode, - link=link_item['id'], - data=item_data, - conv_factor=conv_factor - ) - - newitem = { - 'barcode': barcode, - 'name': item_data['name'], - 'subtype': '' - } - - try: - process.postNewBlankItem(conn, site_name, 1, newitem) - except Exception as error: - print(error) - pass - - lin = database.insertItemLinksTuple(conn, site_name, link.payload()) - print(lin) - -def importLinksFromCSV(path, site_name): - database_config = config() - with psycopg2.connect(**database_config) as conn: - with open(path, "r+", encoding="utf-8") as file: - csv_reader = csv.DictReader(file) - for row in csv_reader: - try: - importLinkFromCSV(row, site_name, conn) - except Exception as error: - with open("process.log", "a+") as file: - file.write("\n") - file.write(f"{datetime.datetime.now()} --- CAUTION --- {error}\n") - file.write(f"{" "*41}{json.dumps(row)}") - -importLinksFromCSV("test.csv", 'test') \ No newline at end of file diff --git a/static/files/receipts/Order_details_-_Walmart.com_07122025.pdf b/static/files/receipts/Order_details_-_Walmart.com_07122025.pdf new file mode 100644 index 0000000000000000000000000000000000000000..965d9ce73e98c915e98bf513be6fb99baf17a316 GIT binary patch literal 243881 zcmeF22VB(JzVAV#NLLUPLC)u^eTcN zD1v|@O+b2+4sUe#yLY%b@1C>YednxkK2DPPCt3OCmv7d@C9{UCJSPtqA2IXWsmUQ? z9t1bS(ae@uObn@GgRw&+Sk+xD&@KoIG{)4%&K1Fl&^5KQH+8{qnLFCE5hG<>(54ti z7X+)S;}sh_J5wY-7dOIyRoBMB!qLMOp{9f2;pXBNMPL^Q@QETk1^5iu5K>M~c4%F+ znX(NA$&V7`LJ443Q9h@ms=|S=v$>2$D4@+RJ7NoEtX&-K(MTSY5EphU*ez?DTAI4p z{IZgqh1GB0VH>02;%MP!j%_Wg_GKGWB=*P<_SkiQX{L>%gRChAdq}b(yxhF}+=4v3 zJiNRDyr?tW+$`8PwocX2V($_O31T$%(6EG1zmYOGMeq=*XhY z9WAii{js`^i>ZUFCAMt{ZepYg+QACDD`6ChTUbH@;fleYLVM!f-rdhQluGi7@;JD- zI5@c2KRCPnI5IetB&6h|#FXS@Qqgy$qP1FHy1Tuc}xBzX3mf!bMF zT{%G^4SP*pV>2sjD+yI+FDDC61GJU-ZVe6z(V;l<)3~??adsPU=&@VI!^OUEetqHL z6YR&`M~MBBnG(BWTtfWceT~b5w;!LHSJQ0YL8`-2hnP<6_TdnHUt1DqYfDso+Fg=m zbSwGpqK|sZI+z3;{`nzDy44|yvk^LbH=`YmRQ+T%GRG-;)TXypt?80G@7u!Iq#GsE z=uC645C8#T02jjFZHCh`q9?yTiC>GzeN-eI5^2gAr|zZqadsD{V6ZXiX8j5^W_hT> z*r+&cO6URj3ormV0GGi(MFkNfxnwicF8Tw$JaUG^^-F_mpGziZSU=Sl%)I?%>KoGA ztZR8^+%+t8hvNztPhVt3pq<4@b0+$uM7=NNo1_JJ4;DtuYZpmDqCf{Jc;*63|R| zi{jXEAu%uuXn-)ly%y@|FAGhlHC#DaQY4h{)p)&lc!xMD7Oi!OkytbsjGLYhWzc-Xocmka@as;*WbEaRGb@@e zD7A`u<~_5R%zZwYLw5r?V(9dihHMTWwu@Gd zhvPVs_&p5yWi*4fE*H?5I$Fv4{VlEdWhZzI0`D}3bz&u{^NP#DTVvJkzbLq$l2y0E z-$TY-R-AhFm%_j06L*;2mUV$$nKAsr#r{TgD~qaOkE+HyQ(wBN;CTHHoru4s6~FFe zf$S-@XAE;>;~9>b;i9qc_w|e{Tkh(cZuKgh(-Tp@7XB?0oI2O16#4m2Ae9B4K`ID4=G!hwbZgage62nU)C z5Y8TKfN-GU0O3Hh0m6Z11B9~&8z3BLI6yeiY=Cf}*#P0}!3GEi8V(Q+G#elsXf{AN zd$0k*frbNw1I-2q2bv8K&K_)laG>D;;Xtzi!hvQ3gtG@5ARK5oKseBBfN-GM0O9Px z1_%cl4iFAB8z3BLHb6LgumQq>h698H%?1bunhg-n9&CVcpy2@FK(hhDfo21Qvj-a> z9B4Q|IM8f>aG==$;q1W%2nQMt5DqjOARK5mKsbA_0m6ZX1B3(31_%e54G_*AY=Cf} z;Q--4vjM_^W&?z?2OA(9XgEMP&}@KkpxFT7?7;>I2O16#4m2Ae9B4K`ID4=G!hwbZ zgage62nU)C5Y8TKfN-GU0O3Hh0m6Z11B9~&8z3BLI6yeiY=Cf}*#P0}!3GEi8V(Q+ zG#elsXf{ANd$0k*frbNw1I-2q2bv8K&K_)laG>D;;Xtzi!hvQ3gtG@5ARK5oKseBB zfN-GM0O9Px1_%cl4iFAB8z3BLHb6LgumQq>h698H%?1bunhg-n9&CVcpy2@FK(hhD zfo21Qvj-a>9B4Q|IM8f>aG==$;q1W%2nQMt5DqjOARK5mKsbA_0m6ZX1B3(31_%e5 z4G_*AY=Cf};Q--4vjM_^W&?z?2OA(9XgEMP&}@KkpxFT7?7;>I2O16#4m2Ae9B4K` zID4=G!hwbZgage62nU)C5Y8TKfN-GU0O3Hh0m6Z11B9~&8z3BLI6yeiY=Cf}*#P0} z!3GEi8V(Q+G#elsXf{ANd$0k*frbNw1I-2q2bv8K&K_)laG>D;;Xtzi!hvQ3gtG@5 zARK5oKseBBfN-GM0O9Px1_%cl4iFAB8z3BLHb6LgumQq>h698H%?1bunhg-n9&CVc zpy2@FK(hhDfo21Qvj-a>9B4Q|IM8f>aG==$;q1W%2nQMt5DqjOARK5mKsbA_0m6ZX z1B3(31_%e54G_*AY=Cf};Q--4vjM_^W&?z?2OA(9XgEMP&}@KkpxFT7?7;>I2O16# z4m2Ae9B4K`ID4=G!hwbZgage62nU)C5Y8TKfN-GU0O3Hh0m6Z11B9~&8z3BLI6yei zY=Cf}*#P0}!3GEi8V(Q+G#elsXf{ANd$0k*frbNw1I-2q2bv8K&K_)laG>D;;Xtzi z!hvQ3gtG@5ARK5oKseBBfN-GM0O9Px1_%cl4iFAB8z3BLHb6LgumQq>h698H%?1bu znhg-n9&CVcpy2@FK(hhDfo21Qvj-a>9B4Q|IM8f>aG==$;q1W%2nQMt5DqjOARK5m zKsbA_0m6ZX1B3(31_%e54G_*AY=Cf};Q--4vjM_^W&?z?2OA(9XgEMP&}@KkpxFT7 z?7;>I2O16#4m2Ae9B4K`ID4=G!hwbZgage62nU)C5Y8TKfN-GU0O3Hh`Tt8eo6raH zulQ!az&p)homffgyyCL()>yUsFADDNq-4}>WW6^K8CfE^EP8JGZVTZZic`nWiA8xK z7Ntf5z$~Bv!T|ePU@9%S^-4vdKvel;*orSYsp5h`mz<%8Pr+M~Er~vntG<^+lNL{$ z+$fx=ZnmvjT6mUxvu(@4YQ$BN{@&U^N7EM{K@?aBfPgT73*m1yL-_k`hMb&gqhT}O zyzZTz72dSc2aDrzPhvZAOY*o@BRd?wwm0qKtcO3p;>@LfE&1e!MRD*KU;uIeE`xuH z3RpTWFn?knEvxoP&3VySJypF@-_!j`GcxNzi-^4_^JH24#ztHF7fTNm>e;=dwzgSI zD_4~0y?X;-Apiox04{{T+YBug?Q^$sy^^z@Ki_U6xE&^`-yP55PB-xurgA^3h; z{QV1QX-7|lJ`YL=!NVtrKnV(PBlv{51+d#vaB*~V`o6+Xt^F~JZ7a47E~XByPNpts z2XilCqzrb6EZW`19IfDDik(+PU|ihL-#4v-cCf-&BLq+q5{RFXITND3^0VdaW#Js(2Wkyw-X&+rAY#XrOUshPhL zz&2IY)b;Xj2k?FFNBdRW>}?zzU2QPf)+!*rpB5~l-_DcJf4fQSsde~%gg*yB_`k03 z=M($mgb^ckZ7i@rQ2ZzXV&plrjg>V9f#Mb9!9sMjb9B*mGBwA>;`cD6Z7{AHXcrkr zdnfEJ9WV$XVx+u{9R}@!t&`D_MVmWXpnqQd$7!*|CJ4d(D|w+Dw+P z=Un_Mkw{2ux%a8{*x5r#b!th{Y7f>X7CJ{BH7neTWH>G&hVcZmfX07#7}QU)sF|~< zon&i%SK_?p%oxWL(CmkoB{kS~Xv_QbT6Ez8i((bqa>AEnwIS8a(!Q(qsr_=L5%x5F zoF)3!rJZ0F(D+XdgF0u)B43~Lih7zPW-sS)iCjvVUGJXTb9i@6o?^p%>ruDIT$*^=c{#O5t{}pY<~b*r1vLJH!!S8k@IXH9 z+)g&;F>iuWvCVR(fcg=gd&nTi>S##~XIeiIf8$V&S8GPM&&1vcqqA1b?3(_5IceK) zu$6r4SGNauByd9p-IHH>XEtM{59AZhRZW(BznrwQmphVAs!T4HYbMO+ukP1$p)i^I za$v01U7=p>f$@meef9B$%oA#H>F2sS+LBHMCW(U|OW?O6_^JGdCj}4W)oyPqc9ndf z(@bVjd38^+y6L=Z^?SQroFKL+sTIP5p5p%M*n3ofeDe50zVgCaPe$BY_if~YyFtk= zjwJce{Ax<)9C!ltZ};>qQiS2S!ccQh-GMvrGF!LNI<4Cl=e>Q3Y$bdzzBR%6))|`& zW`CCC+E1)l)?N{}nS3O)h&l^|Du z6?_8lD?zRREBFN9SAtvtR`3bHuLQXQtl$%XUkP#rSivU%zY^pMu!2tjekI5iU~}6fE9cK@GC*C04w+e;8%iN0aow{z^??k0<7Q@fL{r61z5o+0KXFC z3b2At0DdLN6<`IQ0Q^djE5Hgq0r-_5SAZ3K0`MzAt^h0e1mIVKTme?_3Ba!exdN=< z6M$a{as^nyCjh?^W`CCC+E1)l)?N{}nS3O)h&l^|Du z6?_8lD?zRREBFN9SAtvtR`3bHuLQXQtl$%XUkP#rSivU%zY^pMu!2tjekI5iU~}6fE9cK@GC*C04w+e;8%iN0aow{z^??k0<7Q@fL{r61z5o+0KXFC z3b2At0DdLN6<`IQ0Q^djE5Hgq0r-_5SAZ3K0`MzAt^h0e1mIVKTme?_3Ba!exdN=< z6M$a{as^nyCjh?^W`CCC+E1)l)?N{}nS3O)h&l^|Du z6?_8lD?zRREBFN9SAtvtR`3bHuLQXQtl$%XUkP#rSivU%zY^pMu!2tjekI5iU~}6fE9cK@GC*C04w+e;8%iN0aow{z^??k0<7Q@fL{r61z5o+0KXFC z3b2At0DdLN6<`IQ0Q^djE5Hgq0r-_5SAZ3K0`MzAt^h0e1mIVKTme?_3Ba!exdN=< z6M$a{as^nyCjh?^oxI z{2U~ST@8VRyH`E=RqRX9HiPT=%c%8)fHM5Vk;&?4f+Xb{-iu%gh`}BKj zJsJ1b-rW{lxMI+-i-TgQpP6%g@oC)k*}$xaXi__v_;-Qu$wRavvOh9A^t6g*vfxUb zHfrVedDO~X&6SOggu{+mk0NTP8N3_C$_rXHZM56AY_;3Bc1lLow{{*YB|nY4x2brb z-)*M2-|<@MRl9E=uv1p09rh3U#lb9~@t+z7FYIODU@mIClR0B#x1H6Iyt!?uqqePM?#jMsX->cv|_5F%!$?BVao|NaUGsD5|{&gJP-kKCA z%H?h_{p^El5ts!u{?o(YN|%(nncY|MDk)nnt6#!h zFM`xQ4b04dTNAi5gO16s{j!Q@{V(6mGs|jrcwxCWh4UazZ1Jdg^AjXmboPQrpc8^J9s;ql-N;QVZ?s=;mUM zc12)IHC!Ccwb2-aK2k$g9)Z+BdtwksMSD{#wDixPGCzMR8WJPrJTVH|7*h=T`>F~k z1PZ%PEeQ$YU-tEVv7RtO_@~9+zmS%8^hD_M2=O9NLP7|XAP@F00e)fZwiH|(-JHI! z@KbAl%wpS$ZG(%cgR7IN3);clix??`T_THiw=qX6xR_$+6%iO0H}v;StDqgMFxChG zl!OH0XBN)HD1MXxcJJH>P86>o58}s;vHL@q+Y^6ZifyjKj}LByixsvFD1?7e4hP0xjtZ0$Q4Qq$_^w3l%)u1;=exT^dn%vp)Zhd-YTeOR0(r4{A* zxvqJrrgHUc0ZvrhL&?xO`Hz(P7xWW-70#Nl_cP#IDErODo!YEeQRh-7VQ?JX$9R^y zG*5tt!Q{328iyszP;0#UBg8(_L$020xTVVR1h$X5TlSLG3GEV0FJCnmtW02bbn4xI zsYb*tm~>%sNHeYFKyxp3C%5K@NAd@b9zGhxPB%9BE{gS$c5O{fgRFv-jFc&DjO~C` zk&7qZ25p;R`U6)o3R(?M)ykU(@)GN}&A+BI5V~8d=Zi&6xeqPT#B%Cg^KX1KXom7R zyt~C-)PWOcFROI!rH&6y&}-$&zc`D$zX6B3HhyHD7^!Pxfz1>Tik}#H4sBy)jX|Jz zu_1J{b9B*mGBrnIFBC-?8EI2jv;~6a`+3yDM){{8@cg(Mu#vaHxN4wXWE}0C939XO z7=+M&bB0lZ+`mQGGjZn9YX^FTL+#9EIJhomW!DX!BKS{T8@T3QQB&nle)*o{TaqZm_W1ruet=R~_S@K!p>U{jdc%yRXU5L@Ql~jt*&mTB~H{4baL?f?G z`*&@<^W8Vrdi+XfPi_h!zNg)My7AWz9~@R!Mz&;{0LxBErvi=imrBkT!o1HE(Puk+ z%)iAhdhtWcg2RQDyeqL6Fv<@MT4;OBbZQ3js2@pJmB+H^dPqied>t(>XO}b|tlk|e zON^0@anYKl&qhWrKhKS8-q=3d@t}+}p3zlfIdzbj_|*Nf<}0xi%tUz4Sy}LVkEv%n z1Z`Ls)Q_tw#LUhXm)yxNOcCR(sdFz#{9K)x@S^P4>wP3*yc+wf?(|2W6C6vp67_XnyRU1M$)ocQy`qeccc|IT$4w8LxNoGTrtG6z^U*zXxVg9_{OrLG zBm3k|C=ZelA91Z+!Y8Pka#)(x>mcLWVA$WuV(C$tBT!%gjiq^D#5j@b4 zU3@1ekhk=(4O15{4l|3-iw~7&bY{FCc&h9?@~<|H6+T8?{L+SWnIWRtTwZWfrH>b1 zfzC4Y>`~u9{CX??C=P;S)aG4YWm28^vA%c`gF^4V7+&ja#F-SJ6~E?H@?ziqkJHb5 z?oJm)X$Y>B(Rks6x7~K^zVN^xOtIFEd24YgCwK7Q<-Zh&KAqU{FfHXxu+Aq% z8*TovH#8gf9p*3MTlHCficCy=tAk<`U<}?+?P}9F{OE|h={)VZ)usJ~5iE2(et|R< z1ow39$+*1GS!|)9;fwqqgHX8*)YE5AkhR?js1B>(y%9nX{k4>VI$n!jCOutq-_hQ{ z3pfuFV|h7E9WK#Xwa=sU7OgH_>>3_bUdCJ@8_*#nZ&W#FXPbpo? zi79-xm{mLO9Q_!Vy6POp-;@Vu)lX|t1HUy;xwe{`O*GOkPP2>>IjK5@lf2l@uJzfw zn){lTQ}PWd=kc`94}}y5yeFh+^vDvDJZ(D7r8+2FsvRsL>A z>FZ5Do~i>Gi9<$OmU?J|cQ?H7OHOxZFi;;4O9^p`T)E!Tp&QlLkQV!>&qi+OSXlL0 zhjSb_%oI+1ranhlo7x}0*buYvQ91XXm!Z46)q*zKvi4FmN%Y$Y+^1Xt$7o-OX9O#@ z3}k`6UCW5GDHqOP{W|opg5!kg z$k(wB+#uEnJrb8@b~P#t-&|PLa}CKIs^wk@>xL|%`o#1b)HZ=E3h!d2!tXttcp7Lq zpnmW87e`$Do4YHk)eR3V$fMZ_m^oE?qNNZg#H(qeH(bwN-*U*M(55iEd|TGS#oz;Y^Vg*gyfyP%u)$2>=OwL-v*ow`)2m?*vB@qM+1eA&+p@W zd@*@ARO3;^hCOXR$EH4C>1#8i;4b3v{W+}}=@jW7D-=`D+~mtgzV$Ir-QATsP(mm{ zavbwMqpHc7@FWg%zoJUPH$|_xGd7MaMaO-VWfm)X`U)fI?_AdJF~1ZRaZ!c!eNd^G z^Srw_KPlcO>dGo@?ci~)%>C4T8{|z9+;X${%oH2+QZJn}+%K)Za|sNNpD7sVeomO- zpVm>`AXwqyHF`&aUm6eBoGKiD>|~Q%tDu?uR^Thc_z&h^ z5AM(g+@XoJ^JwkLsT7XA-}h!b)KKFH@|n>X7whtcrX0!By-cRKF1OFN-VV#!tRD4u zAA7SaaKkUbW1V}js6H04uf(mde#KmM`?5&M=>u8^Z0;W^Jy!n;9g$)o%H8X!kY;mhet}wv>(?|_bCu~`x zd3>v3V$$>B$Yir;)0W z^y2^g+X!y|?+-sl{?V?Uu)rUBdavUo3vxv$n+(&RM7K|BYbsn>B(5Vi(7H;JT|s>2 z%tJEzhq8<0dG9z7sc9)21(tR@qXQKQ9%;F80VhlehS$BmB=8U|>@qg@kNE8P4I-QI z&z5cS$(68g6v8X_p*vw}@IW=4M}FZPy*V-6%dU7W2gVZ-JEem5D$k5& zIzqfWuh?JaciR097xSyHQYmelq7u+}6l(Hr)w7Bx8T$2Dn1s(Ctgq3GI!Gi< zH`pX0aG~HxX+aW4!jS~6(7GTAA$Ox*k%l8;#R<>dr3C{{eo$o!%$wO}zCJ*cZgiZ~ zeXM3JdY|}-5)P`x$q#J`k7#btg*u!X(W4O`w4ZcHW@J#g|CsaY{Z!TW>6hFOKlY(v zIdFKjmB;X2nkI>7GcQxXL2_-o`p_T_(;MdZUqpU*IzmS;t;`W%dE>}DaX|P|aI;O- z^C6#$(svC#Yv>;8roBm_?9-llBmRb#p0wt&;2YuiJ6p1Bfv!Q6ygkQ4oWpAmHT9Oh z)~^4ML`&?fCmKe{J8yvdrt#dgDi;G!X5N6=nt_tc?IIp7qvaakG+&i(WlCOGJxw^? z`5Co5usAf%WjQ6VoR>%@e~+HzuD}O`a!;Vp!j-Kqx2h0R8?M(rmuj-Fr!hq{THSWw z@m$!w@ytg%Pga-&-SlMlma|BKqVSBMAZz@4XCkpT@nQQ<*rdoz)%(_P?>{zm#WT|R z`EZq!LFf51L}B$k6&!f7$(QywR-PO8IP%UbanxtY>c-N{s=uLBR>O%PzX38uI@Q^% zIUWoTGfx)nk?ru?F9@D9)5X1O8Bcv$!&mslB2n~8g7|xE#d{0kYqi#8Zqf7}eIIjf zsk;WKCsZBhnOj(?sP25&*;gHxby}68lzSmp)`t37CWpR$-;{@;gIP#_#ZyhvzVr{8 z2DypCk-KIjKtb+ASYGkk((El=h$~E4Brz z$WdzhO3a{WOX-PCZX0s7hLlSs>&u7AAFB zy;`o@kzp+AuDSXbo)P>9JtH8%{p;^c9&YUPfAd50AN36%AKxFI9(;`AxrOE-t^c%* ztn61=rB_bHKgnkAN4kB@cW$s_)91oq$K4CZ?+vS*e%+;;{y_Yca_&6F2yy;7t!I8o zRE5VU|K)RRD?DK`PeUx!rD6mOK`r0_@&K+2;0NGIaK8ZeP0%L*eIw9E1bt=jn*scG z0>2@_@8f^}=L9>1`zjj~|KeHD_dziK$TMew-<|~V{oz5-&rh7S6r_I{X~6qqAj>~K z(twBe_u~xAO^!Unjy&4J!TodVf9&C(+4`Rb@BE|BuTcM`!8o|}Yipj!;4izoyNoP% zqp{Dobj!&yW58RYRhF8~gPATnS>wiohT8^xF`pJqHHy2>384`5NAano_c@Wr z7Yk$w4;oL7)y!c|1`3mqbVyt2cDg;k6L*HqJn+z!YW`TU_Mhk!nqG?%@K@``m~>P=fajY6}Ms{1+RG9_`LGriKciZ)~j#WqBIM4C`)X>uxTEl_B?0k>i z-B;3%gd&|`61Y=0v~K^!d4(~Y=U;VR|2Wi*M;L*9{}==J&pF{gk7?uK{@uBCCg$Pd z<`>}M;S&@_aPbQW3iI*^3LyBoc=!c{dALys9$qd1AznUVVPS*|npl?|;Xv$6{PQR{ z>=-5NC^)|VX8arWAbt#h`>P>vyfFUp?C+t?%ZtFi|M|30zk5c$#~?xMzOj)0B96Zs z&IdKR>|X`wpPD+z9;YIV2-hIbofC9dsCBjv^TYJK zp?kzg9W4a!_XhuAd?xRo{u$>V+VszZVt*U&$t(0k#g!sO9E$kGp00R5| zd0G(h<0!Gm{YRtm@*uG9Ux55PeD{}g{(o}|`}xEQ^89wQg3Q*BHvSlpi){n;TKnGm z@3RWnw*GnXUu5E6*ylohZ#5RY;P=wYOk@|v} z#FgmdP`sYDN=PiqXnkMRGn!RN&=l`uxXt^sRyI$R&XBFDuM2(Fcc?R>qYgjct97$- zPNx4n=`lk*ZCg*tVaf93u^Bz*or5Dz>PN)8&+|JSF3q}q5AVzLQxPud4wdu#dgeDS zWg1vtIwX*lQ$Ub;KhxIBEP>Cmg;u2ZQio0K`OB7OZ^VxqZoXF)QJ(hk#YIx}hqmEd zy`ji(lSbU?tnH`;-I>TQs1Iq}17ExzW+11zn_N_!CR`HF7#kP2^hl|>+%e9-r{(z< zXZL?i&x={v z7xo|^dtRvjH9apB_P=lZKkRv7_x+bWFBIr`{qBDNp?=r%`l%oKk91ppu*BZq{<25( zqkAG(C_arC=G7xA0ih*Z31GsNrR2qCgRCP#4BnQg(LLr<=8<cfG4dC>{zv;mJii~0gu?bO{>kH!cm#O=_|#%1iO@iMe4`o9^m#tsOOcC#xADuJ zV{)dMc^foeOyL}=>8!SQjJs6keu>b!zaMRX^{V64ihJ*vw1A#|*;(n+QGQGTr^bB; zmrk?b?vs`4zkE%iIx;;fF)?w@YjCNmW2vGeB301TlDhkmHA^^Mp1gR@oNOlzb)|{? zl;$#D_>Nryy{yJKf8zC| zW!t`&eeI2YsY=xO0uLSI3|oDclnW-3G@Na+%A-%RA841XX+Kk2lKj+mE?F8o_`Ms! zxXXFrlm3kg@f#JD%N5%t{*`$ZWnbn*E@`DyS;#(B>v>O1c`5Hg@nQapns<-#uf}%U zRz338d}k&w#blj*SUf{MvvTXG-12PsR;0rCH6Gr%Da~~Sg)v43Lnk{-t)RK=;H`t# zM4x}A4_U0QauIhf`+z2;iC=K^i?;kk~De%JeODU<3e1;jlBYgna&57+PB!EeP0=p zEiR~2E~$G`CnBg5PlT!+Y{(=Urm7lF4$j+J#cQpOFP}ATjN-w2qobHFYN03f$9QNnU^Ds1<2b^zEj}L6$ZJuYGcLrO$*N*k59vIW#^1VaE{atzmr)dFu05!)*&iiz%cgwktk6WcAsTeO-uP zzfN3OprWJ9k;Ou@r9_>4lIFc9b@B?^hO_LD?!n8FQBpZV#;uI?J%OqAtXJ|5ki8Ne zel~p7xYNe*cI86d0nBz6sW5X_A*Llj%2M)8Fbsnv*OK$N>_SVaPUlYbckS_S)`Z{^=hxO817Z;wX zJ0C5a$Wze7Pbq)(C@Wl#XjD^YL{n$%qGzA(*4qjG!J8MiKW24j%I8V+t6pvwnxxJ^ z74Ta>Zg#UAz0dCJoIZEocKEq%-Bd> zrG#M$zEd+(1=~G|82q>VJ#-~K{n1Z$FAXrY%_4l!TplvX`$+ zU+rSse7s4!dzM3DOjE}>d2VK2RlN7fXTRbCVI7x7rt!hm^nNe#jP-QgE^_|U)hr2x z#=PFI)j!Eyn|G7;exW^ieQkqgi@Id^?J7GTd+RQ#aYx--_o|x*nD2~kx7%VSYTQB+ zeFx(l##h|aXB^eoG*t)RisjAI&ZVM0+w3FI8Ru>&KlX4gFoK}ktAgarj>p=2&xond zZSC3yYJ={a8xOBoW{YhkeVM%ae2O9LE*+1efwlUQO2{d9{yt`BnVaH#oA!!r{YCNO zUtjj58J+Q6=E}qA`S9N7_f9JIjh)u^31Yd@ zs=K8;xN(5$Tk%BNC1=Bd2KhGe=g9Stuv z*X{N1%c%Kc^fg!U(i1_mqIlf*TqN--^fNMx{a^I;6sWh=s129>yyc!Y)Y0X=D5x>w zesZOvOW<0~hPP90Xs+Mox{TuEjpPTzUlHgqUJv;Cz@b*@vS2U#)smll9+R* zvmKDEFA^4Ml9#D`X`^;c6_b?wQ|Y31EIQ3Aa~iu{zny;28qiu+9{l7vIg!wE&EX|Z z_EoCnqnAAUcE9Kdq-E8enTvir!N)Vl;=6D_vQvF0sCk>j_t+)RD_P|O1-!e`30n8yEO$hWF}&U3v9C1nmgqNqjW1*)zGdd!(VBX9M%>M|N2Bs(10NK^3jm zusMVHt>FdJNqwTbOGI~LsZwL9PKO=18}4^nCd~f+DHmlb5}vRtwptHJR(w7@yeut| zAyyZ7KJaBTkw4!)!3QsblUVf|N2VtBa|T3 zX>rxiD>rJ4r|F+I+^vqP(O3D*`82G$m&u6h`inKo=&4|buYQ78=VuvD>B&<{V82BW zbseZ9^+(i)B+S;UvMln7t#QdxmdDNo20bvH+!@N25ni}El3dP;n##9+;S;qcvR__8 zCcGoCVq;Tg?%bhof~TSl)LARD+x%7uZYPY;$Br~BeGy-t5PqgOMWF4mCbG^V z)ppr>X!40JvLS{qvzkR+$c!EBWZ~XStS5l+;I;JD~di-fwC)T=Ki&tNnQ=FqB zSETx6ujE2u&6>|E1Yz@1SK=E-z2MbX^QPP2WCQ$?R| z&fG^99HXd}RGetVK#}3+^2^?}ojAsk z^T&LpN|Ay*`A(Y;msVKwme_Mv4(gH~PNFk%s(bty>uL-#X_*Q)`AOMYNm*8#vA6BH zPZZ`PRm=^QN|X|clwx*M8}r}Jyj)C-G9PI*#%VcJPC_(*e>|SZ^r*&zO4)M#qND?2 zXRNsVKRw6uwvSwCe0X5VC2ZgrQcAvNT7fVLNm_Q0jaHAFsQX9~w;x zpJE#99NwiI7VKLa9uHf>4=p~hwQfG1|L}BJOBnuW!#*W%i9-pIZTewt`ijZLsf?Yo z;aRS_>#7Df48837T*}tDX5}wFiLWuf(!BN{};7$qfo7hm%Z; z2j;gL)w|spio{O35Dk!agyv0TmP($wa?PQ3_8I<*@v%9zm;FiQ#69ghF;U|M4vR!D zQid0eGMU4#o#vX2b8Jttt9Cbaa=h+%Cj5AwHT{dPB!k^GWfU8F9M5Rw2cNLscM9~3d29Uw%bHIZI*u6OWwkZ2!*Avh8RpSS~6anAux1$FHgz!yx4nF<_5oo zzO8e*ujz;Q^UXws?o}U8#|RA?ARR8Wz16=f+pjH~pe>isMIw+sX0NFK^rU^a$)ej5 zg0i4^n8dwMdzaeVne6!BE74ay+VRTNUk-U)Ed548>8Q%t8*aE{$maFp&VYv5PR;Y| zkp@~JYTfxu2DO)`-<>dP*rzUa`nn+F6069`*_qM}?M2R>zO_1Zq({W#Ozxh5Wd6(R z-#izl4y1lmOig0L7cC^&xg@F7R(<%HYl$bRwLvYtGrnUR)rST(&N}(d-4SnHpGkd# zA-(su#^aX>Jw&}3=Y|kP;!4uvROR=M*V$d@v-SCQMe5r|Xr9#xRB~9G!C>`?A_uwI zW2$~h1d^M=KHppijwLintew)F5aW8~oWALOb#djv@)L#86Vhw@9%mV-OO?_}_9w(m zk~F@aRrn;2Ih6mI`Ad=;T^4 zKv_s3tS)n9w>#-k?W%jiXQE>9np5JfjW2U3w&#`@G#r-3&{ToFHlnpNB*w<9N!^uf zLw7Yi#_q=j%+)x}9j;obM0el@U(Ak?X+)1)IDWFt^>vT@y@Zh#ezt<)$TB<=A(NdWhFfw(NT}PV5%JLx6f;Yl*D8$SuZ^!i4~{s`{shfHB^OiQkhwXoO!RtjnDa#N*qRINMlgCk z*lH~Vcijn9QGPMrB%<9#D_EuiV<0QhcI)LnAHUGX!1-ec(_3d0%xF^Ro2&RHylGcn zuUZ=U3a&k;ybzX3Lp@vb$$I3)S60(cO+IUfo;@=fIA-A>rPuZK$><4(JMjsp$dzeA zGR_`0JtUf4lk!f?AhASD%@$WwwN2^F3FgrNzvwfLL;2s5ukmrksZOiEDywfV>-u6@ zak1**>kH;7=}Pg*Vk+J)138a3Mp|Dp1#-<(aoq5-wW`bM;VCOt4w-ikSu7K=K^2ty zzjnsgA3tmt$vGfCS*W{pdi>A{-Wj8TO>d?_-*p;YVPQT8hb_{6j!vUf;jCQr7uH(K z&+ndUsOq9M=5S9|B~6yx49ky4`C6HM`qoe}Q&|zwe~i6%I8E1?IowE z=W?UvK1ux1(v@#pGQumBvlGY1F4Lc08J@b*Nm!ME!^MLLSEo3$Wn=J3lBf`Q@C2iq z*J5v?;N6$13EK^py=qiTrKi8xtG*fx4mvW=S}%ZYztH4)gCk>{Vfg*nOHr)cyOGqiRE9&8GOa8zk4le2<*iaLAfSNJ(`JraeY~ZA=Jrr{t8D1Q$-$kyM4;7^~XH+e=Ff7 z8A+LROxxRb;+1ct-on_#d4+w8x1yFLj;{7zuTdCel3YB!a=QnQX0}F7|J&)M+k!I3 zuYF|MU~}}@pfoCyM0Up|e|@dK`o+p~0flRT_`E7JOd{RY6O{3|kj*|xIVi2bnN5wZ zz-@ZjZN&V-hsE(E)TN~LPr;5u9S;-6a%DTWV;BUg5QL9tav9H$os^hDO7I&jFHLOC z?bBr-yRtzvmQB$TIm>uw@lHp@)4++bz^ul=D4l&Qw}1fxEPp=Ctf~7&JsfhJ`J%QLBB~=P>}q>`SQB`KrAtNabF!O zvHLaWboB7V*2l_6$4|?1FgX;acQX>*)$0N;2nhQ@f7qN)dJm9-8Zhz|P#{B1dJBh+O6&OdO3_&E-z7?Vl7x%;8 zoEEPV7rhv1$Am_N#o;%+#vLB_OP*VLy4sN*V~=}Af?ms;K+LLfOh#7nM$0CP=p47O zN6(XZ=~V8xn$U$zg-A0MQWG^qVd^1IZ$47Ek)m+ZMD6&id!ig-ZbX7^M7~vwjH4qH z+BW6>_c#drxhYQtGPIc%9>vfE99NO?Zz*|$xU}Xe%N@+)w*PVyYkOj+=|X+|-H@d& zgf(el#JB!@H;<|0kMY%8ofsniI$V;)nQLiLU%r-Je^c~mirAg?@el13SyI} zeHV2Oc^<7ZIl-~Nf-T-Z@a{n=9C0(TYr}e9N;GSW<%8Q9jy@2Ij{EYub((BdVo?7} zzopc!CTBv)Fxk#sNAiS)c-@JL+qK$FOr{u`xJFWQ9vQthN|6|~%&wz4bOB1Z#}4w= zb1?~G+NY0BW``Y}Y{7nL@SrT;oWrdpiczDZ^^cOVerFQ+N}iJ7Chq!)5)-EoKhYD> zD&se;WN)I?=q=fjzP$6kJ z%Q55ctuiwM-`Eh{Yj|?f^34%D_86J;qAb!tg8QzNhTIPh@&_}BbBNI-D55{(*$Lg- zHsm_b#ENf&j5`>1)~KAX zv&Oebvl2zrj&kcUsR+1x3%t*gdO>a$7>QQ6HQIKB?)Y45tDn(9q*QPmqO!Rpi=t|^ zYQU8EYm@o6&Jad9dHJFb*duw>a6>7b_XsK7&0qx4J(XKGZg}skk3Tkeb|OaUFmcc^ zRE$!3r?m+7B`Ugdr4koqr*PzMr}gwjy#02#7M)WfPwnZ_4V+iH#;(mxCkde0D_r9- z1Y5M^P1YEKu*1B!4hxHUW*A%NQ3!sFNDlLo>%yJd^!_+9bi!2>>f5fRn zVbUqw_f&|3>P)ylBkSwxcD|KW8$QP%{e`LU=%Svr;Z!eP6Zozx+#j&e_dOWBj zr1Fmr#(FvH#eJ|P*zNnOpqG~j%OS@)=Hgb~FJ8*8O+---ol1j;kzD zB#+c9f5XaqiFb2!D%N=6)9r+hizLX38neQe7Q8p*N1TL62?AOyuxNT+5NMijh5e%s^cOnXHt#`xMvuN&G72d+rOZlhowwQ1qy=jXV} z?@3aZHQyQ@o`H$Qx9JZGk;kz+K4kMqnn{~|3>ycd$Ebvxm6w_83VH|74)*rvvvr6!bWg@;XdkC&us%uB;xRAOn;&}NKGPRLi_Fns50mZc z%ela6k)Ln-NYPP%Ue%C5JFXTjtP)WB=KcE&9dJ?nxrxg&zTcpDlv zHlEf;f@CdEwUg(RC7pzbF$;^46R(J;Gky$wJg)!7CV82 zTAUtkA)$Eb6pie6uM-57PaRr|ifJ9o&;Q!qP9Lmh7*a}RcV{B%X|rjeL+!&(>vy(K zN3KUWXoBQfv=0(Xrw~S> zRTnALXKGh1xmqh*dhP`^ntdoVCk$v$?VKKeT*PcBKWxV zWZhwLW?jnjct&fjC5eA)gxoO-2C$a z=@D=Gt}HdS5@f3|+w(q3x>EA!=_7mzt+ksV+x7jA1XXSfw+g^4up+bThH=W)V8Y~-(GZV}< zj?L{G#6IV#Kfa|Pwx;~Km*Po8+i6*gdVV4C{ljJlKLoz~KdilFR2)&aEgIb2A$Wqj zyF-GzySoJq?h=9ocXzkOX=vQt-QC@}{hdGeocmlB*vX9WM5YT&;@$r*VXA4frS%fs}vGW{##Cb>_5fDRFM+-N;F>Gp)LG;e3+P+TXATppQZ4E@Y~QV)PE5n zdad&*-yTbLqd=iPco5CyELh)Mq`u&N{TnX!`9+FJd%&Mk6Ucu-#O*%SBW6hX}mW!^(88kXH=!QDz{ zek3LtcQ%^HN)zuZ0xv19kPRcQtg$gTybGtT3JPjg zMGB_-`uf1xkEf?(3Z1Qo1Pn?n6p2XqCbQB~f38y3=r*H@q9cahY!bLyTbF56%pbcltx~-$wxSJkwYuYPjMW%)65`@oIQGDY zjv$JO4Ng%?)t8{5WF3ymKkO6*!?gM{0g;SPYQW4?M$Y!6EXhC=@o0V2_guMeP>B#P788b?7`Efw|jjrcNnJ z>X*!p-PM=-TlzOgsmljL#|2lNUbz6{oDCxFF88{J@7luUl5P$+%KZLh9^T?JYwm2d zS&=El!_~EAZ#CFd*aDz4Iyy>#EF~iHC0Ys&ghEIS#)PAP3H#F^FtDDFC(7de5rI8+ zpTn)<`SEY9?BUK7kS%Y@4BuG(vS!N?Pkw)#;$dRbKxgAf!~;a z!&&gc;}=`e==bi0i_{lv1)q8g3CA3YOH90;pV;`5NsCD%e^9u_lLJ6y-P8XRF?vf; zu~U+*-3m>nQ9kWX-0e{SW!vQ5I==Xw?eV$i)n&F=UX3nk+=3Dt8X{uZjL(t5bm!*; z!)GneQpl%(PhH`rnjxq%H!?xI*y;9K4ZO{ox!m5w;*_#>F`$1?@KnN@puj^zBQNg?yq+6zVtVV9J=rT1H*DD#pwXjX9d z>)cx-lw2oNw`ZQORMiw-)dOtXoUgXK3*vC9vam_;P*5N&s1wCqe!g#hf=VHxW0bUq zcvQ%;WHzsQ=xx%(%Hl?Jt8F>tOY5NQJA$%bnr!yt6A-YNiWGrgN2_8ouFmuA8uM}0 z%cd2GZCKs%ENJlN#*zUZf5C9AL@@_--$@LeDnr6Np%fW0K@N#@G?nM?eXgTbJ{~s| zbM}@y;jIyeddW4T&z9FUd-$~}O;7FpD zU$e~IOB}ALKO9w^JJ*eR9j&s9@1E>-X)!5 z{hQ&mO&F2SIyaA9uz1aJF8iVe= zoiUXVDag+~39e_djrSg6F$ykhu!#^AE5+-UJp$x15PGv%`A1XD!I7T+gu#1E1vsSg z&$?WJQ=QsFy-1gi%?qh2HCBV+s9a}Fxl_#G^{uYP5Pl2p^@fxp=sOqFLf`SdmrKgB zNgXyG9_4zpOwq-vcW#+9UCJmCAz`DAeT7EBROu?8+5nM_+Iob>hf;D^Erqh@cWEs_ z{z7-ZyT~82(<7ux`baiY>1}-aXWMK`KJrwm-roFwnROX(d0=d9tdOP9xgx)cSwJT& zA!EkMMdFX93S=PaK2?EM=i!e6*;DXN5m{CqV!oC|&%Tib++L=-UJ6sotF2eWIo?ACa; zdV89~lg3)WWW7^^fMq*tnQ4$7LGlitWFUp2gUv}a&17eE-l(aA_aZmF0@^{c9Ar_; zo42{1cx$y>2xY_fkzxt|`WO0FDR$f>dk|+Y{WpXK5114R6Y^roRK03E-M#u!W&e7- znBEh9-fDIr=2rptRsz2~mmi@&iVx*d7VUw`*QKpgL|gQVKj>Aek|KStVQR``Aj;+H zG{zS-_nI=jKRP{fh)GEcD7pc5bdvjqW>UB*-X$mSFr> zkwp2Fjq8^bjo>DZf+XR$mtUYq1l7}cD$T(waD@8h2#wzKlQ+tT5pv+FIf~s|%vsf4 z7MZgaRA|Y+}`7pZJF9NgZ!*+C;%)&@(=NMX)%CMzOLX9_2 z5bS0w;ThVhrvvCvs$|3}X72V080U9x)r$hjUHv!KfKT}}ZD!LZae5B2e`*1nFE3t2 zD$7etrSmrY{QRq{tD>^XbUK{p+^$+QgI1z$=cQ6%1~tN;9ZzxtnJcZzZmesYcw=u& zrcD>4kIKt9b4x+_d{L57MF)W;g~N7?Oa{H(;Hv6kv&%3~>BzNB*P+V>phK5r(B((` zF(8EBz%(|2Y+6ri8jO!kg)d2&$yy2jdBqE@07=dOGe-)AG6M7sp1OZwn7p99_C-+4 zrj}y3!9H*|#0sopciWK#lZqU66R9j0$?NocT|xyF!*iPB?3#VKIFawS0JY-uio=YG z*~)q8g%j*Xrji2SmB~2J+IcqY>hOURs6wAOL2xjoQK?0qB%{m9o+iiQR@`ta^~2J; zWco`+{(O)Q2wyw=B+*L$`939wQ8rtfpZmmTEu;Y<0jP`b$oqm(-V$=6zNJxXRi)LE zHyTuJ@Q$1S3S%09f9VKgm`r{Vvs5$;tozCGRAKyyVuho!SRhTfFig?XI~s)fK7^t4?%` z#Z-Pf0GNjI1nSS!=eV7zj9eV3zBZ;gGqI}NcigI84Vv0gHM373W|7|X?_Jzg=0=iP znwCwI*XS4o3^5xcGO_%C7ECdMNwfF@3(3QSaX+(lam5an!?JN!Mf=#_HXdWD{HEC( z0*A-)F4-F#k7W*jd|&35N}5~B!jm15(o-%4jS-F#TGJ+cwx1AVb|N||$=@2`LRb~? zm~Bg6R-?=HR5?A*_#P*hT)0q1(rW6s#;;E%M%DcuRSt1>WW(^?&rQ;eq`XO}vClw4>1J<{7wEbdKJpqs-O~{_;6~ zksD%+II0h+%kh$H) zSwWzNm?b7vYDOrAkUuNEhTx2LI4Ic0^)P);Tfs$Lvy$C`Nxu(K4q>No@x29qP5%4A zW&Xf^@CPqPFK{u;-t~Nc=mWCui`dT_bWyRRyU3IZ4}eC^S*6aLdJ^i7q2zK27nFtf zww+b=1X%OZ;psWS4bO|D_16Uak^UWyH8EEf9}JHF!Gd(Si))|*0@m}8aOiYuSK0BmakKjA4O zRN5?a%C*aE7uRp9Q=v!Q0arn5AI6MV(zS$d53$4vJwor+K z+9hg#-aOb*RJ&ds?jgQb7P6fvzzjFndnW7SS_i_RrHj9Ox)!}tJd?nntlVAiqGl?a6i*Uy|HiBPbW#2K$RA678c&K?@Z%^c)PNB zuk6mgabtjy7kU!zmBKJdn$AXbSO2w(Fl<6QIKzXsot%JbgyBR42_3HbC$mIY8g_jo z?WMV|DyT*o+vN<#GuaBRQ$eTf6(yvaZzYqf)(1;vpBeR!?1>S$hih3DGK4pS^?eJKtJa{INBn+wiW;$G2XI7p1aOMmmX zFTuxIE6})3s6%2Ed8jPFn7fsg`lLE=5x`3|5hUj*dV=nEW_2-EXRI8k$Mjtw1d~Jz z)ij~^c+ZLOdu4`Io@+=idHB_U6J;18)hj&7H^iN~gt1>A@U?nb38-Pe&k{qC>d6fG z(h#48Iy@uAs5FQ6s%!umXoeMn=S`%( zt+gdAbT9^99(wupO(KZpANoHz^x~e3k!Q;8+;xL6lZP>FIlf@2;_e?TP@)Uf28@o$ z!-XpHwnVOE$Wy|)wZ=FBD=@VtpD>A_oWG?~(FR?)zdy%w>JR2h6e^;&4dt@@*qje0 zXuw{D%cE}N%kyOh$JPxCLLcDOUf27BE_E}#mVu0volm6kuoll!lM8w_^Lf~>waD-H zRJJbOQhSgHAVc3)r1xIDmykoAe3B)h+FbZ@`7$K~fsBYZwIG%x^nZxI>g>GR_IWh9 z0lZp0xK6kN%zL+>Ogt9_F<=IlU7~c+xO_ZnH14FiTW}3V3m=&w7S&QVBUNK3Os7uG ztI_0eXx$-RpPs@WAw2GLwUdtKk{?vD4{wLM89M3yi>^&As8k!U+DpQVi;L}hr-L!~ z$g=&A?@pw~nkTc9XZb3F0RVnIoOazKoa|F9SUza9>US*rBn59`6miE@ZG_D@3m1ern1FjM-uJ z4@Mm|`XBxkE!WGh!i;H#S#L`7l|x9k#hH;AjUHT&b1{cpDVY0^a_EPgCe_7z!LvM|WToY1itJLxw#oYOok8BzRsr9!lR?+nd zUjoh81ClJaLU^E zpA7SX^8P})XDepv5d32@y&9OYC-NH6T9WY@0g(+OFyul0wH5`73KegRb_v);AejZ^ zkCvmNbO)-GVGsN@V_QDIf~l5mL_*?n%d@$ETx}8};drz4fg>x^^ zoLDCYs)Z=zg@bR8$fi)hY~wN`ieMb5OIu-A?)k;0<4!l*!Ank=OR6hE9v!IpPs|@7 zlj;BNTh@YX+HOO6iE90mhs~}qiZv=6gKGp~2v57Z1nxc($yCNtl@+Ic8Ww@;l_d9f z0OQfV%fTt$G?D$0J%26iS&p?UY#Iq4Sj`;BKI#2EMO0}ZeUCEOClBO&zH*QZc7Btf z4pct}3ViYS#!cnlOJsxO1trO^?0Rr_%<>C*HyA#&&3RX_l3`tLC_4E-sGEQ z7^!U&x9tPG!P?anZ^3h&sVCFj7Y~C^!v1y~6i+Sg7-36j(nSF?uZO=3%F`7^hlN?h z_}Y|5+~e#eii31>0r@mjzX8AYWy;j}Jbgro!xV+z|4Nz12N^}SU2orYdvFOj+O^G) zw|a@wvbr}08FT&F@WXQVY4ZI(I$iLi%pF{)@0RU-!9Cq;rSBT%V+Q1xzZ!x&D}WN-2!G zu))D`m-73??j^RMok;y0lIH-B$QH=j43Rse({@x!eb?=If0X!FsQO|gVRQ^PN>fr| z;*^s(4Sa%(aeM~$$-x3qw2Z!Ll!2)frv(clM_WATB$;nLIRozOx6d5FH5ED41?({r zIErLh82~J}*)IIjvg6@JBqSA~R5dX%+3GnL-F^iPhFkq4OOP&^r6E593&ueEQK{C- zGVPhAay5cRzB!|MRlo)UaJAX7WE(apG%!z~Nv^EL^Vvo`L9SfMBUO&Ot!+$$fw(9o zGsWbth-q|uILp*s7}yV})K|il#nVzXnj+#0%viK@BlA0~YTmxZlkx*&(vp~v z)nb#i7k|!rNBPq30U(WK~y-W z-7bBBi!crHGz>JO0+L$@OEJ_K!HKIGy-$T&+3pR$ZnFeSHez{S`CQ?d7a-_O){iSJ z0XnCrr`v@a!+|g_=-)Mt4r{s>ZJNe1g^2T%j7LK|T^$rA&ad8&dSh$N5VlwlkdeW> zIL{h5sbnd@`L1}}d4nVgii(PA+5WO`?heNGo`5Am$eVMxYhuCSc4Pfy&5s9)U>WhB z*cmJfcz&-{Rs9F5zg(WHT1V~J(qg{yLQ+$*NRx=hiHD;~7pZs(0(8!EdqZjKnPOYb zhB1}?pk$DB!zsDCa@@7_Bzjh9tiF-}OPxHq7!E3|aj z-ipaGP;aeT8REbAKhJ9#ic;f;iUkV)XV43Di84hVkW3Dp&S34(lWIbpUb7l3ACD%< z?BAa*;vmB4aXT~L0<`84_xB>PjI+tB|K8mlP$66#1G$zUUf8q{=QIbGX$W@TkfZU6l|o>deMO5h`w`I1MGy+PL2LGH=*o1?9__eW_ijqiP1#d zU=>iHU!hEm3mi95W%D+#Ha$~CwT_!YN8bXSF4vx$0RT_{22E|jbdO14DUJ^%&w8(T zjvODQ|2|z>0+{OY!T--r@%jq6;adbOfnbfbcU!N+6T<+yMMbenqnEcoU}$A^b>0Rb zK{0)L{{+*4b-1~_4AvRI;-Vf?S6;u2whky|WOyt{Zo4B^s<;+^%>R8?))F{z{%)`z zrTD$cepSkaP0Q@2AI~sk5kjM8=JZ~tY9Xs7xZh;jio>IEe`f)_!)dGTpGyk6hopXe zh+V;j1>lJiHh^ieD`JqAfU@Lyi2}Sr0+)#C2_TBPyu3Vhb#-vz)S`(P+ulk;eC*2M z^V9uMr}}mf6dMp)(2hJ{tyP@GZn+$s$zy)lkmxiE5YBH0jkuxtuZ_o%8H8MY7&pL3H`JWwExfm3_8dztyxLg@pO*KwEKUG!=yT{cS5l~ z`FzIpEefXbiHXOzoiZ^f;W6>>7N@4R4xB$|fc(vu-33MyKBJ=}bBNzJ*n0<%;7s3p zJ0G9GXScqdZ7D>XK?5wGT%;K`J7lSpoqeA3WufBgoovgrnfI=*Tm^KRLNqOER}RK} z5EMOJ7Q41?5U+LD5`=DrG8VAw)#$ zepp=i$Y4Dm%*T_odXRkqXk}!4Q>9h}QA#N7kZu<^urtOmfQ~jbY90 zqbbaa8C+mqJO1al7HNWnVPtSZQ=%c_vOChRl&V?m<&*r?y0&cV`+5jPuLlZ#^b=Z8 z(*QxR8*C!@Ltk#TqcMeq*v{waouxjca8%6eXllYiwK%m%7O4aW2OGQiJ@2Pn7g;{( zuB@zVeQ0>;Qv+YMVtaQUV?jnoXJ=oXbnNT2z{%h&pP2vHh*me5>2?`REvNOAF^y5I zUfqm3A-F`Tz`$wdeg&PYw|1l;Z|sr!zp?s2_l`RoRU;v{?eFh{r{@#f5)nUFo=f4F z8@rDhRI>=!dIGjLysH6&7_lh^dJ`XR8-Sk|-r#$rB{1(Rs@$Am*98GU48c-7dXdOz z)Lz+yd&9RE*+8pe-s@J+&!Uie*+%s{`Q>j*>Pee@n%48O{PvuHXoZPjSx?IHT z(ZTO=5ps^Vz!>6VY#2>8r0duj>WFGRdT}(*DBc?mWXXry{kXVtixEjmNtpzDKop8# zVu;XYo3dUlode-b?3K$2tM$W?(!kf2tZ{Bo|8cRA#9P@He43v=T&K!lxXMjg@+>AZ z-JW(8<-CF!w<0>{?bz-em_5O(Xn?aEV9*NghjrLs9S+k-6@c6M;F zJ~@say)GvcIl^cdaImmqz^5L6d=X35)Y)P=!MAH_a5DLL0HXIwt#~)>h&W0re*7|- z?g?dKC3-0kxrhV1cfhvT*PPEcxUi?~>@9TG5ZhC@i(BF$vY1b<@WUMc4P3GTJw#6+ zu3bNiI}{sEO3l+w!(^r{+oMqK=%$Cedp3`=$!e3mm=I~~^lVw<)l{t!71(dXb1N?^ zOV7;gXk`^Zgb228Xw5D`;Kdv|uOITqX)`3>9!`R%3rdU)**>~E3xgqoFH*~q+R9m4 z!;MDeT9f%`o$262ChzRj)YQfXDs>N4f;3eEC%3d8--r0|2h?PxeoA5@H0cFcayeiW z2T{Vs5XBCD^oWUh*sU_1Iv7!#c#no26FeZYJU+LXx9lqCDcNnbSc4aVXW@s`sO=l9 zoA{l|W5pxjl5Gqk-O5LJVjg1(c<*92JW{k^O|AVI(IVn{+|v)vjFv4%{rDQCq=sv* zIhR!gU!l0UrEMz8C7+*jPe`Mpl}c;#?!WT{7cVigu*6AF)M+tvXojzHz`?;K{QL%e zO5n8pI2`m$Fxd45wH?rqH< zaHU=<*{L!v`DL{`;6^2}3hzd9Z^ZEv2&sh)FCoH2Ag1^s9W^1~jmbgMVL#=uQrkbaMu6M)!uOI$ZxD!%& z;RM`iYJV(CSL)4cpBVl^a&SwV;e$&ZMDDY&M}*87zTQyVh^-SS%g0gQc9#XpGY7Ub zSH3K;dB}>a61ND^Y{-bFC|Vx1_+j%WQAVZ###~*f_PkpLd$c`*9-g~c{wt0(=Juf z|5|Ys-1$hJj9CG^f~>LK|88x?@&BPA%>U?F#Kyz+zx!NrgIC7<|GC2e2e?Vge{Z31 zo+WQZB-=EIcJTY__oi>UUh#3Emm{r44m~iI1>NRDQsi6xSZIG!o!Hl+L-C~0;T>sf zzA~rV1!cSAjarchaqF1VG6S$5#E^mk00dkM$OJ#X+bI{l-SoD3(ib~`+WV(6vPYsy zd&TS9E7)GtCIS8B|KYWTYMj1Iwu#Dkrec%=38TX>wL>0?N~@MD86DJ)y_6R!@AVX7 zu`aYM`t%&WT!k0A0o3vAB6xbD(%LYfb7b~iK}c#&5dtFkc@q0{5qQ4ZkiU=NrRO-m znt?d3Q!SdUfFe{r&* zuJw4G41N6jA=d4@T3qjMtCypeI%l`-PQSgaPx}jUFjb$wK*ZFGBmKY@DtQ9rrqk;H z^Y@v3xgHp+>zNyUs;Lim$&bGHWpe8Fm zi9{V@TV`7cAlCnz=lmW+dqY~_qJC@%Oz12v$S!5p*2mo;-Gu(Z$;Uz-Vto)NwipxY z0>yn$u0Y!)dE1NZ1RgUx<3U@59H*O0?VB}q$dw`rDs7(+NaFbCFLgOpsHd{7Z=?#j zF@*!1`(wngyWnexRZUq?978*^+crNbJXYW05btI-Hy6Gb@m~BF@@M{ryavr z#;N@GFQconrV}iGl~hwg!RwdxRrNur#?S~v^TlV*@%GER93NW>CD*v<<3VwA<%n%@ zZ`;Mi7My`5kBqxz)G7+$W_+{J$CD5)#iu|-%X>e|ipT5HP^1}1ip zmn!gHr|gM0Gmg5PO$B-J!qvU+3Ll!$t|Og%{z6m7!H#;l@*Ct?&i@@NGt3?&hVbHf z)s{#`!$QF|RMM0vcObJ6q~eL%4}E`g4Aso2pq)Kc8P4X}i6FDx$UAyNZhwJ(h^?t5 z^QotKqA&9Z-qtwfoPWD%opy*-65AlZGk;&S(3P3yz00&(7buRBgh^Q<5><|iTDS1* zrbN45R(4C&>hKVQhzRg02r?(p$TToCq*a(#DEWi#mp7y!1R(5B^pF>&$pt+9U`_u*WKCcI>JuGN|`CvDdt+s)qB zL=m1UDr`wlIJLHzyjF+Xm~sT1+Dy|wGy>MYcww9`v*!%l#3C`^Xd_rl5hCGZbKO%9 zer*OTJ8XS|kRagUu#t<`MA z;xjMk?&h+&<;A?d&U=wSM9G_CC9c@?#A9I)tNe84Y|Re33P=YhojM4HIcQE%c}i%T zp!D2gWeD)^O0%T_>A6(k9hKHl?cHTM4jr>{Ad1PG#>L;9%99$H(zDEoiO3fyW7&{L zSVbM=6|;iB&qzKvZG*w+<1$&!ij5e`v*+C1e?r{;H-(b-1_!xK&#OEMMAtG0EGKx~ zV*yA%D+^?s9w0i2=zFxmdJ<-n_dVuP$eJ}RZ4SxcsC?!jM@dt9?PA5OjhL7sbR_(b z`9gOwG+KBBJEh~&^thla?9v4n1(^}W^efXW%v3(!5~_V_`6cN|_y*EWnIaOaSdo zsg|%3)zoZ*I6m28-+(m^o_6kvruqZwzSFo#)%v1LCTc2T9}rt^)I7!2DDx7XyOEne zT-20EmQ-Q7d>8ng6rJQWP-4mqS-gAx4woAbaC|wTe%wlZas0WDB9&@Uo#+=jh4EPU zLO44PVp~Xs6)(tLx!#D7rBr(RV#iyQ+H+yum*icpxu0dt+I;TZ_FKVaF;PiNi8AU@ zAkL>-H?TL@6OA?dE|{(BjpxyiJgaO_!Fok+{In!ts)p}sb^%;Tov5Z9$LGfkpM0k}C>QELO>R!9M1HvF?6JHpjmGA5)zGtE?fkM%7*E$wz-E2eG&j00%qpd9hUP+KS& z*<*E!*oGVKXP6=)(cY`rC}Il9`#X4T*iD@_-lvZ)&n)*}@UwDR`6u!P)fd^A{Eb%+ z^F8ArVHCxp1zKu_hkQ>6CrD*G!uur55^UWP;kxPfx8Acf+|xvyYbA!ZUJ2`XFz(>( zFIkt?Uza|PldIR=KQB_?Wj$9YS5?r%-HEs;hD;X7k)n2UyNu@=nwbHk1eQ((L?&xO z@OihR;$%#3Yf~&dQ&GIc^YJ7$L;Jl5Gm{eYpCgC5%Yf57?vs2=aW$>8J;uuNtu-~r z^D;tl!Km0*=3%;SR7Sbt;#A=mnMg`R;o@bG)T64&0~lwNWTuJ;_q&AvzV(B#kLn-a z&RfXp(Ldv{z^NPZ&>oJUHzzBw^;99E-!EaSJT+!1ZD|sRh%}&^zy)yL6q<3Tn zBLN0TR~-#K32JZUvzaaJ9*&0pz#NN;B0X*KKc_NEQ=H#VuoAV6ak>krm72r~3E25_adw0j=*A^zb{oTp zt@;Oy95Q#n5UEHjD<2H#iia>lIT0_WdSIWW;?&a)&}B-%?hSj+-vcEmZ{CS>A#Ki_e(ORQ09YO>qat!Zi2--@@yfv-Y5+@DSGQu`X6BliiRtFK<5(npoJx3Ajm~XV^)25OgDvgv zwNBkApsmeDz>_M$nkz%)&<5c38ZmTuYX=`KCH{u^nYqq?{3}W3d)@8G$e(L3t_*qi z@6Xgqvn<$Al77bWmqP4DU7I<>W^$iNZY+Q}Gd9}epKa@FA89Q-V0DAbFtM`#37SQc zuUU`DayD(b1Uf~rOfCLJ*4+WSEQG^g_7JvU-QiYv(FV}xXq`SF#NFvJY!?4GX3@Y! zU0_YvwE{kr6K7;|&9v3e$>FFdBtMXLxJJcy_c(_}j;L*4@S|9FKe+)+b+Of_;76`B zDmXLbl}!Xv2}I=M-O^%8H7cYj*|MMeiJL#ax3Le`K7*cz8%nS)nWZQ1UT%?Sve7gX zp7akc`m<+Dl@{HKg{G5Sa*K`Q=Dz6wHZN0<1>Wuj)WfAZbW{~PA@>pOVJZ&4K$6=yCnp6JuHMYGk5r*C8`Z?xGi4a*!^ zX6KieQB92Uj4rL2)u%f~l6ckv1j7g`719E_&K*0HrCJPsehgVOs33pgLA;j64=Q{7+#ihsEA?}-s_`%E-MjfWBVH2NS^l+C- zeyA{uKg!zoBk+m0*(dpHE$Khj8k28naw{2acOLe0b8fZc7PIBCR#4yzaz$^Q`NZ-B zy?o;Cv>n0jap6&k91F_XQwgCJVsz7YK;2Fpr8l~b8`EOO^GFnyK&fu?E zYz&60y<1tb`Ljl+%BBe%=+kX&<&lOJB&z6os1N`0l5E<_rCs|pG*iES`ORHw zjsH~zOHp2nSi|er%9<^B+V{d(HHs+9bMbao4~JA6Hmax!|8}70mC5HE zZtM0g*^iP-RX5TjLu(>|0*(=Jn|NH5Xp?_7)`h558nUw-v%-U%R(y+FaET=SJJ4EQOe6Z_1Bs0<L;v93)=o%W&aeudz&vQwke`!;I@=9E#^_4|5E6ffmSEHLYt$W5E-pC8^)ZZmn+8R=KVk@Bzz8e`t^U4hrcK1 zz2#J$npypYa+twXp-hn)opriJ7c_1B#F?v5egRE)O;D*fD`ji{bhzA&D6o60hAd zBHwQO@E|K%$?9t{KmF7ln$ItUgw_Sw5wN(<5HDI{&wu&0m)o@mfUV}w!-`$5>pAG% z{G{sUFHgr0%|!702m*|sQ4Bk3;;A%ZPGUW?kNz$1elN1`v_+|3EB#IbLNJXp{okUF znYnWgKh76t-(oMj+B;vna(VLhTD7VUNgXeN3J>?(iz2-dAcQ_8 z|2ON!ck9jobkK^SXzgD z?7tu*qxwjy82NT`Rmt3j2hCJV_Dlk-vUppteaE`gN=|yQwK6TEA7t+pAd6^glQ|D@ zvxPR4hVX6@o2YGjf8STpBTDLax~t~aHqQ^@u+aQ%@;d33GIk#+(6C1uO$}TOcqV&7aU5fG@0L?`I%>0%PLEDR!M`QW+qJPi#Rm(gr^q`4cw_1}X$(49{cgIDie~MwpONMxH443tg0NOclLE z$STh~4+F+M$V@=PTDoZ?bR}`I;|gm0%#e5B!$Dvk)^=@CarLRON3*rHD!$a@;*GvpteiC~;)Zz`ui zrW)OOf3kTB220wVjKfYVg#905FF#p)AC}t<{jW($sf6E8!1|7lv-cxo$Z@YByTono zg5$>`Zcl8E18RK9uqZ|5*V2G-fTP{5-}5Q6!{x_qjsNrdX4mK7VAtYtp4{h0#%g;_ z0CnzhhVVu%gCj*6*~@W;V)JAN+)ehe<}CN8FO*YhC0A$;@VVxg{qj2aaqM<+3tKxu zqtqI)A)Uh)gL~_XRc6BIHV>yO^k&-EoLykW&}=3DZ0+rGe3w7WKyopV6vpuZ|VjdJ;c)CnrW3U_*jsnSdbmm?5wo+iCYl5Xsm;VIMA%Y zRFQ*YG(Wyd{0NX8b1w~iZ^b6dzviBCXZj^ZFD*@aAsaUrX!pLRL3#bfN@!s>9kInP zd2=uS+7f<{FQ`k8BahI(c$WkX$95hrd*RC!o;e9N=U8R5ETC2%5&Q|oe!YQlBw0IES(;qRDQH?-Q(}#*Eh8i{I1?7CVA|y^*{0KcH z`ayfX5rcob*jzC9c9?#Z+n`SQ0u_z7Os&z*OMh%LxDxh@50(<6Ccp__$!TByb6gjl z$?xPAaSK7&2=67}bBzn1ApKh7@UwFxGOFWNasXG7L>GIUNC>c{%*jCRo=}xJIZE=X zBrBjs8m=HMaGBVs-U(CkjTmC$grgFo>n!=_SEYg%dLu6?Vvo2-xYKEI|L@S+4_SJB zgLieQiVC>VPGH@j2r#gCN zOT2m!H&6HFv0kS1oc+@BPR3Mcv!hV)Y>tOM3{{zCvES`p+?3AHC!lxQC_xsdeHgGA zp?i@!->KTTlU(W%O6CR(?6`zqn`C)o!H?+KnNL3f9+HMz-FO`(sTm-D6;N8D%*N+@ zSY1=Co*zMFYR5u)zR%toF+-W+RtjaPyq;jg4-TI?XJsDL8Ob)X+wabC%TEV*zbasV zg^uQDF4tYqy~^JrSNxW#N?J0tqoNFFbAlpyCbcT1L{O+n+m};(`&bv46MReW!;)Wl1n&_4<p5v@x6k6--~)doh#ZvnZ;NDLqTk%>k?$$s^vL=8SK!0N zrxjyCWLxSX-_kEsda=eqLbsBmx-BQX!gdn8|7CUog9(Uu(@Ovd$* zt$@5B9E=Wd8aE0;!xYbA*JQj_>`vn!`g%X1r@N5hbbv~cxYcj-m#@}vYxuW;Wmq^l zhhWeP8MJkb9%2+FwIsGjYY};h-bQ+_Nd@I9>YGIOR-0QF6D+kXL$?q9Z|N5Y^A}79 zGJL5}5}mEQbrP&?-?|_(l89`0=a{08w&n+x&U>EsW+Sw@+LA#Zp28{i+t_+|u|MV4 za!U8gMu#s=g?yiO5Z{EhIZ0c8p2cg9y@zE#B@doAVyq=P2at?;yMDWEjcV3IQRioBo~Q zB)xF)DOcsfPOO2;{1I!pf>EId^`JRcY`H3;!j}e$EqUBL)$kqP@R17O#ZpE!GDbff zaJ2X|{*N(JGv%dM=|C5R+M7P34;|%t+4A1DTy>Xf!w$J%De?+65Jh`W{4sB~eg}ls zq!;0#?H8PItApDfN;2q$rqa0nko)2x9C!{A&2QQyX*BN)Js0JP=seV74&~f)3(wWK zAyP1FGZf||iLtH6cvEIHEHS9YRe|9*|6&`-s0ZyD-DN-+bwYgO+aSv zA2aUK%LZ*158if!zO7(Tq`a*(eqv z4#zl@=(9&%!{|+u<+rfvb0W^}s5lUnJs@4+Aspw2^`xn)SDQ_nbx%$Jt)L;-I^(H) z>P&B&H3CziPb8#Jm&40Z>f$qBt~imm9#1qyMsT!8%oJ*rXn6KstkTT2=it+y`~J!G zlNg2r^emYoxK}{>NAqHvaQ^g~+WFtNmBq#)%@Q8VU7r4r2@Yi-1tw@Q?hCa0 zb5NJQbC1F*1GQ(r-nh59kj>5T2`$-RrFZYb9pBFg0N>@v-@OcHMcgopj$v`}(VnuggV zH2IQF-;AG!^rZiby0?z2V*B352}J}kC_zyUAzcSJGzbVN-QC?FEiF>g3Q|%6fG0O%yl*a}S^B%d3lgEyVnO3XZSE>BxQiB| zahN+;eD5x|eH_5kVe;G+xH|K_R}^fHKZ}*Tt{BuSa3N!YK|bT zC4283r0QqfuJt@3RC0O_!(ZxKg?of^Wlb_*CYfRz@h&&l$7`BByL;E_j!tmz()H{0 z^yL&w6Co7#8qJ?PMEwu1+H6+;Fmj7sd}sHxxJ1z9b90W<#*j_**y^L{(Ts$~{S}-6 zy!er5B0oC0r!Rj<4c?|7*g&b}ZU1iByA>3FpSVFZSXOAWloK5@JzO&!XZd!{4PVOT z@rZ-3g7ZC!=)jV4l?h)r6w#seneg=+%{d$7&(zk>s=n6vB=cLOF!>|j=gVf(S+uTn zX${@m!fMSh{32~Kg4L`QWzDPjU@LgCI>QMPqTiseS3av0cp=k`Yi5{ZkMb2x$BY{k zeF=}I(Fi~1yn{4pk2TPD6I&XC#GsVwH#pxU(>+kscHQ*KfyUO^Vmtk{vTuU5xRLtt^WoiK%V}Bud;PAc zABK%STCei+{@keqv0BMD*$BL?*qT_G0te()y>+4Hv!~7ymH$43vL{wHLR@BWE!66x zvcd(fGG1`A6w%6O@QwE_ac?LY&3rXUH?BF|5!r8kw?6i^^zkFRT)Qtt%qWByT0V2(1AzmzEh6hynk3Fhw^FM*HbjwJujhlyFkJIdBwIV z2GWLp1kua|Mq*yG*j?R?+%&r3Cr;yn>Iog6Yr3?eQ;R7BjolN2p7NDtgh{`cb0ZT!G{^q^_KJDC@6DI1N)q(1Ncq zeY`eQQAuoVAnlIv_K=wiOX-1x-FXgKtJKHfj{(wATe3EEJp$YF zpM4xdQ(NsCdX~vE^fKnlm|EJbPkC7QO=Rqu${Qp#ue~(R<;_@ajMXPP7O|0UHgi$# ze{S|L4I}aL3FsAh{T)83Buk`i&4=)L(o} z!A?P&mw|%TiX=vj%GRp4yL7-Rgrl~~)oQ=Y+Pd45bwq8*hHiM?P^RTGzs-3hL!)OH z{K!$)jb@|k`M6t31(A)d&`k+ny$ZVSID4%%_Lh*c(AUqG3p!tQ2C=aFbbC_J8C%6T zzgZ;Pd#p1TG=XdW|2% zHSYa&I<3`VOcGDaMiN#3ouLc)YDr-$Zvp#Sf83 zQk%AV|4#4=b#7^V`dq266U~Q|xAF;i(Fx&8on!C5i6u)}DvLQ{RFb*mpNr(>@|OK# z0;W?S%(ic*cstY9uAoS<96a=SW!4N4d!V6;o|RZmTYm@VC0n0jv?ROW8uSe}1x5ptJ;sOG?)$94bc$B5gHKugHR{`%Iyq_O`<3i340 zevFa97S>HhPJb}a1F@f^U)CMV)x7-jVama3NJWYH6Euo%i{#%AGBEF+)oV1)M!=LddYRz z4QAMiaN6S7f*f={(-fN*=6947-n>S1-@0Psb7_HYZV_P%uDE&b;CK&x4#hc1dC(gp z>uEM(yPKtTFO;!Djoo6uU6-qVrE|#bI&q1xG_7s+u?c}CnPK3y_Kk^4v8J=L*PBuZ zaHkT4!Zt7@TqUI06(~W39bZ+Ld6_u-B?|o_vfFYg9i5gM)d$qpMnX(BS55Prh1YX} ztxT8WET4`_8f|`$joN;+(u}*qIE`guWD|2WRrCqph(+Z-+iSzSyDB_7wz6(7Ei#%n zjB>3_?hQ%4a)1R&r3G?L;RAbX2a zN`6%ehx}gjYn_hxp}0%UGI)|^HYk{-3v`FzQWLwzi=Umnr+B5hh=Ma8(ji9*=1sOd zkji>XcO(aD)Vst!^=Tf`Rd-E}Zb#()jc&Tvq%XlDFRRdOFB(JaE`W(w@=Nznl^P#~ z_DQRw*bv#0jxeD=)(f_JXH$kWQt+Hmw~xAnd^hiU5AoNCM=?K56J^Cp*uynMOh++Fm~r7jjW}v3q*4y{wM!s0ecRdnWmp^HT=*uFBmeRq4by%zVN$O*=w2 zD$I0*P4s3l{|O0acGRXlW_5ChSh2bOjBMb%0^`PFHLeDKoNwLoTc(D3q+KUYIof_~ z;jULkOmL72z-wuGf%*cCAlvF=zS_$S(~ods{92y5 zlwB-|QDnr=Px|SMTIgN#C6l}sd_-L!*>2LPBJ*yvlIf zFXuzn%F2#D;!}|1SbrjHYisqQxGUDtP%JfqMS1tDx1n^2asJon@R$b6N{Z%etHu>_ zr{>MbW}iiC!y^*yuM(EVL;O!|1g*1O@cW&OxqNtb*U#+}HZAb2T2$7e;8ACX6EQZh zHRB@V(`emY=AqMkWMA&8QQDo&b~92h1~s|C?be`u=S3b$#2?Vd{k^P*NR#&EGo(3U>T0{A}=T_AH7hE@lp81;vL!pB9|$d zpLVl0jG=fR)5!AD6yK+jRVJ35%Xsm$jGeg7S!KLX3CnbdsCe4twSg0M8Pm!f=ld=_ z6>(g~0IM(L$&E6;se;~{1lnJ}p!8C#V_6S;^YDG%w7Y-d$%+t0oCzve;_?GZT9?k) zTWpr&p6nVEYjafG9V|I?9+jU=r?ppz3W!JW?cUVvu6BOkt!?h0-62vkyj$5ZL$KPT zY|T?ClpW<+b+A-z(>6KV-sAs@_uGd^|HkApv2DrG=^dB7dXjupy$>^Wcy6^f-99!3 zPwrDl8*eS}r=*O}2Iodog_ygd<8x^m>j&P)Dhgw9txA<_DVWPiPo7Y@?=WVgE=N#= z#`55Y)Ccd1Sx)r!1)5rNaZ*!PF8$v2$fRXTk4GOGS>8)eYqV#pJ?I_UdRVLG~Z#D$Fd3&c{X)mBr=0<`B3c(342m znN}de(9d0O=jgDlR#r@;>OY!)e(_-XdGCbG&MyBa|F23BOm}t4zWMTE`+vP`v!(x7 zosM88oVLPA(0V}sL3IvV=*mN{`epUN&#qNfpC&I;R^G1dN^xIwh*msjUc7!yJLLMK z+|U_3e$U;uTj#AYNNJJRx#h3C#PW7#5I*mwwH0QhnSZdI=~-lHbeHd7*E6nP6(cE& z?amwvyB}F(!*E-ByA86ovRoLQxH^QPiC9dhcQ)_9b$re2mV<_w#uLm4 zOr^YP=ka%Do_ya+sXu7=9*Rbltv~&7VgEr&iASujtd4C{wb@XC0?7M*LZ$*eX_|(` zqW6PK5&Du|^rmJ3 zTP?-`_NlSwtk0y16lJgFW;T~oC4QoolV~cGq*UJ@$vMbkXuBBqMtvc`qrpeQ5^a-3 zQ13j&5d)de3>dR_*4W2DrDguAQSbx*3mIj(p0e*8V!(b(+p!DZnf1WRt-d81*)pHj zJSffx(&BnB^8kr}mzno8L#y39yuX#HsXe0gc*jru+Hg)g1MMzd61sPd-$udH5M z2ANBArjq1iehJ3X#Z>pb{2}DX1)EjMvd;FETE9lXyx@JOg{Uu+bNwE}4?7zyI85?$ zia#K$*>v{zJnU2&!xY@E2$Z;)E~dn;>m_IxV(*>h{V_|IhWW^*ou|~~jZdp*M|HD< zct82MbTN;9{JZ8sNrm-C>XvI|i$x|340UdSz0y?%8S`-!*dLfBaw71am8B9if5e?u zX|>MtU-x|bZq4{l((;dC_AaeoWM0gHi<4))X>H2U@juV0yRaDggwf|KX#DwrL1X>oqZOsYSTiC+T637FH zQN+~P0obdZQNY3;M5U~2VX13tPYvV&1UW8I8Dr3KZHa?`xf4+ELFKVQ%j$1}rL3*s zuYw6Xu0TX#Y~X*TLH^i^@`RcXfZ_pkI<7%+5bX6(6#P=>k0x+Jz;EgR`}M+*@S8f! z2+|M+0l@c4J+m|x1ZjU%{F$Y(B1l7+sB@}rLZ*(tmz6pjtO7x7utp4GgW(bpBhXU) zTUGv&c-&IOLF%yjk^{lZ5kVB&A3L|6$m(x!6V$cUw>B_@!Hw;>(f(E?z;@dIRPcWR z`B+J|W7q-^fvJli0ihlJwc!5ACS0d~B|!cwcfShiA05=;hy}s5LMSNqGc_N!Q<@J# z>w(?=A1aXTpXLL5Jwo$gKU4EzKc)E~v>w>)v#A3E=)VQcex??~e*AGlgbqUUgWW!x zIFPZev08lXuq)AXHy5(G!WGJulD-8I>&HEEFFY)#r{8H8UZ^n6#c6X z$C;qaehQS?{uKtheWucZy&eI|9A|#xm^v z2*tyBCMYpoUqKCXM!{5DR2fOm}c1hv*~jJ&w$tP_pa1$rkV3JJR{g<*!{EVbHX-*na%`g z&eH&mV4Y$2&!iAs0R%*Yna%`hFw<$6MzGNE1ZULg1ggPIXM#1D=`>s;m}z)|GwO5# z*df4Q4t8-^>X18lK>cI-Nu~_)G`~Go1o)W(1oJ zPjEJ!U@9PD92VdBn~dMg0QgtT1hI?8j9|Cn3H~PUkMBMh9%A{|_JhG^!#Ma9j58zH zZZIst8Fe~|aag40Z!%7l(VI0AXgJB8IrV~sBM2s_^&5kplV#k>g?KmvK8Fe~o$C=NDapu!7 zj%deW3C^g~NsKd}&5kplhH*qY4oh%GolasL7H9pNjNdWNd9soJ}W~3WykIIUB}VPQf?}q8*1NIHOJ{G0t)}jI*4AaTY{7 z4oh%Golat$tFC&uA~ z0|Lfjti#`AoY3hsj3e4{7%%cSd4KBki}?8EGlTzJqv=G*_II7&oDL9RMxX^)5bZcD z!5MWriE$Wp@;4bLbUF>=h;|%tQs3V~zyAg*z$e)oFzeYc&UzZg5$!lE!Qb+DO5L5r zIP2N^uAZN4Vtfyd{7155v5}ZvZm#dpVs(fwCgn zaae-C$vZ`-lNg6ljenEzd)>ha$`j>;Xvbj*{wD7folasLM(X`d#tEHHvE!_Wb{t0S z{Y~B}I-SHg3~PUraYCn4Fb+Yq2$Wf%4v)x1ksM4owEe9pTs!( z+4?FlUJ@8)gV@i6AlmV>6PI9^3W()&HtG_58g~gnwBu)IFTp42OYqtFOYms~CIr!r zpPj;ltMFSnovp8O8jA@*wBxV@f3tUg+NYC5CKyH~{!Pa3HuE$p6M|^RVF~^w?-ZR* zV*G4$CipZylMT_1!xEfPrxSMkKR+$U+4|L&0|xiNO*sf|Jwb4T1%lfM5WHD};4J|J z2OkJt-ynDqgW$OW!O2k&oRb7b)j>yGf#3`r2u^%~;B*t{nBxJC@I=R425=7h&H+c5 zj{poUg!RjT<8eCppg-XJI2}Ch2^|Utdl?uW-viEJ-*Dh~oDLp40)gT28sK;=4<45Q z&X3c zM+X7t$MTLV;Q0FmjF3D|cU%YH<4QQTN5B}zIlqvHb>|*LYW=W z2>&Oe{D2uS;UF-a*9Jy70zXf7691D0{%y>dq^_O4p{>5ItpRM<*gujHzZ2|;Hu*m( z{o@7zK8?*+2Or}Xd<u*e`n%l*&j<*^RG!j?cTVA}kv!~YtugvD;*I>59+knmrg(k~rgP=b~N zTpI)l&^v!E2Wx!?OJL#xu(N}%l`)9Q(28DB9`-?ng}GsB!4>>hC^M`(29^2?U~vB& z1oO(}KyWV<1b6&Ea9;}qcW*#2r$!D0@5F=PqX0qh!FM2d-v9*f7l4l2%W-r0)ktE2hL%=UZ5ukD@x!90~v5UP6wY70-PVGgR|K{kMKAhj5r45!pK_a z@i-lv5d?aK$LV0?8*m>+ctMZH>ENsi&?7uf2WJm}^W# zur&mxsYp3k0#js|0P!&JBUrQli=Tl$CueO9Kpki&$1UbxiBiBcC~-q)=E z-^N^*Jv%tJ@6KRceauSab1Ctmw&me$S%vK5AIJo8gJ8bs_4)TV9%~^#)U|cnCVC7( z(mMByhqK}+y+_-*5cdHehKUDzp`ly;?oUas$2>?D^785pcyC@fp}xR;^~kKTZGXBd z!Ug4l%N3m~5*<>(N1MbyO_6k@QF`FcB7Qz0+*Wrh3Uq8+o=vcb{Qq_R=Zux}H)uUh(o)@3k9;|aH zJ&ygdpJMdWK=uJk09oNP(JZy5wY*+6q>@br0Zy|{boK*ul3>x&biMvBB6op z@3q$FxCHAHZ4_IVxZSk=+AT*C`gtn7kX1Z?Ggm=MJ{T`wv}onMEn`_UFKHyExNsC1 zW)n&tYTo_m)(zXja;e*5FVv^B!;@ZAk%Tqti$=<+CT-Tgz8}s&)f-s)eNr))`UiF8 ztDTn$iL&L{5_0{t-YuvtNi<2K?NYbPb-$2Dc2Ia4mK>1YVN7GL_wdG+_)?nUw!lc0 za)BC5>Jq|p{uAyTwu2zym~=0p!Xp;hXp$%T0i{G(1QNXwGQoR7nqDqQmV-g`gT9A@ z!8VJ)YDZx2Q38IXdxK9T--?`5XA0nrY2a|wm6@-)sSXYz#C>%c!c-gVg8NF#MLj!0 zEtl>if4Ii8XPOT~7H>A2`CZpNcTH#mSO%w0+mo7s(Fp8+IOv-dQ-^CMg51L7wT@R@ zSNScb;j(DnAlYL=iC1XnO{!VbWpniotme!y9mO|-sMu2d95V-Rj!TUs*@DSXK6_)l z^I$;@V69#m z_CQl);Z3#{RW`9XtQRc2X0wX8ERgpxKLfLWjtJ|jL@o5K%0Ltb=0s5Gxr0dEZYe7G zzOQ<)n*Vi;PRyEP<`(ky$greg9Oi4m?&$t4J>eE3C7-!SJHh!$XPjN zRQQ5H8KsJF`1Zqddqy+eKbE)HA+CJ;UlQ@zgGA77S-#6aS#nR!+}#zi)AU~Tx3fyz zehSVb{Q>UDCDYR&&GrixrkN~ot{WI$j1LSJh8PqU6KLn?6RNsf4LF9m#=W7Id)7B| zYiAO4x1e)+dkd6=*iUY7b-0^iqo#JWi-XTy@|DG zV>6Ug*OeQ1XR5qZrY$36UeMuH^hiZTjVV4JA9>#-k0J)6*Q*ds3gRF^ER#otZ&Op` zA{6Vsk}fpzZh5-}$fsI2brjuDRd|SoCf-YP^zxErDpo*=EjjPKR0=-d;MZ*LSKf?Z z)dU$3ULRXDl%0SuV^raL2o=`Y(Y+)PK59zQYrjJ>g;JsLIVDK?BV#j9dy3w4UB)gE z_C#wivxCmcw$u`a``t}ce9Z%=2Kx5=^7@Y|U6Ts|;7D=&uc8{v?@;p<=Bh+FYEyz{ zRHr9-GPK-~FGYR`8x(NFool)f9z}n3`)Wk7MJt|sr_Ryy#6+?~cVHL7l6T3v5j}VK zl>I}cC2w8vuQz@>`r%EEbyyEI->s+n#1$XAkLnKPMdOXW9C@(0fBm#s6c7*~P?aRi z9%3C|-t_WZa@)k_9j4nx_mhRc6cXTxRdkV~6vjO|gy>w@i~1CG{k}+Rke}IMR2jR) z(ZmVp9>=sDD%iDuW92P;|E8`1di?=v~^dR;riXpAD5aptuhZWM6 zqg9?8F9#bg7#Y`k+$HoKP_egP`t)}7wt4BSrJ23B>j9Zd&@EvIzc7YWT;ry5a9Kkm z9ptlp9|I^h^-Vdw-18MG%aO^YMDPoVkCD!;v_ltYmzMo(jAumLm${}htlwvLr>CV6 zsNcMG7}@v5{f?2QyR&7akwYn0XV-|lRksjx8wecUMXZV|)`cx%PGYQ3wZT#G@Fk?E zke=_3OFaIwcayiHYlXrh2<4lp;s!k%OFLE;_}I2e$kf9=%uZH)aGOgs_N&jgk=DZM zJdZD&N2N}IrC7DOxf*~o;YmVoiPIh~uoJk-K!BkaJ5k*w}yj=b~V3rR#PsxX z#yI1OH$;0$sy5qjj;QeG6I zBbV-Umpf45HR=sh$~sk%9JcpwHcLue+I3_us0v?x)7IW^%USUx03Qk8m8|F*ynrSMk_joV^r}x46rxEVEG`M%pzdQ;ooKhDS_P@eB$KlNl&Ee|U}y$H)G%ks%kb(D`~d(s=@8T6|3ZZ?~6@8k+AVs^V5NtLcM!~o^m7$ z{82G8Hl$sd_G%eJCJrAGwz^CLWc6jJFxQDRvk&yJ7Gl=WJz3-A!g)k9$~9leQg;-2 zbrO|5Fg6j`{E((nRDcy>3kA{Y`*EJHPSAYI$GdrB|V!%e53Tv4VT#*lZoDU9~qMP4vA-kSwGmg z1mf3S60j~1*FA{VtR(ge8^w9FYCU&;f?)^?TRND0QWRONSdbP^4U;n^2SYm@0`AOR z^=kZXhAw-(`{sByx6AjDDle|R}|#6 zIcx4mJFCg}{I3w>4k%r^`r++cPOYqhA?Gcpm3ZyOdA^T7S%NlFl8`sI7pa)PQEAfg zb;-FTD?SgueeK5*&!jyYr-=Os*LYLE-#r#S?d_rAj~n!DMdc6Doh{rqvTMCTFB#jYPavUqK zUtUx{TUhxI_R4ljlhn6Ka*r9r2-nTJ{4uiXGMw9+B3I2YFfd>6L3rrmIrl@PxF{r? zE7x4-eSBs}-NS_I<-cLAQoZP&qfIn$%UMe=>c1LIXl1fsdZpJT-_(0Gw205spwYC^ zCFnWk%*)czcB_OyG`EiQbj#4;;4%FqZ{+Xd>p9#>)HrjW#4sz3lU8>qZgOAtF)QtV zIHtCLReFR%e00cfK%?5qpJn9mwRvhir0VLn@lrM>HA?n{~^#;(#e z*_7WL@uX#a`vtkE4?ZNx`M#OEY@~UBXTBa#MXFrSmtwa_WvhcyHKoe7-$&_F9Nny> z)0lyW#mIpxtH@{~HmZT*W7)e8cRcixoxWVVc-=&p&hhynjqposa=OW6 zr`MX@i&VK1=i(S-4bcI$xntmg7(kLynWcUZa0Itcj%$Mu#g-dCN zxAcyu0dCC;s8v&OM%NapMd*9AZkdv=&aLuekT4iUy=ylQ?pZ zF6Qj^b02!?Uofk#!#Q`6E|3UZwC0$~>#-p=r*tE2*o2*?-Ve(;!j%2HMEcl^8P?C= zIXBYf-sDlrzgZ`8=H6&=nqK7TTYoh()f_>|d!-22m36-M!gHUL!3&EvKh9_R-9S^Q zNo;bDl4KxD%+6a=%%a_$rc4xw$jPfQzri8G=@elBccMA}R_$sO=8Xjf?$G%1Vv{7w+$*-F+e>tlg-E zkGGUO5!vv*U4b^}C#@d%-JOOMs`~QHvL8Il&wi@cH1buW5?ueHRz;c=*FE!nuH?YY zSKtjh!6w(5idXmGp`14OhZ&w&YS5xMc*9FhGlD`rwmKjcLyRlW?z8GTT}ZnORi5M` z&QMJ#sdh`0a9>mQjBqpWW(yvHmGbmJ?-YB#;;wzEjO9c9k}{bHifFur^$my8g9G9j zf{;GpdWZBOuGFy{#@VHUf;H9mbW)KOdth%V34RB(s}diol9TcW>d{j^_IEm5)3zVs z5j%JIT|ZB-nfJ@p{_m2-arf?IziOT)z$)6{E40c@dzatarx|X|BIQHb5H99W(eTpc zzG9k4nw(RiLkM|TCl40b?e6ON#78dW#aP~=0Brd^^{?O>)alGkx!53!O zV1VBua?tgFfbg5Xt?5I1Yg-_O1)NLiS{i~F1z`Wt3OgFwIveOZ%j;U%DT*o^>e0&? z8ar6%LepC48UtZFU>zJgeIPClM3k9;C4HdMpl8ew;6&cu&{7GAPXi0~=stX4XliU? z4~&WcZioVbKvR7ID`Ozw2Ao1)D+pUoh@J(A57R^WBp_hT0Ytc&fQ5vhw}I%IAu|YA zUI2)9F6 zSTupSD{vWz^|JwSci6 z2rF0<8s}B#fCZo-Fg^`f?}-f%4@B41Ss|R7&~d<_$!v>_VKoy6MNrAEr&^S04z?M1-Cy+rXKcLRa!J-M^Oh_5X6(UcLIAQaz z;aw(xmHjums~I6_<;`@}cbm^QdMTxb4eiE75?MKN{6ksO%ltawq!2XDcG8bIG56Kp zVe%*OvRF@>K7DUATnuiS9hG($7q~6L{)kKZ`gp`hkBzFk;S!r<^A-1 zw3Ww_6giocs|lK|?j>NOrM{oSZd%6SeyXW)9yexroOpNJZ;4KcQ7bl;XD^gqo$~YC z<`NkC+3D$!So=+IT8vPUNi`kYfHfjZ03sg_t}hm615Ks9Y$jzE)`}9)ZQXp!4@Os% zKv8oAzoMTd+`RNYhOILwSth+WpJ$ybF4Q{pr|L$X&HEaaXR=h8o%w}sZ)LSpb0uw_ z+E<7~Jv{$>`kLdX;z!;;#CDL93G%=VVk8Dwfp<83o(Y#~l99ZKi92ki^p<(@l3Jqe zSz=9tecwF;Kdrns>SehYV{}1zbek*qKd!GdpC5A>D>s}GxnFg+fu~KpfBgU{p09W1 zPh0rsv{z^Yhc?FJCJ$}vfMq(1xex}{88d*k?thE|{excy(Lfh4VZa-piOv9%zNWSFgkQ2N3qT$^r`P6q- zFE-skm22nwUkg9&4q^Tv8NomNtmq=vYdkLL&S(&x`-C=viHG9OZi(xUfmVbxh4eU?H)0~@hmH#^{}{^Z zo9C+*m-uf#W=DPXYQ0r()8060VtdjW#*8TagD>sp_k-px(72*f!Ffm4!LwjXw zZ@bK&DsTtYv;%cBAYhJnV*KuU4F-P_+Jhs59sWxl6QW4QNCagsdC=2tXy}};ZR!MT#bILxFE2X)%VYP=D(Q>fZ z`Ew^+Bf~Mn0~rNtR?WjUDpBYLzbC&F3i=%*+Y3X@wFB$L%xe2CE~_{M;H0S{@3#Yb zCcKAF6{lN61)J*}-+GJfDqes{q2zu-hp;lGU;{R=<~-w2r>}=aBU1{&y-WKK*{2Ov z1;p$6YR^kEFH`tjtEQsJy<$fv<#GK2IC%6~O!J$myRFtO)+p=h>xBFs7oK%!^?A{f zN$UVpDVtOd-?+6AJc9SFVXXZ5erpm1uLT>#fd>h_?+6y*c+x zg=qIWy>GLQU9BzL9nLeUXVr^oCyt@7&eD=H-1U?d?(H(Kq|omr9XVK88tMT7S5%;elh-hNtoJ0&12> zJ=XU}7kmeFTu9P)>Zh0kD@m%JV!r*UwusUDZXQGfrc>fy>*H+lnkv6p(u>jvAxI+8 z9}Ux9!wc4Add^ElYAjoMd&8rKawXMA%_;-$~NDG3?zA~?&Y!Br$m1uVt z?C!QED; z+bXy(lwThDKAzk`ygXRp#F-z?-b>IzW4RQ$l~5hpwyRp+t~)^guwR{Qt%|1*5+vS{ z$%Grpt)eAcDMUMaajF*Sbu7J-)>rb-JK_cX?{SrN?$DBZ%XzMK+jg-vm&uzIJ4kHq z3VkTyY$Y2LkgglQJ}UWPERpa?fr?;u9^>4-OI0eBLXgdK9FA5PLcEPXIvi&}*?vYT z%8zkwxiQXjX>b0M!$YGb581ALs08|j6L;Im*_T#!BtjbII5L407HB#qeT(qfGgRG zc0JNGi^jmAg65!4QI&=OojhZG!r#D9$n54A{#{`SNKrNfVi2x4l^2?pRwiVMcLK1NYMMXAsMMcd6Ue_$>4&6h9 z+iJV=@eN_m&d_kmpnFOAsrLFQ2+y>F1Uu>denH z%)QDOQem94Ewo!V3Zj^+mkrEmr*Nh&9bTA6u4okqr(Y!>uf?(o6Q9Idd@D<`6`A!t z$$aoVW0)g1IqA-jgxtei-+033e6TZHTM%i)I&&q8$gq2sy!7l;3NJkh^B z`2Wb?KVAR-7v4T>bQ|F9L)f8?Dlnmhg%$3~16_Vi=wi<5P+uDY0RjO)Qovz_{$Pi$ z=?ejRjBw{1>ZJn-nW64HFz-Q~8JJeW0fwGHABPR(f+q(YWmph_1sI44fdKNMo;UO~80|HNR76Rzud_5eK~9Q0xKUfM1a3aT&-8lmy?s+<^c`FEJl z+8-_Nv_Fb3=ZSR5?RI9Dmwz5P`bzy?t33-=Gwqf)ej?*=@`syiRfG$w9L~<~mxIzi z^p28;3yIBm@9BP+W=P6&EbW%!uui|jGONX>xo$=oKhM@N&Kh3Sjb}=uKJODz)w^NN z8*Z;s#Hilwn7e&=C+85^pnVP#ST~~wW5hgp$b%ZW_6U{ijikN z;MV8Yre60 zvrS=5A4Zyf6WM3hCp`S$Wc@(z&#g`4E%!&OvCn@%YilFujv5F}@^If2=+S4HG1XFB z*hVFzC_n$F(fD(TssHkg|D$F7&yF!{sOAaB7&iV8vHe3sS;y`Fmt)KV1jYXD7z1-? zej9+-rsQfNKZAGVo^*@*3U<}f)u;OV4Q!#rgOw#k8|&WX-#94B#jtPNJQeLOzohFe z^j1%X3q$ndUH;tete)2wP37KL3YtT}h20dAsU{H(3M4-1*?k0U=>d+Y4w^IE%Z122 zOaj~8m1O(e1LGxCcI_+ib~yq_nKjoQT$QxaS|RS={D?Yr_3;F6&%5BMY}WJ7%(pY~ z8|CZ>k;IUy&}4YnAXNhzYyQ@#^LTyq*D*V=S z;c{#=`W4(;NVBx^`L1$yclQJ#{P&UbY`7e#ya(239^XWgV0kxJ;GAnp_)MeRe^<%K zaT)1|#U5!#fumzl+PJ|ms1aEM8RY4`+E_)YiGq&aaSxf~BjzAFC-$>I6_mj zNDF_C3_=Q5FTeE6(dhbae)r?4eq%a@r*F?SZboM(j%1ls%F{J}Dc3&uW@=N#;l@3*NwqsYm|2QU3H9H|BIl15?mp z4dD@As2;mY?m@?H#sTCf+7ZLiZO;vsMZTr=1OM+|@NBdB$Er0`oP&jKH(livXUKY{ zJ^kIiX1L0YROBjlgQAh;$*>Z3)Yq^~hQV6P=7O*!bO|+tG!a|%Y z&;->4+6njdQi|I>kG75n)t`IWBJkGi6{9x9l z_dvX7>#o`q?`)FEhLZx{vQvv5#Nkuel@H6NZn9_@$~wePk`9m*4cKv|gUN!z@2@)6 z97tPwhS8Ya!*VzxUOl3o|2fRi)c6)z0PE-)eKMsC*3|@mrYMY*o*NezuAFng^ZD=y zU7467Q(IbGsWD+h2gGzW*J&Vg`3F|g_=k;1%}`1E_1C4{6{!{OO+qR3Bm&s2kY!i)2%MWV7TP!H@gW$%g;T&@+WEuTuIbs-kkr zUpVr+BK`i}-j9#0#G-GoTFMsOYf*lfc~IUlAQVX!toGj|;80471mnjg;CwMB!K+)o z@^Fi-fwaeTiyZ}Z%PaZnaH_W3Tz!KTmB z_f=%xq>2VBg1L@LNi(A5+cGxO3_a1Z6cV8#nZ6IJl#FD+@6TrpTN;j7wPGu(&>Q)I z)iX7K%+BOh-V<+T#zjdLK5su?5SA{gkPxdv*Yl->5r24~nT)V z8d;u8SaXcfx-A>OAg#iiyvEY)8$dGdYt4`#XBpbEm1cg^BAPK`fw5>ytX(dEjeJD8 z{wTIwBFeY2+a#n8bWV<+PkDvJ@yf-(-S0?-GYMJ2>^$6^C0TOZgP%B-t~Fez=(z0X zy0u4c?Dz~htJETr^oA7q0L{!6n_`+)#e0csp+CsC@GcZm6n<5%9=`(~BHbAhWBluf?Z7pB*>PjAr|=$rk(G7gd8qNN`#I9zHEcf9&ymD<){ z!=H$WN#J6cUv5%)=h|V8gi&ba-i?y*L#z*vYd(*sw{7;yuPz5L+B?wKeZw3b#a#0< zDImcOq4{QvD zXqCU5Gcd8byO=H0^c@2&a+zLof-f>J>-oa=qrH*_M_;aMV|-%x2}&8QhJ{@DRdxd< z8Vt$_>a)TV0g6)6DK{=ZHW8k-bGQ=mHMQ32y7$$aH6pG1(SGsj3VTwN!wcbN;e3ww z^;;G0>oKe=OM||y`3O$M){Z}2z|)pfR`+MyJzUn*d~R(8^h1R(RveOQ(Bd=(B|d(}%C2CU_cQ1BAJ(1**kAk_}vhl(L+YTg*Qwotz zg!pqQN_cIU~n z;7-Uf7YO(ttNb|=p%%mO&X&%T#dg`KI>h&i*)}+*%LMVyzm9GD z?MbQySe&w#pS~|)?LWsbcKBKiy_{XiHReq{?N@e!V8h0z=BYIat4jJaF>harm$f4| zH2lD!#b~d;aLMSh$M>@QM5|om$u{%VhRbeFSwp-yOOqq)!8)kXnRF$7i2?Izb~&Ty z8al(tT{_+u7besSJ@Jw+$%|V73_|~3bypr&^R~rH5*3OQsY^78iqrX>F)D@3QW7C5 zWmYtaZfU@!K^YpSa_gpHeTL{4(J5(UNhdz8xL&|fS11qu9hW?;c#`ahf**ogV&r;?wJBD-Y+m_0l9PW~s z1&TpCY;7;xsf(W!KRrgLXLIzW>m1jFr#87kb+JM1f|D5yrv$AtT2DK_5f@#x|7)XZ zL&oK*j_@-hMA?I~8tRn}$sg%V7JaAfonqy4Zm745$a>NFb#e;zmM$+k#biulL`ptL z7%LxY9PC{vq9x|@&3fI+VlC?kxbmGgYJx)bv@EGcllKNJ`M`IQ%@U%E#h9nn+Z(6c z%hB5!5Q*@L`2PCk}CyTc)N zQ)AppCI7pVmnzKg)L)$Kd%@j7F`pT(nH9Rr;99|xR~ql;7cC!@+#710B_cAqB73&C z_`26~ls?PmG2dG=mPf{Wc$E9;@0ZDI{Q9O&u6@*5tLn^0US(btm$y7hJ?%c1ns6aX zDs8j-_PM=FV|!OA%A9<}bI}VuTX{$)?(UxM3i;bnXE(W=8uH*w$n&=!y9OKWHtn{P z?oHmgVwKVEqurgmU;42PGJHaVyW*Z}GzD0nX*IjjA{!-J(>B|#(k)gmta-$-)?JJ5 z8@r^8-)@~gHifUAl*8LqG-+6PQ^dR(c}+DUGpcjm4ob>;$scn?VHWj%;vvJpXbI6k z+wp_svt+nu<)UPAMlfPTZT6S>1>JZq^I0ZOL`!4du!3bnW@ue`71J!MUpO;nZfk0e zrFK_R@P-S9D!R}7Msj+m-uu#QP#i65Gl%JK_|9hRUL9#Ei)h7*qnvE6i|#KA78&9i zU?F{0QSC~WpN!EJ)sG|Fu1!4n?xR+~gcII1UJ1z=o=M?}5tB=|$c+#Fx-hRs=}G48 z<0^NqJ>GiQEnsx|2AQK`c6G(kQ>T`gnZ4`?RsepBLOxe6o7oGyl)J%4y{mCY~N1w-e-kxtgj7$x9(Aj0gK>CDu9T zN8DefDV5}FnpW=e`Cw#sDR0jZg-Ev*LsLpw@59|9O62&*4AzCD@o#eL%5_$~s#B7V ztaJc@Z*IGg^6J@r*|=TGWQc2Obkc4&;b>U?xdTJhTl$E?T5z0K%pYWg)Uy+$`X?)jQ7 zhFWRlo50%52Xm)ac*QU}hIUbdf947N<2FVK6kY^v zi#RjBv74=PYAWZcLxAaYHN4%;)K%xoh=nM-BvNT(nW@f%D;l$0h+G)FQ=2x{9t(m(fHt;||#moB468p9o^{5E@ zf>o)^Vyj;Bgek7ccKO!3DpMb~JiGOJU9q|S3X7H;?!#kEE|osRJv|pLO|)CQ+UD&J z=g?}Wr^`ONlsje1aAT9|d*&{3q7I!>zF|no$XA+~?NR&G*-=*Ws&$L{dv15m_9A1c zGVMqoS*B*_OzLKr?+3qoH&r%FURvSuddAgn;n3 z{+k-Q8UGs>;eSzf|G!*>{}t1QuCq~a8{BVmnCL$!@a%hd7=FhMGXXc(Z159>k!CdS zl76@S{e~Lz8qr(9_o@7MUL#8YzUEJd!0LzB=x?bWF!9sLA%T-zneOEhu3e%>*lyx! zT6Xr&?o6*vM_!}Ni*;7To!~VZdo;drIHtY#&ot8!t!*8ucZW;tSjF(GsBmOB2;9Qn zCT64-zTUNcu|Z0-NTU+}&)S>fZkssuJ4-)CE&nrhoHcS9o7?N_9DgZymr2qxv?+D( zuBd(FFsISbZ8Jk5`Kwd9Mf>{ut+ujFS+a3QkKe6z8)da=h}{7hqZ7-jT&=>TgFdg^ zr~L3z`1(^)^$Ug_kV(-Hi}NX&BWoHdv9Nj8C*yJDhtI1girKF?tKz!Re8y>`)9ue& zc=uJ@jG|kNmQMMkzkE>QbGdP5Nm`Q|+`H5gx(i=zozQh+cWc?lD|eXpT=&*BZpd}J zdU30s!JU~A9MT$v8~_8T?vDcv5qyF;rH1fAw|g9?jUe2(jE*(t5W)+_s(g==}kY(u@X=61@iJX@lN% zjynGOc<#*)t(p1-e!mV5laxy~&g>pzH^%+S>Zcm<`XS=uMDhkTtl5)(%~RS;EZ#Tk z!(QI0=~+{lqs$}E^@uQa{WVugO<)c^sC>_VY_)0#Wv%q!@*cT{Z(dyj`DgYOuU4m( zt6nk^SbWg9L^<8nE*`gf&qx{BdyA8bAIco+<~v3&efPMwV!GP~^^K}0N)!Llt{77p zQ#sqg_~pEgXXiZZ&Wx9C?-;S~>X(lf4ObLfzbujtiyS#7O!p5bQ^uRGs%fh06mvhc zZ~A)8pz?M~wBz)=sD0b34(pbLrTVzcoEoZfr{z?~c9SrlPdTTlB2Bd%ZpJ97+#X5i zOKUX~G?&a*l={}zvsY(mtb0=YM!`_AK-Ek`C5NUct6LABKThAN| zDq#}5$aQ54)%k&ulqY?Ba`?{SYpxDeDLK8$S-f?JetccKt#Y$jeRt-@wTvY`Y1$&a zS+&W6_MI=SWtPx@zrC;u zFTJpZRd}EEQ#0LxkwX%~#3`mEi1zy*{LUwe>E1Z;2Zllx(BDLdJ`9*egk&}SG59xy zLS}Ick;Tw3h$lb~-#CU|vgsI`1@G%PMxm?$tQ>_HU;1M@Tn-mek6@Sp5ya3jE*p{E z&@llM1>MszE)&rg_Q#-eOhjc!!zf_N!pZ^vuMQ&Mp_hZFeQdnIdINbF^m2d+kjC_{ ztHa|6sU0zli|8dWOn~^%Rz)d7{)~o0fzCAp<@`IY?lW^#>??Y8S!{< zi-?!wGg00Ey$wDaG0R~X7cuZ)n1Ij&o`8v%t?1I7Y}E#!J{Gq^PhFJtggXOo5Pcj*jv9`1%6h zplmQ9iWq0fyTf)P+C_q8um|hQa1d>ZCw`n6PMV06iJ8-UGQUz8*l{7e(kA z)I~I|*!MWN{X$)oc7&IM#hAc2_&N!7dAPkH48=%c?Ft~<2*>z{=Z{_vDwA^{Koo~q zIpK2nPKh1VoYGf9tEj* ze6r7=Swy?Q@JM2?EaGi|3XvE^$_+dZqJJ#pePH8Yu@QqLeQZGSMa%(2X8 z;G7YC;h?h=))#O%2#ib02)2Df9uVD0U>w4?fN=;&8F7U4sPw*Yguh;hVHBxDkd;Y{ zgTp3u2ogq#v4Iav_8C0@WAnn{k#-KMM(7$OfD-ZmSB1d1uq)$jaAETyFczspTp`^! zeO|y7CHf4xwIqhJOR=$W*`%FwxugzpIi#I)`J@hU!AmFFApC6Pu8}h038~!aW8*PN z8Sz-84uMG%W8<+&JBQR_LLR&U_E4TMav19ikJKR^my{8>CB)qGc%+Q@1MC&N0rq76 z0DA?Tt%z~(2iPn4!aEb%IDoU0@Zn(g$a&@q2%j40g%L?B?R&uWiHJ`z4CPzn*Z}&B z4!cA-Hhu;J#{#lMiE^ME1jZ%(Ccyx{o`6UAda!j9whBC_3uz~wS6!>~1CX95U$(KTd z!`h(O;E53!MVzB3HgPtE&anu&QCu)C{CivhF;^6iBJ=>ZY4T2iPZ2sqfxAnz!G{Im zXS*&=HgId{BnjNE%eU->yl1!znvSSuh2#N3f@vXp0xUm5mIr4S8z&dxy%D&5u(L_3 Ksm(Ppmi#BWjRz(G literal 0 HcmV?d00001 diff --git a/static/files/receipts/previews/Order_details_-_Walmart.com_07122025.jpg b/static/files/receipts/previews/Order_details_-_Walmart.com_07122025.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1479cccd9b351a3a8eecdc25755afc032cea944c GIT binary patch literal 8755 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 literal 0 HcmV?d00001 diff --git a/static/pictures/recipes/image.png b/static/pictures/recipes/image.png new file mode 100644 index 0000000000000000000000000000000000000000..0ab4d34523da66ef698ff9d5234b7c2d3f15f127 GIT binary patch literal 1612918 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∓L32Cw)3P~I=5_@0pTUIwD$tt`XFzL;L8mt@ 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

    d0yCCD$Ix$b24UCK~iOkT#8 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

  • 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

    A2C}MLCk!aY{&`K$<2L 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 ?#f~9j^90_M`22e41uVi*0FfJlksByQ>4f_~Zw; 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

    aI7+jkFFh^?gt*|A9?@G!Q!b6l>7MS8V1!2 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∋i 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%0D6T^Zo|6t(Lq6R2D1n#bb$G9h> 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%0Dh-EjQlS$i{qidwwv9! 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≶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 Date: Sat, 2 Aug 2025 08:09:14 -0500 Subject: [PATCH 24/38] migrated more receipts module api --- application/receipts/receipts_api.py | 56 +++--- application/receipts/receipts_database.py | 167 +++++++++++++++++- application/receipts/receipts_processes.py | 16 +- .../receipts/sql/insertReceiptsTuple.sql | 4 + .../receipts/static/js/receiptHandler.js | 2 +- .../receipts/templates/receipts_index.html | 4 +- ...24-02-24_113702917045-gen-image-LSEWCH.jpg | Bin 0 -> 108397 bytes 7 files changed, 209 insertions(+), 40 deletions(-) create mode 100644 application/receipts/sql/insertReceiptsTuple.sql create mode 100644 static/files/receipts/2024-02-24_113702917045-gen-image-LSEWCH.jpg diff --git a/application/receipts/receipts_api.py b/application/receipts/receipts_api.py index 80d9e13..5d2fe57 100644 --- a/application/receipts/receipts_api.py +++ b/application/receipts/receipts_api.py @@ -104,18 +104,17 @@ def getReceipt(): return jsonify({'receipt': record, 'error': False, "message": "Get Receipts Successful!"}) return jsonify({'receipt': record, 'error': True, "message": "Something went wrong while getting receipts!"}) +# added to database @receipt_api.route('/api/addReceipt', methods=["POST", "GET"]) def addReceipt(): if request.method == "GET": user_id = session['user_id'] site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - receipt = MyDataclasses.ReceiptPayload( - receipt_id=f"PR-{database.request_receipt_id(conn, site_name)}", - submitted_by=user_id - ) - database.insertReceiptsTuple(conn, site_name, receipt.payload()) + receipt = database_payloads.ReceiptPayload( + receipt_id=f"PR-{receipts_database.requestNextReceiptID(site_name)}", + submitted_by=user_id + ) + receipts_database.insertReceiptsTuple(site_name, receipt.payload()) return jsonify({'error': False, "message": "Receipt Added Successful!"}) return jsonify({'error': True, "message": "Something went wrong while adding receipt!"}) @@ -145,41 +144,37 @@ def addSKULine(): return jsonify({'error': False, "message": "Line added Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while add SKU line!"}) +# Added to Database @receipt_api.route('/api/deleteLine', methods=["POST"]) def deleteLine(): if request.method == "POST": line_id = int(request.get_json()['line_id']) site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - database.deleteReceiptItemsTuple(conn, site_name, (line_id, )) - + receipts_database.deleteReceiptItemsTuple(site_name, (line_id, )) return jsonify({'error': False, "message": "Line Deleted Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while deleting line!"}) +# Added to Database @receipt_api.route('/api/denyLine', methods=["POST"]) def denyLine(): if request.method == "POST": line_id = int(request.get_json()['line_id']) site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - database.__updateTuple(conn, site_name, f"{site_name}_receipt_items", {'id': line_id, 'update': {'status': 'Denied'}}) + receipts_database.updateReceiptItemsTuple(site_name, {'id': line_id, 'update': {'status': 'Denied'}}) return jsonify({'error': False, "message": "Line Denied Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while denying line!"}) +# Added to database @receipt_api.route('/api/saveLine', methods=["POST"]) def saveLine(): if request.method == "POST": line_id = int(request.get_json()['line_id']) payload = request.get_json()['payload'] site_name = session['selected_site'] - database_config = config() - with psycopg2.connect(**database_config) as conn: - receipt_item = database.__selectTuple(conn, site_name, f"{site_name}_receipt_items", (line_id, ), convert=True) - if 'api_data' in receipt_item['data'].keys(): - payload['data']['api_data'] = receipt_item['data']['api_data'] - database.__updateTuple(conn, site_name, f"{site_name}_receipt_items", {'id': line_id, 'update': payload}) + receipt_item = receipts_database.selectReceiptItemsTuple(site_name, (line_id, )) + if 'api_data' in receipt_item['data'].keys(): + payload['data']['api_data'] = receipt_item['data']['api_data'] + receipts_database.updateReceiptItemsTuple(site_name, {'id': line_id, 'update': payload}) return jsonify({'error': False, "message": "Line Saved Succesfully"}) return jsonify({'error': True, "message": "Something went wrong while saving line!"}) @@ -377,9 +372,12 @@ def uploadFile(receipt_id): return jsonify({}) +# Does not need to be added to Database @receipt_api.route('/api/getFile/') def getFile(file_name): - return send_from_directory('static/files/receipts', file_name) + path_ = current_app.config['FILES_FOLDER'] + "/receipts" + print(path_) + return send_from_directory(path_, file_name) @receipt_api.route('/api/checkAPI', methods=["POST"]) def checkAPI(): @@ -390,7 +388,7 @@ def checkAPI(): database_config = config() with psycopg2.connect(**database_config) as conn: print(barcode, line_id) - api_response, api_data = get_open_facts(barcode) + api_response, api_data = receipts_processes.get_open_facts(barcode) if api_response: receipt_item = database.__selectTuple(conn, site_name, f"{site_name}_receipt_items", (line_id, ), convert=True) item_data = receipt_item['data'] @@ -405,16 +403,4 @@ def checkAPI(): else: return jsonify({'error': True, "message": "Item not in WorldFoodFacts!"}) return jsonify({'error': False, "message": "Line Saved Succesfully"}) - return jsonify({'error': True, "message": "Something went wrong while saving line!"}) - -open_food_api = openfoodfacts.API(user_agent="MyAwesomeApp/1.0") - -open_food_enabled = True - -def get_open_facts(barcode): - if open_food_enabled: - barcode: str = barcode.replace('%', "") - data = open_food_api.product.get(barcode) - if data != None: - return True, data - return False, {} \ No newline at end of file + return jsonify({'error': True, "message": "Something went wrong while saving line!"}) \ No newline at end of file diff --git a/application/receipts/receipts_database.py b/application/receipts/receipts_database.py index 2ddaa2b..adf8584 100644 --- a/application/receipts/receipts_database.py +++ b/application/receipts/receipts_database.py @@ -1,9 +1,48 @@ import psycopg2 - import config from application import postsqldb +def requestNextReceiptID(site_name, conn=None): + """gets the next id for receipts_id, currently returns a 8 digit number + + Args: + site (str): site to get the next id for + + Returns: + json: receipt_id, message, error keys + """ + next_receipt_id = None + self_conn = False + sql = f"SELECT receipt_id FROM {site_name}_receipts ORDER BY id DESC LIMIT 1;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql) + next_receipt_id = cur.fetchone() + if next_receipt_id == None: + next_receipt_id = "00000001" + else: + next_receipt_id = next_receipt_id[0] + next_receipt_id = int(next_receipt_id.split("-")[1]) + 1 + y = str(next_receipt_id) + len_str = len(y) + x = "".join(["0" for _ in range(8 - len_str)]) + next_receipt_id = x + y + + if self_conn: + conn.commit() + conn.close() + + return next_receipt_id + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload=(), sql=sql) + def getItemsWithQOH(site, payload, convert=True, conn=None): recordset = [] count = 0 @@ -69,7 +108,59 @@ def getItemAllByID(site, payload, convert=True, conn=None): except (Exception, psycopg2.DatabaseError) as error: raise postsqldb.DatabaseError(error, payload, getItemAllByID_sql) +def selectReceiptItemsTuple(site, payload, convert=True, conn=None): + selected = () + self_conn = False + sql = f"SELECT * FROM {site}_receipt_items WHERE id=%s;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + selected = postsqldb.tupleDictionaryFactory(cur.description, rows) + if rows and not convert: + selected = rows + + if self_conn: + conn.close() + + return selected + except (Exception, psycopg2.DatabaseError) as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def deleteReceiptItemsTuple(site, payload, convert=True, conn=None): + deleted = () + self_conn = False + sql = f"WITH deleted_rows AS (DELETE FROM {site}_receipt_items WHERE id IN ({','.join(['%s'] * len(payload))}) RETURNING *) SELECT * FROM deleted_rows;" + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchall() + if rows and convert: + deleted = [postsqldb.tupleDictionaryFactory(cur.description, r) for r in rows] + elif rows and not convert: + deleted = rows + + if self_conn: + conn.commit() + conn.close() + + return deleted + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) def insertReceiptItemsTuple(site, payload, convert=True, conn=None): receipt_item = () @@ -96,5 +187,79 @@ def insertReceiptItemsTuple(site, payload, convert=True, conn=None): conn.close() return receipt_item + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def insertReceiptsTuple(site, payload, convert=True, conn=None): + receipt = () + self_conn = False + with open(f"application/receipts/sql/insertReceiptsTuple.sql", "r+") as file: + sql = file.read().replace("%%site_name%%", site) + try: + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, payload) + rows = cur.fetchone() + if rows and convert: + receipt = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + receipt = rows + + if self_conn: + conn.commit() + conn.close() + + return receipt + except Exception as error: + raise postsqldb.DatabaseError(error, payload, sql) + +def updateReceiptItemsTuple(site, payload, convert=True, conn=None): + """_summary_ + + Args: + conn (_T_connector@connect): Postgresql Connector + site (str): + payload (dict): {'id': row_id, 'update': {... column_to_update: value_to_update_to...}} + convert (bool, optional): determines if to return tuple as dictionary. Defaults to True. + + Raises: + DatabaseError: + + Returns: + tuple or dict: updated tuple + """ + updated = () + self_conn = False + + set_clause, values = postsqldb.updateStringFactory(payload['update']) + values.append(payload['id']) + sql = f"UPDATE {site}_receipt_items SET {set_clause} WHERE id=%s RETURNING *;" + try: + + if not conn: + database_config = config.config() + conn = psycopg2.connect(**database_config) + conn.autocommit = True + self_conn = True + + with conn.cursor() as cur: + cur.execute(sql, values) + rows = cur.fetchone() + if rows and convert: + updated = postsqldb.tupleDictionaryFactory(cur.description, rows) + elif rows and not convert: + updated = rows + + if self_conn: + conn.commit() + conn.close() + + return updated + except Exception as error: raise postsqldb.DatabaseError(error, payload, sql) \ No newline at end of file diff --git a/application/receipts/receipts_processes.py b/application/receipts/receipts_processes.py index 1d36b84..023e062 100644 --- a/application/receipts/receipts_processes.py +++ b/application/receipts/receipts_processes.py @@ -1,6 +1,7 @@ import pymupdf import os import PIL +import openfoodfacts def create_pdf_preview(pdf_path, output_path, size=(600, 400)): pdf = pymupdf.open(pdf_path) @@ -11,4 +12,17 @@ def create_pdf_preview(pdf_path, output_path, size=(600, 400)): output_path = output_path + file_name + '.jpg' img.thumbnail(size) img.save(output_path) - return file_name + '.jpg' \ No newline at end of file + return file_name + '.jpg' + + +# OPEN FOOD FACTS API INTEGRATION +open_food_api = openfoodfacts.API(user_agent="MyAwesomeApp/1.0") +open_food_enabled = True + +def get_open_facts(barcode): + if open_food_enabled: + barcode: str = barcode.replace('%', "") + data = open_food_api.product.get(barcode) + if data != None: + return True, data + return False, {} \ No newline at end of file diff --git a/application/receipts/sql/insertReceiptsTuple.sql b/application/receipts/sql/insertReceiptsTuple.sql new file mode 100644 index 0000000..8ddaf60 --- /dev/null +++ b/application/receipts/sql/insertReceiptsTuple.sql @@ -0,0 +1,4 @@ +INSERT INTO %%site_name%%_receipts +(receipt_id, receipt_status, date_submitted, submitted_by, vendor_id, files) +VALUES (%s, %s, %s, %s, %s, %s) +RETURNING *; \ No newline at end of file diff --git a/application/receipts/static/js/receiptHandler.js b/application/receipts/static/js/receiptHandler.js index a20f9b7..dfd870e 100644 --- a/application/receipts/static/js/receiptHandler.js +++ b/application/receipts/static/js/receiptHandler.js @@ -250,7 +250,7 @@ async function viewFile(source) { document.getElementById('filenameiframemodal').innerHTML = source let iframe = document.createElement('iframe') - iframe.src = `/receipt/getFile/${source}` + iframe.src = `/receipts/api/getFile/${source}` iframe.width = "100%" iframe.style.height = "100%" diff --git a/application/receipts/templates/receipts_index.html b/application/receipts/templates/receipts_index.html index da5b01b..542688a 100644 --- a/application/receipts/templates/receipts_index.html +++ b/application/receipts/templates/receipts_index.html @@ -91,12 +91,12 @@

    -
    +
    @@ -100,6 +103,7 @@
    +

    {{session['user']}}

      diff --git a/logs/database.log b/logs/database.log new file mode 100644 index 0000000..4b21554 --- /dev/null +++ b/logs/database.log @@ -0,0 +1,4 @@ + +2025-08-03 08:25:07.786121 --- ERROR --- DatabaseError(message=''int' object does not support indexing', + payload=1, + sql='SELECT * FROM logins WHERE id=%s;') \ No newline at end of file diff --git a/webserver.py b/webserver.py index 3da1fc5..4d6ac19 100644 --- a/webserver.py +++ b/webserver.py @@ -60,7 +60,7 @@ def inject_user(): with psycopg2.connect(**database_config) as conn: try: with conn.cursor() as cur: - sql = f"SELECT id, username, sites, site_roles, system_admin, flags FROM logins WHERE id=%s;" + sql = f"SELECT id, username, sites, site_roles, system_admin, flags, profile_pic_url, login_type FROM logins WHERE id=%s;" cur.execute(sql, (session['user_id'],)) user = cur.fetchone() user = database.tupleDictionaryFactory(cur.description, user) From 24a05731358ff7aa460f82b87b1a20c188655a12 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sun, 3 Aug 2025 18:36:11 -0500 Subject: [PATCH 37/38] Did mass revitalization of navbar! --- application/access_module/access_api.py | 14 +- .../administration/static/js/adminHandler.js | 14 +- .../administration/templates/admin.html | 449 ------------------ .../administration/templates/admin_index.html | 113 ++--- .../administration/templates/role.html | 8 +- .../administration/templates/site.html | 8 +- .../administration/templates/user.html | 12 +- application/items/templates/index.html | 144 +++--- application/items/templates/item_new.html | 120 +++-- application/items/templates/itemlink.html | 125 ++--- application/items/templates/transaction.html | 144 +++--- application/items/templates/transactions.html | 116 +++-- application/poe/templates/receipts.html | 143 +++--- application/poe/templates/scanner.html | 143 +++--- .../receipts/static/js/receiptHandler.js | 2 +- application/receipts/templates/receipt.html | 110 +++-- .../receipts/templates/receipts_index.html | 133 +++--- .../recipes/static/js/recipeEditHandler.js | 2 +- .../recipes/static/js/recipeViewHandler.js | 2 +- .../recipes/templates/recipe_edit.html | 120 +++-- .../recipes/templates/recipe_view.html | 118 +++-- .../recipes/templates/recipes_index.html | 141 +++--- application/shoppinglists/templates/edit.html | 131 ++--- .../shoppinglists/templates/lists.html | 142 +++--- application/shoppinglists/templates/view.html | 131 ++--- .../static/js/site_management_handler.js | 26 +- webserver.py | 4 +- 27 files changed, 1131 insertions(+), 1484 deletions(-) delete mode 100644 application/administration/templates/admin.html diff --git a/application/access_module/access_api.py b/application/access_module/access_api.py index 14a5f71..6347024 100644 --- a/application/access_module/access_api.py +++ b/application/access_module/access_api.py @@ -51,12 +51,18 @@ def auth(): print("Failed to fetch user info:", response.status_code, response.text) return redirect('/access/login') - user_email = response.json()['email'] - profile_pic_url = response.json()['picture'] - user = access_database.selectUserByEmail((user_email,)) + external_user = response.json() + user = access_database.selectUserByEmail((external_user['email'],)) if user['login_type'] == "External": - user = access_database.updateLoginsTuple({'id': user['id'], 'update':{'profile_pic_url': profile_pic_url}}) + payload = { + 'id': user['id'], + 'update': { + 'username': external_user['preferred_username'], + 'profile_pic_url': external_user['picture'] + } + } + user = access_database.updateLoginsTuple(payload) user = access_database.washUserDictionary(user) session['user_id'] = user['id'] session['user'] = user diff --git a/application/administration/static/js/adminHandler.js b/application/administration/static/js/adminHandler.js index 7c77fbd..393881f 100644 --- a/application/administration/static/js/adminHandler.js +++ b/application/administration/static/js/adminHandler.js @@ -46,7 +46,7 @@ var sites_current_page = 1 var sites_end_page = 10 var sites_limit = 25 async function fetchSites(){ - const url = new URL('/admin/api/getSites', window.location.origin) + const url = new URL('/administration/api/getSites', window.location.origin) url.searchParams.append('page', sites_current_page) url.searchParams.append('limit', sites_limit) const response = await fetch(url) @@ -75,7 +75,7 @@ async function replenishSitesTable(sites){ let editOp = document.createElement('a') editOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') editOp.innerHTML = "edit" - editOp.href = `/admin/site/${sites[i].id}` + editOp.href = `/administration/site/${sites[i].id}` let deleteOp = document.createElement('a') deleteOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') @@ -176,7 +176,7 @@ async function postDeleteSite(site_id, item_name){ let valid = document.getElementById('delete_input') if(valid.value==item_name){ valid.classList.remove('uk-form-danger') - const response = await fetch(`/admin/api/site/postDeleteSite`, { + const response = await fetch(`/administration/api/site/postDeleteSite`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -214,7 +214,7 @@ var roles_current_page = 1 var roles_end_page = 10 var roles_limit = 25 async function fetchRoles(){ - const url = new URL('/admin/api/getRoles', window.location.origin) + const url = new URL('/administration/api/getRoles', window.location.origin) url.searchParams.append('page', roles_current_page) url.searchParams.append('limit', roles_limit) const response = await fetch(url) @@ -245,7 +245,7 @@ async function replenishRolesTable(roles){ let editOp = document.createElement('a') editOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') editOp.innerHTML = "edit" - editOp.href = `/admin/role/${roles[i].id}` + editOp.href = `/administration/role/${roles[i].id}` let deleteOp = document.createElement('a') deleteOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') @@ -348,7 +348,7 @@ var logins_current_page = 1 var logins_end_page = 10 var logins_limit = 25 async function fetchLogins(){ - const url = new URL('/admin/api/getLogins', window.location.origin) + const url = new URL('/administration/api/getLogins', window.location.origin) url.searchParams.append('page', logins_current_page) url.searchParams.append('limit', logins_limit) const response = await fetch(url) @@ -383,7 +383,7 @@ async function replenishLoginsTable(logins){ let editOp = document.createElement('a') editOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') editOp.innerHTML = "edit" - editOp.href = `/admin/user/${logins[i].id}` + editOp.href = `/administration/user/${logins[i].id}` let deleteOp = document.createElement('a') deleteOp.setAttribute('class', 'uk-button uk-button-small uk-button-default') diff --git a/application/administration/templates/admin.html b/application/administration/templates/admin.html deleted file mode 100644 index 1339684..0000000 --- a/application/administration/templates/admin.html +++ /dev/null @@ -1,449 +0,0 @@ - - - - - Admin - - - - - - - - - -
      -
      -
      -
      - - home - Profile -
      -
      -
      -
      -

      Your Sites

      -
      -
      -

      Listed below are all the sites within your instance of MyPantry. Clicking on one will allow you - edit most of the attributes inherited by the site.

      -
      -
      - - - - - -
      SiteDescription
      -
      -
      - -
      -
      -
      -
      -

      Your Roles

      -
      -
      -

      Listed below are all the roles within your instance of MyPantry. Clicking on one will allow you - edit most of the attributes inherited by the role.

      -
      -
      - - - - - - -
      SiteRoleRole Description
      -
      -
      - -
      -
      -
      -
      -

      Your Users

      -
      -
      -

      Listed below is all the users that have access to your instance.

      -
      -
      - - - - - -
      UsernameEmail
      -
      -
      - -
      -
      -
      -
      -
      -
      - - - - - - - - - - \ No newline at end of file diff --git a/application/administration/templates/admin_index.html b/application/administration/templates/admin_index.html index 2536074..7505fe6 100644 --- a/application/administration/templates/admin_index.html +++ b/application/administration/templates/admin_index.html @@ -16,69 +16,60 @@ -
      - -
      diff --git a/application/administration/templates/role.html b/application/administration/templates/role.html index bd11a0f..7253e34 100644 --- a/application/administration/templates/role.html +++ b/application/administration/templates/role.html @@ -19,7 +19,7 @@
      @@ -78,7 +78,7 @@ document.addEventListener('DOMContentLoaded', async function() { let mode = "edit" - if(path == "/admin/role/new"){ + if(path == "/administration/role/new"){ mode = "new" } await replenishForm(role, mode) @@ -132,7 +132,7 @@ site_id: document.getElementById('site_id').value, } - const response = await fetch(`/admin/api/role/postAddRole`, { + const response = await fetch(`/administration/api/role/postAddRole`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -150,7 +150,7 @@ update: {role_name: document.getElementById('role_name').value, role_description: document.getElementById('role_description').value} } - const response = await fetch(`/admin/api/role/postEditRole`, { + const response = await fetch(`/administration/api/role/postEditRole`, { method: 'POST', headers: { 'Content-Type': 'application/json', diff --git a/application/administration/templates/site.html b/application/administration/templates/site.html index 67f657b..40a8315 100644 --- a/application/administration/templates/site.html +++ b/application/administration/templates/site.html @@ -19,7 +19,7 @@
      @@ -144,7 +144,7 @@ - -
      -
      diff --git a/application/recipes/templates/recipe_view.html b/application/recipes/templates/recipe_view.html index e049802..fec44f0 100644 --- a/application/recipes/templates/recipe_view.html +++ b/application/recipes/templates/recipe_view.html @@ -30,57 +30,77 @@ } -
      -
      diff --git a/application/recipes/templates/recipes_index.html b/application/recipes/templates/recipes_index.html index d1bf1ff..b677c5d 100644 --- a/application/recipes/templates/recipes_index.html +++ b/application/recipes/templates/recipes_index.html @@ -22,81 +22,76 @@ -
      -
      diff --git a/application/shoppinglists/templates/edit.html b/application/shoppinglists/templates/edit.html index 0b40b38..b8662da 100644 --- a/application/shoppinglists/templates/edit.html +++ b/application/shoppinglists/templates/edit.html @@ -23,70 +23,77 @@ -
      -
      diff --git a/application/shoppinglists/templates/lists.html b/application/shoppinglists/templates/lists.html index f7d415c..bd49499 100644 --- a/application/shoppinglists/templates/lists.html +++ b/application/shoppinglists/templates/lists.html @@ -23,82 +23,76 @@ -
      -
      diff --git a/application/shoppinglists/templates/view.html b/application/shoppinglists/templates/view.html index 9edeb6f..723c110 100644 --- a/application/shoppinglists/templates/view.html +++ b/application/shoppinglists/templates/view.html @@ -23,70 +23,77 @@ -
      -
      diff --git a/application/site_management/static/js/site_management_handler.js b/application/site_management/static/js/site_management_handler.js index c0a174c..faa937b 100644 --- a/application/site_management/static/js/site_management_handler.js +++ b/application/site_management/static/js/site_management_handler.js @@ -71,7 +71,7 @@ let zones_current_page = 1 let zones_end_page = 10 let zones_limit = 25 async function fetchZones(){ - const url = new URL('/site_management/api/getZones', window.location.origin) + const url = new URL('/site-management/api/getZones', window.location.origin) url.searchParams.append('page', zones_current_page) url.searchParams.append('limit', zones_limit) const response = await fetch(url) @@ -220,7 +220,7 @@ async function postAddZone() { let zoneName = `${document.getElementById('ZoneName').value}` let description = `${document.getElementById('ZoneDescription').value}` - const response = await fetch(`/site_management/api/postAddZone`, { + const response = await fetch(`/site-management/api/postAddZone`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -251,7 +251,7 @@ async function postAddZone() { async function postEditZone(zone_id) { let description = `${document.getElementById('ZoneDescription').value}` - const response = await fetch(`/site_management/api/postEditZone`, { + const response = await fetch(`/site-management/api/postEditZone`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -284,7 +284,7 @@ let locations_current_page = 1 let locations_end_page = 10 let locations_limit = 25 async function fetchLocations(){ - const url = new URL('/site_management/api/getLocations', window.location.origin) + const url = new URL('/site-management/api/getLocations', window.location.origin) url.searchParams.append('page', locations_current_page) url.searchParams.append('limit', locations_limit) const response = await fetch(url) @@ -451,7 +451,7 @@ let vendors_current_page = 1 let vendors_end_page = 10 let vendors_limit = 25 async function fetchVendors(){ - const url = new URL('/site_management/api/getVendors', window.location.origin) + const url = new URL('/site-management/api/getVendors', window.location.origin) url.searchParams.append('page', vendors_current_page) url.searchParams.append('limit', vendors_limit) const response = await fetch(url) @@ -604,7 +604,7 @@ async function postAddVendor() { let vendor_phone_number = document.getElementById('VendorPhoneNumber').value let vendor_address = document.getElementById('VendorAddress').value - const response = await fetch(`/site_management/api/postAddVendor`, { + const response = await fetch(`/site-management/api/postAddVendor`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -638,7 +638,7 @@ async function postEditVendor(vendor_id) { let vendor_phone_number = document.getElementById('VendorPhoneNumber').value let vendor_address = document.getElementById('VendorAddress').value - const response = await fetch(`/site_management/api/postEditVendor`, { + const response = await fetch(`/site-management/api/postEditVendor`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -671,7 +671,7 @@ let brands_current_page = 1 let brands_end_page = 10 let brands_limit = 25 async function fetchBrands(){ - const url = new URL('/site_management/api/getBrands', window.location.origin) + const url = new URL('/site-management/api/getBrands', window.location.origin) url.searchParams.append('page', brands_current_page) url.searchParams.append('limit', brands_limit) const response = await fetch(url) @@ -813,7 +813,7 @@ async function openEditBrandsModal(brand) { async function postAddBrand() { let brand_name = document.getElementById('BrandName').value - const response = await fetch(`/site_management/api/postAddBrand`, { + const response = await fetch(`/site-management/api/postAddBrand`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -843,7 +843,7 @@ async function postAddBrand() { async function postEditBrand(brand_id) { let brand_name = document.getElementById('BrandName').value - const response = await fetch(`/site_management/api/postEditBrand`, { + const response = await fetch(`/site-management/api/postEditBrand`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -876,7 +876,7 @@ let prefix_current_page = 1 let prefix_end_page = 10 let prefix_limit = 25 async function fetchPrefixes(){ - const url = new URL('/site_management/api/getPrefixes', window.location.origin) + const url = new URL('/site-management/api/getPrefixes', window.location.origin) url.searchParams.append('page', prefix_current_page) url.searchParams.append('limit', prefix_limit) const response = await fetch(url) @@ -1029,7 +1029,7 @@ async function postAddPrefix() { let prefix_name = document.getElementById('PrefixName').value let prefix_description = document.getElementById('PrefixDescription').value - const response = await fetch(`/site_management/api/postAddPrefix`, { + const response = await fetch(`/site-management/api/postAddPrefix`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -1063,7 +1063,7 @@ async function postEditPrefix(prefix_id) { let prefix_name = document.getElementById('PrefixName').value let prefix_description = document.getElementById('PrefixDescription').value - const response = await fetch(`/site_management/api/postEditPrefix`, { + const response = await fetch(`/site-management/api/postEditPrefix`, { method: 'POST', headers: { 'Content-Type': 'application/json', diff --git a/webserver.py b/webserver.py index 4d6ac19..7bec48c 100644 --- a/webserver.py +++ b/webserver.py @@ -40,10 +40,10 @@ oauth.register( assets = Environment(app) app.secret_key = '11gs22h2h1a4h6ah8e413a45' app.register_blueprint(access_api.access_api, url_prefix="/access") -app.register_blueprint(administration_api.admin_api, url_prefix='/admin') +app.register_blueprint(administration_api.admin_api, url_prefix='/administration') app.register_blueprint(items_API.items_api, url_prefix='/items') app.register_blueprint(poe_api.point_of_ease, url_prefix='/poe') -app.register_blueprint(site_management_api.site_management_api, url_prefix="/site_management") +app.register_blueprint(site_management_api.site_management_api, url_prefix="/site-management") app.register_blueprint(receipts_api.receipt_api, url_prefix='/receipts') app.register_blueprint(shoplist_api.shopping_list_api, url_prefix="/shopping-lists") app.register_blueprint(recipes_api.recipes_api, url_prefix='/recipes') From e1d7a0047321d71528f4464df6bb830ff894e277 Mon Sep 17 00:00:00 2001 From: Jadowyne Ulve Date: Sun, 3 Aug 2025 18:53:55 -0500 Subject: [PATCH 38/38] test --- application/access_module/templates/login.html | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/application/access_module/templates/login.html b/application/access_module/templates/login.html index 97353da..74aa44b 100644 --- a/application/access_module/templates/login.html +++ b/application/access_module/templates/login.html @@ -32,12 +32,8 @@
    • Login
    • Sign Up
    -
    -
    @@ -55,9 +51,14 @@
    - + Login +
    +

    OR

    +
    +

    g;Z~-o{a-) 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