public async Task <StatusData <AccountInternal> > SignUpPerson(SignUpRequestPerson request) { var user = new User { UserName = request.UserName, Password = request.Password, Email = request.Email, // UsernameEmail = request.Email, UserInfoPerson = new UserInfoPerson { FirstName = request.FirstName, LastName = request.LastName, Gender = ((byte)request.Gender).ToString(), BirthDate = request.DateOfBirth.ToString("yyyy-MM-dd") }, UserInfo = new UserInfo { CountryCode = request.CountryCode } }; var result = new StatusData <AccountInternal> { Status = SystemDbStatus.Inserted }; var response = await Task.Factory.StartNew(() => Client.UserService.RegisterUser(user)).ConfigureAwait(false); result.Status = (SystemDbStatus)response.DbStatusCode; result.Data = new AccountInternal { UserGuid = response.UserGUID, UserId = Convert.ToInt32(response.UserId) }; result.Message = response.DbStatusMsg; return(result); }
public async Task <StatusData <AccountInternal> > SignUpPerson(SignUpRequestPerson request) { var result = new StatusData <AccountInternal> { Data = new AccountInternal() }; var saltKey = Encryptor.CreateSaltKey(5); var hashPassword = Encryptor.CreatePasswordHash(request.Password, saltKey); var userIdObj = new ObjectParameter("userId", 0); var userGuidObj = new ObjectParameter("userGUID", 0); var mobileResetCodeObj = new ObjectParameter("MobileResetCode", 0); result.Status = (SystemDbStatus)await Task.Factory.StartNew(() => Context.PROC_USERLOGIN_CREATEPERSON(request.UserName, request.FirstName, request.LastName, (byte)request.Gender, hashPassword, saltKey, request.Email, 1, request.DateOfBirth, request.CountryCode, userIdObj, userGuidObj, mobileResetCodeObj).FirstOrDefault().GetValueOrDefault()).ConfigureAwait(false); if (result.Status.IsOperationSuccessful()) { result.Data.UserGuid = userGuidObj.Value.ToString(); result.Data.UserId = Convert.ToInt32(userIdObj.Value); } return(result); }
private async Task <HttpResponseMessage> SignUpPerson(SignUpRequestPerson request) { var response = await _accountService.SignUpPerson(request); if (response.Status.IsOperationSuccessful()) { var registration = new AccountInternal { Email = request.Email, FirstName = request.FirstName, UserName = request.UserName, ImageServerAddress = SystemConstants.ImageServerAddress.ToString(), UrlRegistrationLink = new Uri(new Uri(SystemConstants.WebUrl.Value), "index.html#/activation/" + HttpUtility.UrlEncode(Convert.ToBase64String(Encoding.UTF8.GetBytes(request.UserName))) + "/" + HttpUtility.UrlEncode((Convert.ToBase64String(Encoding.UTF8.GetBytes(response.Data.UserGuid))))) .ToString(), UrlVerificationLink = new Uri(new Uri(SystemConstants.WebUrl.Value), "index.html#/activation/" + HttpUtility.UrlEncode(Convert.ToBase64String(Encoding.UTF8.GetBytes(request.UserName))) + "/") .ToString(), UserGuid = response.Data.UserGuid, UserId = response.Data.UserId }; var html = ViewRenderer.RenderView("~/Views/Home/OutMail/_RegistrationTemplatePartial.cshtml", registration); Helper.SendMail(registration.Email, "Activation Mail", html, bodyImages: new List <string> { "~/Images/iLoop.png" }); } return(Request.SystemResponse <string>(response.Status)); }
public async Task <HttpResponseMessage> RequestPersonalAccount([FromBody] SignUpRequestPerson request) { return(await SignUpPerson(request).ConfigureAwait(false)); }
public Task <StatusData <AccountInternal> > SignUpPerson(SignUpRequestPerson request) { return(_jUnitOfWork.Account.SignUpPerson(request)); }