57 lines
2.3 KiB
C#
57 lines
2.3 KiB
C#
using System.ComponentModel.DataAnnotations.Schema;
|
|
using System.Text.Json.Serialization;
|
|
using AyCode.Interfaces.Addresses;
|
|
using AyCode.Interfaces.Addresses.Dtos;
|
|
using AyCode.Interfaces.Profiles;
|
|
using AyCode.Interfaces.Profiles.Dtos;
|
|
using AyCode.Interfaces.ServiceProviders;
|
|
using AyCode.Interfaces.TimeStampInfo;
|
|
using AyCode.Interfaces.Users;
|
|
using AyCode.Interfaces.Users.Dtos;
|
|
|
|
namespace AyCode.Models.Users;
|
|
|
|
//public abstract class AcUserModelDtoDetailBase<TUserDtoDetail, TProfile, TCompany, TUserToCompany, TAddressDto> : AcUserModelDtoDetailBase<TUserDtoDetail, TProfile, TProfile, TCompany, TUserToCompany, TAddressDto>
|
|
// where TUserDtoDetail : class, IAcUserDtoDetailBase
|
|
// where TProfile: class, IAcProfile<TAddressDto>
|
|
// where TCompany : class, IAcCompanyBase
|
|
// where TUserToCompany : class, IAcUserToCompanyBase
|
|
// where TAddressDto : class, IAcAddressDtoBase
|
|
//{
|
|
// protected AcUserModelDtoDetailBase() : base()
|
|
// {}
|
|
|
|
// protected AcUserModelDtoDetailBase(IAcUserDtoDetailBase<TProfile, TCompany, TUserToCompany, TAddressDto> user) : base(user)
|
|
// {
|
|
// }
|
|
//}
|
|
|
|
public abstract class AcUserModelDtoDetailBase<TUserDtoDetail, TProfileDto, TCompany, TUserToCompany, TAddressDto> : AcUserModelDtoBase<TUserDtoDetail, TProfileDto, TCompany, TUserToCompany>
|
|
where TUserDtoDetail : class, IAcUserDtoDetailBase
|
|
where TProfileDto : class, IAcProfileDtoBase<TAddressDto>
|
|
where TCompany : class, IAcCompanyBase
|
|
where TUserToCompany : class, IAcUserToCompanyBase
|
|
where TAddressDto : class, IAcAddressDtoBase
|
|
{
|
|
//public TAddressDto AddressDto { get; set; }
|
|
|
|
protected AcUserModelDtoDetailBase() : base() {}
|
|
|
|
protected AcUserModelDtoDetailBase(IAcUserDtoDetailBase<TProfileDto, TCompany, TUserToCompany, TAddressDto> user) : base(user)
|
|
{
|
|
UserDto.EmailAddress = user.EmailAddress;
|
|
UserDto.EmailConfirmed = user.EmailConfirmed;
|
|
UserDto.PhoneNumber = user.PhoneNumber;
|
|
UserDto.Created = user.Created;
|
|
UserDto.Modified = user.Modified;
|
|
|
|
var address = Activator.CreateInstance<TAddressDto>();
|
|
|
|
address.Id = user.Profile.AddressId;
|
|
address.AddressText = user.Profile.Address.AddressText;
|
|
address.Latitude = user.Profile.Address.Latitude;
|
|
address.Longitude = user.Profile.Address.Longitude;
|
|
|
|
ProfileDto.Address = address;
|
|
}
|
|
} |