Many Chanegs
parent
ba7de6d4e2
commit
501e0765d3
|
|
@ -1,5 +1,32 @@
|
|||
from pydantic import BaseModel
|
||||
|
||||
class CL_Ping_Set(BaseModel):
|
||||
## Test
|
||||
name: str
|
||||
ipadress: str
|
||||
|
||||
|
||||
class CL_Database_get(BaseModel):
|
||||
name: str
|
||||
|
||||
class CL_Diskusage(BaseModel):
|
||||
function: str
|
||||
value: str
|
||||
|
||||
class CL_CPUinfo(BaseModel):
|
||||
name: str
|
||||
|
||||
class CL_Systeminfo_set(BaseModel):
|
||||
ram: str
|
||||
prozessor: int
|
||||
cpu: str
|
||||
ipaddress: str
|
||||
single_free_hdd: str
|
||||
single_used_hdd: str
|
||||
single_total_hdd: str
|
||||
total_free_hdd: int
|
||||
total_used_hdd: int
|
||||
total_total_hdd: int
|
||||
|
||||
class CL_Systeminfo_get(BaseModel):
|
||||
ipaddress: str
|
||||
35
main.py
35
main.py
|
|
@ -3,6 +3,11 @@ from pydantic import BaseModel
|
|||
import mysql.connector
|
||||
from datetime import datetime
|
||||
import Classes.main_classes as CL ## Importiert Classes
|
||||
import uvicorn
|
||||
import logging
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG) # add this line
|
||||
logger = logging.getLogger("foo")
|
||||
|
||||
## uvicorn.exe main:app --reload Startet den API-Server
|
||||
|
||||
|
|
@ -41,24 +46,36 @@ def database(query,name,user):
|
|||
mydb.commit()
|
||||
mydb.close()
|
||||
|
||||
|
||||
app = FastAPI()
|
||||
|
||||
class Ping_Set(BaseModel):
|
||||
## Test
|
||||
name: str
|
||||
ipadress: str
|
||||
|
||||
@app.post("/ping")
|
||||
async def ping(ping: Ping_Set):
|
||||
async def ping(ping: CL.CL_Ping_Set):
|
||||
database(f"INSERT INTO `Ping-Server` VALUES ('{datetime.now()}','{ping.name}','{ping.ipadress}')","Stines-GmbH","")
|
||||
return f"ADD Ping from {ping.name} to Server"
|
||||
|
||||
## Get Database from Server
|
||||
@app.post("/database_get/")
|
||||
@app.post("/dbget")
|
||||
async def database_get(get: CL.CL_Database_get):
|
||||
get_database = database("SHOW DATABASES","","")
|
||||
if get.name in f"({get_database},)":
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
return False
|
||||
|
||||
@app.post("/cpu_info")
|
||||
async def cpu_info(get: CL.CL_CPUinfo):
|
||||
return database(f"SELECT `Prozessor-Anzahl` FROM `CPU-Liste` WHERE `CPU-Name`='{get.name}'","Stines-GmbH","")
|
||||
|
||||
@app.post("/systeminfo_set")
|
||||
async def systeminfo_set(get: CL.CL_Systeminfo_set):
|
||||
database(f"UPDATE `Kunden-Server` SET RAM={get.ram}, Prozessor={get.prozessor}, CPU='{get.cpu}',single_free_hdd='{get.single_free_hdd}',single_used_hdd='{get.single_used_hdd}',single_total_hdd='{get.single_total_hdd}',total_free_hdd='{get.total_free_hdd}',total_used_hdd='{get.total_used_hdd}',total_total_hdd='{get.total_total_hdd}' WHERE `IP-Adresse`='{get.ipaddress}'","Stines-GmbH","")
|
||||
return f"Server was UPDATE RAM={get.ram}, Prozessor={get.prozessor}, CPU={get.cpu}, IP-Adresse={get.ipaddress}"
|
||||
|
||||
@app.post("/systeminfo_get")
|
||||
async def systeminfo_set(get: CL.CL_Systeminfo_get):
|
||||
return database("SELECT * FROM `Stines-GmbH`.`Kunden-Server` WHERE `IP-Adresse` = ""'{}'""".format(get.ipaddress),"","")
|
||||
|
||||
|
||||
## Startet den API-Server
|
||||
if __name__ == '__main__':
|
||||
uvicorn.run("main:app", host='0.0.0.0', port=8000, reload=True, log_level="debug")
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
##### Für API-Tests
|
||||
|
||||
import requests
|
||||
|
||||
def request(function,variable):
|
||||
url = (f"http://127.0.0.1:8000/{function}/")
|
||||
response = requests.post(url,json = variable)
|
||||
return response
|
||||
|
||||
print(request("database_get", {'name':'Jaehler-GmbH'}).text)
|
||||
Loading…
Reference in New Issue