|
|
@@ -1,11 +1,15 @@
|
|
|
+import os
|
|
|
import re
|
|
|
from dataclasses import dataclass
|
|
|
from pathlib import Path
|
|
|
|
|
|
from db import get_session
|
|
|
+from dotenv import load_dotenv
|
|
|
from imap_tools import MailBox
|
|
|
from sqlalchemy import text
|
|
|
|
|
|
+load_dotenv()
|
|
|
+
|
|
|
|
|
|
@dataclass
|
|
|
class ImapCredentials:
|
|
|
@@ -14,13 +18,15 @@ class ImapCredentials:
|
|
|
password: str
|
|
|
|
|
|
|
|
|
-creds = ImapCredentials("mail.global-cube.com", "forderung", "Navision2013!")
|
|
|
-fileserver = Path("C:\\Projekte\\Reisacher-Fileserver")
|
|
|
+creds = ImapCredentials(
|
|
|
+ server=os.getenv("IMAP_SERVER"), username=os.getenv("IMAP_USERNAME"), password=os.getenv("IMAP_PASSWORD")
|
|
|
+)
|
|
|
+fileserver = Path(os.environ.get("LOCAL_STORAGE"))
|
|
|
|
|
|
|
|
|
def main():
|
|
|
db = next(get_session())
|
|
|
- q = db.execute(text("SELECT Client_DB, Document_No FROM dbo.Forderungen")).fetchall()
|
|
|
+ q = db.execute(text("SELECT [Client_DB], [Beleg_Nr] FROM [dbo].[Forderungen_Kopf]")).fetchall()
|
|
|
lookup = {row[1]: row[0] for row in q}
|
|
|
|
|
|
with MailBox(creds.server).login(creds.username, creds.password) as mb:
|