databaseconnection

This commit is contained in:
2024-11-20 15:46:01 +01:00
parent 0e8e03dc5d
commit 3d5035ffb3
8 changed files with 215 additions and 173 deletions

View File

@@ -35,78 +35,15 @@
<mxPoint as="offset" /> <mxPoint as="offset" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-13" value="anlegen Konfiguration" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1"> <mxCell id="zKFDF5UOk-7tD0-7yUJp-17" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-10" edge="1">
<mxGeometry x="250" y="340" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-16" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="660" y="285" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-17" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-10" target="zKFDF5UOk-7tD0-7yUJp-16" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="450" y="465" as="sourcePoint" /> <mxPoint x="450" y="465" as="sourcePoint" />
<mxPoint x="500" y="415" as="targetPoint" /> <mxPoint x="700" y="280" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-19" value="Dashboard" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="630" y="715" width="160" height="60" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-21" value="Login Screen" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="620" y="425" width="160" height="60" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-24" value="Admin user speichern" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="400" y="460" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-30" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-13" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="342.5" y="435" as="sourcePoint" />
<mxPoint x="310" y="440" as="targetPoint" />
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-36" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-16" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="450" y="465" as="sourcePoint" />
<mxPoint x="700" y="425" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-37" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="660" y="565" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-38" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-21" target="zKFDF5UOk-7tD0-7yUJp-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="450" y="465" as="sourcePoint" />
<mxPoint x="500" y="415" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-39" value="Login erfolgreich" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="580" y="560" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-40" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="490" y="505" as="sourcePoint" />
<mxPoint x="700" y="715" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-41" value="ja" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="zKFDF5UOk-7tD0-7yUJp-40" vertex="1" connectable="0">
<mxGeometry x="-0.3429" y="-2" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-42" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-37" target="zKFDF5UOk-7tD0-7yUJp-21" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="450" y="465" as="sourcePoint" />
<mxPoint x="820" y="465" as="targetPoint" />
<Array as="points"> <Array as="points">
<mxPoint x="810" y="605" /> <mxPoint x="700" y="190" />
<mxPoint x="810" y="455" />
</Array> </Array>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-43" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="zKFDF5UOk-7tD0-7yUJp-42" vertex="1" connectable="0">
<mxGeometry x="0.1259" y="-3" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-6" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1"> <mxCell id="vLrOMzFsj3qdJpjowrCW-6" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="270" y="215" width="80" height="80" as="geometry" /> <mxGeometry x="270" y="215" width="80" height="80" as="geometry" />
</mxCell> </mxCell>
@@ -127,58 +64,6 @@
<mxPoint as="offset" /> <mxPoint as="offset" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-16" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.25;entryY=1;entryDx=0;entryDy=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-13" target="zKFDF5UOk-7tD0-7yUJp-10" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="680" y="250" as="sourcePoint" />
<mxPoint x="730" y="320" as="targetPoint" />
<Array as="points">
<mxPoint x="660" y="255" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-18" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-6" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="310" y="300" as="sourcePoint" />
<mxPoint x="310" y="340" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-21" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-18" vertex="1" connectable="0">
<mxGeometry x="-0.1231" y="3" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-22" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="270" y="440" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-24" value="admin exists" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="207.5" y="440" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-35" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-22" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="430" y="479.5" as="sourcePoint" />
<mxPoint x="400" y="480" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-39" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-35" vertex="1" connectable="0">
<mxGeometry x="-0.1143" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-47" value="" style="shape=line;html=1;strokeWidth=6;strokeColor=#ff0000;" parent="1" vertex="1">
<mxGeometry x="297.5" y="730" width="210" height="10" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-49" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-22" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="260" y="500" as="sourcePoint" />
<mxPoint x="310" y="550" as="targetPoint" />
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-54" value="ja" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-49" vertex="1" connectable="0">
<mxGeometry x="-0.4" y="1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-55" value="" style="endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" target="zKFDF5UOk-7tD0-7yUJp-6" edge="1"> <mxCell id="vLrOMzFsj3qdJpjowrCW-55" value="" style="endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" target="zKFDF5UOk-7tD0-7yUJp-6" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="40" y="130" as="sourcePoint" /> <mxPoint x="40" y="130" as="sourcePoint" />
@@ -193,19 +78,153 @@
<mxCell id="zKFDF5UOk-7tD0-7yUJp-1" value="" style="ellipse;html=1;shape=startState;fillColor=#000000;strokeColor=#ff0000;" parent="1" vertex="1"> <mxCell id="zKFDF5UOk-7tD0-7yUJp-1" value="" style="ellipse;html=1;shape=startState;fillColor=#000000;strokeColor=#ff0000;" parent="1" vertex="1">
<mxGeometry x="10" y="115" width="30" height="30" as="geometry" /> <mxGeometry x="10" y="115" width="30" height="30" as="geometry" />
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-61" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1"> <mxCell id="vLrOMzFsj3qdJpjowrCW-73" value="Data not full usable" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="270" y="550" width="80" height="60" as="geometry" /> <mxGeometry x="10" y="595" width="130" height="30" as="geometry" />
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-62" value="&lt;span style=&quot;text-wrap: wrap;&quot;&gt;encryption&amp;nbsp;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;text-wrap: wrap;&quot;&gt;Key&lt;/span&gt;&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1"> <mxCell id="wBh1sZi6hsA7ukKMJ2_X-5" value="" style="endArrow=classic;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry x="310" y="540" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-63" value="Eingabe Verschlüssenlungskey" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="250" y="640" width="120" height="35" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-64" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-61" target="vLrOMzFsj3qdJpjowrCW-63" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="310" y="615" as="sourcePoint" /> <mxPoint x="530" y="260" as="sourcePoint" />
<mxPoint x="237.5" y="610" as="targetPoint" /> <mxPoint x="620" y="150" as="targetPoint" />
<Array as="points">
<mxPoint x="580" y="260" />
<mxPoint x="580" y="150" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-70" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.483;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-47" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="60" y="695" as="sourcePoint" />
<mxPoint x="660" y="320" as="targetPoint" />
<Array as="points">
<mxPoint x="399" y="800" />
<mxPoint x="560" y="800" />
<mxPoint x="560" y="320" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-18" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-13" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="310" y="460" as="sourcePoint" />
<mxPoint x="310" y="390" as="targetPoint" />
<Array as="points">
<mxPoint x="310" y="350" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-30" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-13" edge="1" target="vLrOMzFsj3qdJpjowrCW-22">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="342.5" y="590" as="sourcePoint" />
<mxPoint x="310" y="595" as="targetPoint" />
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-39" value="Login erfolgreich" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="580" y="555" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="wBh1sZi6hsA7ukKMJ2_X-23" value="" style="group" vertex="1" connectable="0" parent="1">
<mxGeometry x="620" y="280" width="190" height="490" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-16" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-23" vertex="1">
<mxGeometry x="40" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-19" value="Dashboard" style="rounded=1;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-23" vertex="1">
<mxGeometry x="10" y="430" width="160" height="60" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-21" value="Login Screen" style="rounded=1;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-23" vertex="1">
<mxGeometry y="140" width="160" height="60" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-36" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="wBh1sZi6hsA7ukKMJ2_X-23" source="zKFDF5UOk-7tD0-7yUJp-16" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-170" y="180" as="sourcePoint" />
<mxPoint x="80" y="140" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-37" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-23" vertex="1">
<mxGeometry x="40" y="280" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-38" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="wBh1sZi6hsA7ukKMJ2_X-23" source="zKFDF5UOk-7tD0-7yUJp-21" target="zKFDF5UOk-7tD0-7yUJp-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-170" y="180" as="sourcePoint" />
<mxPoint x="-120" y="130" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-40" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="wBh1sZi6hsA7ukKMJ2_X-23" source="zKFDF5UOk-7tD0-7yUJp-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-130" y="220" as="sourcePoint" />
<mxPoint x="80" y="430" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-41" value="ja" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="zKFDF5UOk-7tD0-7yUJp-40" vertex="1" connectable="0">
<mxGeometry x="-0.3429" y="-2" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-42" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="wBh1sZi6hsA7ukKMJ2_X-23" source="zKFDF5UOk-7tD0-7yUJp-37" target="zKFDF5UOk-7tD0-7yUJp-21" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-170" y="180" as="sourcePoint" />
<mxPoint x="200" y="180" as="targetPoint" />
<Array as="points">
<mxPoint x="190" y="320" />
<mxPoint x="190" y="170" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-43" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="zKFDF5UOk-7tD0-7yUJp-42" vertex="1" connectable="0">
<mxGeometry x="0.1259" y="-3" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="wBh1sZi6hsA7ukKMJ2_X-27" value="" style="group" vertex="1" connectable="0" parent="1">
<mxGeometry x="130" y="460" width="390" height="300" as="geometry" />
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-24" value="Admin user speichern" style="rounded=1;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry x="270" y="205" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-22" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry x="140" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-24" value="admin exists" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry x="77.5" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-35" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="wBh1sZi6hsA7ukKMJ2_X-27" source="vLrOMzFsj3qdJpjowrCW-22" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="300" y="39.5" as="sourcePoint" />
<mxPoint x="270" y="40" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-39" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-35" vertex="1" connectable="0">
<mxGeometry x="-0.1143" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-47" value="" style="shape=line;html=1;strokeWidth=6;strokeColor=#ff0000;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry x="167.5" y="290" width="210" height="10" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-49" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="wBh1sZi6hsA7ukKMJ2_X-27" source="vLrOMzFsj3qdJpjowrCW-22" edge="1" target="vLrOMzFsj3qdJpjowrCW-61">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="130" y="60" as="sourcePoint" />
<mxPoint x="180" y="110" as="targetPoint" />
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-54" value="ja" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-49" vertex="1" connectable="0">
<mxGeometry x="-0.4" y="1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-61" value="" style="rhombus;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry x="140" y="120" width="80" height="60" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-62" value="&lt;span style=&quot;text-wrap: wrap;&quot;&gt;encryption&amp;nbsp;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;text-wrap: wrap;&quot;&gt;Key&lt;/span&gt;&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry x="180" y="110" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-63" value="create Verschlüssenlungskey" style="rounded=1;whiteSpace=wrap;html=1;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry x="270" y="120" width="120" height="35" as="geometry" />
</mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-64" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.064;entryY=0.226;entryDx=0;entryDy=0;entryPerimeter=0;" parent="wBh1sZi6hsA7ukKMJ2_X-27" source="vLrOMzFsj3qdJpjowrCW-61" target="vLrOMzFsj3qdJpjowrCW-47" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="180" y="175" as="sourcePoint" />
<mxPoint x="180" y="293" as="targetPoint" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-65" value="ja" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-64" vertex="1" connectable="0"> <mxCell id="vLrOMzFsj3qdJpjowrCW-65" value="ja" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-64" vertex="1" connectable="0">
@@ -213,10 +232,10 @@
<mxPoint as="offset" /> <mxPoint as="offset" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-66" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-61" edge="1"> <mxCell id="vLrOMzFsj3qdJpjowrCW-66" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;" parent="wBh1sZi6hsA7ukKMJ2_X-27" source="vLrOMzFsj3qdJpjowrCW-61" edge="1" target="vLrOMzFsj3qdJpjowrCW-71">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="150" y="600" as="sourcePoint" /> <mxPoint x="20" y="160" as="sourcePoint" />
<mxPoint x="180" y="580" as="targetPoint" /> <mxPoint x="50" y="140" as="targetPoint" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-67" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-66" vertex="1" connectable="0"> <mxCell id="vLrOMzFsj3qdJpjowrCW-67" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="vLrOMzFsj3qdJpjowrCW-66" vertex="1" connectable="0">
@@ -224,34 +243,44 @@
<mxPoint as="offset" /> <mxPoint as="offset" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-68" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.174;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.7;exitY=1.029;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" edge="1"> <mxCell id="vLrOMzFsj3qdJpjowrCW-69" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.459;exitY=0.998;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.774;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;" parent="wBh1sZi6hsA7ukKMJ2_X-27" target="vLrOMzFsj3qdJpjowrCW-47" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="310" y="674.9950000000001" as="sourcePoint" /> <mxPoint x="329.65000000000015" y="244.9999999999999" as="sourcePoint" />
<mxPoint x="310.03999999999996" y="733.98" as="targetPoint" /> <mxPoint x="330" y="285" as="targetPoint" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-69" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.75;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.459;exitY=0.998;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="zKFDF5UOk-7tD0-7yUJp-24" target="vLrOMzFsj3qdJpjowrCW-47" edge="1"> <mxCell id="vLrOMzFsj3qdJpjowrCW-71" value="" style="verticalLabelPosition=bottom;verticalAlign=top;html=1;shape=mxgraph.flowchart.or;" parent="wBh1sZi6hsA7ukKMJ2_X-27" vertex="1">
<mxGeometry y="125" width="50" height="50" as="geometry" />
</mxCell>
<mxCell id="wBh1sZi6hsA7ukKMJ2_X-24" value="add admin and user roles&amp;nbsp;&amp;nbsp;" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="wBh1sZi6hsA7ukKMJ2_X-27">
<mxGeometry x="270" y="10" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="wBh1sZi6hsA7ukKMJ2_X-25" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="wBh1sZi6hsA7ukKMJ2_X-27" target="zKFDF5UOk-7tD0-7yUJp-24">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="60" y="540" as="sourcePoint" /> <mxPoint x="330" y="155" as="sourcePoint" />
<mxPoint x="110" y="490" as="targetPoint" /> <mxPoint x="330" y="145" as="targetPoint" />
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-70" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.483;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="vLrOMzFsj3qdJpjowrCW-47" target="zKFDF5UOk-7tD0-7yUJp-16" edge="1"> <mxCell id="wBh1sZi6hsA7ukKMJ2_X-26" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="wBh1sZi6hsA7ukKMJ2_X-27" source="wBh1sZi6hsA7ukKMJ2_X-24" target="vLrOMzFsj3qdJpjowrCW-63">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="60" y="540" as="sourcePoint" /> <mxPoint x="370" y="-5" as="sourcePoint" />
<mxPoint x="570" y="830" as="targetPoint" /> <mxPoint x="420" y="-55" as="targetPoint" />
<Array as="points">
<mxPoint x="399" y="840" />
<mxPoint x="560" y="840" />
<mxPoint x="560" y="325" />
</Array>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-71" value="" style="verticalLabelPosition=bottom;verticalAlign=top;html=1;shape=mxgraph.flowchart.or;" parent="1" vertex="1"> <mxCell id="wBh1sZi6hsA7ukKMJ2_X-28" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="vLrOMzFsj3qdJpjowrCW-6" target="zKFDF5UOk-7tD0-7yUJp-13">
<mxGeometry x="130" y="555" width="50" height="50" as="geometry" /> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="310" y="295" as="sourcePoint" />
<mxPoint x="310" y="390" as="targetPoint" />
<Array as="points" />
</mxGeometry>
</mxCell> </mxCell>
<mxCell id="vLrOMzFsj3qdJpjowrCW-73" value="Data not full usable" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1"> <mxCell id="wBh1sZi6hsA7ukKMJ2_X-29" value="nein" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="wBh1sZi6hsA7ukKMJ2_X-28">
<mxGeometry x="10" y="565" width="130" height="30" as="geometry" /> <mxGeometry x="-0.1231" y="3" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="zKFDF5UOk-7tD0-7yUJp-13" value="anlegen Konfiguration" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="250" y="355" width="120" height="65" as="geometry" />
</mxCell> </mxCell>
</root> </root>
</mxGraphModel> </mxGraphModel>

