...
This commit is contained in:
parent
da72c7ca4a
commit
243ab13abb
|
|
@ -119,6 +119,34 @@ namespace TIAMMobileApp.Services
|
||||||
return (isSuccess, result);
|
return (isSuccess, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<(bool isSuccess, UserModelDto? user)> CreateGuestUser(RegistrationModel regModel)
|
||||||
|
{
|
||||||
|
|
||||||
|
bool isSuccess = false;
|
||||||
|
string result = string.Empty;
|
||||||
|
UserModelDto? user;
|
||||||
|
var url = $"{Setting.ApiBaseUrl}/{APIUrls.CreateGuestUser}";
|
||||||
|
|
||||||
|
var response = await http.PostAsJsonAsync(url, regModel);
|
||||||
|
|
||||||
|
|
||||||
|
if (response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
|
isSuccess = true;
|
||||||
|
result = await response.Content.ReadAsStringAsync();
|
||||||
|
user = JsonConvert.DeserializeObject<UserModelDto>(result);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
isSuccess = false;
|
||||||
|
result = await response.Content.ReadAsStringAsync();
|
||||||
|
user = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return (isSuccess, user);
|
||||||
|
}
|
||||||
|
|
||||||
public async Task<IEnumerable<UserModelDto>?> GetUsersAsync()
|
public async Task<IEnumerable<UserModelDto>?> GetUsersAsync()
|
||||||
{
|
{
|
||||||
return await http.GetFromJsonAsync<IEnumerable<UserModelDto>>(APIUrls.GetUsers);
|
return await http.GetFromJsonAsync<IEnumerable<UserModelDto>>(APIUrls.GetUsers);
|
||||||
|
|
@ -126,7 +154,11 @@ namespace TIAMMobileApp.Services
|
||||||
|
|
||||||
public async Task<UserModelDto?> GetUserByEmailAsync(string email)
|
public async Task<UserModelDto?> GetUserByEmailAsync(string email)
|
||||||
{
|
{
|
||||||
return await http.GetFromJsonAsync<UserModelDto?>(APIUrls.GetUserByEmail);
|
var url = $"{Setting.ApiBaseUrl}/{APIUrls.GetUserByEmail}";
|
||||||
|
var response = await http.PostAsJsonAsync(url, email);
|
||||||
|
var result = await response.Content.ReadAsStringAsync();
|
||||||
|
var user = JsonConvert.DeserializeObject<UserModelDto>(result);
|
||||||
|
return user;
|
||||||
}
|
}
|
||||||
public async Task<UserModelDto?> GetUserByIdAsync(Guid id)
|
public async Task<UserModelDto?> GetUserByIdAsync(Guid id)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,14 @@
|
||||||
@using AyCode.Interfaces.StorageHandlers;
|
@using AyCode.Interfaces.StorageHandlers;
|
||||||
@using BlazorAnimation
|
@using BlazorAnimation
|
||||||
@using Newtonsoft.Json;
|
@using Newtonsoft.Json;
|
||||||
|
@using TIAM.Entities.Transfers
|
||||||
@using TIAMSharedUI.Shared.Components
|
@using TIAMSharedUI.Shared.Components
|
||||||
@using TIAMWebApp.Shared.Application.Interfaces
|
@using TIAMWebApp.Shared.Application.Interfaces
|
||||||
@using TIAMWebApp.Shared.Application.Models.ClientSide;
|
@using TIAMWebApp.Shared.Application.Models.ClientSide;
|
||||||
@using AyCode.Blazor.Components;
|
@using AyCode.Blazor.Components;
|
||||||
@using TIAMWebApp.Shared.Application.Models;
|
@using TIAMWebApp.Shared.Application.Models;
|
||||||
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI
|
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI
|
||||||
|
@using TIAMWebApp.Shared.Application.Models.PageModels
|
||||||
@using TIAMWebApp.Shared.Application.Utility;
|
@using TIAMWebApp.Shared.Application.Utility;
|
||||||
@using System.IdentityModel.Tokens.Jwt;
|
@using System.IdentityModel.Tokens.Jwt;
|
||||||
@using TIAMSharedUI.Pages.Components;
|
@using TIAMSharedUI.Pages.Components;
|
||||||
|
|
@ -322,7 +324,7 @@
|
||||||
CssClass="text-white"></InputWizard>
|
CssClass="text-white"></InputWizard>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -398,35 +400,51 @@ new HeroSliderItem
|
||||||
public async Task SubmitForm(object result)
|
public async Task SubmitForm(object result)
|
||||||
{
|
{
|
||||||
var orderModel = result as TransferWizardModel;
|
var orderModel = result as TransferWizardModel;
|
||||||
List<TransferWizardModel> TransferList = new List<TransferWizardModel>();
|
//check if user exists
|
||||||
foreach (var date in OrderDates)
|
if (sessionService.IsAuthenticated)
|
||||||
{
|
{
|
||||||
|
|
||||||
TransferWizardModel transfer = orderModel.Clone();
|
|
||||||
transfer.TripDate = new DateTime(2024, 07, date);
|
|
||||||
//Basic settings
|
//Basic settings
|
||||||
if (sessionService.IsAuthenticated)
|
orderModel.UserId = sessionService.User.UserModelDto.Id;
|
||||||
{
|
orderModel.ProductId = sessionService.User.UserModelDto.Products.FirstOrDefault().Id;
|
||||||
transfer.UserId = sessionService.User.UserModelDto.Id;
|
|
||||||
transfer.ProductId = sessionService.User.UserModelDto.Products.FirstOrDefault().Id;
|
|
||||||
}
|
|
||||||
transfer.Price = null;
|
|
||||||
|
|
||||||
// Outbound trip
|
|
||||||
transfer.PickupAddress = OrderLocation;
|
|
||||||
transfer.Destination = "Hungaroring";
|
|
||||||
TransferList.Add(transfer);
|
|
||||||
|
|
||||||
// Return trip
|
|
||||||
transfer = orderModel.Clone();
|
|
||||||
transfer.TripDate = new DateTime(2024, 07, date);
|
|
||||||
transfer.PickupAddress = "Hungaroring";
|
|
||||||
transfer.Destination = OrderLocation;
|
|
||||||
TransferList.Add(transfer);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
var transferResult = await transferDataService.CreateTransfers(TransferList);
|
{
|
||||||
logToBrowserConsole.LogToBC($"Submitted nested form: {transferResult.GetType().FullName}, {transferResult.Count}");
|
//cherck if user exists
|
||||||
|
var user = await UserDataService.GetUserByEmailAsync(orderModel.EmailAddress);
|
||||||
|
|
||||||
|
if (user.Id == Guid.Empty)
|
||||||
|
user = null;
|
||||||
|
|
||||||
|
if (user != null)
|
||||||
|
{
|
||||||
|
orderModel.UserId = user.Id;
|
||||||
|
|
||||||
|
orderModel.ProductId = user.Products.FirstOrDefault()?.Id;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//if not, create user
|
||||||
|
|
||||||
|
Random random = new Random();
|
||||||
|
string chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
|
||||||
|
string password = new string(Enumerable.Repeat(chars, 10)
|
||||||
|
.Select(s => s[random.Next(s.Length)]).ToArray());
|
||||||
|
|
||||||
|
RegistrationModel regModel = new RegistrationModel
|
||||||
|
{
|
||||||
|
PhoneNumber = orderModel.PhoneNumber,
|
||||||
|
Email = orderModel.EmailAddress,
|
||||||
|
Password = password,
|
||||||
|
ReferralId = Guid.Empty
|
||||||
|
};
|
||||||
|
|
||||||
|
var bleh = await UserDataService.CreateGuestUser(regModel);
|
||||||
|
orderModel.UserId = bleh.user.Id;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
await ProcessTransfers(orderModel);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void OnInitialized()
|
protected override void OnInitialized()
|
||||||
|
|
@ -450,6 +468,34 @@ new HeroSliderItem
|
||||||
OrderLocation = location;
|
OrderLocation = location;
|
||||||
showWizard = true;
|
showWizard = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<List<Transfer>> ProcessTransfers(TransferWizardModel orderModel)
|
||||||
|
{
|
||||||
|
List<TransferWizardModel> TransferList = new List<TransferWizardModel>();
|
||||||
|
foreach (var date in OrderDates)
|
||||||
|
{
|
||||||
|
|
||||||
|
TransferWizardModel transfer = orderModel.Clone();
|
||||||
|
transfer.TripDate = new DateTime(2024, 07, date);
|
||||||
|
|
||||||
|
|
||||||
|
// Outbound trip
|
||||||
|
transfer.PickupAddress = OrderLocation;
|
||||||
|
transfer.Destination = "Hungaroring";
|
||||||
|
TransferList.Add(transfer);
|
||||||
|
|
||||||
|
// Return trip
|
||||||
|
transfer = orderModel.Clone();
|
||||||
|
transfer.TripDate = new DateTime(2024, 07, date);
|
||||||
|
transfer.PickupAddress = "Hungaroring";
|
||||||
|
transfer.Destination = OrderLocation;
|
||||||
|
TransferList.Add(transfer);
|
||||||
|
}
|
||||||
|
|
||||||
|
var transferResult = await transferDataService.CreateTransfers(TransferList);
|
||||||
|
logToBrowserConsole.LogToBC($"Submitted nested form: {transferResult.GetType().FullName}, {transferResult.Count}");
|
||||||
|
return transferResult;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ using TIAMWebApp.Shared.Application.Utility;
|
||||||
using AyCode.Interfaces.StorageHandlers;
|
using AyCode.Interfaces.StorageHandlers;
|
||||||
using AyCode.Core.Logger;
|
using AyCode.Core.Logger;
|
||||||
using TIAM.Models.Dtos.Users;
|
using TIAM.Models.Dtos.Users;
|
||||||
|
using Azure;
|
||||||
|
|
||||||
|
|
||||||
namespace TIAMWebApp.Client.Services
|
namespace TIAMWebApp.Client.Services
|
||||||
|
|
@ -125,6 +126,36 @@ namespace TIAMWebApp.Client.Services
|
||||||
return (isSuccess, result);
|
return (isSuccess, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<(bool isSuccess, UserModelDto? user)> CreateGuestUser(RegistrationModel regModel)
|
||||||
|
{
|
||||||
|
|
||||||
|
bool isSuccess = false;
|
||||||
|
string result = string.Empty;
|
||||||
|
UserModelDto? user = new UserModelDto();
|
||||||
|
var url = $"{Setting.ApiBaseUrl}/{APIUrls.CreateGuestUser}";
|
||||||
|
logToBrowserConsole.LogToBC("CreateGuestUser url: " + url);
|
||||||
|
var response = await http.PostAsJsonAsync(url, regModel);
|
||||||
|
|
||||||
|
|
||||||
|
if (response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
|
isSuccess = true;
|
||||||
|
result = await response.Content.ReadAsStringAsync();
|
||||||
|
logToBrowserConsole.LogToBC("CreateGuestUser result: " + result);
|
||||||
|
user = JsonConvert.DeserializeObject<UserModelDto>(result);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
isSuccess = false;
|
||||||
|
result = await response.Content.ReadAsStringAsync();
|
||||||
|
user = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return (isSuccess, user);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public async Task<IEnumerable<UserModelDto>?> GetUsersAsync()
|
public async Task<IEnumerable<UserModelDto>?> GetUsersAsync()
|
||||||
{
|
{
|
||||||
return await http.GetFromJsonAsync<IEnumerable<UserModelDto>>(APIUrls.GetUsers);
|
return await http.GetFromJsonAsync<IEnumerable<UserModelDto>>(APIUrls.GetUsers);
|
||||||
|
|
@ -133,7 +164,11 @@ namespace TIAMWebApp.Client.Services
|
||||||
public async Task<UserModelDto?> GetUserByEmailAsync(string email)
|
public async Task<UserModelDto?> GetUserByEmailAsync(string email)
|
||||||
{
|
{
|
||||||
var url = $"{Setting.ApiBaseUrl}/{APIUrls.GetUserByEmail}";
|
var url = $"{Setting.ApiBaseUrl}/{APIUrls.GetUserByEmail}";
|
||||||
return await http.GetFromJsonAsync<UserModelDto?>(url);
|
logToBrowserConsole.LogToBC("GetUserByEmailAsync url: " + url + ", " + email);
|
||||||
|
var response = await http.PostAsJsonAsync(url, email);
|
||||||
|
var result = await response.Content.ReadAsStringAsync();
|
||||||
|
var user = JsonConvert.DeserializeObject<UserModelDto>(result);
|
||||||
|
return user;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<UserModelDto?> GetUserByIdAsync(Guid id)
|
public async Task<UserModelDto?> GetUserByIdAsync(Guid id)
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,10 @@ using TIAM.Entities.Users;
|
||||||
using TIAM.Models.Dtos.Users;
|
using TIAM.Models.Dtos.Users;
|
||||||
using TIAMWebApp.Server.ModelsTIAMWebApp.Shared.Application.Models;
|
using TIAMWebApp.Server.ModelsTIAMWebApp.Shared.Application.Models;
|
||||||
using TIAMWebApp.Shared.Application.Utility;
|
using TIAMWebApp.Shared.Application.Utility;
|
||||||
|
using TIAM.Database.DataLayers.Admins;
|
||||||
|
using System;
|
||||||
|
using TIAM.Entities.Profiles;
|
||||||
|
using TIAM.Entities.Addresses;
|
||||||
|
|
||||||
namespace TIAMWebApp.Server.Controllers
|
namespace TIAMWebApp.Server.Controllers
|
||||||
{
|
{
|
||||||
|
|
@ -32,6 +36,7 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
public class UserAPIController : ControllerBase
|
public class UserAPIController : ControllerBase
|
||||||
{
|
{
|
||||||
private UserDal _userDal;
|
private UserDal _userDal;
|
||||||
|
private AdminDal _adminDal;
|
||||||
private readonly IConfiguration _configuration;
|
private readonly IConfiguration _configuration;
|
||||||
private readonly IWebHostEnvironment _webHostEnvironment;
|
private readonly IWebHostEnvironment _webHostEnvironment;
|
||||||
readonly PasswordHasher _hasher = new();
|
readonly PasswordHasher _hasher = new();
|
||||||
|
|
@ -46,12 +51,13 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
|
|
||||||
private readonly ILogger<UserAPIController> _logger;
|
private readonly ILogger<UserAPIController> _logger;
|
||||||
|
|
||||||
public UserAPIController(ILogger<UserAPIController> logger, IConfiguration configuration, IWebHostEnvironment webHostEnvironment, UserDal userDal)
|
public UserAPIController(ILogger<UserAPIController> logger, IConfiguration configuration, IWebHostEnvironment webHostEnvironment, UserDal userDal, AdminDal adminDal)
|
||||||
{
|
{
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
_configuration = configuration;
|
_configuration = configuration;
|
||||||
_webHostEnvironment = webHostEnvironment;
|
_webHostEnvironment = webHostEnvironment;
|
||||||
_userDal = userDal;
|
_userDal = userDal;
|
||||||
|
_adminDal = adminDal;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -304,6 +310,65 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[AllowAnonymous]
|
||||||
|
[HttpPost]
|
||||||
|
[Route(APIUrls.CreateGuestUserRouteName)]
|
||||||
|
public async Task<IActionResult> CreateGuestUser([FromBody] JsonElement SerializedRegistrationModel)
|
||||||
|
{
|
||||||
|
Console.WriteLine("CreateGuestUser called");
|
||||||
|
bool result = false;
|
||||||
|
UserModelDtoDetail? guestUser = null;
|
||||||
|
|
||||||
|
if (string.IsNullOrEmpty(SerializedRegistrationModel.GetRawText()))
|
||||||
|
{
|
||||||
|
return BadRequest("SerializedLoginModel is required");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var user = JObject.Parse(SerializedRegistrationModel.GetRawText()).ToObject<RegistrationModel>();
|
||||||
|
|
||||||
|
if (user != null)
|
||||||
|
{
|
||||||
|
Random random = new Random();
|
||||||
|
string chars = "1234567890";
|
||||||
|
string nameExtension = new string(Enumerable.Repeat(chars, 10)
|
||||||
|
.Select(s => s[random.Next(s.Length)]).ToArray());
|
||||||
|
|
||||||
|
|
||||||
|
var userId = Guid.NewGuid();
|
||||||
|
var email = user?.Email;
|
||||||
|
var phoneNumber = user?.PhoneNumber;
|
||||||
|
var password = user?.Password;
|
||||||
|
Guid? referralId = user?.ReferralId;
|
||||||
|
|
||||||
|
if (email is null || phoneNumber is null || password is null)
|
||||||
|
{
|
||||||
|
return BadRequest("Invalid request");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Console.WriteLine($"User to be created: {userId}");
|
||||||
|
Console.WriteLine($"User to be created: {email}");
|
||||||
|
Console.WriteLine($"User to be created: {phoneNumber}");
|
||||||
|
Console.WriteLine($"User to be created: {password}");
|
||||||
|
User userToCreate = new(userId, email, phoneNumber, password);
|
||||||
|
userToCreate.Profile = new Profile();
|
||||||
|
userToCreate.Profile.Name = "Guest-" + nameExtension;
|
||||||
|
userToCreate.RefferalId = referralId;
|
||||||
|
Random rnd = new Random();
|
||||||
|
userToCreate.Profile.Address = new Address();
|
||||||
|
userToCreate.Profile.Address.AddressText = "NAN";
|
||||||
|
userToCreate.Profile.Address.Latitude = Math.Round(90 + rnd.NextDouble(), 8);
|
||||||
|
userToCreate.Profile.Address.Longitude = Math.Round(180 + rnd.NextDouble(), 8);
|
||||||
|
result = await _adminDal.AddUser(userToCreate);
|
||||||
|
guestUser = await _userDal.GetUserModelDtoDetailByIdAsync(userId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return Ok(guestUser);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route("Test1")]
|
[Route("Test1")]
|
||||||
public async Task<IActionResult> TestEndpoint([FromBody] int testParam)
|
public async Task<IActionResult> TestEndpoint([FromBody] int testParam)
|
||||||
|
|
@ -331,10 +396,12 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
}
|
}
|
||||||
|
|
||||||
[AllowAnonymous]
|
[AllowAnonymous]
|
||||||
[HttpGet]
|
[HttpPost]
|
||||||
[Route("GetUserByEmail")]
|
[Route("GetUserByEmail")]
|
||||||
public Task<UserModelDto?> GetUserByEmail(string email)
|
public Task<UserModelDto?> GetUserByEmail(string email)
|
||||||
{
|
{
|
||||||
|
Logger.Info($"GetUserByEmail called with email: {email}");
|
||||||
|
Console.WriteLine($"GetUserByEmail called with email: {email}");
|
||||||
return _userDal.GetUserModelDtoByEmailAsync(email);
|
return _userDal.GetUserModelDtoByEmailAsync(email);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ namespace TIAMWebApp.Shared.Application.Interfaces
|
||||||
|
|
||||||
public Task<string> AuthenticateUser(LoginModel loginModel);
|
public Task<string> AuthenticateUser(LoginModel loginModel);
|
||||||
public Task<(bool isSuccess, string ErrorMessage)> CreateUser(RegistrationModel regModel);
|
public Task<(bool isSuccess, string ErrorMessage)> CreateUser(RegistrationModel regModel);
|
||||||
|
public Task<(bool isSuccess, UserModelDto? user)> CreateGuestUser(RegistrationModel regModel);
|
||||||
public Task<string> TestUserApi(int Param);
|
public Task<string> TestUserApi(int Param);
|
||||||
|
|
||||||
//public Task<Dictionary<int, string>> GetUserRolesAsync(UserModel userModel);
|
//public Task<Dictionary<int, string>> GetUserRolesAsync(UserModel userModel);
|
||||||
|
|
|
||||||
|
|
@ -37,6 +37,9 @@ namespace TIAMWebApp.Shared.Application.Models
|
||||||
public const string CreateUserRouteName = "CreateUser";
|
public const string CreateUserRouteName = "CreateUser";
|
||||||
public const string CreateUser = UserAPI + CreateUserRouteName;
|
public const string CreateUser = UserAPI + CreateUserRouteName;
|
||||||
|
|
||||||
|
public const string CreateGuestUserRouteName = "CreateGuestUser";
|
||||||
|
public const string CreateGuestUser = UserAPI + CreateGuestUserRouteName;
|
||||||
|
|
||||||
public const string RefreshTokenRouteName = "RefreshToken";
|
public const string RefreshTokenRouteName = "RefreshToken";
|
||||||
public const string RefreshToken = UserAPI + RefreshTokenRouteName;
|
public const string RefreshToken = UserAPI + RefreshTokenRouteName;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,12 +16,12 @@ namespace TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
|
||||||
{
|
{
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
public Guid UserId { get; set; }
|
public Guid UserId { get; set; }
|
||||||
public Guid ProductId { get; set; }
|
public Guid? ProductId { get; set; }
|
||||||
public Guid UserProductMappingId { get; set; }
|
public Guid UserProductMappingId { get; set; }
|
||||||
|
|
||||||
public Guid UserProductToCarId { get; set; }
|
public Guid UserProductToCarId { get; set; }
|
||||||
|
|
||||||
public Guid ReferralId { get; set; }
|
public Guid? ReferralId { get; set; }
|
||||||
|
|
||||||
public string ? Comment { get; set; }
|
public string ? Comment { get; set; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,25 @@ namespace TIAMWebApp.Shared.Application.Models.PageModels
|
||||||
public string? Password { get; set; }
|
public string? Password { get; set; }
|
||||||
|
|
||||||
public string? PhoneNumber { get; set; }
|
public string? PhoneNumber { get; set; }
|
||||||
|
|
||||||
|
public Guid? ReferralId { get; set; }
|
||||||
|
|
||||||
|
public RegistrationModel() { }
|
||||||
|
|
||||||
|
public RegistrationModel(string email, string password, string phoneNumber, Guid referralId)
|
||||||
|
{
|
||||||
|
Email = email;
|
||||||
|
Password = password;
|
||||||
|
PhoneNumber = phoneNumber;
|
||||||
|
ReferralId = referralId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public RegistrationModel(string email, string password, string phoneNumber)
|
||||||
|
{
|
||||||
|
Email = email;
|
||||||
|
Password = password;
|
||||||
|
PhoneNumber = phoneNumber;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue