Compare commits
2 Commits
fb0fcda84c
...
c8bf31ab50
Author | SHA1 | Date | |
---|---|---|---|
c8bf31ab50 | |||
2d188d7657 |
@ -14,8 +14,9 @@ public class RhSolutionsContext : DbContext
|
|||||||
builder.Entity<Product>()
|
builder.Entity<Product>()
|
||||||
.Property(e => e.ProductSku)
|
.Property(e => e.ProductSku)
|
||||||
.HasConversion(v => v.ToString(), v => new ProductSku(v));
|
.HasConversion(v => v.ToString(), v => new ProductSku(v));
|
||||||
// builder.Entity<Product>()
|
builder.Entity<Product>()
|
||||||
// .Property(e => e.DeprecatedSkus)
|
.PrimitiveCollection(e => e.DeprecatedSkus)
|
||||||
// .HasPostgresArrayConversion<ProductSku, string>(v => v.ToString(), v => new ProductSku(v));
|
.ElementType()
|
||||||
|
.HasConversion(typeof(SkuConverter));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
11
RhSolutions.Api/Models/SkuConverter.cs
Normal file
11
RhSolutions.Api/Models/SkuConverter.cs
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||||
|
|
||||||
|
namespace RhSolutions.Models;
|
||||||
|
|
||||||
|
internal class SkuConverter : ValueConverter<ProductSku, string>
|
||||||
|
{
|
||||||
|
public SkuConverter()
|
||||||
|
: base(x => x.ToString(), x => new ProductSku(x))
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
@ -29,36 +29,36 @@ builder.Services.AddScoped<IPricelistParser, ClosedXMLParser>()
|
|||||||
.AddScoped<IProductTypePredicter, ProductTypePredicter>();
|
.AddScoped<IProductTypePredicter, ProductTypePredicter>();
|
||||||
builder.Services.AddControllers();
|
builder.Services.AddControllers();
|
||||||
|
|
||||||
builder.Services.AddKeyedScoped<IProductQueryModifier, Sleeve>("Монтажная гильза")
|
builder.Services.AddKeyedTransient<IProductQueryModifier, Sleeve>("Монтажная гильза")
|
||||||
.AddKeyedScoped<IProductQueryModifier, SupportingClip>("Желоб")
|
.AddKeyedTransient<IProductQueryModifier, SupportingClip>("Желоб")
|
||||||
.AddKeyedScoped<IProductQueryModifier, TPiece>("Тройник RAUTITAN")
|
.AddKeyedTransient<IProductQueryModifier, TPiece>("Тройник RAUTITAN")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ThreadTPieceExternal>("Тройник RAUTITAN резьбовой наружный")
|
.AddKeyedTransient<IProductQueryModifier, ThreadTPieceExternal>("Тройник RAUTITAN резьбовой наружный")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ThreadTPieceInternal>("Тройник RAUTITAN резьбовой внутренний")
|
.AddKeyedTransient<IProductQueryModifier, ThreadTPieceInternal>("Тройник RAUTITAN резьбовой внутренний")
|
||||||
.AddKeyedScoped<IProductQueryModifier, AdapterExternal>("Переходник на наружную резьбу")
|
.AddKeyedTransient<IProductQueryModifier, AdapterExternal>("Переходник на наружную резьбу")
|
||||||
.AddKeyedScoped<IProductQueryModifier, AdapterInternal>("Переходник на внутреннюю резьбу")
|
.AddKeyedTransient<IProductQueryModifier, AdapterInternal>("Переходник на внутреннюю резьбу")
|
||||||
.AddKeyedScoped<IProductQueryModifier, AdapterScrewcap>("Переходник с накидной гайкой")
|
.AddKeyedTransient<IProductQueryModifier, AdapterScrewcap>("Переходник с накидной гайкой")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ThreadElbowExternal>("Угольник с наружной резьбой")
|
.AddKeyedTransient<IProductQueryModifier, ThreadElbowExternal>("Угольник с наружной резьбой")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ThreadElbowInternal>("Угольник с внутренней резьбой")
|
.AddKeyedTransient<IProductQueryModifier, ThreadElbowInternal>("Угольник с внутренней резьбой")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ThreadElbowWallExternal>("Угольник настенный наружный")
|
.AddKeyedTransient<IProductQueryModifier, ThreadElbowWallExternal>("Угольник настенный наружный")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ThreadElbowWallInternal>("Угольник настенный внутренний")
|
.AddKeyedTransient<IProductQueryModifier, ThreadElbowWallInternal>("Угольник настенный внутренний")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ThreadElbowDoubleWallInternal>("Проточный настенный угольник")
|
.AddKeyedTransient<IProductQueryModifier, ThreadElbowDoubleWallInternal>("Проточный настенный угольник")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ScrewcapElbow>("Угольник с накидной гайкой")
|
.AddKeyedTransient<IProductQueryModifier, ScrewcapElbow>("Угольник с накидной гайкой")
|
||||||
.AddKeyedScoped<IProductQueryModifier, Coupling>("Муфта соединительная")
|
.AddKeyedTransient<IProductQueryModifier, Coupling>("Муфта соединительная")
|
||||||
.AddKeyedScoped<IProductQueryModifier, Elbow>("Угольник RAUTITAN")
|
.AddKeyedTransient<IProductQueryModifier, Elbow>("Угольник RAUTITAN")
|
||||||
.AddKeyedScoped<IProductQueryModifier, BendFormerHeating>("Фиксатор поворота отопление")
|
.AddKeyedTransient<IProductQueryModifier, BendFormerHeating>("Фиксатор поворота отопление")
|
||||||
.AddKeyedScoped<IProductQueryModifier, BendFormerSanitary>("Фиксатор поворота водоснабжение")
|
.AddKeyedTransient<IProductQueryModifier, BendFormerSanitary>("Фиксатор поворота водоснабжение")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ConnectionBend>("Трубка Г-образная")
|
.AddKeyedTransient<IProductQueryModifier, ConnectionBend>("Трубка Г-образная")
|
||||||
.AddKeyedScoped<IProductQueryModifier, ConnectionTee>("Трубка Т-образная")
|
.AddKeyedTransient<IProductQueryModifier, ConnectionTee>("Трубка Т-образная")
|
||||||
.AddKeyedScoped<IProductQueryModifier, EuroconeFlex>("Резьбозажимное flex")
|
.AddKeyedTransient<IProductQueryModifier, EuroconeFlex>("Резьбозажимное flex")
|
||||||
.AddKeyedScoped<IProductQueryModifier, EuroconeStabil>("Резьбозажимное stabil")
|
.AddKeyedTransient<IProductQueryModifier, EuroconeStabil>("Резьбозажимное stabil")
|
||||||
.AddKeyedScoped<IProductQueryModifier, EuroconeAdapter>("Переходник на евроконус")
|
.AddKeyedTransient<IProductQueryModifier, EuroconeAdapter>("Переходник на евроконус")
|
||||||
.AddKeyedScoped<IProductQueryModifier, EuroconeConnectionBend>("Резьбозажимное для трубки")
|
.AddKeyedTransient<IProductQueryModifier, EuroconeConnectionBend>("Резьбозажимное для трубки")
|
||||||
.AddKeyedScoped<IProductQueryModifier, Nippel>("Ниппель")
|
.AddKeyedTransient<IProductQueryModifier, Nippel>("Ниппель")
|
||||||
.AddKeyedScoped<IProductQueryModifier, DummyPlug>("Заглушка труб RAUTITAN")
|
.AddKeyedTransient<IProductQueryModifier, DummyPlug>("Заглушка труб RAUTITAN")
|
||||||
.AddKeyedScoped<IProductQueryModifier, FlexPipe>("Flex")
|
.AddKeyedTransient<IProductQueryModifier, FlexPipe>("Flex")
|
||||||
.AddKeyedScoped<IProductQueryModifier, PinkPipe>("Pink")
|
.AddKeyedTransient<IProductQueryModifier, PinkPipe>("Pink")
|
||||||
.AddKeyedScoped<IProductQueryModifier, StabilPipe>("Stabil")
|
.AddKeyedTransient<IProductQueryModifier, StabilPipe>("Stabil")
|
||||||
.AddKeyedScoped<IProductQueryModifier, BlackPipe>("Black");
|
.AddKeyedTransient<IProductQueryModifier, BlackPipe>("Black");
|
||||||
|
|
||||||
var app = builder.Build();
|
var app = builder.Build();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user