Binary file not shown.

View File

@@ -6,6 +6,7 @@ from PySide6.QtCore import QObject, Slot
from .Vermasseln import Vermasseln from .Vermasseln import Vermasseln
import shutil import shutil
from urllib.parse import urlparse from urllib.parse import urlparse
import os
class ConfigLoader(QObject): class ConfigLoader(QObject):
__config = None __config = None
@@ -22,12 +23,13 @@ class ConfigLoader(QObject):
@Slot(str, str) @Slot(str, str)
def importConfig(self, confile, password): def importConfig(self, confile, password):
print(password)
confile = urlparse(confile) confile = urlparse(confile)
print(confile.path) confile = confile.path
#confile= confile.replace('file://','')
shutil.copyfile(confile.path, self.config_dir+ '/pyqcrm.toml') if os.name == "nt":
confile = confile[1:]
shutil.copyfile(confile, self.config_dir+ '/pyqcrm.toml')
@Slot(dict) @Slot(dict)
def setConfig(self, app_config): def setConfig(self, app_config):
@@ -50,7 +52,7 @@ class ConfigLoader(QObject):
def getConfig(self): def getConfig(self):
print(self.__config['database'])
return self.__config return self.__config
def createConfig(self): def createConfig(self):

22
lib/DB/DbManager.py Normal file
View File

