def cariProduk(self): database.getDatabase().deleteScreen() cari = input("Produk yang dicari: ") query = "SELECT namaProduk, stok, harga from produk where namaProduk = '{}'".format( cari) self.cursor.execute(query) barang = self.cursor.fetchall() self.database.commit() try: #dilakukan try dan except biar kalo ada error ngeprint yang except print([0][0], " dengan harga ", barang[0][1], " Tersedia ditoko kami") tambah = input("Apakah ingin ditambahkan dikeranjang ? \nyes/no") if tambah == 'yes': Pembeli.belanja.append(barang[0]) Pembeli.harga.append(barang[0][1]) mauTambah = input("Tambah Produk? \n yes/no") if mauTambah == "yes": Pembeli().cariProduk() elif mauTambah == "no": Pembeli().menuPembeli() elif tambah == 'no': Pembeli().menuPembeli() except IndexError: print("Maaf, Barang yang anda cari tidak tersedia di toko kami") Pembeli().menuPembeli()
def login(self): database.getDatabase().deleteScreen() username = str(input("Username: "******"Password: "******"INSERT INTO dataLogin (username, password) VALUES('{}', '{}');".format( username, password) self.cursor.execute(query) self.database.commit() print("Login Berhasil, Selamat Datang di Stock.Id", username, "^^") user = input("Ketik 'ya' untuk melanjutkan!") if user == 'ya': Penjual().menuPenjual()
def home(self): database.getDatabase().deleteScreen() daftar_menu = int( input('''============Selamat datang di Stock.id============ 1. Registrasi 2. Log in ======================================================\n''')) if daftar_menu == 1: User().registrasi() elif daftar_menu == 2: User().login() else: print("Menu tidak tersedia, silahkan coba lagi!") self.home()
def menuPembeli(self): database.getDatabase().deleteScreen() daftar_menu = int( input( '''============Selamat datang di MENU PEMBELI Stock.id============ 1. Beli Produk 2. Checkout 4. Keluar ===============================================================\n''')) if daftar_menu == 1: Pembeli().selectProduk() elif daftar_menu == 2: Pembeli().Checkout() else: User().home()
def addProduk(self, tabel): self.tabel = tabel namaProduk = str(input("Nama produk: ")) stok = int(input("Stok Produk: ")) harga = int(input('Harga Produk: ')) query = "INSERT INTO {} (namaProduk, stok, harga) VALUES('{}', '{}', '{}');".format( tabel, namaProduk, stok, harga) self.cursor.execute(query) self.database.commit() print("Produk berhasil ditambahkan.") cont = input("Apakah ingin kembali ke menu? (yes/ no\n)") if cont == 'yes': Penjual().menuPenjual() else: database.getDatabase().deleteScreen() Penjual().addProduk('produk')
def commandLine(): global finnhub_websocket while True: inputString = input() cutIndex = -1 command = "" if " " in inputString: cutIndex = inputString.index(" ") command = inputString[:cutIndex] else: command = inputString if "printDatabase" == command: tradeDATAObj = database.getDatabase() pp.pprint(tradeDATAObj) elif "startupSymbols" == command: # add_symbol(finnhub_websocket, "BINANCE:BTCUSDT") add_symbol(finnhub_websocket, "AMZN") add_symbol(finnhub_websocket, "AAPL") add_symbol(finnhub_websocket, "MSFT") add_symbol(finnhub_websocket, "AMZN") add_symbol(finnhub_websocket, "V") add_symbol(finnhub_websocket, "BABA") add_symbol(finnhub_websocket, "WMT") add_symbol(finnhub_websocket, "DIS") add_symbol(finnhub_websocket, "KO") add_symbol(finnhub_websocket, "NKE") add_symbol(finnhub_websocket, "HSBC") add_symbol(finnhub_websocket, "MCD") elif "addSymbol" == command: if cutIndex > 0: add_symbol(finnhub_websocket, inputString[cutIndex + 1:]) print(f"> Added {inputString[cutIndex+1:]}") elif "printSubscription" == command: pp.pprint(getSubscription()) elif "testBlock" == command: print(finnhub_websocket) elif "printWebhooks" == command: print(list_webhooks()) elif "websocketResub" == command: finnhub_websocket.resubscribe() print(f"resub {finnhub_websocket.symbols}") elif "cleanWebhooks" == command: clean_webhooks() elif "startWebsocket" == command: websocketThread = threading.Thread(target=startWebsocket__, args=()) websocketThread.start() elif "stopWebsocket" == command: finnhub_websocket.stop() elif "getSymbols" == command: print(finnhub_websocket.getSymbols())
def menuPenjual(self): database.getDatabase().deleteScreen() daftar_menu = int( input( '''============Selamat datang di MENU PENJUAL Stock.id============ 1. Tambah Produk 2. Hapus Produk 3. Cek Stok Produk 4. Keluar ===============================================================\n''')) if daftar_menu == 1: Penjual().addProduk('produk') elif daftar_menu == 2: Penjual().deleteProduk() elif daftar_menu == 3: Penjual().cekProduk() else: User().home()
def registrasi(self): database.getDatabase().deleteScreen( ) #untuk menghapus tulisan yang diatasnya email = str(input("Email: ")) username = str(input("Username: "******"Password: "******"INSERT INTO dataRegistrasi (email, username, password) VALUES('{}', '{}', '{}');".format( email, username, password) self.cursor.execute(query) self.database.commit() #mengakhiri dan disimpan permanen cont = str( input( 'Selamat anda berhasil terdaftar!^^, continue to login? (yes/ no)\n' )) if cont == 'yes': User().login() elif cont == 'no': User().home() else: User().home()
def menuPembeli(self): database.getDatabase().deleteScreen() daftar_menu = int( input( '''============Selamat datang di MENU PEMBELI Stock.id============ 1. Beli Produk 2. Checkout 4. Keluar ===============================================================\n''')) if daftar_menu == 1: Pembeli().cariProduk() elif daftar_menu == 2: beli = str(input("Beli produk terlebih dahulu!\n (yes/no)")) if beli == 'yes': Pembeli().menuPembeli() else: User().home() else: User().home()
def handle_request(request): http = HTTPHandler if not "\r\n\r\n" in request: return None try: bodySeperatorIndex = request.index("\r\n\r\n") # Parse headers headers = request[:bodySeperatorIndex].split("\n") # Parse body body = request[bodySeperatorIndex + 4:] if (len(headers) > 1): get_content = headers[0].split() # accept = headers[6].split() # type_content = accept[1].split('/') requestUrl = get_content[1] if "?" in requestUrl: requestUrl = requestUrl[:requestUrl.index("?")] print(f"Request: {get_content[1]}") if requestUrl == "/recieve": return webhook_data(headers, body) elif requestUrl == "/getData": return json.dumps(database.getDatabase()).encode() elif requestUrl == "/add": return "not implemented" else: try: # Filename filename = requestUrl if get_content[0] == "GET": # content = http.get(None, requestUrl, type_content[0]) content = http.get(None, requestUrl, 'image') return content except FileNotFoundError: return None except Error: return None
def server_thread(listen_conn, broadcast_conn, listen_addr, broadcast_addr, push_conn, push_addr, client_id): """ server thread to serve clients listens for commands from the client and carries them out """ global database global clients _client = client.Client(listen_conn, broadcast_conn, listen_addr, broadcast_addr, push_conn, push_addr) clients.append(_client) while True: with listen_conn and broadcast_conn: print('Connected by', listen_addr) print('alternatively, ', broadcast_addr) while True: # check for updated messages, this should happen before receiving # should be split into data[0]@data[1]@data[2] # where data[0] is the command (CONN, DISC, etc.), data[1] is the topic, data[2] is the contents data = listen_conn.recv(DATA_SIZE).decode("utf-8").split("@") data[0] = data[0].upper() print("client: ", data) if not data: break if data[0] == "CONNECT": # send ACK broadcast_conn.send("CONNACK".encode("utf-8")) elif data[0] == "DISCONNECT": # send ACK broadcast_conn.send("DISCACK".encode("utf-8")) response = listen_conn.recv(SRTMSG).decode("utf-8") print("client: " + response) if response == "DISCACK": listen_conn.shutdown(socket.SHUT_RDWR) listen_conn.close() broadcast_conn.shutdown(socket.SHUT_RDWR) broadcast_conn.close() # "break" is essentially where the server full shuts down for that client break elif data[0] == "PUBLISH": # only proceed if there is topic and contents if len(data) == 3: topic = data[1] contents = data[2] # subscribe the publisher to the topic _client.subscribe(topic) # notify all subscribers notify(topic, contents) broadcast_conn.send("PUBACK".encode("utf-8")) elif len(data) == 4: topic = data[1] contents = data[2] database.publish(topic, contents) # subscribe the publisher to the topic _client.subscribe(topic) # notify all subscribers notify(topic, contents) broadcast_conn.send("PUBACK".encode("utf-8")) else: broadcast_conn.send("PUBFAIL".encode("utf-8")) elif data[0] == "SUBSCRIBE": # adds the topic to the client's profile _client.subscribe(data[1]) # need to account for wildcard # immediately allow the subscriber to have the latest message path = data[1].split("/") db = database.getDatabase() db_lag = db msg = "" for t in path: db_lag = db if t == "*" or t == "+": t = list(db.keys())[0] msg = db[t][1] db = db[t][0] push_conn.send(msg.encode("utf-8")) broadcast_conn.send("SUBACK".encode("utf-8")) elif data[0] == "UNSUBSCRIBE": _client.unsubscribe(data[1]) # need to account for wildcard broadcast_conn.send("UNSUBACK".encode("utf-8")) elif data[0] == "LIST": print(database) broadcast_conn.send("LIST".encode("utf-8")) print(str(database)) broadcast_conn.send(str(database).encode("utf-8")) else: # send ACK broadcast_conn.send("invalid type".encode("utf-8")) print("invalid type")
#!/usr/bin/python import database as dbs import switch, thermocontrol, sys db = dbs.getDatabase() def help(): print "h1 - Turn heating on" print "h0 - Turn heating off" print "t1 - Turn thermometer writing on" print "t0 - Turn thermometer writing off" print "p1 - Turn PID Controller on" print "p0 - Turn PID Controller off" print "s - setpoint" print "cdb - clear database" print "g - get current temperature" print "x - quit" print "? - print this" help() while True: i = raw_input("command: ") if (i == "h1"): switch.on() print "switched heating on" continue
from database import getDatabase from sensor_bme280 import collectBME280SensorData from sensor_dht22 import collectDHT22SensorData # Program start db = getDatabase() collectBME280SensorData(db) collectDHT22SensorData(db) db.commit() db.close()
#!/usr/bin/env python """A prototype server developed as a proof-of-concept for a new mapping system for foxhunting and balloon chases. This requires Flask, which is a microframework for Python. See http://flask.pocoo.org/ """ import database import flask import flask.ext.login app = flask.Flask(__name__, static_url_path='', static_folder='') db = database.getDatabase() loginManager = flask.ext.login.LoginManager(app) class User(flask.ext.login.UserMixin): def __init__(self, uid, username): self.uid = uid self.username = username def get_id(self): return self.uid @loginManager.user_loader def loadUser(userid): username, active = db.user(int(userid)) return User(userid, username)
def accept( self ): database.getDatabase( self.txtBd.text(), "--dbconfig" in qApp.arguments() ) super( dlgUserLogin, self ).accept()