refactoring, fixes...
This commit is contained in:
parent
4026ebae5f
commit
f6b9cf39a5
|
|
@ -9,7 +9,7 @@ using TIAM.Entities.Profiles;
|
||||||
namespace TIAM.Entities.Products;
|
namespace TIAM.Entities.Products;
|
||||||
|
|
||||||
|
|
||||||
public abstract class ProductBase : IEntityGuid, ITimeStampInfo, IProfileRelation
|
public abstract class ProductBase : IEntityGuid, ITimeStampInfo, IProfileRelation<Profile>
|
||||||
{
|
{
|
||||||
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
|
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,10 @@
|
||||||
using AyCode.Interfaces.Profiles;
|
using AyCode.Interfaces.Addresses;
|
||||||
|
using AyCode.Interfaces.Profiles;
|
||||||
using TIAM.Entities.Addresses;
|
using TIAM.Entities.Addresses;
|
||||||
|
|
||||||
namespace TIAM.Entities.Profiles;
|
namespace TIAM.Entities.Profiles;
|
||||||
|
|
||||||
public interface IProfile : IAcProfile<Address>, IProfileDto
|
public interface IProfile<TAddress> : IAcProfile<TAddress>, IProfileDto where TAddress : class, IAddress
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
using AyCode.Interfaces.Profiles;
|
using AyCode.Interfaces.Profiles;
|
||||||
|
using AyCode.Interfaces.Profiles.Dtos;
|
||||||
|
|
||||||
namespace TIAM.Entities.Profiles;
|
namespace TIAM.Entities.Profiles;
|
||||||
|
|
||||||
public interface IProfileRelation : IAcProfileRelation<Profile>, IProfileForeignKey
|
public interface IProfileRelation<TProfile> : IAcProfileRelation<TProfile>, IProfileForeignKey where TProfile : class, IProfileDto
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
@ -3,7 +3,7 @@ using TIAM.Entities.Addresses;
|
||||||
|
|
||||||
namespace TIAM.Entities.Profiles;
|
namespace TIAM.Entities.Profiles;
|
||||||
|
|
||||||
public class Profile : AcProfile<Address>, IProfile
|
public class Profile : AcProfile<Address>, IProfile<Address>
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
using AyCode.Interfaces.ServiceProviders;
|
||||||
|
using TIAM.Entities.Users;
|
||||||
|
|
||||||
|
namespace TIAM.Entities.ServiceProviders;
|
||||||
|
|
||||||
|
public interface ITiamServiceProvider<TUser, TIUserToServiceProvider> : IAcServiceProvider<TUser, TIUserToServiceProvider>, ITiamServiceProviderBase
|
||||||
|
where TUser : class, IUserBase
|
||||||
|
where TIUserToServiceProvider : class, IUserToServiceProviderBase
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
using AyCode.Interfaces.ServiceProviders;
|
||||||
|
|
||||||
|
namespace TIAM.Entities.ServiceProviders;
|
||||||
|
|
||||||
|
public interface ITiamServiceProviderBase : IAcServiceProviderBase
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
@ -1,15 +1,17 @@
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
using AyCode.Entities.ServiceProviders;
|
using AyCode.Entities.ServiceProviders;
|
||||||
|
using AyCode.Interfaces;
|
||||||
using AyCode.Interfaces.Entities;
|
using AyCode.Interfaces.Entities;
|
||||||
using AyCode.Interfaces.TimeStampInfo;
|
using AyCode.Interfaces.TimeStampInfo;
|
||||||
|
using AyCode.Interfaces.Users;
|
||||||
using TIAM.Entities.Products;
|
using TIAM.Entities.Products;
|
||||||
using TIAM.Entities.Users;
|
using TIAM.Entities.Users;
|
||||||
|
|
||||||
namespace TIAM.Entities.ServiceProviders;
|
namespace TIAM.Entities.ServiceProviders;
|
||||||
|
|
||||||
[Table("ServiceProviders")]
|
[Table("ServiceProviders")]
|
||||||
public class TiamServiceProvider : AcServiceProvider<User, UserToServiceProvider>
|
public class TiamServiceProvider : AcServiceProvider<User, UserToServiceProvider>, ITiamServiceProvider<User, UserToServiceProvider>
|
||||||
{
|
{
|
||||||
public virtual List<Product> Products { get; } = new();
|
public virtual List<Product> Products { get; } = new();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ using TIAM.Entities.ServiceProviders;
|
||||||
|
|
||||||
namespace TIAM.Entities.Users;
|
namespace TIAM.Entities.Users;
|
||||||
|
|
||||||
public interface IUser : IAcUser<Profile, TiamServiceProvider, UserToServiceProvider, Address>, IUserDto
|
public interface IUser : IAcUser<Profile, TiamServiceProvider, UserToServiceProvider, Address>, IUserDto<Profile, TiamServiceProvider, UserToServiceProvider, Address>, IUserBase
|
||||||
{
|
{
|
||||||
public List<Product> Products { get; }
|
public List<Product> Products { get; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
using AyCode.Interfaces.Users;
|
||||||
|
|
||||||
|
namespace TIAM.Entities.Users;
|
||||||
|
|
||||||
|
public interface IUserBase : IAcUserBase
|
||||||
|
{}
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
using AyCode.Interfaces.Profiles;
|
using AyCode.Interfaces.Addresses;
|
||||||
|
using AyCode.Interfaces.Profiles;
|
||||||
|
using AyCode.Interfaces.ServiceProviders;
|
||||||
using AyCode.Interfaces.Users;
|
using AyCode.Interfaces.Users;
|
||||||
using AyCode.Interfaces.Users.Dtos;
|
using AyCode.Interfaces.Users.Dtos;
|
||||||
using TIAM.Entities.Addresses;
|
using TIAM.Entities.Addresses;
|
||||||
|
|
@ -8,5 +10,9 @@ using TIAM.Entities.ServiceProviders;
|
||||||
|
|
||||||
namespace TIAM.Entities.Users;
|
namespace TIAM.Entities.Users;
|
||||||
|
|
||||||
public interface IUserDto : IAcUserDtoBase<Profile, TiamServiceProvider, UserToServiceProvider, Address>
|
public interface IUserDto<TProfile, TServiceProvider, TUserToServiceProvider, TProfileAddress> : IAcUserDtoBase<TProfile, TServiceProvider, TUserToServiceProvider, TProfileAddress>
|
||||||
|
where TProfile : class, IProfile<TProfileAddress>
|
||||||
|
where TServiceProvider : class, ITiamServiceProviderBase
|
||||||
|
where TUserToServiceProvider : class, IUserToServiceProviderBase
|
||||||
|
where TProfileAddress : class, IAddress
|
||||||
{ }
|
{ }
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
using TIAM.Entities.ServiceProviders;
|
||||||
|
|
||||||
|
namespace TIAM.Entities.Users;
|
||||||
|
|
||||||
|
public interface IUserToServiceProvider<TUser, TServiceProvider> : IUserToServiceProviderBase
|
||||||
|
where TUser : class, IUserBase
|
||||||
|
where TServiceProvider : class, ITiamServiceProviderBase
|
||||||
|
{
|
||||||
|
public TUser User { get; set; }
|
||||||
|
public TServiceProvider ServiceProvider { get; set; }
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
using AyCode.Interfaces.Users;
|
||||||
|
|
||||||
|
namespace TIAM.Entities.Users;
|
||||||
|
|
||||||
|
public interface IUserToServiceProviderBase : IAcUserToServiceProviderBase
|
||||||
|
{}
|
||||||
|
|
@ -1,9 +1,11 @@
|
||||||
using AyCode.Entities.Users;
|
using AyCode.Entities.Users;
|
||||||
|
using AyCode.Interfaces.ServiceProviders;
|
||||||
|
using AyCode.Interfaces.Users;
|
||||||
using TIAM.Entities.ServiceProviders;
|
using TIAM.Entities.ServiceProviders;
|
||||||
|
|
||||||
namespace TIAM.Entities.Users;
|
namespace TIAM.Entities.Users;
|
||||||
|
|
||||||
public class UserToServiceProvider : AcUserToServiceProvider<User, TiamServiceProvider>
|
public class UserToServiceProvider : AcUserToServiceProvider<User, TiamServiceProvider>, IUserToServiceProvider<User, TiamServiceProvider>
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -1,11 +1,12 @@
|
||||||
using AyCode.Interfaces.Users.Dtos;
|
using AyCode.Interfaces.Users.Dtos;
|
||||||
|
using TIAM.Entities.Addresses;
|
||||||
using TIAM.Entities.Profiles;
|
using TIAM.Entities.Profiles;
|
||||||
using TIAM.Entities.ServiceProviders;
|
using TIAM.Entities.ServiceProviders;
|
||||||
using TIAM.Entities.Users;
|
using TIAM.Entities.Users;
|
||||||
|
|
||||||
namespace TIAM.Models.Dtos.Users;
|
namespace TIAM.Models.Dtos.Users;
|
||||||
|
|
||||||
public class UserDto : IUserDto
|
public class UserDto : IUserDto<Profile, TiamServiceProvider, UserToServiceProvider, Address>
|
||||||
{
|
{
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue