Commit 5dba92ca authored by Marco Schmiedel's avatar Marco Schmiedel

fix

parent 3028c354
{
"fileId": "0c371de0-5973-4ab4-928c-cf5415012cc8",
"originalPath": "work/commands/setStaticOptionPrices.py",
"currentPath": "work/commands/setStaticOptionPrices.py",
"hash": "ff9c898694ab65f87e613dcac0ab20c4565335db25c2656bed573d103ad2c694",
"docContent": "<p><br></p>",
"checkedStatus": "todo",
"comments": [],
"lastCheckedTimestamp": 1749816832953,
"lastFileModificationTimestamp": 1749816769839.5076
}
...@@ -13,5 +13,5 @@ ...@@ -13,5 +13,5 @@
} }
], ],
"lastCheckedTimestamp": 1747123619645, "lastCheckedTimestamp": 1747123619645,
"lastFileModificationTimestamp": 1747135280562.6484 "lastFileModificationTimestamp": 1749816529644.1785
} }
...@@ -2,10 +2,10 @@ ...@@ -2,10 +2,10 @@
"fileId": "38da158f-ad91-433f-8b7b-60ff4949d7ff", "fileId": "38da158f-ad91-433f-8b7b-60ff4949d7ff",
"originalPath": "work/config/_CronConfig.txt", "originalPath": "work/config/_CronConfig.txt",
"currentPath": "work/config/_CronConfig.txt", "currentPath": "work/config/_CronConfig.txt",
"hash": "1e8e88f1aa7f699241bbf7d99bb8fa225443b0bf86d7366a7fa7b1e6d5bde8ac", "hash": "5c11b0a57b7cb9981914397ca2c49d10ef10e6802c70caa91fffa53098c1add7",
"docContent": "<p><br></p>", "docContent": "<p><br></p>",
"checkedStatus": "done", "checkedStatus": "done",
"comments": [], "comments": [],
"lastCheckedTimestamp": 1746694217163, "lastCheckedTimestamp": 1749816820741,
"lastFileModificationTimestamp": 1746694212093.9915 "lastFileModificationTimestamp": 1749816813585.9177
} }
{ {
"fileId": "986eeb57-8634-4f40-a4ea-a2eae9d87e71", "fileId": "986eeb57-8634-4f40-a4ea-a2eae9d87e71",
"originalPath": "work/readme.md", "originalPath": "work/readme.md",
"currentPath": "work/readme.md", "currentPath": "work/README.md",
"hash": "4d543d075a22bd2b13008dcc7a1cf518a3df29bbf1b1ab516eb69a2df778aaf9", "hash": "4d543d075a22bd2b13008dcc7a1cf518a3df29bbf1b1ab516eb69a2df778aaf9",
"docContent": "<p><br></p>", "docContent": "<p><br></p>",
"checkedStatus": "done", "checkedStatus": "done",
......
import sys
sys.path.append("..")
import logging
from sqlalchemy import text
from manager.MysqlManager import MysqlManager
# Logging-Konfiguration wie in deiner Vorlage für klare Statusmeldungen.
logging.basicConfig(
level=logging.INFO,
format="%(asctime)s %(levelname)s: %(message)s"
)
# Liste aller statischen SQL-Update-Befehle, die ausgeführt werden sollen.
# Die Bedingung "and provision1_opti = 0" stellt sicher, dass jeder Befehl
# nur einmal erfolgreich ausgeführt wird.
sql_updates = [
# Kategorie 1: Rabatte auf den Anschlusspreis
'update option_opti set provision1_opti = -8 where providercode_opti = "O3150922" and provision1_opti = 0;',
'update option_opti set provision1_opti = -33.61 where providercode_opti = "O3150921" and provision1_opti = 0;',
# Kategorie 2: Aktionsguthaben
'update option_opti set provision1_opti = -20.17 where providercode_opti = "O3120740" and provision1_opti = 0;',
'update option_opti set provision1_opti = -20.17 where providercode_opti = "O3120741" and provision1_opti = 0;',
'update option_opti set provision1_opti = -40.34 where providercode_opti = "O3120743" and provision1_opti = 0;',
'update option_opti set provision1_opti = -40.34 where providercode_opti = "O3120744" and provision1_opti = 0;',
'update option_opti set provision1_opti = -50.42 where providercode_opti = "O3132971" and provision1_opti = 0;',
'update option_opti set provision1_opti = -50.42 where providercode_opti = "O3132972" and provision1_opti = 0;',
'update option_opti set provision1_opti = -60.50 where providercode_opti = "O3120748" and provision1_opti = 0;',
'update option_opti set provision1_opti = -60.50 where providercode_opti = "O3120749" and provision1_opti = 0;',
'update option_opti set provision1_opti = -80.67 where providercode_opti = "O3120753" and provision1_opti = 0;',
'update option_opti set provision1_opti = -80.67 where providercode_opti = "O3120754" and provision1_opti = 0;',
'update option_opti set provision1_opti = -100.84 where providercode_opti = "O3120756" and provision1_opti = 0;',
'update option_opti set provision1_opti = -100.84 where providercode_opti = "O3120757" and provision1_opti = 0;',
'update option_opti set provision1_opti = -121.01 where providercode_opti = "O3132974" and provision1_opti = 0;',
'update option_opti set provision1_opti = -121.01 where providercode_opti = "O3132975" and provision1_opti = 0;',
'update option_opti set provision1_opti = -141.18 where providercode_opti = "O3132977" and provision1_opti = 0;',
'update option_opti set provision1_opti = -141.18 where providercode_opti = "O3132978" and provision1_opti = 0;',
'update option_opti set provision1_opti = -161.34 where providercode_opti = "O3132980" and provision1_opti = 0;',
'update option_opti set provision1_opti = -161.34 where providercode_opti = "O3132981" and provision1_opti = 0;',
'update option_opti set provision1_opti = -181.51 where providercode_opti = "O3132983" and provision1_opti = 0;',
'update option_opti set provision1_opti = -181.51 where providercode_opti = "O3132984" and provision1_opti = 0;',
'update option_opti set provision1_opti = -201.68 where providercode_opti = "O3120759" and provision1_opti = 0;',
'update option_opti set provision1_opti = -201.68 where providercode_opti = "O3120760" and provision1_opti = 0;',
# Kategorie 3: Tarif-Rabatte
'UPDATE option_opti SET provision1_opti = -20 WHERE providercode_opti = "O3357017" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -40 WHERE providercode_opti = "O3357018" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -40 WHERE providercode_opti = "O3708586" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -40 WHERE providercode_opti = "O3708556" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -60 WHERE providercode_opti = "O3357019" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -80 WHERE providercode_opti = "O3357020" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -100 WHERE providercode_opti = "O3708583" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -100 WHERE providercode_opti = "O3708553" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -100 WHERE providercode_opti = "O3357021" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -120 WHERE providercode_opti = "O3357022" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -140 WHERE providercode_opti = "O3357023" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -140 WHERE providercode_opti = "O3708580" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -140 WHERE providercode_opti = "O3708550" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -160 WHERE providercode_opti = "O3357024" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -180 WHERE providercode_opti = "O3357025" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -200 WHERE providercode_opti = "O3708577" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -200 WHERE providercode_opti = "O3357026" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -200 WHERE providercode_opti = "O3708547" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -240 WHERE providercode_opti = "O3708574" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -240 WHERE providercode_opti = "O3708544" AND provision1_opti = 0;',
# Kategorie 4: Cashback
'UPDATE option_opti SET provision1_opti = -35 WHERE providercode_opti = "O3501314" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -45 WHERE providercode_opti = "O3501311" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -75 WHERE providercode_opti = "O3501308" AND provision1_opti = 0;',
'UPDATE option_opti SET provision1_opti = -90 WHERE providercode_opti = "O3501305" AND provision1_opti = 0;'
]
# Die Variable “mysql” stellt die Verbindung zur Datenbank her.
mysql = MysqlManager()
# Die Variable “session” holt die SQLAlchemy-Session für alle Datenbankoperationen.
session = mysql.getSession()
logging.info("Starte statische Provisions-Updates...")
updated_count = 0
total_count = len(sql_updates)
try:
# Schleife durch alle SQL-Befehle und führe sie einzeln aus.
for i, query in enumerate(sql_updates):
# session.execute() mit text() ist der Standardweg, um Raw SQL sicher auszuführen.
result = session.execute(text(query))
# result.rowcount gibt an, wie viele Zeilen vom UPDATE betroffen waren.
# Dies ist nützlich für das Logging, um zu sehen, ob eine Änderung stattgefunden hat.
if result.rowcount > 0:
updated_count += result.rowcount
logging.info(f"Query {i+1}/{total_count}: {result.rowcount} Zeile(n) aktualisiert.")
# Wenn alle Befehle ohne Fehler durchgelaufen sind, werden die Änderungen committed.
session.commit()
logging.info(f"Alle {total_count} Updates erfolgreich verarbeitet. Insgesamt wurden {updated_count} Zeilen geändert.")
except Exception as e:
# Bei einem Fehler wird die gesamte Transaktion zurückgerollt, um inkonsistente Daten zu vermeiden.
logging.error(f"Ein Fehler ist aufgetreten: {e}")
logging.error("Die Transaktion wird zurückgerollt (Rollback).")
session.rollback()
finally:
# Die Session wird in jedem Fall geschlossen, um die Verbindung freizugeben.
session.close()
logging.info("Datenbank-Session geschlossen.")
\ No newline at end of file
...@@ -4,7 +4,7 @@ MYSQL_PASSWORD = "floz09sx3dTyx144gy" ...@@ -4,7 +4,7 @@ MYSQL_PASSWORD = "floz09sx3dTyx144gy"
MYSQL_DATABASE = "itmax_tarifs" MYSQL_DATABASE = "itmax_tarifs"
MYSQL_PORT = 3306 MYSQL_PORT = 3306
USE_SSH_TUNNEL = False USE_SSH_TUNNEL = True
SSH_HOST = "jumphost.bugsmasher.online" SSH_HOST = "jumphost.bugsmasher.online"
SSH_PORT = 22 SSH_PORT = 22
SSH_USERNAME = "root" SSH_USERNAME = "root"
......
...@@ -9,3 +9,6 @@ ...@@ -9,3 +9,6 @@
# STEP 4 - GENERATE TARIF-DETAILS WITH GPT # STEP 4 - GENERATE TARIF-DETAILS WITH GPT
0 5 * * * /maui/cron.sh calculateTarifDetailsWithGpt.py 0 5 * * * /maui/cron.sh calculateTarifDetailsWithGpt.py
# STEP 5 - STATIC LINK OPTION PRICES WITH GPT
30 5 * * * /maui/cron.sh setStaticOptionPrices.py
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment