Compare commits
86 Commits
ee7e3a86d2
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 626ef889ee | |||
| 059b334a14 | |||
| 88b5b9b005 | |||
| b52af30d1c | |||
| 0525a666cf | |||
| 108e378343 | |||
| fe417601a6 | |||
| 60573fc9ec | |||
| ec3e76181c | |||
| 66268900f6 | |||
| 587eb51e17 | |||
| 40da79bc59 | |||
| 81faac9d59 | |||
| c8be8f40f4 | |||
| 079d31710b | |||
| bb80ce2b03 | |||
| db70ae2bd7 | |||
| 8dd26cb2cb | |||
| 1f8325284a | |||
| 2da8850d10 | |||
| e996819a00 | |||
| ffa5b0ef8b | |||
| 9d522b85a6 | |||
| 56fc7dd565 | |||
| ae5b1ed774 | |||
| 4d479cdf34 | |||
| 6f25ef191b | |||
| 753f1e7dc1 | |||
| d8e466451c | |||
| 719a9b34cb | |||
| 6ddb5b8a80 | |||
| 944ec36b8a | |||
| 7b3136a642 | |||
| 6203846cf7 | |||
| ff5954498c | |||
| 8dcc2aff41 | |||
| 58e577358d | |||
| fcf0814fdd | |||
| 83dd128934 | |||
| 1dd95e0757 | |||
| 3f84aefd41 | |||
| e671c58a47 | |||
| f1b046645f | |||
| 9254a7449d | |||
| a24c1cd2be | |||
| 2e2144cfa1 | |||
| b595d7aa1c | |||
| 54cc673517 | |||
| 89ef548c56 | |||
| f10ef8c461 | |||
| 16101f0873 | |||
| 106bab6853 | |||
| ef228cd0a4 | |||
| 57ffad012d | |||
| 2b9ae59e0f | |||
| e2f12cc6c7 | |||
| d75c18e8db | |||
| 60e2c168f4 | |||
| d691d2227b | |||
| e6b86d59f6 | |||
| 865f1d577e | |||
| 5adb363cdc | |||
| 838577d1fb | |||
| fb553b0344 | |||
| 6473833e7f | |||
| 05ef77c956 | |||
| d3e746352a | |||
| 5b6720218a | |||
| 2d84a01cc1 | |||
| 82a4160450 | |||
| d0ff0c4767 | |||
| ceb2b5726c | |||
| 00a084c80f | |||
| c661719d02 | |||
| 9ebbbac474 | |||
| e6bf371ea7 | |||
| d7524e686f | |||
| b54696358b | |||
| 524c4f5f77 | |||
| 477d37ad76 | |||
| e72f3ad574 | |||
| 1a58afe4f4 | |||
| 0fc79abc4b | |||
| 2db0fbbc15 | |||
| 511e8a1271 | |||
| 152424e2ee |
Generated
+1
-1
@@ -3,5 +3,5 @@
|
||||
<component name="Black">
|
||||
<option name="sdkName" value="Python 3.9 (api)" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.9 (api)" project-jdk-type="Python SDK" />
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.11" project-jdk-type="Python SDK" />
|
||||
</project>
|
||||
+28
-5
@@ -5,7 +5,6 @@ class CL_Ping_Set(BaseModel):
|
||||
name: str
|
||||
ipaddress: str
|
||||
|
||||
|
||||
class CL_Database_get(BaseModel):
|
||||
name: str
|
||||
|
||||
@@ -91,8 +90,8 @@ class CL_GET_DATABASE(BaseModel):
|
||||
ip: str
|
||||
|
||||
class CL_GET_VOLUMES(BaseModel):
|
||||
name: str
|
||||
database: str
|
||||
user: str
|
||||
dbname: str
|
||||
|
||||
class CL_GET_CLIENT(BaseModel):
|
||||
name: str
|
||||
@@ -112,12 +111,17 @@ class CL_GET_HOST_USER(BaseModel):
|
||||
|
||||
class CL_SET_HOST(BaseModel):
|
||||
hostname: str
|
||||
user: str
|
||||
ipadresse: str
|
||||
winver: str
|
||||
cpuname: str
|
||||
cores: int
|
||||
dbname: str
|
||||
ram: int
|
||||
hddfree: str
|
||||
hddused: str
|
||||
hddtotal: str
|
||||
ipadresse: str
|
||||
netvolumeuser: str
|
||||
|
||||
class CL_GET_CPU(BaseModel):
|
||||
hostname: str
|
||||
@@ -134,12 +138,17 @@ class CL_SET_CPU(BaseModel):
|
||||
|
||||
class CL_UPDATE_HOST(BaseModel):
|
||||
hostname: str
|
||||
user: str
|
||||
ipadresse: str
|
||||
winver: str
|
||||
cpuname: str
|
||||
cores: int
|
||||
dbname: str
|
||||
ram: int
|
||||
hddfree: str
|
||||
hddused: str
|
||||
hddtotal: str
|
||||
ipadresse: str
|
||||
netvolumeuser: str
|
||||
|
||||
class CL_SET_LASTLOGON_USER(BaseModel):
|
||||
userID: int
|
||||
@@ -154,6 +163,9 @@ class CL_GET_USER(BaseModel):
|
||||
user: str
|
||||
database: str
|
||||
|
||||
class CL_GET_USER_CLIENT(BaseModel):
|
||||
dbname: str
|
||||
hostname: str
|
||||
|
||||
class CL_ADD_GROUP_VOLUME(BaseModel):
|
||||
label: str
|
||||
@@ -161,3 +173,14 @@ class CL_ADD_GROUP_VOLUME(BaseModel):
|
||||
letter: str
|
||||
group: str
|
||||
dbname: str
|
||||
|
||||
class CL_ERROR_LOG(BaseModel):
|
||||
datum: str
|
||||
hostname: str
|
||||
samaccountname: str
|
||||
errorcode: str
|
||||
|
||||
class CL_REPORTING(BaseModel):
|
||||
username: str
|
||||
lastaccess: str
|
||||
ipaddress: str
|
||||
@@ -69,7 +69,7 @@ async def database_get(get: CL.CL_Database_get,api_key: APIKey = Depends(auth.ge
|
||||
@app.post("/host/get/netvolume")
|
||||
async def getvolume(get: CL.CL_GET_VOLUMES,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
## Anpassung zum neune Schema erstellen
|
||||
result = database(f"SELECT * FROM `NetVolumeToClients` where `Name` = '{get.user}'",f"{get.database}","")
|
||||
result = database(f"SELECT `{get.dbname}`.Netvolume.Volume_Path, `{get.dbname}`.Netvolume.Volume_Key, `{get.dbname}`.Netvolume.Volume_Name FROM `{get.dbname}`.`Active-Directory-User` INNER JOIN `{get.dbname}`.GruppenToADUser ON `{get.dbname}`.GruppenToADUser.ADUserID = `{get.dbname}`.`Active-Directory-User`.ID INNER JOIN `{get.dbname}`.Gruppen ON `{get.dbname}`.GruppenToADUser.GruppenID = `{get.dbname}`.Gruppen.id INNER JOIN `{get.dbname}`.GruppenToNetvolumes ON `{get.dbname}`.GruppenToNetvolumes.GruppenID = `{get.dbname}`.Gruppen.id INNER JOIN `{get.dbname}`.Netvolume ON `{get.dbname}`.GruppenToNetvolumes.NetvolumeID = `{get.dbname}`.Netvolume.ID WHERE `{get.dbname}`.`Active-Directory-User`.SamAccountName = '{get.user}' ORDER BY `{get.dbname}`.`Active-Directory-User`.SamAccountName DESC","","")
|
||||
volume = []
|
||||
if not result:
|
||||
return False
|
||||
@@ -88,7 +88,7 @@ async def getuser(get: CL.CL_GET_USER,api_key: APIKey = Depends(auth.get_api_key
|
||||
|
||||
@app.post("/host/get")
|
||||
async def gethost(get: CL.CL_GET_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
result = database(f"SELECT id FROM `hardware` where `hostname` = '{get.hostname}'",f"{get.dbname}","")
|
||||
result = database(f"SELECT id FROM `Clients` where `Host-Name` = '{get.hostname}'",f"{get.dbname}","")
|
||||
if not result:
|
||||
return False
|
||||
else:
|
||||
@@ -115,34 +115,42 @@ async def getdatabase(get: CL.CL_GET_DATABASE,api_key: APIKey = Depends(auth.get
|
||||
|
||||
@app.post("/host/set")
|
||||
async def sethost(get: CL.CL_SET_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
database(f"INSERT INTO `{get.dbname}`.hardware (hostname,ipadresse,ram,hddused,hddfree,hddtotal) VALUES ('{get.hostname}','{get.ipadresse}','{get.ram}','{get.hddused}','{get.hddfree}','{get.hddtotal}')","","")
|
||||
result = database(
|
||||
f"SELECT id FROM `{get.dbname}`.hardware WHERE hostname = '{get.hostname}')",
|
||||
database(f"INSERT INTO `{get.dbname}`.Clients (`Host-Name`,SamAccountName,`IP-Adresse`,`Windows-Version`,`CPU-Name`,`Prozessor-Anzahl`,RAM,Speichergesamt,Speicherfrei,Speicherbelegt, NetVolumeUser) VALUES ('{get.hostname}','{get.user}','{get.ipadresse}','{get.winver}','{get.cpuname}','{get.cores}','{get.ram}','{get.hddtotal}','{get.hddfree}','{get.hddused}',{get.netvolumeuser})","","")
|
||||
hostid = database(
|
||||
f"SELECT id FROM `{get.dbname}`.Clients WHERE `Host-Name` = '{get.hostname}'",
|
||||
"", "")
|
||||
if not result:
|
||||
userid = database(
|
||||
f"SELECT id FROM `{get.dbname}`.User WHERE `SamAccountName` = '{get.user}'",
|
||||
"", "")
|
||||
if not userid:
|
||||
userid = database(
|
||||
f"SELECT id FROM `{get.dbname}`.`Active-Directory-User` WHERE `SamAccountName` = '{get.user}'",
|
||||
"", "")
|
||||
database(f"INSERT INTO `{get.dbname}`.ClientsToUser (clientsid,userid) VALUES ({hostid},{userid})","","")
|
||||
if not hostid:
|
||||
return False
|
||||
else:
|
||||
return result[0][0]
|
||||
return hostid[0][0]
|
||||
|
||||
@app.post("/host/cpu")
|
||||
async def setcpu(get: CL.CL_SET_CPU,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
check = database(f"SELECT id FROM `{get.dbname}`.cpulist WHERE cpuname = '{get.cpuname}' AND ghz")
|
||||
database(f"INSERT INTO `{get.dbname}`.cpulist (cpuname,ghz,cputyp) VALUES ('{get.cpuname}','{get.ghz}','{get.cputyp}')","","")
|
||||
result = database(
|
||||
f"SELECT id FROM `{get.dbname}`.cpulist WHERE cpuname = '{get.cpuname} AND cputyp = {get.cputyp}')",
|
||||
"", "")
|
||||
database(
|
||||
f"INSERT INTO `{get.dbname}`.cpu_to_client (hardwareID,cpulistID) VALUES ('{get.hardwareID}','{result[0][0]}',)",
|
||||
"", "")
|
||||
if not result:
|
||||
return False
|
||||
else:
|
||||
return result[0][0]
|
||||
# @app.post("/host/cpu")
|
||||
# async def setcpu(get: CL.CL_SET_CPU,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
# check = database(f"SELECT id FROM `{get.dbname}`.cpulist WHERE cpuname = '{get.cpuname}' AND ghz")
|
||||
# database(f"INSERT INTO `{get.dbname}`.cpulist (cpuname,ghz,cputyp) VALUES ('{get.cpuname}','{get.ghz}','{get.cputyp}')","","")
|
||||
# result = database(
|
||||
# f"SELECT id FROM `{get.dbname}`.cpulist WHERE cpuname = '{get.cpuname} AND cputyp = {get.cputyp}')",
|
||||
# "", "")
|
||||
# database(
|
||||
# f"INSERT INTO `{get.dbname}`.cpu_to_client (hardwareID,cpulistID) VALUES ('{get.hardwareID}','{result[0][0]}',)",
|
||||
# "", "")
|
||||
# if not result:
|
||||
# return False
|
||||
# else:
|
||||
# return result[0][0]
|
||||
|
||||
@app.post("/host/update")
|
||||
async def updatehost(get: CL.CL_UPDATE_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
database(f"UPDATE `{get.dbname}`.hardware SET ipadresse = '{get.ipadresse}', ram = '{get.ram}', hddused = '{get.hddused}' ,hddfree = '{get.hddfree}',hddtotal = '{get.hddtotal}' WHERE hostname = '{get.hostname}'","","")
|
||||
result = database(f"SELECT id FROM `{get.dbname}`.hardware WHERE hostname = '{get.hostname}'","", "")
|
||||
database(f"UPDATE `{get.dbname}`.Clients SET SamAccountName = '{get.user}',`IP-Adresse` = '{get.ipadresse}',`Windows-Version` = '{get.winver}',`CPU-Name` = '{get.cpuname}',`Prozessor-Anzahl` = {get.cores},RAM = {get.ram},Speichergesamt = '{get.hddtotal}',Speicherfrei = '{get.hddfree}',Speicherbelegt = '{get.hddused}',NetVolumeUser = '{get.netvolumeuser}', LastChange = '{datetime.now()}' WHERE `Host-Name` = '{get.hostname}'","","")
|
||||
result = database(f"SELECT id FROM `{get.dbname}`.Clients WHERE `Host-Name` = '{get.hostname}'","", "")
|
||||
if not result:
|
||||
return False
|
||||
else:
|
||||
@@ -150,9 +158,7 @@ async def updatehost(get: CL.CL_UPDATE_HOST,api_key: APIKey = Depends(auth.get_a
|
||||
|
||||
@app.post("/user/set")
|
||||
async def set_user(get: CL.CL_SET_HOST_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
database(f"INSERT INTO `{get.dbname}`.user (user) VALUES ('{get.user}')","","")
|
||||
result = database(f"SELECT id FROM `{get.dbname}`.user WHERE user = '{get.user}'","","")
|
||||
database(f"INSERT INTO `{get.dbname}`.hardware_to_user (userID,hardwareID) VALUES ('{result[0][0]}',{get.hardwareID})", "", "")
|
||||
result = database(f"INSERT INTO `{get.dbname}`.ClientsUser (SamAccountName) VALUES ('{get.user}')","","")
|
||||
if not result:
|
||||
return False
|
||||
else:
|
||||
@@ -160,21 +166,16 @@ async def set_user(get: CL.CL_SET_HOST_USER,api_key: APIKey = Depends(auth.get_a
|
||||
|
||||
@app.post("/user/get")
|
||||
async def get_user(get: CL.CL_GET_HOST_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
result = database(f"SELECT id FROM `{get.dbname}`.user WHERE user = '{get.user}'","","")
|
||||
result = database(f"SELECT id FROM `{get.dbname}`.`Active-Directory-User` WHERE SamAccountName = '{get.user}' ORDER BY ID DESC LIMIT 1","","")
|
||||
if not result:
|
||||
return False
|
||||
else:
|
||||
return result[0][0]
|
||||
result = database(
|
||||
f"SELECT id FROM `{get.dbname}`.`Clients` WHERE SamAccountName = '{get.user}' ORDER BY ID DESC LIMIT 1",
|
||||
"", "")
|
||||
return result[0][0]
|
||||
|
||||
@app.post("/user/set/lastlogon")
|
||||
async def set_lastlogon_user(get: CL.CL_SET_LASTLOGON_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
database(f"INSERT INTO `{get.dbname}`.lastlogon (lastlogon) VALUES ('{get.lastlogon}')","","")
|
||||
lastlogonid = database(f"SELECT id FROM `{get.dbname}`.lastlogon WHERE lastlogon = '{get.lastlogon}'","","")
|
||||
result = database(f"INSERT INTO `{get.dbname}`.lastlogon_to_user (userID,lastlogonID) VALUES ('{get.userID}','{lastlogonid[0][0]}')", "", "")
|
||||
if not result:
|
||||
return False
|
||||
else:
|
||||
return result[0][0]
|
||||
database(f"INSERT INTO `{get.dbname}`.LastLogonToADUser (aduserid,lastlogon) VALUES ('{get.userID}','{get.lastlogon}')", "", "")
|
||||
|
||||
|
||||
@app.post("/info/getclient")
|
||||
@@ -185,6 +186,15 @@ async def getclient(get: CL.CL_GET_CLIENT,api_key: APIKey = Depends(auth.get_api
|
||||
else:
|
||||
return result[0][0]
|
||||
|
||||
@app.post("/client/user/get")
|
||||
async def getclient(get: CL.CL_GET_USER_CLIENT,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
result = database(f"SELECT NetVolumeUser FROM `{get.dbname}`.`Clients` where `Host-Name` = '{get.hostname}'","","")
|
||||
if not result:
|
||||
return False
|
||||
else:
|
||||
return result[0][0]
|
||||
|
||||
|
||||
@app.post("/info/addclient")
|
||||
async def addclient(addclient: CL.CL_ADD_CLIENT,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
print(addclient.query)
|
||||
@@ -242,8 +252,7 @@ async def add_report_user(get: CL.CL_ADD_REPORT_USER,api_key: APIKey = Depends(a
|
||||
|
||||
@app.post("/ad/user/disabled")
|
||||
async def disabled_user(get: CL.CL_CHECK_DISABLED_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
# result = database(f"SELECT `{get.dbname}`.`Gruppen`.`Name` ,`{get.dbname}`.`GruppenToUser`.`Deaktiviert` from `{get.dbname}`.`Active-Directory-User` INNER join `{get.dbname}`.`GruppenToUser` on `{get.dbname}`.`Active-Directory-User`.`ID` = `{get.dbname}`.`GruppenToUser`.`UserID` INNER join`{get.dbname}`.`Gruppen` on `{get.dbname}`.`Gruppen`.`ID` = `{get.dbname}`.`GruppenToUser`.`GruppenID` WHERE `{get.dbname}`.`Active-Directory-User`.`SamAccountName` = '{get.user}' AND `{get.dbname}`.`GruppenToUser`.`Deaktiviert` LIKE '%{datetime.now().strftime('%Y-%m-%d')}%'",f"{get.dbname}","")
|
||||
result = database(f"SELECT `{get.dbname}`.`Gruppen`.`Name` ,`{get.dbname}`.`GruppenToUser`.`Deaktiviert` from `{get.dbname}`.`Active-Directory-User` INNER join `{get.dbname}`.`GruppenToUser` on `{get.dbname}`.`Active-Directory-User`.`ID` = `{get.dbname}`.`GruppenToUser`.`UserID` INNER join`{get.dbname}`.`Gruppen` on `{get.dbname}`.`Gruppen`.`ID` = `{get.dbname}`.`GruppenToUser`.`GruppenID` WHERE `{get.dbname}`.`Active-Directory-User`.`SamAccountName` = '{get.user}'",f"{get.dbname}","")
|
||||
result = database(f"SELECT `{get.dbname}`.`Gruppen`.`Name` ,`{get.dbname}`.`GruppenToADUser`.`Deaktiviert` from `{get.dbname}`.`Active-Directory-User` INNER join `{get.dbname}`.`GruppenToADUser` on `{get.dbname}`.`Active-Directory-User`.`ID` = `{get.dbname}`.`GruppenToADUser`.`ADUserID` INNER join`{get.dbname}`.`Gruppen` on `{get.dbname}`.`Gruppen`.`ID` = `{get.dbname}`.`GruppenToADUser`.`GruppenID` WHERE `{get.dbname}`.`Active-Directory-User`.`SamAccountName` = '{get.user}'",f"{get.dbname}","")
|
||||
return result
|
||||
|
||||
@app.post("/report/getgroup")
|
||||
@@ -265,17 +274,20 @@ async def get_user_id(get: CL.CL_GET_USER_ID,api_key: APIKey = Depends(auth.get_
|
||||
|
||||
@app.post("/report/addusertogroup")
|
||||
async def get_addusertogroup(get: CL.CL_ADD_USER_TO_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
groupid = []
|
||||
userid = database(f"SELECT ID FROM `{get.dbname}`.`Active-Directory-User` WHERE SamAccountName = '{get.member}' ORDER BY ID DESC LIMIT 1","","")[0][0]
|
||||
print(userid)
|
||||
groupid = database(f"SELECT ID FROM `{get.dbname}`.Gruppen WHERE Name = '{get.groupname}'","","")
|
||||
if not groupid:
|
||||
database(f"INSERT INTO `{get.dbname}`.Gruppen (Name) VALUES ('{get.groupname}')","","")
|
||||
groupid = database(f"SELECT ID FROM `{get.dbname}`.Gruppen WHERE Name = '{get.groupname}'", "", "")[0][0]
|
||||
check = database(f"SELECT * FROM `{get.dbname}`.GruppenToUser WHERE UserID = {userid} AND GruppenID = {groupid[0][0]}","","")
|
||||
check = database(f"SELECT * FROM `{get.dbname}`.GruppenToADUser WHERE ADUserID = {userid} AND GruppenID = {groupid[0][0]}","","")
|
||||
if not check:
|
||||
database(f"INSERT INTO `{get.dbname}`.GruppenToUser (UserID,GruppenID) VALUES ({userid},{groupid[0][0]})","","")
|
||||
database(f"INSERT INTO `{get.dbname}`.GruppenToADUser (ADUserID,GruppenID) VALUES ({userid},{groupid[0][0]})","","")
|
||||
else:
|
||||
newid = database(f"SELECT db1.ID FROM `{get.dbname}`.`Active-Directory-User` as db1 WHERE db1.SamAccountName = '{get.member}' ORDER BY ID DESC LIMIT 1","","")
|
||||
print(newid)
|
||||
oldid = database(f"SELECT gtu.ADUserID FROM `{get.dbname}`.GruppenToADUser as gtu INNER JOIN `{get.dbname}`.`Active-Directory-User` as db2 ON gtu.ADUserID = db2.id WHERE db2.SamAccountName = '{get.member}' LIMIT 1","","")
|
||||
print(oldid)
|
||||
database(f"UPDATE `{get.dbname}`.GruppenToADUser as gtu SET gtu.ADUserID = '{newid[0][0]}' WHERE gtu.ADUserID = '{oldid[0][0]}'","","")
|
||||
return check
|
||||
|
||||
@app.post("/report/addgroup")
|
||||
@@ -283,6 +295,11 @@ async def get_addreport_group(get: CL.CL_ADD_REPORT_GROUP,api_key: APIKey = Depe
|
||||
print(database(get.query,get.dbname,""))
|
||||
return f"Create {get.query} - {get.dbname}"
|
||||
|
||||
@app.post("/report/errorlog")
|
||||
async def get_errorlog(get: CL.CL_ERROR_LOG,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
print(database(f"INSERT INTO {get.dname}.ERROR_LOG (datum,hostname,samaccouuntname,fehlercode) VALUES ({get.datum},{get.hostname},{get.user},{get.errocode})","",""))
|
||||
return f"ADD {get.errocode} - {get.hostname}"
|
||||
|
||||
@app.post("/ad/addgroup")
|
||||
async def add_ad_user(get: CL.CL_ADD_AD_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
print(database(get.query,get.dbname,get.entry))
|
||||
@@ -295,14 +312,20 @@ async def add_ad_user(get: CL.CL_ADD_EX_USER,api_key: APIKey = Depends(auth.get_
|
||||
|
||||
@app.post("/add/group/volume")
|
||||
async def send_group_volume(get: CL.CL_ADD_GROUP_VOLUME,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
volume_id = database(f"SELECT ID FROM Netvolume WHERE Volume_Name = '{get.label}'", f"{get.dbname}", "")
|
||||
volume_id = database(f"SELECT ID FROM Netvolume WHERE Volume_Path = '{get.path}' AND Volume_Name = '{get.label}'", f"{get.dbname}", "")
|
||||
if not volume_id:
|
||||
database(f"INSERT INTO `{get.dbname}`.Netvolume (Volume_Key,Volume_Path,Volume_Name) VALUES ('{get.letter}','{get.path}','{get.label}')", "",
|
||||
"")
|
||||
group_id = database(f"SELECT GruppenID FROM GruppenToNetvolumes WHERE VolumeID = '{volume_id}'", f"{get.dbname}", "")
|
||||
group_id = database(f"SELECT GruppenID FROM GruppenToNetvolumes WHERE NetvolumeID = '{volume_id[0][0]}'", f"{get.dbname}", "")
|
||||
if not group_id:
|
||||
group_id = database(f"SELECT ID FROM `{get.dbname}`.Gruppen WHERE Name = {get.group})", "","")
|
||||
database(f"INSERT INTO `{get.dbname}`.GruppenToNetvolumes (GruppenID,VolumeID) VALUES ('{group_id}','{volume_id}')", "","")
|
||||
group_id = database(f"SELECT ID FROM `{get.dbname}`.Gruppen WHERE Name = '{get.group}'", "","")
|
||||
if not group_id:
|
||||
group_id = database(f"SELECT ID FROM `{get.dbname}`.`Active-Directory-User` WHERE SamAccountName = '{get.group}' ORDER BY ID DESC LIMIT 1", "", "")
|
||||
database(f"INSERT INTO `{get.dbname}`.GruppenToNetvolumes (UserID,NetvolumeID) VALUES ('{group_id[0][0]}','{volume_id[0][0]}')", "","")
|
||||
else:
|
||||
database(
|
||||
f"INSERT INTO `{get.dbname}`.GruppenToNetvolumes (GruppenID,NetvolumeID) VALUES ('{group_id[0][0]}','{volume_id[0][0]}')",
|
||||
"", "")
|
||||
# database(get.query,get.dbname,get.entry)
|
||||
return f"Create {get.label} - {get.path}"
|
||||
|
||||
@@ -312,6 +335,27 @@ async def volume_mount(get: CL.CL_GET_VOLUME,api_key: APIKey = Depends(auth.get_
|
||||
database(f"INSERT INTO `Volume-Mount` (date,user) VALUES ('{get.date}','{get.user}')","Stines-GmbH","")
|
||||
return f"User {get.user} ADD"
|
||||
|
||||
@app.post("/report")
|
||||
async def reporting(get: CL.CL_REPORTING,api_key: APIKey = Depends(auth.get_api_key)):
|
||||
print(f"{get.username}")
|
||||
print(f"{get.lastaccess}")
|
||||
print(f"{get.ipaddress}")
|
||||
user_check = database(f"SELECT username from users where username = '{get.username}'","Kunden","")
|
||||
if not user_check:
|
||||
print("User not exist")
|
||||
# TBD add Message to Admin by Gotify or E-Mail
|
||||
else:
|
||||
entry = database(f"SELECT s.customer_ID,s.service_ID from `server` s where s.privat_ipaddress LIKE '%{get.ipaddress}%'","Kunden","")
|
||||
customer_ID = entry[0][0]
|
||||
service_ID = entry[0][1]
|
||||
reportingdate = datetime.now()
|
||||
reportingdate = reportingdate.strftime("%Y-%m-%d %H:%M:%S")
|
||||
print(reportingdate)
|
||||
database(f"INSERT INTO `services.reporting` (username,service_ID,customer_ID,reportingdate,lastaccess) VALUES ('{get.username}','{service_ID}','{customer_ID}','{reportingdate}','{get.lastaccess}')","Kunden","")
|
||||
print(f"INSERT INTO `services.reporting` (username,service_ID,customer_ID,reportingdate,lastaccess) VALUES ('{get.username}','{service_ID}','{customer_ID}','{reportingdate}','{get.lastaccess}')","Kunden","")
|
||||
print(f"{service_ID} - {customer_ID}")
|
||||
|
||||
|
||||
## Startet den API-Server
|
||||
if __name__ == '__main__':
|
||||
uvicorn.run("main:app", host='0.0.0.0', port=8001, reload=True, log_level="debug")
|
||||
Binary file not shown.
Reference in New Issue
Block a user