refaktorisieren: Ersetzen Sie Application.Abstraction durch Abstraction.Application

This commit is contained in:
Developer 02 2025-05-27 18:42:36 +02:00
parent fd698e7a5d
commit 1157ea032b
11 changed files with 74 additions and 56 deletions

View File

@ -36,4 +36,22 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
<PackageReference Include="DigitalData.Core.Abstractions.Security">
<Version>1.0.0</Version>
</PackageReference>
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="DigitalData.Core.Abstractions.Security">
<Version>1.0.0</Version>
</PackageReference>
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference Include="DigitalData.Core.Abstractions.Security">
<Version>1.0.0</Version>
</PackageReference>
</ItemGroup>
</Project> </Project>

View File

@ -1,8 +1,9 @@
using DigitalData.Core.Abstractions.Infrastructure; using DigitalData.Core.Abstraction.Application.Repository;
using DigitalData.EmailProfilerDispatcher.Abstraction.Entities; using DigitalData.EmailProfilerDispatcher.Abstraction.Entities;
namespace DigitalData.EmailProfilerDispatcher.Abstraction.Contracts; namespace DigitalData.EmailProfilerDispatcher.Abstraction.Contracts;
[Obsolete("Use IRepository")]
public interface IEmailOutRepository : ICRUDRepository<EmailOut, int> public interface IEmailOutRepository : ICRUDRepository<EmailOut, int>
{ {
} }

View File

