readCsv gelöscht, weil in MainWindow.py implementiert
This commit is contained in:
@@ -1,57 +0,0 @@
|
|||||||
from conf import TreeNode, XslFile, PdfProjectSettings, XmlFile
|
|
||||||
from pathlib import Path
|
|
||||||
|
|
||||||
from pydantic_yaml import to_yaml_str, parse_yaml_file_as
|
|
||||||
import polars as pl
|
|
||||||
import time
|
|
||||||
|
|
||||||
|
|
||||||
# Lade Beispieldaten
|
|
||||||
start_time = time.time()
|
|
||||||
df = pl.read_csv("src/res/data.csv").sort(["reporttyp_bez", "report_bez", "repfile_bez"])
|
|
||||||
load_csv_time = time.time() - start_time
|
|
||||||
print(f"Performance: csv in {load_csv_time:.3f}s")
|
|
||||||
|
|
||||||
|
|
||||||
start_time = time.time()
|
|
||||||
ebene_1 = df.group_by(["reporttyp", "reporttyp_bez"]).len()
|
|
||||||
ebene_2 = df.group_by(["reporttyp", "report", "report_bez"]).len()
|
|
||||||
ebene_3 = df.group_by(["reporttyp", "report", "repfile", "repfile_bez", "xsl_datei"]).len()
|
|
||||||
group_time = time.time() - start_time
|
|
||||||
print(f"Performance: group in {group_time:.3f}s")
|
|
||||||
|
|
||||||
project = PdfProjectSettings()
|
|
||||||
|
|
||||||
start_time = time.time()
|
|
||||||
for r1 in ebene_1.rows(named=True):
|
|
||||||
tn_1 = TreeNode(id=(r1["reporttyp"],), bez=r1["reporttyp_bez"], children=[])
|
|
||||||
r1_children = ebene_2.filter(pl.col("reporttyp") == r1["reporttyp"])
|
|
||||||
|
|
||||||
for r2 in r1_children.rows(named=True):
|
|
||||||
tn_2 = TreeNode(id=(r2["reporttyp"], r2["report"]), bez=r2["report_bez"], children=[])
|
|
||||||
r2_children = ebene_3.filter((pl.col("reporttyp") == r1["reporttyp"]) & (pl.col("report") == r2["report"]))
|
|
||||||
|
|
||||||
for r3 in r2_children.rows(named=True):
|
|
||||||
x = XslFile(
|
|
||||||
id=(r3["reporttyp"], r3["report"], r3["repfile"]),
|
|
||||||
bez=r3["repfile_bez"],
|
|
||||||
xsl_file=Path(r3["xsl_datei"]),
|
|
||||||
xmls=[XmlFile(xml=Path("test.xml"))], # nur als Beispiel
|
|
||||||
)
|
|
||||||
|
|
||||||
tn_2.children.append(x)
|
|
||||||
tn_1.children.append(tn_2)
|
|
||||||
project.nodes.append(tn_1)
|
|
||||||
nodes_time = time.time() - start_time
|
|
||||||
print(f"Performance: nodes_time in {nodes_time:.3f}s")
|
|
||||||
|
|
||||||
start_time = time.time()
|
|
||||||
with open("project.yaml", "w", encoding="utf8") as f:
|
|
||||||
f.write(to_yaml_str(project))
|
|
||||||
dump_time = time.time() - start_time
|
|
||||||
print(f"Performance: dump_time to file in {dump_time:.3f}s")
|
|
||||||
|
|
||||||
start_time = time.time()
|
|
||||||
project_2 = parse_yaml_file_as(PdfProjectSettings, "project.yaml")
|
|
||||||
parse_yaml_file_time = time.time() - start_time
|
|
||||||
print(f"Performance: parse_yaml_file in {parse_yaml_file_time:.3f}s")
|
|
||||||
Reference in New Issue
Block a user