Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions src/AcademicTitles/AcademicTitles.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
using Avolutions.Baf.Core.Lookups.Extensions;
using Avolutions.Baf.Core.Module.Abstractions;
using Avolutions.Baf.Domain.AcademicTitles.Models;
using Microsoft.Extensions.DependencyInjection;

namespace Avolutions.Baf.Domain.AcademicTitles;

public class AcademicTitles : IFeatureModule
{
public void Register(IServiceCollection services)
{
services.AddLookup<AcademicTitle>();
}
}
4 changes: 2 additions & 2 deletions src/AcademicTitles/Models/AcademicTitle.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.AcademicTitles.Models;

public class AcademicTitle : TranslatableEntity<AcademicTitleTranslation>
public class AcademicTitle : Lookup<AcademicTitleTranslation>
{
public AcademicTitle() : base() { }
public AcademicTitle(bool createMissingTranslations) : base(createMissingTranslations) { }
Expand Down
4 changes: 2 additions & 2 deletions src/AcademicTitles/Models/AcademicTitleTranslation.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.AcademicTitles.Models;

public class AcademicTitleTranslation : TranslationEntity
public class AcademicTitleTranslation : LookupTranslation
{
}
17 changes: 0 additions & 17 deletions src/AcademicTitles/Services/AcademicTitleService.cs

This file was deleted.

6 changes: 6 additions & 0 deletions src/Articles/Configurations/ArticleConfiguration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,11 @@ public void Configure(EntityTypeBuilder<Article> builder)

builder.Property(a => a.Type)
.HasConversion<string>();

builder.Property(e => e.Price)
.HasPrecision(18, 2);

builder.Property(e => e.TaxRate)
.HasPrecision(5, 2);
}
}
11 changes: 5 additions & 6 deletions src/Articles/Models/Article.cs
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations.Schema;
using Avolutions.Baf.Core.Entity.Abstractions;
using Avolutions.Baf.Core.Entity.Attributes;
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Domain.QuantityUnits.Models;
using Microsoft.EntityFrameworkCore;

namespace Avolutions.Baf.Domain.Articles.Models;

public class Article : EntityBase
public class Article : EntityBase, INavigable
{
public ArticleType Type { get; set; } = ArticleType.Product;
[EntityNavigationKey]
public string ArticleNo { get; set; } = string.Empty;
public string Title { get; set; } = string.Empty;
public string? Description { get; set; }
public decimal Price { get; set; }
[Range(0, 100)]
[Precision(5, 2)]
public decimal TaxRate { get; set; }
public Guid QuantityUnitId { get; set; }
public QuantityUnit QuantityUnit { get; set; } = null!;
Expand Down
17 changes: 3 additions & 14 deletions src/Articles/Services/ArticleService.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
using Avolutions.Baf.Core.Entity.Abstractions;
using Avolutions.Baf.Core.Entity.Services;
using Avolutions.Baf.Core.Entity.Services;
using Avolutions.Baf.Core.NumberSequences.Services;
using Avolutions.Baf.Domain.Articles.Models;
using Avolutions.Baf.Domain.QuantityUnits.Models;
using FluentValidation;
using Microsoft.EntityFrameworkCore;

Expand All @@ -11,16 +9,13 @@ namespace Avolutions.Baf.Domain.Articles.Services;
public class ArticleService : EntityService<Article>
{
private readonly INumberSequenceService<ArticleNoSequence> _numberSequence;
private readonly ITranslatableEntityService<QuantityUnit, QuantityUnitTranslation> _quantityUnitService;

public ArticleService(
DbContext context,
IValidator<Article>? validator,
INumberSequenceService<ArticleNoSequence> numberSequence,
ITranslatableEntityService<QuantityUnit, QuantityUnitTranslation> quantityUnitService) : base(context, validator)
INumberSequenceService<ArticleNoSequence> numberSequence) : base(context, validator)
{
_numberSequence = numberSequence;
_quantityUnitService = quantityUnitService;
}

public override async Task<Article> CreateAsync(Article article, CancellationToken cancellationToken = default)
Expand All @@ -30,16 +25,10 @@ public override async Task<Article> CreateAsync(Article article, CancellationTok
article.ArticleNo = await _numberSequence.GetNextAsync();
}

if (article.QuantityUnitId == Guid.Empty)
{
var defaultQuantityUnit = await _quantityUnitService.GetDefaultAsync(cancellationToken);
article.QuantityUnitId = defaultQuantityUnit.Id;
}

return await base.CreateAsync(article, cancellationToken);
}