@@ -0,0 +1,22 @@
# This Python file uses the following encoding: utf-8
import toml
import mysql.connector
class DbManager(object):
__connection = None
__con_param = None
def __new__ (cls):
if not hasattr(cls, "__instance"):
cls.__instance = super().__new__(cls)
return cls.__instance
def __init__ (self, dbconf):
__con_param = __initializeConfig(dbconf)
self.__connection = mysql.connector.connect(__con_param)
return self.__connection
def __initializeConfig(self, dbconf):
__con_param = {'user': dbconf['DB_USER'], 'password': dbconf['DB_PASS'], 'port': dbconf['DB_PORT'], 'host': dbconf['DB_HOST'], 'name': dbconf['DB_NAME']}
return __con_param

View File

@@ -1,2 +1,2 @@
from .ConfigLoader import ConfigLoader from .ConfigLoader import ConfigLoader
from .BusinessModel import BusinessModel from .DB.BusinessModel import BusinessModel

18
main.py
View File

@@ -5,10 +5,11 @@ from PySide6.QtGui import QGuiApplication
from PySide6.QtQml import QQmlApplicationEngine from PySide6.QtQml import QQmlApplicationEngine
from PySide6.QtCore import QResource from PySide6.QtCore import QResource
from lib.ConfigLoader import ConfigLoader from lib.ConfigLoader import ConfigLoader
from lib.BusinessModel import BusinessModel from lib.DB.BusinessModel import BusinessModel
import rc_pyqcrm import rc_pyqcrm
import rc_qml import rc_qml
import sqlite3 import sqlite3
import lib.DB.DbManager
# [pyqcrm] # [pyqcrm]
# program-name="" # program-name=""
@@ -21,19 +22,6 @@ import sqlite3
# password="" # password=""
# name="" # name=""
# type="" # type=""
def testConnection():
connection= sqlite3.connect(":memory:")
cur= connection.cursor()
cur.execute("CREATE TABLE test(id INTEGER primary key, Kundenname TEXT, Ort TEXT)")
cur.execute("""
INSERT INTO test VALUES
(1, 'Gruva', 'Dusseldorf'),
(2, 'Tero', 'Krefeld'),
(3, 'Blabla','Paris')
""")
connection.commit()
return connection
if __name__ == "__main__": if __name__ == "__main__":
@@ -55,7 +43,7 @@ if __name__ == "__main__":
config = ConfigLoader() config = ConfigLoader()
con = testConnection() con = DbManager()
bm = BusinessModel(con) bm = BusinessModel(con)
if not config.getConfig(): if not config.getConfig():

View File

@@ -11,7 +11,7 @@
"Gui/CustomerTables.qml", "Gui/CustomerTables.qml",
"Gui/SearchBar.qml", "Gui/SearchBar.qml",
"Gui/test.qml", "Gui/test.qml",
"lib/BusinessModel.py", "lib/DB/BusinessModel.py",
"Gui/EmployeTables.qml", "Gui/EmployeTables.qml",
"Gui/AddCustomer.qml", "Gui/AddCustomer.qml",
"pyqcrm.qrc", "pyqcrm.qrc",
@@ -24,6 +24,7 @@
"images/addperson.svg", "images/addperson.svg",
"images/filter.svg", "images/filter.svg",
"images/menu.svg", "images/menu.svg",
"images/search.svg" "images/search.svg",
"lib/DB/DbManager.py"
] ]
} }