57 lines
1.2 KiB
Python
57 lines
1.2 KiB
Python
import sqlite3
|
|
|
|
def connect():
|
|
return sqlite3.connect("cafe.db")
|
|
|
|
def setup():
|
|
db = connect()
|
|
cursor = db.cursor()
|
|
|
|
cursor.execute("""
|
|
CREATE TABLE IF NOT EXISTS users (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
username TEXT,
|
|
password TEXT,
|
|
role TEXT
|
|
)""")
|
|
|
|
cursor.execute("""
|
|
CREATE TABLE IF NOT EXISTS menu (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
nama TEXT,
|
|
kategori TEXT,
|
|
harga INTEGER,
|
|
stok INTEGER,
|
|
foto TEXT
|
|
)""")
|
|
|
|
cursor.execute("""
|
|
CREATE TABLE IF NOT EXISTS meja (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
nomor INTEGER,
|
|
status TEXT
|
|
)""")
|
|
|
|
cursor.execute("""
|
|
CREATE TABLE IF NOT EXISTS transaksi (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
tanggal TEXT,
|
|
total INTEGER,
|
|
metode_pembayaran TEXT,
|
|
meja_id INTEGER,
|
|
status TEXT
|
|
)""")
|
|
|
|
cursor.execute("""
|
|
CREATE TABLE IF NOT EXISTS detail_transaksi (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
transaksi_id INTEGER,
|
|
menu_id INTEGER,
|
|
jumlah INTEGER,
|
|
subtotal INTEGER,
|
|
diskon INTEGER
|
|
)""")
|
|
|
|
db.commit()
|
|
db.close()
|