improvements, fixes, etc...
This commit is contained in:
parent
226b50129c
commit
e7456a42bc
|
|
@ -23,7 +23,10 @@ namespace AyCode.Entities.Profiles
|
|||
public Guid Id { get; set; }
|
||||
public Guid? UserMediaId { get; set; }
|
||||
|
||||
public string? Name { get; set; }
|
||||
[Required]
|
||||
public string Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
|
||||
public string? ThumbnailUrl { get ; set; }
|
||||
|
||||
public DateTime Created { get; set; }
|
||||
|
|
|
|||
|
|
@ -14,10 +14,15 @@ namespace AyCode.Entities.ServiceProviders
|
|||
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
public Guid Id { get; set; }
|
||||
|
||||
[Required]
|
||||
public Guid OwnerId { get; set; }
|
||||
|
||||
[Required]
|
||||
public string Name { get; set; }
|
||||
|
||||
public double? CommissionPercent { get; set; }
|
||||
|
||||
[Required]
|
||||
public Guid AffiliateId { get; set; }
|
||||
public Guid? ReferralId { get; set; }
|
||||
|
||||
|
|
@ -40,13 +45,14 @@ namespace AyCode.Entities.ServiceProviders
|
|||
{
|
||||
}
|
||||
|
||||
protected AcServiceProvider(Guid id, string name, Guid ownerId, Guid affiliateId) : this()
|
||||
protected AcServiceProvider(Guid id, string name, Guid ownerId, Guid affiliateId, double? commissionPercent = null) : this()
|
||||
{
|
||||
Id = id;
|
||||
Name = name;
|
||||
OwnerId = ownerId;
|
||||
|
||||
AffiliateId = affiliateId;
|
||||
CommissionPercent = commissionPercent;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,22 +16,28 @@ using AyCode.Interfaces.ServiceProviders;
|
|||
namespace AyCode.Entities.Users
|
||||
{
|
||||
[Table("Users")]
|
||||
public abstract class AcUser<TProfile, TServiceProvider, TUserToServiceProvider> : IAcUser<TProfile, TServiceProvider, TUserToServiceProvider>
|
||||
where TProfile : class, IAcProfile
|
||||
public abstract class AcUser<TProfile, TServiceProvider, TUserToServiceProvider>() : IAcUser<TProfile, TServiceProvider, TUserToServiceProvider>
|
||||
where TProfile : class, IAcProfile
|
||||
where TServiceProvider : class, IAcServiceProviderBase
|
||||
where TUserToServiceProvider : class, IAcUserToServiceProviderBase
|
||||
{
|
||||
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
public Guid Id { get; set; }
|
||||
[Column("Email")]
|
||||
|
||||
[Required, Column("Email")]
|
||||
public string EmailAddress { get; set; }
|
||||
//public string NormalizedEmail { get; set; }
|
||||
public string PhoneNumber { get; set; }
|
||||
public string Password { get; set; }
|
||||
public string? RefreshToken { get; set; }
|
||||
|
||||
|
||||
public bool EmailConfirmed { get; set; }
|
||||
|
||||
[Required]
|
||||
public Guid AffiliateId { get; set; } = Guid.NewGuid();
|
||||
public Guid? RefferalId { get; set; }
|
||||
|
||||
[Required]
|
||||
public Guid ProfileId { get; set; }
|
||||
[ForeignKey(nameof(ProfileId))]
|
||||
public virtual TProfile Profile { get; set; }
|
||||
|
|
@ -44,8 +50,6 @@ namespace AyCode.Entities.Users
|
|||
public DateTime Modified { get; set; }
|
||||
|
||||
|
||||
protected AcUser() { }
|
||||
|
||||
protected AcUser(string email, string password) : this(Guid.NewGuid(), email, password) { }
|
||||
|
||||
protected AcUser(Guid id, string email, string password) : this()
|
||||
|
|
|
|||
|
|
@ -5,5 +5,6 @@ namespace AyCode.Interfaces.Profiles.Dtos;
|
|||
|
||||
public interface IAcProfileDtoBase : IEntityGuid, IMediaInfo
|
||||
{
|
||||
string? Name { get; set; }
|
||||
string Name { get; set; }
|
||||
string? Description { get; set; }
|
||||
}
|
||||
|
|
@ -3,6 +3,7 @@ using AyCode.Interfaces.Entities;
|
|||
using AyCode.Interfaces.Profiles;
|
||||
using AyCode.Interfaces.TimeStampInfo;
|
||||
using System;
|
||||
using System.Dynamic;
|
||||
|
||||
namespace AyCode.Interfaces.ServiceProviders;
|
||||
|
||||
|
|
@ -10,6 +11,8 @@ public interface IAcServiceProviderBase : IEntityGuid, ITimeStampInfo, IOwnerId
|
|||
{
|
||||
string Name { get; set; }
|
||||
|
||||
double? CommissionPercent { get; set; }
|
||||
|
||||
Guid AffiliateId { get; set; }
|
||||
Guid? ReferralId { get; set; }
|
||||
}
|
||||
|
|
@ -6,5 +6,5 @@ namespace AyCode.Interfaces.Users.Dtos;
|
|||
|
||||
public interface IAcUserDtoMinBase<TProfile> : IEntityGuid, IAcProfileRelation<TProfile> where TProfile : class, IAcProfile
|
||||
{
|
||||
|
||||
public Guid AffiliateId { get; set; }
|
||||
}
|
||||
|
|
@ -9,4 +9,6 @@ public interface IAcUserBase : IEntityGuid, IAcProfileForeignKey, IEmailAddress,
|
|||
{
|
||||
public string PhoneNumber { get; set; }
|
||||
public string? RefreshToken { get; set; }
|
||||
|
||||
public Guid? RefferalId { get; set; }
|
||||
}
|
||||
|
|
@ -22,10 +22,12 @@ public abstract class AcUserModelDtoBase<TUserDto, TProfile, TProfileDto, TServi
|
|||
{
|
||||
if (user.ServiceProviders.Count == 0) return;
|
||||
|
||||
UserDto.AffiliateId = user.AffiliateId;
|
||||
|
||||
//így proxy error lesz... - J.
|
||||
//ServiceProviders = new List<TServiceProvider>(user.ServiceProviders);
|
||||
//UserToServiceProviders = new List<TUserToServiceProvider>(user.UserToServiceProviders);
|
||||
|
||||
|
||||
ServiceProviders = new List<TServiceProvider>(user.ServiceProviders.Count);
|
||||
UserToServiceProviders = new List<TUserToServiceProvider>(user.UserToServiceProviders.Count);
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ public abstract class AcUserModelDtoMinBase<TUserDtoMin, TProfile, TProfileDto>
|
|||
|
||||
UserDto = Activator.CreateInstance<TUserDtoMin>();
|
||||
UserDto.Id = user.Id;
|
||||
UserDto.AffiliateId = user.AffiliateId;
|
||||
|
||||
Profile = Activator.CreateInstance<TProfileDto>();
|
||||
Profile.Id = user.Profile.Id;
|
||||
|
|
|
|||
Loading…
Reference in New Issue