Files
py_luggage/db.py
T

108 lines
3.3 KiB
Python

import mariadb
import logging
#Logging
logging.basicConfig(
filename='app.log', # Log to a file
level=logging.DEBUG, # Log everything (DEBUG and above)
format='%(asctime)s %(levelname)s %(message)s'
)
logging.info('Application started')
try:
logging.debug('Debug info here')
except Exception as e:
logging.exception('An error occurred')
def connect():
try:
global connection
connection = mariadb.connect(user="luggage",
password="13579,QsC",
host="192.168.1.74",
port=3307,
database="canada_luggage")
print("Connected to MariaDB successfully!")
logging.info("Connected to MariaDB successfully!")
except mariadb.Error as e:
print(f"Error connecting to DB: {e}")
logging.error("Error connecting")
logging.debug(f"Error connecting to DB: {e}")
def new_part(cloth_type, weigth, pieces):
if type(pieces) is not int:
print("only ints allowed")
logging.error("only ints allowed")
else:
cursor = connection.cursor()
executed = "INSERT INTO luggage (clothes, weigth, pieces) VALUES (?, ?, ?)"
executed_data = (cloth_type, weigth, pieces)
cursor.execute(executed, executed_data)
connection.commit()
logging.info("new Insert is in DB")
def fetch_clothes():
cursor = connection.cursor()
cursor.execute("SELECT clothes FROM luggage")
clothes = [str(row[0]) for row in cursor.fetchall()]
logging.info("fetched clothes")
return clothes
def update_weigth(cloth_type, weigth):
cursor = connection.cursor()
executed = "UPDATE luggage SET weigth = ? WHERE clothes = ?"
executed_data = (weigth, cloth_type)
cursor.execute(executed, executed_data)
connection.commit()
logging.info("weigth updated")
def update_pieces(cloth_type, pieces):
if type(pieces) is not int:
logging.error("only ints allowed")
else:
cursor = connection.cursor()
executed = "UPDATE luggage SET pieces = ? WHERE clothes = ?"
executed_data = (pieces, cloth_type)
cursor.execute(executed, executed_data)
connection.commit()
logging.info("pieces updated")
def fetch_weigth(cloth_type):
cursor = connection.cursor()
cursor.execute("SELECT weigth FROM luggage WHERE clothes = ?", (cloth_type,))
weigth = cursor.fetchone()[0]
logging.info("fetched weigth")
return weigth
def fetch_luggage_weigth():
cursor = connection.cursor()
cursor.execute("SELECT sum(weigth) FROM luggage")
weigth = cursor.fetchone()[0]
logging.info("fetched luggage weigth")
return weigth
def fetch_piece(cloth_type):
cursor = connection.cursor()
cursor.execute("SELECT pieces FROM luggage WHERE clothes = ?", (cloth_type,))
pieces = cursor.fetchone()[0]
logging.info("fetched luggage pieces")
return pieces
def fetch_all_pieces():
cursor = connection.cursor()
cursor.execute("SELECT sum(pieces) FROM luggage")
pieces = cursor.fetchone()[0]
logging.info("fetched all luggage pieces")
return pieces
def delete(cloth_type):
cursor = connection.cursor()
cursor.execute("DELETE FROM luggage WHERE clothes = ?;", (cloth_type,))
logging.critical(f"{cloth_type} was deleted")
connection.commit()