Enhancements
This commit is contained in:
@@ -4,8 +4,8 @@ from time import time
|
||||
from datetime import datetime
|
||||
from models import models
|
||||
from models.database import engine, SessionLocal
|
||||
# import sustApp.models.models as models
|
||||
# from sustApp.models.database import engine, SessionLocal
|
||||
#import sustApp.models.models as models
|
||||
#from sustApp.models.database import engine, SessionLocal
|
||||
|
||||
import os, re
|
||||
from pytz import timezone
|
||||
@@ -13,11 +13,12 @@ import pandas as pd
|
||||
import glob
|
||||
#import csv
|
||||
|
||||
# def Load_Data(file_name):
|
||||
# with open(source_csv, encoding='utf-8-sig') as f:
|
||||
# for line in f:
|
||||
# fields = line.strip().split(';')
|
||||
# print(fields)
|
||||
def extract_year_from_reference(reference):
|
||||
"""Extract year from payment reference (e.g., '2025-4732-163-1' -> '2025')"""
|
||||
if reference:
|
||||
year = reference.split('-')[0]
|
||||
return year
|
||||
return None
|
||||
|
||||
def Load_Data(file_name):
|
||||
df = pd.read_csv(file_name, delimiter=';', encoding='utf-8-sig', dtype=str, header=None)
|
||||
@@ -91,11 +92,26 @@ if __name__ == "__main__":
|
||||
new_list = extract_values(i[1])
|
||||
|
||||
if len(new_list) > 0:
|
||||
outData.append([i[0], new_list[0].get('Auftraggeber'), new_list[0].get('Zahlungsreferenz'), new_list[0].get('Verwendungszweck'), new_list[0].get('IBAN'), i[2], i[3].replace(',','.'), i[4], i[5]])
|
||||
|
||||
zahlungsreferenz = new_list[0].get('Zahlungsreferenz')
|
||||
year = extract_year_from_reference(zahlungsreferenz)
|
||||
|
||||
#outData.append([i[0], new_list[0].get('Auftraggeber'), new_list[0].get('Zahlungsreferenz'), new_list[0].get('Verwendungszweck'), new_list[0].get('IBAN'), i[2], i[3].replace(',','.'), i[4], i[5], new_list[0].get('Zahlungsreferenz')])
|
||||
outData.append([
|
||||
i[0], # valuta_date
|
||||
new_list[0].get('Auftraggeber'), # client
|
||||
zahlungsreferenz, # reference
|
||||
new_list[0].get('Verwendungszweck'), # intended
|
||||
new_list[0].get('IBAN'), # IBAN
|
||||
i[2], # entry_date
|
||||
i[3].replace(',','.'), # amount
|
||||
i[4], # currency
|
||||
i[5], # timestamp
|
||||
year # year (extracted from reference)
|
||||
])
|
||||
|
||||
# Replace None with empty string before saving
|
||||
outData = [['' if x is None else x for x in row] for row in outData]
|
||||
savetxt(target_csv, outData, delimiter=";", encoding='utf-8', header='valuta_date;client;reference;intended;IBAN;entry_date;amount;currency;timestamp', fmt='%s')
|
||||
savetxt(target_csv, outData, delimiter=";", encoding='utf-8', header='valuta_date;client;reference;intended;IBAN;entry_date;amount;currency;timestamp;year', fmt='%s')
|
||||
bak_dir = os.path.join(os.path.dirname(source_csv), "bak")
|
||||
os.makedirs(bak_dir, exist_ok=True)
|
||||
os.rename(source_csv, os.path.join(bak_dir, os.path.basename(source_csv)))
|
||||
|
||||
Reference in New Issue
Block a user