@ -1,10 +1,11 @@
using DigitalData.Core.Abstractions.Application; using DigitalData.Core.Abstraction.Application;
using DigitalData.Core.DTO; using DigitalData.Core.Abstraction.Application.DTO;
using DigitalData.EmailProfilerDispatcher.Abstraction.DTOs.EmailOut; using DigitalData.EmailProfilerDispatcher.Abstraction.DTOs.EmailOut;
using DigitalData.EmailProfilerDispatcher.Abstraction.Entities; using DigitalData.EmailProfilerDispatcher.Abstraction.Entities;
namespace DigitalData.EmailProfilerDispatcher.Abstraction.Contracts; namespace DigitalData.EmailProfilerDispatcher.Abstraction.Contracts;
[Obsolete("Use MediatR")]
public interface IEmailOutService : ICRUDService<EmailOutCreateDto, EmailOutDto, EmailOut, int> public interface IEmailOutService : ICRUDService<EmailOutCreateDto, EmailOutDto, EmailOut, int>
{ {
Task<DataResult<int>> CreateWithTemplateAsync(EmailOutCreateDto createDto, params object[] models); Task<DataResult<int>> CreateWithTemplateAsync(EmailOutCreateDto createDto, params object[] models);

View File

@ -1,27 +1,24 @@
using DigitalData.Core.Abstractions; namespace DigitalData.EmailProfilerDispatcher.Abstraction.DTOs.EmailOut;
namespace DigitalData.EmailProfilerDispatcher.Abstraction.DTOs.EmailOut public record EmailOutDto(
{ int Id,
public record EmailOutDto( int ReminderTypeId,
int Id, int SendingProfile,
int ReminderTypeId, int ReferenceId,
int SendingProfile, string? ReferenceString,
int ReferenceId, int? EntityId,
string? ReferenceString, int WfId,
int? EntityId, string? WfReference,
int WfId, string EmailAddress,
string? WfReference, string EmailSubj,
string EmailAddress, string EmailBody,
string EmailSubj, string? EmailAttmt1,
string EmailBody, DateTime? EmailSent,
string? EmailAttmt1, string? Comment,
DateTime? EmailSent, string AddedWho,
string? Comment, DateTime? AddedWhen,
string AddedWho, string? ChangedWho,
DateTime? AddedWhen, DateTime? ChangedWhen,
string? ChangedWho, DateTime? ErrorTimestamp,
DateTime? ChangedWhen, string? ErrorMsg
DateTime? ErrorTimestamp, );
string? ErrorMsg
) : IUnique<int>;
}

View File

@ -12,9 +12,9 @@
<PackageIcon>icon.png</PackageIcon> <PackageIcon>icon.png</PackageIcon>
<RepositoryUrl>http://git.dd:3000/AppStd/EmailProfilerDispatcher.git</RepositoryUrl> <RepositoryUrl>http://git.dd:3000/AppStd/EmailProfilerDispatcher.git</RepositoryUrl>
<PackageTags>digital data email dispatcher abstraction</PackageTags> <PackageTags>digital data email dispatcher abstraction</PackageTags>
<Version>3.0.0</Version> <Version>3.1.0</Version>
<FileVersion>3.0.0</FileVersion> <FileVersion>3.1.0</FileVersion>
<AssemblyVersion>3.0.0</AssemblyVersion> <AssemblyVersion>3.1.0</AssemblyVersion>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
@ -25,7 +25,8 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="DigitalData.Core.Application" Version="3.2.0" /> <PackageReference Include="DigitalData.Core.Abstractions.Security" Version="1.0.0" />
<PackageReference Include="DigitalData.Core.Abstraction.Application" Version="1.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@ -1,12 +1,11 @@
using DigitalData.Core.Abstractions; using System.ComponentModel;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace DigitalData.EmailProfilerDispatcher.Abstraction.Entities namespace DigitalData.EmailProfilerDispatcher.Abstraction.Entities
{ {
[Table("TBEMLP_EMAIL_OUT")] [Table("TBEMLP_EMAIL_OUT")]
public class EmailOut : IUnique<int> public class EmailOut
{ {
[Key] [Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)] [DatabaseGenerated(DatabaseGeneratedOption.Identity)]

View File

@ -42,8 +42,8 @@ Global
{DF202B1D-6C6F-4354-9B73-20F03486D020}.Debug|Any CPU.Build.0 = Release|Any CPU {DF202B1D-6C6F-4354-9B73-20F03486D020}.Debug|Any CPU.Build.0 = Release|Any CPU
{DF202B1D-6C6F-4354-9B73-20F03486D020}.Release|Any CPU.ActiveCfg = Release|Any CPU {DF202B1D-6C6F-4354-9B73-20F03486D020}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DF202B1D-6C6F-4354-9B73-20F03486D020}.Release|Any CPU.Build.0 = Release|Any CPU {DF202B1D-6C6F-4354-9B73-20F03486D020}.Release|Any CPU.Build.0 = Release|Any CPU
{16785881-75BA-4721-9A0C-B469FAA95D95}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {16785881-75BA-4721-9A0C-B469FAA95D95}.Debug|Any CPU.ActiveCfg = Release|Any CPU
{16785881-75BA-4721-9A0C-B469FAA95D95}.Debug|Any CPU.Build.0 = Debug|Any CPU {16785881-75BA-4721-9A0C-B469FAA95D95}.Debug|Any CPU.Build.0 = Release|Any CPU
{16785881-75BA-4721-9A0C-B469FAA95D95}.Release|Any CPU.ActiveCfg = Release|Any CPU {16785881-75BA-4721-9A0C-B469FAA95D95}.Release|Any CPU.ActiveCfg = Release|Any CPU
{16785881-75BA-4721-9A0C-B469FAA95D95}.Release|Any CPU.Build.0 = Release|Any CPU {16785881-75BA-4721-9A0C-B469FAA95D95}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection

View File

@ -5,7 +5,7 @@
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
<PackageId>DigitalData.EmailProfilerDispatcher</PackageId> <PackageId>DigitalData.EmailProfilerDispatcher</PackageId>
<Version>3.0.0</Version> <Version>3.1.0</Version>
<Company>Digital Data GmbH</Company> <Company>Digital Data GmbH</Company>
<Copyright>Copyright 2024</Copyright> <Copyright>Copyright 2024</Copyright>
<PackageIcon>icon.png</PackageIcon> <PackageIcon>icon.png</PackageIcon>
@ -13,8 +13,8 @@
<Description>DigitalData.EmailProfilerDispatcher enables adding data to the Email Profiler's SQL tables for systematic and batch email dispatching. It also supports dynamic and automatic template filling using attributes, allowing object property values to populate email templates.</Description> <Description>DigitalData.EmailProfilerDispatcher enables adding data to the Email Profiler's SQL tables for systematic and batch email dispatching. It also supports dynamic and automatic template filling using attributes, allowing object property values to populate email templates.</Description>
<Authors>Digital Data GmbH</Authors> <Authors>Digital Data GmbH</Authors>
<RepositoryUrl>http://git.dd:3000/AppStd/EmailProfilerDispatcher.git</RepositoryUrl> <RepositoryUrl>http://git.dd:3000/AppStd/EmailProfilerDispatcher.git</RepositoryUrl>
<AssemblyVersion>3.0.0</AssemblyVersion> <AssemblyVersion>3.1.0</AssemblyVersion>
<FileVersion>3.0.0</FileVersion> <FileVersion>3.1.0</FileVersion>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
@ -25,9 +25,8 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="DigitalData.Core.Abstractions" Version="3.4.0" /> <PackageReference Include="DigitalData.Core.Application" Version="3.3.4" />
<PackageReference Include="DigitalData.Core.Application" Version="3.2.0" /> <PackageReference Include="DigitalData.Core.Infrastructure" Version="2.1.1" />
<PackageReference Include="DigitalData.Core.Infrastructure" Version="2.0.0" />
<PackageReference Include="Microsoft.Extensions.Localization" Version="7.0.19" /> <PackageReference Include="Microsoft.Extensions.Localization" Version="7.0.19" />
<PackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="7.0.19" /> <PackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="7.0.19" />
</ItemGroup> </ItemGroup>

View File

@ -1,15 +1,16 @@
using DigitalData.Core.Infrastructure; using DigitalData.Core.Abstraction.Application.Repository;
using DigitalData.Core.Infrastructure;
using DigitalData.EmailProfilerDispatcher.Abstraction.Contracts; using DigitalData.EmailProfilerDispatcher.Abstraction.Contracts;
using DigitalData.EmailProfilerDispatcher.Abstraction.Entities; using DigitalData.EmailProfilerDispatcher.Abstraction.Entities;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
namespace DigitalData.EmailProfilerDispatcher.Repositories namespace DigitalData.EmailProfilerDispatcher.Repositories;
[Obsolete("Use IRepository")]
public class EmailOutRepository<TDbContext> : CRUDRepository<EmailOut, int, TDbContext>, IEmailOutRepository
where TDbContext : DbContext, IMailDbContext
{ {
public class EmailOutRepository<TDbContext> : CRUDRepository<EmailOut, int, TDbContext>, IEmailOutRepository public EmailOutRepository(TDbContext dbContext) : base(dbContext, dbContext.EMailOuts)
where TDbContext : DbContext, IMailDbContext
{ {
public EmailOutRepository(TDbContext dbContext) : base(dbContext, dbContext.EMailOuts)
{
}
} }
} }

View File

@ -1,6 +1,6 @@
using AutoMapper; using AutoMapper;
using DigitalData.Core.Application; using DigitalData.Core.Application;
using DigitalData.Core.DTO; using DigitalData.Core.Abstraction.Application.DTO;
using DigitalData.EmailProfilerDispatcher.Abstraction.Contracts; using DigitalData.EmailProfilerDispatcher.Abstraction.Contracts;
using DigitalData.EmailProfilerDispatcher.Abstraction.DTOs.EmailOut; using DigitalData.EmailProfilerDispatcher.Abstraction.DTOs.EmailOut;
using DigitalData.EmailProfilerDispatcher.Abstraction.Entities; using DigitalData.EmailProfilerDispatcher.Abstraction.Entities;
@ -18,7 +18,7 @@ namespace DigitalData.EmailProfilerDispatcher.Abstraction.Services;
createDto.EmailSubj = createDto.EmailSubj.FillTemplate(models); createDto.EmailSubj = createDto.EmailSubj.FillTemplate(models);
createDto.EmailBody = createDto.EmailBody.FillTemplate(models); createDto.EmailBody = createDto.EmailBody.FillTemplate(models);
return await base.CreateAsync(createDto); return await base.CreateAsync(createDto).ThenAsync(email => Result.Success(email.Id), (msg, ntc) => Result.Fail<int>().Message(msg).Notice(ntc));
} }
public async Task<DataResult<int>> CreateWithTemplateAsync(EmailOutCreateDto createDto, Dictionary<string, string> placeholders, params object[] models) public async Task<DataResult<int>> CreateWithTemplateAsync(EmailOutCreateDto createDto, Dictionary<string, string> placeholders, params object[] models)

View File

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup> <PropertyGroup>
<TargetFramework>net7.0</TargetFramework> <TargetFramework>net7.0</TargetFramework>
@ -11,7 +11,8 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="coverlet.collector" Version="3.2.0" /> <PackageReference Include="coverlet.collector" Version="3.2.0" />
<PackageReference Include="DigitalData.Core.Application" Version="3.3.1" /> <PackageReference Include="DigitalData.Core.Application" Version="3.3.4" />
<PackageReference Include="DigitalData.Core.Abstraction.Application" Version="1.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.7.1" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.7.1" />
<PackageReference Include="NUnit" Version="3.13.3" /> <PackageReference Include="NUnit" Version="3.13.3" />
<PackageReference Include="NUnit.Analyzers" Version="3.6.1" /> <PackageReference Include="NUnit.Analyzers" Version="3.6.1" />