public async Task<Article> GetByArticleNo(string articleNo, CancellationToken cancellationToken = default)
public async Task<Article> GetByArticleNoAsync(string articleNo, CancellationToken cancellationToken = default)
{
var article = await DbSet.AsNoTracking().SingleOrDefaultAsync(l => l.ArticleNo == articleNo, cancellationToken);
if (article == null)
Expand Down
4 changes: 2 additions & 2 deletions src/Avolutions.Baf.Domain.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<Nullable>enable</Nullable>

<PackageId>Avolutions.Baf.Domain</PackageId>
<Version>0.16.0</Version>
<Version>0.17.0</Version>

<Title>Avolutions BAF Domain</Title>
<Company>Avolutions</Company>
Expand All @@ -29,7 +29,7 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="Avolutions.Baf.Core" Version="0.16.0" />
<PackageReference Include="Avolutions.Baf.Core" Version="0.17.0" />
<PackageReference Include="FluentValidation" Version="12.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="9.0.8" />
</ItemGroup>
Expand Down
7 changes: 2 additions & 5 deletions src/Countries/CountriesModule.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using Avolutions.Baf.Core.Entity.Abstractions;
using Avolutions.Baf.Core.Lookups.Extensions;
using Avolutions.Baf.Core.Module.Abstractions;
using Avolutions.Baf.Domain.Countries.Models;
using Avolutions.Baf.Domain.Countries.Services;
using Microsoft.Extensions.DependencyInjection;

namespace Avolutions.Baf.Domain.Countries;
Expand All @@ -10,8 +9,6 @@ public class CountriesModule : IFeatureModule
{
public void Register(IServiceCollection services)
{
services.AddScoped<CountryService>();
services.AddScoped<IEntityService<Country>, CountryService>();
services.AddScoped<ITranslatableEntityService<Country, CountryTranslation>, CountryService>();
services.AddLookup<Country>();
}
}
4 changes: 2 additions & 2 deletions src/Countries/Models/Country.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.Countries.Models;

public class Country : TranslatableEntity<CountryTranslation>
public class Country : Lookup<CountryTranslation>
{
public Country() : base() { }
public Country(bool createMissingTranslations) : base(createMissingTranslations) { }
Expand Down
4 changes: 2 additions & 2 deletions src/Countries/Models/CountryTranslation.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.Countries.Models;

public class CountryTranslation : TranslationEntity
public class CountryTranslation : LookupTranslation
{

}
17 changes: 0 additions & 17 deletions src/Countries/Services/CountryService.cs

This file was deleted.

9 changes: 9 additions & 0 deletions src/Persons/Extensions/PersonExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,13 @@ public static string FullName(this IPerson person)
{
return $"{person.AcademicTitle?.Value} {person.FirstName} {person.LastName}".Trim();
}

public static string LetterSalutation(this IPerson person)
{
var salutation = person.Salutation?.LetterSalutation;
var title = person.AcademicTitle?.Value;
var lastName = person.LastName;

return !string.IsNullOrWhiteSpace(title) ? $"{salutation} {title} {lastName}".Trim() : $"{salutation} {lastName}".Trim();
}
}
6 changes: 3 additions & 3 deletions src/QuantityUnits/Models/QuantityUnit.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
using System.ComponentModel.DataAnnotations.Schema;
using Avolutions.Baf.Core.Entity.Extensions;
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Extensions;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.QuantityUnits.Models;

public class QuantityUnit : TranslatableEntity<QuantityUnitTranslation>
public class QuantityUnit : Lookup<QuantityUnitTranslation>
{
public QuantityUnit() : base() { }

Expand Down
4 changes: 2 additions & 2 deletions src/QuantityUnits/Models/QuantityUnitTranslation.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.QuantityUnits.Models;

public class QuantityUnitTranslation : TranslationEntity
public class QuantityUnitTranslation : LookupTranslation
{
public string Abbreviation { get; set; } = string.Empty;
}
7 changes: 2 additions & 5 deletions src/QuantityUnits/QuantityUnitsModule.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using Avolutions.Baf.Core.Entity.Abstractions;
using Avolutions.Baf.Core.Lookups.Extensions;
using Avolutions.Baf.Core.Module.Abstractions;
using Avolutions.Baf.Domain.QuantityUnits.Models;
using Avolutions.Baf.Domain.QuantityUnits.Services;
using Microsoft.Extensions.DependencyInjection;

namespace Avolutions.Baf.Domain.QuantityUnits;
Expand All @@ -10,8 +9,6 @@ public class QuantityUnitsModule : IFeatureModule
{
public void Register(IServiceCollection services)
{
services.AddScoped<QuantityUnitService>();
services.AddScoped<IEntityService<QuantityUnit>, QuantityUnitService>();
services.AddScoped<ITranslatableEntityService<QuantityUnit, QuantityUnitTranslation>, QuantityUnitService>();
services.AddLookup<QuantityUnit>();
}
}
17 changes: 0 additions & 17 deletions src/QuantityUnits/Services/QuantityUnitService.cs

This file was deleted.

6 changes: 3 additions & 3 deletions src/Salutations/Models/Salutation.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
using System.ComponentModel.DataAnnotations.Schema;
using Avolutions.Baf.Core.Entity.Extensions;
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Extensions;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.Salutations.Models;

public class Salutation : TranslatableEntity<SalutationTranslation>
public class Salutation : Lookup<SalutationTranslation>
{
public Salutation() : base() { }
public Salutation(bool createMissingTranslations) : base(createMissingTranslations) { }
Expand Down
4 changes: 2 additions & 2 deletions src/Salutations/Models/SalutationTranslation.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
using Avolutions.Baf.Core.Entity.Models;
using Avolutions.Baf.Core.Lookups.Models;

namespace Avolutions.Baf.Domain.Salutations.Models;

public class SalutationTranslation : TranslationEntity
public class SalutationTranslation : LookupTranslation
{
public string LetterSalutation { get; set; } = string.Empty;
}
14 changes: 14 additions & 0 deletions src/Salutations/SalutationModule.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
using Avolutions.Baf.Core.Lookups.Extensions;
using Avolutions.Baf.Core.Module.Abstractions;
using Avolutions.Baf.Domain.Salutations.Models;
using Microsoft.Extensions.DependencyInjection;

namespace Avolutions.Baf.Domain.Salutations;

public class SalutationModule : IFeatureModule
{
public void Register(IServiceCollection services)
{
services.AddLookup<Salutation>();
}
}
17 changes: 0 additions & 17 deletions src/Salutations/Services/SalutationService.cs

This file was deleted.