33 lines
1.0 KiB
C#
33 lines
1.0 KiB
C#
using Customers.Api.Contracts.Requests;
|
|
using Customers.Api.Domain;
|
|
using Customers.Api.Domain.Common;
|
|
|
|
namespace Customers.Api.Mapping;
|
|
|
|
public static class ApiContractToDomainMapper
|
|
{
|
|
public static Customer ToCustomer(this CreateCustomerRequest request)
|
|
{
|
|
return new Customer
|
|
{
|
|
Id = CustomerId.From(Guid.NewGuid()),
|
|
Email = EmailAddress.From(request.Email),
|
|
Username = Username.From(request.Username),
|
|
FullName = FullName.From(request.FullName),
|
|
DateOfBirth = DateOfBirth.From(DateOnly.FromDateTime(request.DateOfBirth))
|
|
};
|
|
}
|
|
|
|
public static Customer ToCustomer(this UpdateCustomerRequest request)
|
|
{
|
|
return new Customer
|
|
{
|
|
Id = CustomerId.From(request.Id),
|
|
Email = EmailAddress.From(request.Email),
|
|
Username = Username.From(request.Username),
|
|
FullName = FullName.From(request.FullName),
|
|
DateOfBirth = DateOfBirth.From(DateOnly.FromDateTime(request.DateOfBirth))
|
|
};
|
|
}
|
|
}
|