fix 2 vendor overwrite #509🩹
This commit is contained in:
@@ -200,17 +200,30 @@ def update_devices_data_from_scan (db):
|
|||||||
WHERE NOT EXISTS (SELECT 1 FROM CurrentScan
|
WHERE NOT EXISTS (SELECT 1 FROM CurrentScan
|
||||||
WHERE dev_MAC = cur_MAC) """)
|
WHERE dev_MAC = cur_MAC) """)
|
||||||
|
|
||||||
# Update IP & Vendor
|
# Update IP
|
||||||
mylog('debug', '[Update Devices] - 3 LastIP & Vendor')
|
mylog('debug', '[Update Devices] - 3 LastIP ')
|
||||||
sql.execute("""UPDATE Devices
|
sql.execute("""UPDATE Devices
|
||||||
SET dev_LastIP = (SELECT cur_IP FROM CurrentScan
|
SET dev_LastIP = (SELECT cur_IP FROM CurrentScan
|
||||||
WHERE dev_MAC = cur_MAC),
|
WHERE dev_MAC = cur_MAC)
|
||||||
dev_Vendor = (SELECT cur_Vendor FROM CurrentScan
|
|
||||||
WHERE dev_MAC = cur_MAC
|
|
||||||
)
|
|
||||||
WHERE EXISTS (SELECT 1 FROM CurrentScan
|
WHERE EXISTS (SELECT 1 FROM CurrentScan
|
||||||
WHERE dev_MAC = cur_MAC) """)
|
WHERE dev_MAC = cur_MAC) """)
|
||||||
|
|
||||||
|
# Update only devices with empty or NULL vendors
|
||||||
|
mylog('debug', '[Update Devices] - 3 Vendor')
|
||||||
|
sql.execute("""UPDATE Devices
|
||||||
|
SET dev_Vendor = (
|
||||||
|
SELECT cur_Vendor
|
||||||
|
FROM CurrentScan
|
||||||
|
WHERE dev_MAC = cur_MAC
|
||||||
|
)
|
||||||
|
WHERE
|
||||||
|
(dev_Vendor = "" OR dev_Vendor IS NULL)
|
||||||
|
AND EXISTS (
|
||||||
|
SELECT 1
|
||||||
|
FROM CurrentScan
|
||||||
|
WHERE dev_MAC = cur_MAC
|
||||||
|
)""")
|
||||||
|
|
||||||
# Update (unknown) or (name not found) Names if available
|
# Update (unknown) or (name not found) Names if available
|
||||||
mylog('debug','[Update Devices] - 4 Unknown Name')
|
mylog('debug','[Update Devices] - 4 Unknown Name')
|
||||||
sql.execute ("""UPDATE Devices
|
sql.execute ("""UPDATE Devices
|
||||||
|
|||||||
Reference in New Issue
Block a user