106 lines
3.3 KiB
Python
106 lines
3.3 KiB
Python
#!/usr/bin/env python3
|
||
"""
|
||
Script zum Erstellen von Test-Druckern für die MYP Plattform
|
||
"""
|
||
|
||
import sys
|
||
import os
|
||
sys.path.append('.')
|
||
|
||
from models import *
|
||
from datetime import datetime
|
||
|
||
def create_test_printers():
|
||
"""Erstellt Test-Drucker in der Datenbank."""
|
||
|
||
# Verbindung zur Datenbank
|
||
db_session = get_db_session()
|
||
|
||
# Test-Drucker Daten
|
||
test_printers = [
|
||
{
|
||
'name': 'Mercedes-Benz FDM Pro #01',
|
||
'model': 'Ultimaker S5 Pro',
|
||
'location': 'Werkhalle Sindelfingen',
|
||
'plug_ip': '192.168.10.101',
|
||
'status': 'available',
|
||
'active': True
|
||
},
|
||
{
|
||
'name': 'Mercedes-Benz FDM #02',
|
||
'model': 'Prusa MK3S+',
|
||
'location': 'Entwicklungszentrum Stuttgart',
|
||
'plug_ip': '192.168.10.102',
|
||
'status': 'printing',
|
||
'active': True
|
||
},
|
||
{
|
||
'name': 'Mercedes-Benz SLA #01',
|
||
'model': 'Formlabs Form 3+',
|
||
'location': 'Prototypenlabor',
|
||
'plug_ip': '192.168.10.103',
|
||
'status': 'available',
|
||
'active': True
|
||
},
|
||
{
|
||
'name': 'Mercedes-Benz Industrial #01',
|
||
'model': 'Stratasys F370',
|
||
'location': 'Industriehalle Bremen',
|
||
'plug_ip': '192.168.10.104',
|
||
'status': 'maintenance',
|
||
'active': False
|
||
},
|
||
{
|
||
'name': 'Mercedes-Benz Rapid #01',
|
||
'model': 'Bambu Lab X1 Carbon',
|
||
'location': 'Designabteilung',
|
||
'plug_ip': '192.168.10.105',
|
||
'status': 'offline',
|
||
'active': True
|
||
},
|
||
{
|
||
'name': 'Mercedes-Benz SLS #01',
|
||
'model': 'HP Jet Fusion 5200',
|
||
'location': 'Produktionszentrum Berlin',
|
||
'plug_ip': '192.168.10.106',
|
||
'status': 'available',
|
||
'active': True
|
||
}
|
||
]
|
||
try:
|
||
created_count = 0
|
||
for printer_data in test_printers:
|
||
# Prüfen ob Drucker bereits existiert
|
||
existing = db_session.query(Printer).filter_by(name=printer_data['name']).first()
|
||
if not existing:
|
||
printer = Printer(
|
||
name=printer_data['name'],
|
||
model=printer_data['model'],
|
||
location=printer_data['location'],
|
||
plug_ip=printer_data['plug_ip'],
|
||
status=printer_data['status'],
|
||
active=printer_data['active'],
|
||
created_at=datetime.now()
|
||
)
|
||
db_session.add(printer)
|
||
created_count += 1
|
||
print(f"✅ Drucker '{printer_data['name']}' erstellt")
|
||
else:
|
||
print(f"ℹ️ Drucker '{printer_data['name']}' existiert bereits")
|
||
|
||
db_session.commit()
|
||
|
||
total_count = db_session.query(Printer).count()
|
||
print(f"\n🎉 {created_count} neue Test-Drucker erstellt!")
|
||
print(f"📊 Insgesamt {total_count} Drucker in der Datenbank.")
|
||
|
||
except Exception as e:
|
||
print(f"❌ Fehler beim Erstellen der Test-Drucker: {str(e)}")
|
||
db_session.rollback()
|
||
finally:
|
||
db_session.close()
|
||
|
||
if __name__ == "__main__":
|
||
print("🚀 Erstelle Test-Drucker für MYP Plattform...")
|
||
create_test_printers()
|
||
print("✅ Fertig!") |