[chore:] too much to documentate xD but changes like better AddressCheck, Progress Window, Result Window, etc.
This commit is contained in:
200
AddressCheck.cs
200
AddressCheck.cs
@@ -1,4 +1,7 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Threading;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Avalonia.Threading;
|
||||||
|
|
||||||
namespace Logof_Client;
|
namespace Logof_Client;
|
||||||
|
|
||||||
@@ -11,62 +14,163 @@ public class AddressCheck
|
|||||||
NoCity,
|
NoCity,
|
||||||
NoStreet,
|
NoStreet,
|
||||||
NoLastName,
|
NoLastName,
|
||||||
NoFirstName
|
NoFirstName,
|
||||||
|
|
||||||
|
// empty,
|
||||||
|
FullAddressTooLong,
|
||||||
|
NoStreetNumber,
|
||||||
|
DoubledRefsid,
|
||||||
|
MayBeSameAddress
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<(int, List<ErrorTypes>)> Perform(KasAddressList addresses)
|
private readonly ProgressWindow _progress;
|
||||||
|
|
||||||
|
public AddressCheck(ProgressWindow progressWindow)
|
||||||
|
{
|
||||||
|
_progress = progressWindow;
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<List<(int, List<ErrorTypes>)>> Perform(KasAddressList addresses)
|
||||||
{
|
{
|
||||||
var failed_refsids = new List<(int, List<ErrorTypes>)>();
|
var failed_refsids = new List<(int, List<ErrorTypes>)>();
|
||||||
|
var total = addresses.KasPersons.Count;
|
||||||
|
var current = 0;
|
||||||
|
|
||||||
foreach (var person in addresses.KasPersons)
|
await Task.Run(async () =>
|
||||||
{
|
{
|
||||||
var errors = new List<ErrorTypes>();
|
foreach (var person in addresses.KasPersons)
|
||||||
var hasFaults = false;
|
|
||||||
|
|
||||||
|
|
||||||
if (person.plz < 10000)
|
|
||||||
{
|
{
|
||||||
hasFaults = true;
|
var errors = new List<ErrorTypes>();
|
||||||
errors.Add(ErrorTypes.PlzTooShort);
|
var hasFaults = false;
|
||||||
|
|
||||||
|
var address_component_count = 2; // cause anrede and name are first
|
||||||
|
|
||||||
|
// Prüfung
|
||||||
|
if (person.plz < 10000)
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.PlzTooShort);
|
||||||
|
}
|
||||||
|
else if (person.plz > 99999)
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.PlzTooLong);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (string.IsNullOrWhiteSpace(person.ort))
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.NoCity);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
address_component_count++;
|
||||||
|
}
|
||||||
|
|
||||||
|
var street = person.strasse.ToCharArray();
|
||||||
|
var intcount = 0;
|
||||||
|
foreach (var c in street)
|
||||||
|
{
|
||||||
|
int maybe;
|
||||||
|
if (int.TryParse(c.ToString(), out maybe)) intcount++;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (intcount == 0)
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.NoStreetNumber);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (string.IsNullOrWhiteSpace(person.name))
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.NoLastName);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (string.IsNullOrWhiteSpace(person.vorname))
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.NoFirstName);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (string.IsNullOrWhiteSpace(person.strasse))
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.NoStreet);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
address_component_count++;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.strasse2)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.land)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.name1)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.name2)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.name3)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.name4)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.name5)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.funktion)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.funktion2)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.funktionad)) address_component_count++;
|
||||||
|
if (!string.IsNullOrWhiteSpace(person.abteilung)) address_component_count++;
|
||||||
|
|
||||||
|
|
||||||
|
foreach (var person2 in addresses.KasPersons)
|
||||||
|
{
|
||||||
|
if (addresses.KasPersons.IndexOf(person) == addresses.KasPersons.IndexOf(person2)) continue;
|
||||||
|
|
||||||
|
if (person.refsid == person2.refsid)
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.DoubledRefsid);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (person.name == person2.name &&
|
||||||
|
person.strasse == person2.strasse &&
|
||||||
|
person.vorname == person2.vorname &&
|
||||||
|
person.ort == person2.ort &&
|
||||||
|
person.funktion == person2.funktion &&
|
||||||
|
person.funktion2 == person2.funktion2 &&
|
||||||
|
person.funktionad == person2.funktionad &&
|
||||||
|
person.abteilung == person2.abteilung &&
|
||||||
|
person.name1 == person2.name1 &&
|
||||||
|
person.name2 == person2.name2 &&
|
||||||
|
person.name3 == person2.name3 &&
|
||||||
|
person.name4 == person2.name4 &&
|
||||||
|
person.name5 == person2.name5)
|
||||||
|
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.MayBeSameAddress);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (address_component_count > 10)
|
||||||
|
{
|
||||||
|
hasFaults = true;
|
||||||
|
errors.Add(ErrorTypes.FullAddressTooLong);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hasFaults)
|
||||||
|
lock (failed_refsids)
|
||||||
|
{
|
||||||
|
failed_refsids.Add((person.refsid, errors));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fortschritt aktualisieren
|
||||||
|
Interlocked.Increment(ref current);
|
||||||
|
var percent = current / (double)total * 100;
|
||||||
|
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||||
|
{
|
||||||
|
if (hasFaults)
|
||||||
|
_progress.AddToLog($"Person mit refsid {person.refsid} ist fehlerhaft");
|
||||||
|
|
||||||
|
_progress.ChangePercentage(percent);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
});
|
||||||
if (person.plz > 99999)
|
|
||||||
{
|
|
||||||
hasFaults = true;
|
|
||||||
errors.Add(ErrorTypes.PlzTooLong);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (person.ort == null || person.ort == "")
|
|
||||||
{
|
|
||||||
hasFaults = true;
|
|
||||||
errors.Add(ErrorTypes.NoCity);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (person.name == null || person.name == "")
|
|
||||||
{
|
|
||||||
hasFaults = true;
|
|
||||||
errors.Add(ErrorTypes.NoLastName);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (person.vorname == null || person.vorname == "")
|
|
||||||
{
|
|
||||||
hasFaults = true;
|
|
||||||
errors.Add(ErrorTypes.NoFirstName);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (person.strasse == null || person.strasse == "")
|
|
||||||
{
|
|
||||||
hasFaults = true;
|
|
||||||
errors.Add(ErrorTypes.NoStreet);
|
|
||||||
}
|
|
||||||
|
|
||||||
;
|
|
||||||
// More errors...
|
|
||||||
|
|
||||||
|
|
||||||
if (hasFaults) failed_refsids.Add((person.refsid, errors));
|
|
||||||
}
|
|
||||||
|
|
||||||
return failed_refsids;
|
return failed_refsids;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -6,5 +6,6 @@
|
|||||||
|
|
||||||
<Application.Styles>
|
<Application.Styles>
|
||||||
<FluentTheme />
|
<FluentTheme />
|
||||||
|
<StyleInclude Source="avares://Avalonia.Controls.DataGrid/Themes/Fluent.xaml"/>
|
||||||
</Application.Styles>
|
</Application.Styles>
|
||||||
</Application>
|
</Application>
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Logof_Client;
|
namespace Logof_Client;
|
||||||
|
|
||||||
public class KasAddressList
|
public class KasAddressList
|
||||||
@@ -9,36 +10,10 @@ public class KasAddressList
|
|||||||
{
|
{
|
||||||
KasPersons = new List<KasPerson>();
|
KasPersons = new List<KasPerson>();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public class KasPerson
|
public class KasPerson
|
||||||
{
|
{
|
||||||
public int refsid { get; set; }
|
|
||||||
public string anrede { get; set; }
|
|
||||||
public string titel { get; set; }
|
|
||||||
public string vorname { get; set; }
|
|
||||||
public string adel { get; set; }
|
|
||||||
public string name { get; set; }
|
|
||||||
public string namezus { get; set; }
|
|
||||||
public string anredzus { get; set; }
|
|
||||||
public string strasse { get; set; }
|
|
||||||
public string strasse2 { get; set; }
|
|
||||||
public int plz { get; set; }
|
|
||||||
public string ort { get; set; }
|
|
||||||
public string land { get; set; }
|
|
||||||
public string pplz { get; set; }
|
|
||||||
public string postfach { get; set; }
|
|
||||||
public string name1 { get; set; }
|
|
||||||
public string name2 { get; set; }
|
|
||||||
public string name3 { get; set; }
|
|
||||||
public string name4 { get; set; }
|
|
||||||
public string name5 { get; set; }
|
|
||||||
public string funktion { get; set; }
|
|
||||||
public string funktion2 { get; set; }
|
|
||||||
public string abteilung { get; set; }
|
|
||||||
public string funktionad { get; set; }
|
|
||||||
|
|
||||||
public KasPerson()
|
public KasPerson()
|
||||||
{
|
{
|
||||||
refsid = 0;
|
refsid = 0;
|
||||||
@@ -66,30 +41,31 @@ public class KasPerson
|
|||||||
abteilung = "";
|
abteilung = "";
|
||||||
funktionad = "";
|
funktionad = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
public KasPerson(int refsid,
|
public KasPerson(int refsid,
|
||||||
string anrede,
|
string anrede,
|
||||||
string titel,
|
string titel,
|
||||||
string vorname,
|
string vorname,
|
||||||
string adel,
|
string adel,
|
||||||
string name,
|
string name,
|
||||||
string namezus,
|
string namezus,
|
||||||
string anredzus,
|
string anredzus,
|
||||||
string strasse,
|
string strasse,
|
||||||
string strasse2,
|
string strasse2,
|
||||||
int plz,
|
int plz,
|
||||||
string ort,
|
string ort,
|
||||||
string land,
|
string land,
|
||||||
string pplz,
|
string pplz,
|
||||||
string postfach,
|
string postfach,
|
||||||
string name1,
|
string name1,
|
||||||
string name2,
|
string name2,
|
||||||
string name3,
|
string name3,
|
||||||
string name4,
|
string name4,
|
||||||
string name5,
|
string name5,
|
||||||
string funktion,
|
string funktion,
|
||||||
string funktion2,
|
string funktion2,
|
||||||
string abteilung,
|
string abteilung,
|
||||||
string funktionad)
|
string funktionad)
|
||||||
{
|
{
|
||||||
this.refsid = refsid;
|
this.refsid = refsid;
|
||||||
this.anrede = anrede;
|
this.anrede = anrede;
|
||||||
@@ -116,5 +92,43 @@ public class KasPerson
|
|||||||
this.abteilung = abteilung;
|
this.abteilung = abteilung;
|
||||||
this.funktionad = funktionad;
|
this.funktionad = funktionad;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int refsid { get; set; }
|
||||||
|
public string anrede { get; set; }
|
||||||
|
public string titel { get; set; }
|
||||||
|
public string vorname { get; set; }
|
||||||
|
public string adel { get; set; }
|
||||||
|
public string name { get; set; }
|
||||||
|
public string namezus { get; set; }
|
||||||
|
public string anredzus { get; set; }
|
||||||
|
public string strasse { get; set; }
|
||||||
|
public string strasse2 { get; set; }
|
||||||
|
public int plz { get; set; }
|
||||||
|
public string ort { get; set; }
|
||||||
|
public string land { get; set; }
|
||||||
|
public string pplz { get; set; }
|
||||||
|
public string postfach { get; set; }
|
||||||
|
public string name1 { get; set; }
|
||||||
|
public string name2 { get; set; }
|
||||||
|
public string name3 { get; set; }
|
||||||
|
public string name4 { get; set; }
|
||||||
|
public string name5 { get; set; }
|
||||||
|
public string funktion { get; set; }
|
||||||
|
public string funktion2 { get; set; }
|
||||||
|
public string abteilung { get; set; }
|
||||||
|
public string funktionad { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class KasPersonError
|
||||||
|
{
|
||||||
|
public KasPersonError((int, List<AddressCheck.ErrorTypes>) single_result)
|
||||||
|
{
|
||||||
|
refsid = single_result.Item1;
|
||||||
|
foreach (var err in single_result.Item2) errors += err + ", ";
|
||||||
|
errors = errors.Trim();
|
||||||
|
errors = errors.TrimEnd(',');
|
||||||
|
}
|
||||||
|
|
||||||
|
public int refsid { get; set; }
|
||||||
|
public string errors { get; set; }
|
||||||
|
}
|
||||||
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Avalonia" Version="11.3.2" />
|
<PackageReference Include="Avalonia" Version="11.3.2" />
|
||||||
|
<PackageReference Include="Avalonia.Controls.DataGrid" Version="11.3.2" />
|
||||||
<PackageReference Include="Avalonia.Desktop" Version="11.3.2" />
|
<PackageReference Include="Avalonia.Desktop" Version="11.3.2" />
|
||||||
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.3.2" />
|
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.3.2" />
|
||||||
<PackageReference Include="Avalonia.Fonts.Inter" Version="11.3.2" />
|
<PackageReference Include="Avalonia.Fonts.Inter" Version="11.3.2" />
|
||||||
|
|||||||
@@ -7,31 +7,53 @@ namespace Logof_Client;
|
|||||||
|
|
||||||
public partial class MainWindow : Window
|
public partial class MainWindow : Window
|
||||||
{
|
{
|
||||||
|
public static MainWindow _instance;
|
||||||
public Uri filePath;
|
public Uri filePath;
|
||||||
|
|
||||||
public MainWindow()
|
public MainWindow()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
try
|
_instance = this;
|
||||||
{
|
// try
|
||||||
var temppath = "kaspersons.csv";
|
// {
|
||||||
var result = DataImport.ImportKasAddressList(new Uri(temppath));
|
// var temppath = "kaspersons.csv";
|
||||||
if (result.Item1)
|
// var result = DataImport.ImportKasAddressList(new Uri(temppath));
|
||||||
{
|
// if (result.Item1)
|
||||||
var check_result = AddressCheck.Perform(result.Item2);
|
// {
|
||||||
foreach (var item in check_result)
|
// var check_result = new AddressCheck().Perform(result.Item2);
|
||||||
{
|
// foreach (var item in check_result.Result)
|
||||||
Console.WriteLine();
|
// {
|
||||||
Console.Write(item.Item1 + " ");
|
// Console.WriteLine();
|
||||||
foreach (var error in item.Item2) Console.Write(error + ", ");
|
// Console.Write(item.Item1 + " ");
|
||||||
}
|
// foreach (var error in item.Item2) Console.Write(error + ", ");
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
catch
|
// }
|
||||||
{
|
// catch
|
||||||
}
|
// {
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async void StartAddressCheck(Uri path)
|
||||||
|
{
|
||||||
|
var addresses = DataImport.ImportKasAddressList(path); // Ihr Code hier
|
||||||
|
var progressWindow = new ProgressWindow();
|
||||||
|
|
||||||
|
// Fenster anzeigen (nicht blockierend)
|
||||||
|
progressWindow.Show(_instance);
|
||||||
|
|
||||||
|
var processor = new AddressCheck(progressWindow);
|
||||||
|
var result = await processor.Perform(addresses.Item2);
|
||||||
|
|
||||||
|
// Nach Verarbeitung schließen
|
||||||
|
progressWindow.Close();
|
||||||
|
|
||||||
|
// Ergebnis anzeigen, z.B. als Dialog
|
||||||
|
new ResultWindow(result).Show();
|
||||||
|
//await MessageBox.Show(_instance, $"{result.Count} Einträge fehlerhaft.", "Fertig");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private void MnuExit_OnClick(object? sender, RoutedEventArgs e)
|
private void MnuExit_OnClick(object? sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
@@ -82,16 +104,17 @@ public partial class MainWindow : Window
|
|||||||
private void BtnCheck_OnClick(object? sender, RoutedEventArgs e)
|
private void BtnCheck_OnClick(object? sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
if (filePath == null) MessageBox.Show(this, "Bitte zunächst eine Datei auswählen", "Datei fehlt");
|
if (filePath == null) MessageBox.Show(this, "Bitte zunächst eine Datei auswählen", "Datei fehlt");
|
||||||
var result = DataImport.ImportKasAddressList(filePath);
|
StartAddressCheck(filePath);
|
||||||
if (result.Item1)
|
// var result = DataImport.ImportKasAddressList(filePath);
|
||||||
{
|
// if (result.Item1)
|
||||||
var check_result = AddressCheck.Perform(result.Item2);
|
// {
|
||||||
foreach (var item in check_result)
|
// var check_result = new AddressCheck().Perform(result.Item2);
|
||||||
{
|
// foreach (var item in check_result.Result)
|
||||||
Console.WriteLine();
|
// {
|
||||||
Console.Write(item.Item1 + " ");
|
// Console.WriteLine();
|
||||||
foreach (var error in item.Item2) Console.Write(error + ", ");
|
// Console.Write(item.Item1 + " ");
|
||||||
}
|
// foreach (var error in item.Item2) Console.Write(error + ", ");
|
||||||
}
|
// }
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
18
ProgressWindow.axaml
Normal file
18
ProgressWindow.axaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<Window xmlns="https://github.com/avaloniaui"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
|
mc:Ignorable="d" d:DesignWidth="800" Width="800" MinWidth="800" MaxWidth="800" d:DesignHeight="150"
|
||||||
|
Height="150" MinHeight="150" MaxHeight="150"
|
||||||
|
x:Class="Logof_Client.ProgressWindow" Title="Verarbeitung läuft...">
|
||||||
|
<Grid>
|
||||||
|
<!-- <ScrollViewer x:Name="ScvLog"> -->
|
||||||
|
<!-- <TextBlock x:Name="TbLog" Margin="10,10,10,50" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" -->
|
||||||
|
<!-- FontFamily="Consolas" /> -->
|
||||||
|
<!-- </ScrollViewer> -->
|
||||||
|
<TextBlock x:Name="TbLog" Margin="10,10,10,50" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
|
||||||
|
FontFamily="Consolas" />
|
||||||
|
<ProgressBar x:Name="PbProgress" HorizontalAlignment="Stretch" Height="30" VerticalAlignment="Bottom"
|
||||||
|
Margin="10,0,10,10" />
|
||||||
|
</Grid>
|
||||||
|
</Window>
|
||||||
24
ProgressWindow.axaml.cs
Normal file
24
ProgressWindow.axaml.cs
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
using Avalonia.Controls;
|
||||||
|
|
||||||
|
namespace Logof_Client;
|
||||||
|
|
||||||
|
public partial class ProgressWindow : Window
|
||||||
|
{
|
||||||
|
public ProgressWindow()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
PbProgress.Minimum = 0;
|
||||||
|
PbProgress.Maximum = 100;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ChangePercentage(double percentage)
|
||||||
|
{
|
||||||
|
PbProgress.Value = percentage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddToLog(string message)
|
||||||
|
{
|
||||||
|
TbLog.Text = message;
|
||||||
|
//ScvLog.ScrollToEnd();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
<Window xmlns="https://github.com/avaloniaui"
|
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
||||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
|
||||||
x:Class="Logof_Client.ResultWindow"
|
|
||||||
Title="ResultWindow">
|
|
||||||
Welcome to Avalonia!
|
|
||||||
</Window>
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
using Avalonia;
|
|
||||||
using Avalonia.Controls;
|
|
||||||
using Avalonia.Markup.Xaml;
|
|
||||||
|
|
||||||
namespace Logof_Client;
|
|
||||||
|
|
||||||
public partial class ResultWindow : Window
|
|
||||||
{
|
|
||||||
public ResultWindow()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1 +1 @@
|
|||||||
6fe5162be4283c1411101dd639fbc8a545963efea312fd784c904b45361005c0
|
982c4bab1be7433e0655bc9d9093ed492303bd16c33e9bf09c663ad2ef1afbaa
|
||||||
|
|||||||
Binary file not shown.
@@ -13,7 +13,7 @@ using System.Reflection;
|
|||||||
[assembly: System.Reflection.AssemblyCompanyAttribute("Logof Client")]
|
[assembly: System.Reflection.AssemblyCompanyAttribute("Logof Client")]
|
||||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+0d121663397a12ffe7d914c4b6e0302d8f0670d0")]
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+4bdf50a290804aab4f6671c7ded546f168c8e674")]
|
||||||
[assembly: System.Reflection.AssemblyProductAttribute("Logof Client")]
|
[assembly: System.Reflection.AssemblyProductAttribute("Logof Client")]
|
||||||
[assembly: System.Reflection.AssemblyTitleAttribute("Logof Client")]
|
[assembly: System.Reflection.AssemblyTitleAttribute("Logof Client")]
|
||||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
c05703a1f27fdffbabcbabba7a1bf53472ea728aab90b390cced0bdc9f8b02dc
|
f7afc36fe250c56352855cc054140e1d3e759a80e43f866429a6f585b3dd52ae
|
||||||
|
|||||||
@@ -30,5 +30,8 @@ build_metadata.AdditionalFiles.SourceItemGroup = AvaloniaXaml
|
|||||||
[/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/MessageBox.axaml]
|
[/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/MessageBox.axaml]
|
||||||
build_metadata.AdditionalFiles.SourceItemGroup = AvaloniaXaml
|
build_metadata.AdditionalFiles.SourceItemGroup = AvaloniaXaml
|
||||||
|
|
||||||
|
[/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/ProgressWindow.axaml]
|
||||||
|
build_metadata.AdditionalFiles.SourceItemGroup = AvaloniaXaml
|
||||||
|
|
||||||
[/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/ResultWindow.axaml]
|
[/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/ResultWindow.axaml]
|
||||||
build_metadata.AdditionalFiles.SourceItemGroup = AvaloniaXaml
|
build_metadata.AdditionalFiles.SourceItemGroup = AvaloniaXaml
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -20,6 +20,7 @@
|
|||||||
"net9.0"
|
"net9.0"
|
||||||
],
|
],
|
||||||
"sources": {
|
"sources": {
|
||||||
|
"/usr/lib64/dotnet/library-packs": {},
|
||||||
"https://api.nuget.org/v3/index.json": {}
|
"https://api.nuget.org/v3/index.json": {}
|
||||||
},
|
},
|
||||||
"frameworks": {
|
"frameworks": {
|
||||||
@@ -48,6 +49,10 @@
|
|||||||
"target": "Package",
|
"target": "Package",
|
||||||
"version": "[11.3.2, )"
|
"version": "[11.3.2, )"
|
||||||
},
|
},
|
||||||
|
"Avalonia.Controls.DataGrid": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[11.3.2, )"
|
||||||
|
},
|
||||||
"Avalonia.Desktop": {
|
"Avalonia.Desktop": {
|
||||||
"target": "Package",
|
"target": "Package",
|
||||||
"version": "[11.3.2, )"
|
"version": "[11.3.2, )"
|
||||||
@@ -80,18 +85,12 @@
|
|||||||
],
|
],
|
||||||
"assetTargetFallback": true,
|
"assetTargetFallback": true,
|
||||||
"warn": true,
|
"warn": true,
|
||||||
"downloadDependencies": [
|
|
||||||
{
|
|
||||||
"name": "Microsoft.AspNetCore.App.Ref",
|
|
||||||
"version": "[9.0.4, 9.0.4]"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"frameworkReferences": {
|
"frameworkReferences": {
|
||||||
"Microsoft.NETCore.App": {
|
"Microsoft.NETCore.App": {
|
||||||
"privateAssets": "all"
|
"privateAssets": "all"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/9.0.105/PortableRuntimeIdentifierGraph.json"
|
"runtimeIdentifierGraphPath": "/usr/lib64/dotnet/sdk/9.0.106/PortableRuntimeIdentifierGraph.json"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -124,6 +124,22 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"Avalonia.Controls.DataGrid/11.3.2": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"Avalonia": "11.3.2"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/net8.0/Avalonia.Controls.DataGrid.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net8.0/Avalonia.Controls.DataGrid.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"Avalonia.Desktop/11.3.2": {
|
"Avalonia.Desktop/11.3.2": {
|
||||||
"type": "package",
|
"type": "package",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -819,6 +835,25 @@
|
|||||||
"lib/netstandard2.0/Avalonia.Controls.ColorPicker.xml"
|
"lib/netstandard2.0/Avalonia.Controls.ColorPicker.xml"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"Avalonia.Controls.DataGrid/11.3.2": {
|
||||||
|
"sha512": "uAljhbq2csXx93TvG8LFSluIDiJByrsZ7OdFyGOC6mkoM+DIJsmMCJ4ce/zgS1aPFLP9wpa8ggLLSbgy7Vap6g==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "avalonia.controls.datagrid/11.3.2",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"Icon.png",
|
||||||
|
"avalonia.controls.datagrid.11.3.2.nupkg.sha512",
|
||||||
|
"avalonia.controls.datagrid.nuspec",
|
||||||
|
"lib/net6.0/Avalonia.Controls.DataGrid.dll",
|
||||||
|
"lib/net6.0/Avalonia.Controls.DataGrid.xml",
|
||||||
|
"lib/net8.0/Avalonia.Controls.DataGrid.dll",
|
||||||
|
"lib/net8.0/Avalonia.Controls.DataGrid.xml",
|
||||||
|
"lib/netstandard2.0/Avalonia.Controls.DataGrid.dll",
|
||||||
|
"lib/netstandard2.0/Avalonia.Controls.DataGrid.xml",
|
||||||
|
"readme.md"
|
||||||
|
]
|
||||||
|
},
|
||||||
"Avalonia.Desktop/11.3.2": {
|
"Avalonia.Desktop/11.3.2": {
|
||||||
"sha512": "b2ZPZ60UN0Uib3ZxFrf+ixYiJTBFaXrpQAcXTSUKTDw0nAU29sbfjvdtpBkBd6+idWpNtI+GhOjf0Mw0v1ncQg==",
|
"sha512": "b2ZPZ60UN0Uib3ZxFrf+ixYiJTBFaXrpQAcXTSUKTDw0nAU29sbfjvdtpBkBd6+idWpNtI+GhOjf0Mw0v1ncQg==",
|
||||||
"type": "package",
|
"type": "package",
|
||||||
@@ -1435,6 +1470,7 @@
|
|||||||
"projectFileDependencyGroups": {
|
"projectFileDependencyGroups": {
|
||||||
"net9.0": [
|
"net9.0": [
|
||||||
"Avalonia >= 11.3.2",
|
"Avalonia >= 11.3.2",
|
||||||
|
"Avalonia.Controls.DataGrid >= 11.3.2",
|
||||||
"Avalonia.Desktop >= 11.3.2",
|
"Avalonia.Desktop >= 11.3.2",
|
||||||
"Avalonia.Diagnostics >= 11.3.2",
|
"Avalonia.Diagnostics >= 11.3.2",
|
||||||
"Avalonia.Fonts.Inter >= 11.3.2",
|
"Avalonia.Fonts.Inter >= 11.3.2",
|
||||||
@@ -1461,6 +1497,7 @@
|
|||||||
"net9.0"
|
"net9.0"
|
||||||
],
|
],
|
||||||
"sources": {
|
"sources": {
|
||||||
|
"/usr/lib64/dotnet/library-packs": {},
|
||||||
"https://api.nuget.org/v3/index.json": {}
|
"https://api.nuget.org/v3/index.json": {}
|
||||||
},
|
},
|
||||||
"frameworks": {
|
"frameworks": {
|
||||||
@@ -1489,6 +1526,10 @@
|
|||||||
"target": "Package",
|
"target": "Package",
|
||||||
"version": "[11.3.2, )"
|
"version": "[11.3.2, )"
|
||||||
},
|
},
|
||||||
|
"Avalonia.Controls.DataGrid": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[11.3.2, )"
|
||||||
|
},
|
||||||
"Avalonia.Desktop": {
|
"Avalonia.Desktop": {
|
||||||
"target": "Package",
|
"target": "Package",
|
||||||
"version": "[11.3.2, )"
|
"version": "[11.3.2, )"
|
||||||
@@ -1521,18 +1562,12 @@
|
|||||||
],
|
],
|
||||||
"assetTargetFallback": true,
|
"assetTargetFallback": true,
|
||||||
"warn": true,
|
"warn": true,
|
||||||
"downloadDependencies": [
|
|
||||||
{
|
|
||||||
"name": "Microsoft.AspNetCore.App.Ref",
|
|
||||||
"version": "[9.0.4, 9.0.4]"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"frameworkReferences": {
|
"frameworkReferences": {
|
||||||
"Microsoft.NETCore.App": {
|
"Microsoft.NETCore.App": {
|
||||||
"privateAssets": "all"
|
"privateAssets": "all"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/9.0.105/PortableRuntimeIdentifierGraph.json"
|
"runtimeIdentifierGraphPath": "/usr/lib64/dotnet/sdk/9.0.106/PortableRuntimeIdentifierGraph.json"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"version": 2,
|
"version": 2,
|
||||||
"dgSpecHash": "D+4nG7Cnz1A=",
|
"dgSpecHash": "iFRYA+o6oII=",
|
||||||
"success": true,
|
"success": true,
|
||||||
"projectFilePath": "/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/Logof Client.csproj",
|
"projectFilePath": "/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/Logof Client.csproj",
|
||||||
"expectedPackageFiles": [
|
"expectedPackageFiles": [
|
||||||
@@ -8,6 +8,7 @@
|
|||||||
"/home/fierke/.nuget/packages/avalonia.angle.windows.natives/2.1.25547.20250602/avalonia.angle.windows.natives.2.1.25547.20250602.nupkg.sha512",
|
"/home/fierke/.nuget/packages/avalonia.angle.windows.natives/2.1.25547.20250602/avalonia.angle.windows.natives.2.1.25547.20250602.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/avalonia.buildservices/0.0.31/avalonia.buildservices.0.0.31.nupkg.sha512",
|
"/home/fierke/.nuget/packages/avalonia.buildservices/0.0.31/avalonia.buildservices.0.0.31.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/avalonia.controls.colorpicker/11.3.2/avalonia.controls.colorpicker.11.3.2.nupkg.sha512",
|
"/home/fierke/.nuget/packages/avalonia.controls.colorpicker/11.3.2/avalonia.controls.colorpicker.11.3.2.nupkg.sha512",
|
||||||
|
"/home/fierke/.nuget/packages/avalonia.controls.datagrid/11.3.2/avalonia.controls.datagrid.11.3.2.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/avalonia.desktop/11.3.2/avalonia.desktop.11.3.2.nupkg.sha512",
|
"/home/fierke/.nuget/packages/avalonia.desktop/11.3.2/avalonia.desktop.11.3.2.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/avalonia.diagnostics/11.3.2/avalonia.diagnostics.11.3.2.nupkg.sha512",
|
"/home/fierke/.nuget/packages/avalonia.diagnostics/11.3.2/avalonia.diagnostics.11.3.2.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/avalonia.fonts.inter/11.3.2/avalonia.fonts.inter.11.3.2.nupkg.sha512",
|
"/home/fierke/.nuget/packages/avalonia.fonts.inter/11.3.2/avalonia.fonts.inter.11.3.2.nupkg.sha512",
|
||||||
@@ -32,8 +33,7 @@
|
|||||||
"/home/fierke/.nuget/packages/skiasharp.nativeassets.webassembly/2.88.9/skiasharp.nativeassets.webassembly.2.88.9.nupkg.sha512",
|
"/home/fierke/.nuget/packages/skiasharp.nativeassets.webassembly/2.88.9/skiasharp.nativeassets.webassembly.2.88.9.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/skiasharp.nativeassets.win32/2.88.9/skiasharp.nativeassets.win32.2.88.9.nupkg.sha512",
|
"/home/fierke/.nuget/packages/skiasharp.nativeassets.win32/2.88.9/skiasharp.nativeassets.win32.2.88.9.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/system.io.pipelines/8.0.0/system.io.pipelines.8.0.0.nupkg.sha512",
|
"/home/fierke/.nuget/packages/system.io.pipelines/8.0.0/system.io.pipelines.8.0.0.nupkg.sha512",
|
||||||
"/home/fierke/.nuget/packages/tmds.dbus.protocol/0.21.2/tmds.dbus.protocol.0.21.2.nupkg.sha512",
|
"/home/fierke/.nuget/packages/tmds.dbus.protocol/0.21.2/tmds.dbus.protocol.0.21.2.nupkg.sha512"
|
||||||
"/home/fierke/.nuget/packages/microsoft.aspnetcore.app.ref/9.0.4/microsoft.aspnetcore.app.ref.9.0.4.nupkg.sha512"
|
|
||||||
],
|
],
|
||||||
"logs": []
|
"logs": []
|
||||||
}
|
}
|
||||||
@@ -1 +1 @@
|
|||||||
"restore":{"projectUniqueName":"/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/Logof Client.csproj","projectName":"Logof Client","projectPath":"/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/Logof Client.csproj","outputPath":"/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net9.0"],"sources":{"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net9.0":{"targetAlias":"net9.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"},"SdkAnalysisLevel":"9.0.100"}"frameworks":{"net9.0":{"targetAlias":"net9.0","dependencies":{"Avalonia":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Desktop":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Diagnostics":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Fonts.Inter":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Themes.Fluent":{"target":"Package","version":"[11.3.2, )"},"Lucide.Avalonia":{"target":"Package","version":"[0.1.35, )"}},"imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"downloadDependencies":[{"name":"Microsoft.AspNetCore.App.Ref","version":"[9.0.4, 9.0.4]"}],"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"/usr/share/dotnet/sdk/9.0.105/PortableRuntimeIdentifierGraph.json"}}
|
"restore":{"projectUniqueName":"/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/Logof Client.csproj","projectName":"Logof Client","projectPath":"/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/Logof Client.csproj","outputPath":"/home/fierke/Nextcloud/Documents/source/repos/logofclient/Logof Client/obj/","projectStyle":"PackageReference","originalTargetFrameworks":["net9.0"],"sources":{"/usr/lib64/dotnet/library-packs":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net9.0":{"targetAlias":"net9.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]},"restoreAuditProperties":{"enableAudit":"true","auditLevel":"low","auditMode":"direct"},"SdkAnalysisLevel":"9.0.100"}"frameworks":{"net9.0":{"targetAlias":"net9.0","dependencies":{"Avalonia":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Controls.DataGrid":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Desktop":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Diagnostics":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Fonts.Inter":{"target":"Package","version":"[11.3.2, )"},"Avalonia.Themes.Fluent":{"target":"Package","version":"[11.3.2, )"},"Lucide.Avalonia":{"target":"Package","version":"[0.1.35, )"}},"imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"/usr/lib64/dotnet/sdk/9.0.106/PortableRuntimeIdentifierGraph.json"}}
|
||||||
@@ -1 +1 @@
|
|||||||
17515302868997761
|
17520917705843408
|
||||||
@@ -1 +1 @@
|
|||||||
17515302868997761
|
17520918778041105
|
||||||
Reference in New Issue
Block a user