import sqlite3 def connect(): return sqlite3.connect("cafe.db") def setup_database(): db = connect() cur = db.cursor() # Tabel Users cur.execute(""" CREATE TABLE IF NOT EXISTS users( id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT, password TEXT, role TEXT ) """) # Tabel Menu cur.execute(""" CREATE TABLE IF NOT EXISTS menu( id INTEGER PRIMARY KEY AUTOINCREMENT, nama TEXT, harga REAL, gambar TEXT ) """) # Tabel Transaksi cur.execute(""" CREATE TABLE IF NOT EXISTS transaksi( id INTEGER PRIMARY KEY AUTOINCREMENT, tanggal TEXT, total REAL, meja_id INTEGER, status TEXT ) """) # Tabel Detail Transaksi cur.execute(""" CREATE TABLE IF NOT EXISTS detail_transaksi( id INTEGER PRIMARY KEY AUTOINCREMENT, transaksi_id INTEGER, menu_nama TEXT, harga REAL, jumlah INTEGER, subtotal REAL ) """) # Insert Akun Default cur.execute("SELECT COUNT(*) FROM users") if cur.fetchone()[0] == 0: users = [ ("admin","admin","admin"), ("kasir","kasir","kasir"), ("pembeli","pembeli","pembeli"), ("waiter","waiter","waiter"), ("pemilik","pemilik","pemilik") ] cur.executemany("INSERT INTO users(username,password,role) VALUES (?,?,?)", users) db.commit() # --- UPDATE DAFTAR MENU SESUAI FOLDER ASET --- cur.execute("SELECT COUNT(*) FROM menu") if cur.fetchone()[0] == 0: menus = [ ('Ayam Goreng', 20000, 'aset/ayam_goreng.jpg'), ('Bakso', 15000, 'aset/bakso.jpg'), ('Es Teh', 5000, 'aset/es_teh.jpg'), ('Es Teler', 15000, 'aset/es_teler.jpg'), ('Jus Jeruk', 8000, 'aset/jus_jeruk.jpg'), ('Mie Ayam', 12000, 'aset/mie_ayam.jpg') ] cur.executemany("INSERT INTO menu (nama, harga, gambar) VALUES (?,?,?)", menus) db.commit() db.close()