Auftraggeberservice und Projektservice hinzugefügt
This commit is contained in:
10
SewerStammGen.Console/Program.cs
Normal file
10
SewerStammGen.Console/Program.cs
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
namespace SewerStammGen.Console
|
||||||
|
{
|
||||||
|
internal class Program
|
||||||
|
{
|
||||||
|
static void Main(string[] args)
|
||||||
|
{
|
||||||
|
Console.WriteLine("Hello, World!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15
SewerStammGen.Console/SewerStammGen.Console.csproj
Normal file
15
SewerStammGen.Console/SewerStammGen.Console.csproj
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<OutputType>Exe</OutputType>
|
||||||
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\SewerStammGen.DAL\SewerStammGen.DAL.csproj" />
|
||||||
|
<ProjectReference Include="..\Shared\SewerStammGen.Shared.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
43
SewerStammGen.ConsoleApp/Program.cs
Normal file
43
SewerStammGen.ConsoleApp/Program.cs
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
using SewerStammGen.DAL.Services;
|
||||||
|
|
||||||
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using SewerStammGen.Shared.Enum;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace SewerStammGen.ConsoleApp
|
||||||
|
{
|
||||||
|
internal class Program
|
||||||
|
{
|
||||||
|
static void Main(string[] args)
|
||||||
|
{
|
||||||
|
IProjektDataService projektService = new ProjektDataService();
|
||||||
|
|
||||||
|
Projekt neuesProjekt = new Projekt()
|
||||||
|
{
|
||||||
|
Erstelldatum = "test",
|
||||||
|
Projektname = "test",
|
||||||
|
Kodierungssystem = EKodierungssystem.EN13508_2_2011,
|
||||||
|
ExportType = EExportType.XML2006,
|
||||||
|
Ort = "test",
|
||||||
|
Strasse = "test",
|
||||||
|
};
|
||||||
|
|
||||||
|
//test(neuesProjekt, projektService);
|
||||||
|
readtest(projektService);
|
||||||
|
Console.WriteLine("Hello, World!");
|
||||||
|
}
|
||||||
|
|
||||||
|
private static async void readtest(IProjektDataService projektService)
|
||||||
|
{
|
||||||
|
var m = await projektService.GetAll();
|
||||||
|
Debugger.Break();
|
||||||
|
}
|
||||||
|
|
||||||
|
private static async void test(Projekt neuesProjekt, IProjektDataService projektService)
|
||||||
|
{
|
||||||
|
var m = await projektService.Create(neuesProjekt);
|
||||||
|
Console.WriteLine(m.Id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15
SewerStammGen.ConsoleApp/SewerStammGen.ConsoleApp.csproj
Normal file
15
SewerStammGen.ConsoleApp/SewerStammGen.ConsoleApp.csproj
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<OutputType>Exe</OutputType>
|
||||||
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\SewerStammGen.DAL\SewerStammGen.DAL.csproj" />
|
||||||
|
<ProjectReference Include="..\Shared\SewerStammGen.Shared.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
7
SewerStammGen.DAL/Class1.cs
Normal file
7
SewerStammGen.DAL/Class1.cs
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
namespace SewerStammGen.DAL
|
||||||
|
{
|
||||||
|
public class Class1
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
89
SewerStammGen.DAL/Services/AuftraggeberDataService.cs
Normal file
89
SewerStammGen.DAL/Services/AuftraggeberDataService.cs
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
using Npgsql;
|
||||||
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SewerStammGen.DAL.Services
|
||||||
|
{
|
||||||
|
public class AuftraggeberDataService : IAuftraggeberDataService
|
||||||
|
{
|
||||||
|
string connString = "Host = localhost; Database = SewerGen; Username = SewerGen; Password = SewerGen";
|
||||||
|
NpgsqlDataSource dataSource;
|
||||||
|
NpgsqlConnection? conn = null;
|
||||||
|
public AuftraggeberDataService()
|
||||||
|
{
|
||||||
|
var dataSourceBuilder = new NpgsqlDataSourceBuilder(connString);
|
||||||
|
dataSource = dataSourceBuilder.Build();
|
||||||
|
|
||||||
|
//OpenConnection();
|
||||||
|
conn = dataSource.OpenConnection();
|
||||||
|
|
||||||
|
}
|
||||||
|
public Task<Auftraggeber> Create(Auftraggeber entity)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Auftraggeber CreateNonAsync(Auftraggeber entity)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<bool> Delete(int id)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<Auftraggeber> Get(int id)
|
||||||
|
{
|
||||||
|
Auftraggeber result = new Auftraggeber();
|
||||||
|
using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Auftraggebers\" WHERE \"Id\" = @1", conn))
|
||||||
|
{
|
||||||
|
cmd.Parameters.AddWithValue("1", id);
|
||||||
|
using var reader = await cmd.ExecuteReaderAsync();
|
||||||
|
reader.Read();
|
||||||
|
result = parseAuftraggeber(reader);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private Auftraggeber parseAuftraggeber(NpgsqlDataReader reader)
|
||||||
|
{
|
||||||
|
return new Auftraggeber()
|
||||||
|
{
|
||||||
|
Id = reader.GetInt32(0),
|
||||||
|
Name = reader.IsDBNull(1) ? "" : reader.GetString(1),
|
||||||
|
Strasse = reader.IsDBNull(2) ? "" : reader.GetString(2),
|
||||||
|
Ort = reader.IsDBNull(3) ? "" : reader.GetString(3),
|
||||||
|
Postleitzahl = reader.IsDBNull(4) ? "" : reader.GetString(4),
|
||||||
|
Ansprechpartner = reader.IsDBNull(5) ? "" : reader.GetString(5),
|
||||||
|
Telefonnummer = reader.IsDBNull(6) ? "" : reader.GetString(6)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<IEnumerable<Auftraggeber>> GetAll()
|
||||||
|
{
|
||||||
|
List<Auftraggeber> result = new List<Auftraggeber>();
|
||||||
|
using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Auftraggebers\"", conn))
|
||||||
|
using (var reader = await cmd.ExecuteReaderAsync())
|
||||||
|
{
|
||||||
|
while (reader.Read())
|
||||||
|
{
|
||||||
|
result.Add(parseAuftraggeber(reader));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<Auftraggeber> Update(int id, Auftraggeber entity)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
119
SewerStammGen.DAL/Services/ProjektDataService.cs
Normal file
119
SewerStammGen.DAL/Services/ProjektDataService.cs
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Npgsql;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using SewerStammGen.Shared.Enum;
|
||||||
|
|
||||||
|
namespace SewerStammGen.DAL.Services
|
||||||
|
{
|
||||||
|
public class ProjektDataService : IProjektDataService
|
||||||
|
{
|
||||||
|
string connString = "Host = localhost; Database = SewerGen; Username = SewerGen; Password = SewerGen";
|
||||||
|
NpgsqlDataSource dataSource;
|
||||||
|
NpgsqlConnection? conn = null;
|
||||||
|
public ProjektDataService()
|
||||||
|
{
|
||||||
|
var dataSourceBuilder = new NpgsqlDataSourceBuilder(connString);
|
||||||
|
dataSource = dataSourceBuilder.Build();
|
||||||
|
|
||||||
|
//OpenConnection();
|
||||||
|
conn = dataSource.OpenConnection();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private async void OpenConnection()
|
||||||
|
{
|
||||||
|
conn = await dataSource.OpenConnectionAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<Projekt> Create(Projekt entity)
|
||||||
|
{
|
||||||
|
string command = "INSERT INTO public.\"Projekte\" (\"Projektname\", \"Erstelldatum\", \"Strasse\", \"Ort\", \"ExportType\", \"Kodierungssystem\",\"AuftraggeberId\") " +
|
||||||
|
"VALUES(@1,@2,@3,@4,@5,@6,@7) RETURNING \"Id\"";
|
||||||
|
|
||||||
|
await using(var cmd = new NpgsqlCommand(command, conn))
|
||||||
|
{
|
||||||
|
cmd.Parameters.AddWithValue("1", entity.Projektname);
|
||||||
|
cmd.Parameters.AddWithValue("2", entity.Erstelldatum);
|
||||||
|
cmd.Parameters.AddWithValue("3", entity.Strasse);
|
||||||
|
cmd.Parameters.AddWithValue("4", entity.Ort);
|
||||||
|
cmd.Parameters.AddWithValue("5", (int)entity.ExportType);
|
||||||
|
cmd.Parameters.AddWithValue("6", (int)entity.Kodierungssystem);
|
||||||
|
cmd.Parameters.AddWithValue("7", entity.Auftraggeber.Id);
|
||||||
|
using var reader = await cmd.ExecuteReaderAsync();
|
||||||
|
reader.Read();
|
||||||
|
entity.Id = reader.GetInt32(0);
|
||||||
|
}
|
||||||
|
return entity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Projekt CreateNonAsync(Projekt entity)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<bool> Delete(int id)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<Projekt> Get(int id)
|
||||||
|
{
|
||||||
|
Projekt result = new Projekt();
|
||||||
|
IAuftraggeberDataService auftraggeberDataService = new AuftraggeberDataService();
|
||||||
|
using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Projekte\" WHERE \"Id\" = @1", conn))
|
||||||
|
{
|
||||||
|
cmd.Parameters.AddWithValue("1", id);
|
||||||
|
using var reader = await cmd.ExecuteReaderAsync();
|
||||||
|
reader.Read();
|
||||||
|
result = parseProjekt(reader);
|
||||||
|
result.Auftraggeber = await auftraggeberDataService.Get(reader.GetInt32(7));
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private Projekt? parseProjekt(NpgsqlDataReader reader)
|
||||||
|
{
|
||||||
|
return new Projekt()
|
||||||
|
{
|
||||||
|
Id = reader.GetInt32(0),
|
||||||
|
Projektname = reader.GetString(1),
|
||||||
|
Erstelldatum = reader.GetString(2),
|
||||||
|
Strasse = reader.GetString(3),
|
||||||
|
Ort = reader.GetString(4),
|
||||||
|
ExportType = (EExportType)reader.GetInt32(5),
|
||||||
|
Kodierungssystem = (EKodierungssystem)reader.GetInt32(6)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<IEnumerable<Projekt>> GetAll()
|
||||||
|
{
|
||||||
|
IAuftraggeberDataService auftraggeberDataService = new AuftraggeberDataService();
|
||||||
|
|
||||||
|
IEnumerable<Auftraggeber> auftraggebers = await auftraggeberDataService.GetAll();
|
||||||
|
|
||||||
|
List<Projekt> result = new List<Projekt>();
|
||||||
|
using (var cmd = new NpgsqlCommand($"SELECT * FROM public.\"Projekte\"", conn))
|
||||||
|
using (var reader = await cmd.ExecuteReaderAsync())
|
||||||
|
{
|
||||||
|
while (reader.Read())
|
||||||
|
{
|
||||||
|
Projekt projekt = parseProjekt(reader);
|
||||||
|
projekt.Auftraggeber = auftraggebers.Where(x => x.Id == reader.GetInt32(7)).ToList().Last();
|
||||||
|
result.Add(projekt);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<Projekt> Update(int id, Projekt entity)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
17
SewerStammGen.DAL/SewerStammGen.DAL.csproj
Normal file
17
SewerStammGen.DAL/SewerStammGen.DAL.csproj
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Npgsql" Version="7.0.2" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\Shared\SewerStammGen.Shared.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
using SewerStammGen.WPF.ViewModel;
|
using SewerStammGen.WPF.ViewModel;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel;
|
using SewerStammGen.WPF.ViewModel;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
using SewerStammGen.WPF.ViewModel;
|
using SewerStammGen.WPF.ViewModel;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Hosting;
|
||||||
|
using SewerStammGen.DAL.Services;
|
||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
using SewerStammGen.Shared.Services;
|
using SewerStammGen.Shared.Services;
|
||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel;
|
using SewerStammGen.WPF.ViewModel;
|
||||||
using SewerStammGen.WPF.ViewModel.State.Navigation;
|
using SewerStammGen.WPF.ViewModel.State.Navigation;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@@ -25,12 +25,9 @@ namespace SewerStammGen.HostBuilders
|
|||||||
{
|
{
|
||||||
services.AddSingleton<IMainWindowNavigator, MainWindowNavigator>();
|
services.AddSingleton<IMainWindowNavigator, MainWindowNavigator>();
|
||||||
services.AddSingleton<ViewModelDelegateRenavigator<ProjektEditViewModel>>();
|
services.AddSingleton<ViewModelDelegateRenavigator<ProjektEditViewModel>>();
|
||||||
/* services.AddSingleton<IDataService<Projekt>, GenericDataService<Projekt>>();
|
services.AddSingleton<IProjektDataService, ProjektDataService>();
|
||||||
services.AddSingleton<IDataService<Schacht>, GenericDataService<Schacht>>();
|
services.AddSingleton<IAuftraggeberDataService, AuftraggeberDataService>();
|
||||||
services.AddSingleton<IDataService<Kanal>, GenericDataService<Kanal>>();
|
|
||||||
services.AddSingleton<ISchachtDataService, SchachtDataService>();
|
|
||||||
services.AddSingleton<IHaltungDataService, HaltungDataService>();
|
|
||||||
*/
|
|
||||||
services.AddSingleton<ISchachtService, SchachtService>();
|
services.AddSingleton<ISchachtService, SchachtService>();
|
||||||
});
|
});
|
||||||
return host;
|
return host;
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ using SewerStammGen.WPF.ViewModel;
|
|||||||
using SewerStammGen.WPF.ViewModel.State.Navigation;
|
using SewerStammGen.WPF.ViewModel.State.Navigation;
|
||||||
using SewerStammGen.WPF.ViewModel.Factories;
|
using SewerStammGen.WPF.ViewModel.Factories;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@@ -15,6 +14,7 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
|
|
||||||
namespace SewerStammGen.HostBuilders
|
namespace SewerStammGen.HostBuilders
|
||||||
{
|
{
|
||||||
@@ -86,7 +86,7 @@ namespace SewerStammGen.HostBuilders
|
|||||||
services.AddSingleton<CreateViewModel<ProjektEditViewModel>>(services =>
|
services.AddSingleton<CreateViewModel<ProjektEditViewModel>>(services =>
|
||||||
{
|
{
|
||||||
return () => new ProjektEditViewModel(
|
return () => new ProjektEditViewModel(
|
||||||
services.GetRequiredService<IDataService<Projekt>>(),
|
services.GetRequiredService<IProjektDataService>(),
|
||||||
services.GetRequiredService<ViewModelDelegateRenavigator<ProjektListViewModel>>(),
|
services.GetRequiredService<ViewModelDelegateRenavigator<ProjektListViewModel>>(),
|
||||||
services.GetRequiredService<IActualState>()
|
services.GetRequiredService<IActualState>()
|
||||||
);
|
);
|
||||||
@@ -95,7 +95,7 @@ namespace SewerStammGen.HostBuilders
|
|||||||
services.AddSingleton<CreateViewModel<ProjektListViewModel>>(services =>
|
services.AddSingleton<CreateViewModel<ProjektListViewModel>>(services =>
|
||||||
{
|
{
|
||||||
return () => new ProjektListViewModel(
|
return () => new ProjektListViewModel(
|
||||||
services.GetRequiredService<IDataService<Projekt>>(),
|
services.GetRequiredService<IProjektDataService>(),
|
||||||
services.GetRequiredService<ViewModelDelegateRenavigator<ProjektEditViewModel>>(),
|
services.GetRequiredService<ViewModelDelegateRenavigator<ProjektEditViewModel>>(),
|
||||||
services.GetRequiredService<IActualState>()
|
services.GetRequiredService<IActualState>()
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\SewerStammGen.DAL\SewerStammGen.DAL.csproj" />
|
||||||
<ProjectReference Include="..\Shared\SewerStammGen.Shared.csproj" />
|
<ProjectReference Include="..\Shared\SewerStammGen.Shared.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
using SewerStammGen.WPF.Commands;
|
using SewerStammGen.WPF.Commands;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
using SewerStammGen.WPF.Commands;
|
using SewerStammGen.WPF.Commands;
|
||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
using SewerStammGen.WPF.Commands;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using SewerStammGen.WPF.Commands;
|
||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel;
|
using SewerStammGen.WPF.ViewModel;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
@@ -16,7 +17,7 @@ namespace SewerStammGen.WPF.ViewModel
|
|||||||
{
|
{
|
||||||
public class ProjektListViewModel : BaseViewModel
|
public class ProjektListViewModel : BaseViewModel
|
||||||
{
|
{
|
||||||
private IDataService<Projekt> genericDataService;
|
private IProjektDataService genericDataService;
|
||||||
private readonly ObservableCollection<Projekt> _projekte;
|
private readonly ObservableCollection<Projekt> _projekte;
|
||||||
private readonly IActualState _actualState;
|
private readonly IActualState _actualState;
|
||||||
public ObservableCollection<Projekt> Projekte { get => _projekte; }
|
public ObservableCollection<Projekt> Projekte { get => _projekte; }
|
||||||
@@ -44,7 +45,7 @@ namespace SewerStammGen.WPF.ViewModel
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProjektListViewModel(IDataService<Projekt> generic, IRenavigator renavigator,IActualState actualState)
|
public ProjektListViewModel(IProjektDataService generic, IRenavigator renavigator,IActualState actualState)
|
||||||
{
|
{
|
||||||
_projekte = new ObservableCollection<Projekt>();
|
_projekte = new ObservableCollection<Projekt>();
|
||||||
if (generic == null) throw new ArgumentNullException(nameof(generic));
|
if (generic == null) throw new ArgumentNullException(nameof(generic));
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
using SewerStammGen.WPF.Commands;
|
using SewerStammGen.WPF.Commands;
|
||||||
using SewerStammGen.WPF.Interface.Navigator;
|
using SewerStammGen.WPF.Interface.Navigator;
|
||||||
using SewerStammGen.WPF.ViewModel.State;
|
using SewerStammGen.WPF.ViewModel.State;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
using Shared.Domain;
|
using SewerStammGen.Shared.Domain;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
using Shared.Domain;
|
using SewerStammGen.Shared.Domain;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
14
Shared/Contracts/IAuftraggeberDataService.cs
Normal file
14
Shared/Contracts/IAuftraggeberDataService.cs
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using Shared.Contracts;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SewerStammGen.Shared.Contracts
|
||||||
|
{
|
||||||
|
public interface IAuftraggeberDataService : IDataService<Auftraggeber>
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
15
Shared/Contracts/IProjektDataService.cs
Normal file
15
Shared/Contracts/IProjektDataService.cs
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
|
using Shared.Contracts;
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SewerStammGen.Shared.Contracts
|
||||||
|
{
|
||||||
|
public interface IProjektDataService : IDataService<Projekt>
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
using Shared.Contracts;
|
using SewerStammGen.Shared.Domain;
|
||||||
using Shared.Domain;
|
using Shared.Contracts;
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using Shared.Domain;
|
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Shared.Domain
|
namespace SewerStammGen.Shared.Domain
|
||||||
{
|
{
|
||||||
public class Auftraggeber : DBObject
|
public class Auftraggeber : DBObject
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Shared.Domain
|
namespace SewerStammGen.Shared.Domain
|
||||||
{
|
{
|
||||||
public class DBObject
|
public class DBObject
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Shared.Domain
|
namespace SewerStammGen.Shared.Domain
|
||||||
{
|
{
|
||||||
public class Kanal : DBObject
|
public class Kanal : DBObject
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
using Shared.Enum;
|
|
||||||
|
using SewerStammGen.Shared.Enum;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Shared.Domain
|
namespace SewerStammGen.Shared.Domain
|
||||||
{
|
{
|
||||||
public class Projekt : DBObject
|
public class Projekt : DBObject
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Shared.Domain
|
namespace SewerStammGen.Shared.Domain
|
||||||
{
|
{
|
||||||
public class Schacht : DBObject
|
public class Schacht : DBObject
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Shared.Enum
|
namespace SewerStammGen.Shared.Enum
|
||||||
{
|
{
|
||||||
public enum EExportType
|
public enum EExportType
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Shared.Enum
|
namespace SewerStammGen.Shared.Enum
|
||||||
{
|
{
|
||||||
public enum EKodierungssystem
|
public enum EKodierungssystem
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
using SewerStammGen.Shared.Contracts;
|
using SewerStammGen.Shared.Contracts;
|
||||||
|
using SewerStammGen.Shared.Domain;
|
||||||
using Shared.Contracts;
|
using Shared.Contracts;
|
||||||
using Shared.Domain;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|||||||
@@ -7,6 +7,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SewerStammGen.WPF", "SewerS
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SewerStammGen.Shared", "Shared\SewerStammGen.Shared.csproj", "{3A47BD31-36C2-45C4-9609-D0D9D92A993B}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SewerStammGen.Shared", "Shared\SewerStammGen.Shared.csproj", "{3A47BD31-36C2-45C4-9609-D0D9D92A993B}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SewerStammGen.DAL", "SewerStammGen.DAL\SewerStammGen.DAL.csproj", "{7D983D7C-84C2-4FD8-B2CE-B13529036CB5}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SewerStammGen.ConsoleApp", "SewerStammGen.ConsoleApp\SewerStammGen.ConsoleApp.csproj", "{774EB800-0C5B-4047-A02D-DB4F1BA58167}"
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
@@ -21,6 +25,14 @@ Global
|
|||||||
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Release|Any CPU.Build.0 = Release|Any CPU
|
{3A47BD31-36C2-45C4-9609-D0D9D92A993B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{7D983D7C-84C2-4FD8-B2CE-B13529036CB5}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{774EB800-0C5B-4047-A02D-DB4F1BA58167}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{774EB800-0C5B-4047-A02D-DB4F1BA58167}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{774EB800-0C5B-4047-A02D-DB4F1BA58167}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{774EB800-0C5B-4047-A02D-DB4F1BA58167}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|||||||
Reference in New Issue
Block a user