private async Task <CustomerResponse> CreateCustomer(string name, string email) { CustomerRequest customerRequest = new CustomerRequest() { Email = email, Name = name, Locale = Locale.nl_NL }; return(await CustomerClient.CreateCustomerAsync(customerRequest)); }
public async Task CanCreateCustomerWithStringMetadata() { // If: We create a customer request with string metadata CustomerRequest customerRequest = new CustomerRequest() { Email = "*****@*****.**", Name = "Smit", Metadata = "This is my metadata", Locale = Locale.nl_NL }; // When: We try to retrieve the customer by Url object CustomerResponse retrievedCustomer = await CustomerClient.CreateCustomerAsync(customerRequest); // Then: Make sure it's retrieved Assert.AreEqual(customerRequest.Metadata, retrievedCustomer.Metadata); }
public async Task CanCreateCustomerWithJsonMetadata() { // If: We create a customer request with json metadata var customerRequest = new CustomerRequest() { Email = "*****@*****.**", Name = "Smit", Metadata = "{\"order_id\":\"4.40\"}", Locale = Locale.nl_NL }; // When: We try to retrieve the customer by Url object var retrievedCustomer = await CustomerClient.CreateCustomerAsync(customerRequest); // Then: Make sure it's retrieved Assert.Equal(customerRequest.Metadata, retrievedCustomer.Metadata); }
public async Task <ResponseBase <long> > CreateCustomer(CustomerModel data) { var response = new ResponseBase <long>(); var service = new CustomerClient(); try { var callback = await service.CreateCustomerAsync(new CustomerContract() { Name = data.Name, Address = data.Address, BirthDate = data.BirthDate, CityId = data.CityId, CityName = data.CityName, CountryId = data.CountryId, CountryName = data.CountryName, DepartmentId = data.DepartmentId, DepartmentName = data.DepartmentName, DocumentId = data.DocumentId, DocumentType = data.DocumentType, DocumentTypeName = data.DocumentTypeName, }); response.Code = callback.Code; response.Data = callback.Data; response.Message = callback.Message; } catch (Exception ex) { response.Code = StatusCode.ServiceUnavailable; response.Message = $"Ups! no se pudo crear el usuario: {ex.Message}"; } service.Close(); return(response); }
public async Task <IActionResult> postRegister(Account account) { if (ModelState.IsValid) { using (var context = new OverstagContext()) { //Check if user already exists string testun = string.Empty; string testem = ""; try { testun = context.Accounts.Where(a => a.Username.ToLower() == account.Username.ToLower()).FirstOrDefault().Username; } catch { testun = ""; } try { testem = context.Accounts.Where(a => a.Email == account.Email).FirstOrDefault().Email; } catch { testem = ""; } if (!string.IsNullOrEmpty(testun)) { return(Json(new { status = "error", error = "Gebruikersnaam bestaat al!", code = 0 })); } else if (!string.IsNullOrEmpty(testem)) { return(Json(new { status = "error", error = "Emailadres is al in gebruik!", code = 1 })); } else { try { //Make name uppercase account.Firstname = account.Firstname[0].ToString().ToUpper() + account.Firstname.Substring(1); char[] l = account.Lastname.ToCharArray(); int i = (account.Lastname.Contains(' ')) ? account.Lastname.TrimEnd(' ').LastIndexOf(' ') + 1 : 0; l[i] = char.ToUpper(l[i]); account.Lastname = new string(l); //Set password hashes, create token and set type account.Password = Encryption.PBKDF2.Hash(account.Password); account.Token = Encryption.Random.rHash(Encryption.SHA.S256(account.Firstname) + account.Username); account.Type = (byte)(account.Username.Equals("admin") ? 3 : (account.Type < 2) ? account.Type : 0); account.RegisterDate = DateTime.Now; try { if (account.Type < 2) { #if MOLLIE_ENABLED CustomerRequest cr = new CustomerRequest() { Name = $"{account.Firstname} {account.Lastname}", Email = account.Email, Locale = "nl-NL", Metadata = account.Token }; CustomerClient client = new CustomerClient(Core.General.Credentials.mollieApiToken); CustomerResponse cs = await client.CreateCustomerAsync(cr); account.MollieID = cs.Id; #endif } } catch (Exception e) { return(Json(new { status = "error", error = "Mollie integratie voor het verwerken van betalingen mislukt, neem contact op met ons.", debuginfo = e.ToString() })); } context.Accounts.Add(account); await context.SaveChangesAsync(); //Set important session variables base.setUser(account); string remember = await Security.Auth.Register(account.Token, HttpContext.Connection.RemoteIpAddress.ToString()); return(Json(new { status = "success", remember = Uri.EscapeDataString(remember) })); } catch (Exception e) { return(Json(new { status = "error", error = "Registratie is mislukt door interne fout.\nNeem a.u.b contact met ons op.", debuginfo = e, code = 2 })); } } } } else { return(Json(new { status = "error", error = "Gegevens zijn ongeldig.\nControleer of alle velden juist zijn ingevuld" })); } }