/// <summary> /// Ավելացնում է email հաճախորդի տվյալներ մեջ /// </summary> /// <param name="emailAddress"></param> /// <param name="customerNumber"></param> private RegistrationActionResult AddEmailForCustomer(string emailAddress, ulong customerNumber) { var result = new RegistrationActionResult(); CustomerEmail email = new CustomerEmail { emailType = new KeyValue(), email = new Email(), quality = new KeyValue(), priority = new KeyValue() }; email.priority.key = 1; email.emailType.key = 5; email.quality.key = 1; email.email.emailAddress = emailAddress; var saveResult = _acbaOperationService.SaveCustomerEmail(customerNumber, email); if (saveResult.resultCode == 1) { result.ResultCode = CustomerRegistration.ResultCode.Normal; } else if (saveResult.resultCode == 2) { throw new Exception(saveResult.resultDescription); } return(result); }
public ActionResult SaveCustomerEmail(ulong customerNumber, CustomerEmail email) { var result = new ActionResult(); this.Use(client => { result = client.SaveCustomerEmailAsync(customerNumber, email).Result; } ); return(result); }
private CustomerRegistrationProcessResult RegistratePhysicalCustomer(PhysicalCustomer customer) { var result = new CustomerRegistrationProcessResult(); if (customer != null && customer.customerNumber != default(ulong)) { if (!_acbaOperationService.CheckCustomerUpdateExpired(customer.customerNumber) || customer.quality.key != 1) { this.CustomerData.CustomerNumber = customer.customerNumber; this.CustomerData.CustomerQuality = customer.quality.key; bool hasCustomerOnlineBanking = _xbService.HasCustomerOnlineBanking(customer.customerNumber); if (!hasCustomerOnlineBanking) { string name = Utilities.Utils.ConvertAnsiToUnicode(customer.person.fullName.firstName); string surname = Utilities.Utils.ConvertAnsiToUnicode(customer.person.fullName.lastName); if (customer.quality.key == 1 && customer.customerType.key == 6) { CustomerEmail customerEmail = customer.person.emailList.Find(email => email.emailType.key == 5 && email.priority.key == 1 && email.quality.key == 1); CustomerPhone customerPhone = customer.person.PhoneList.Find(phone => phone.phoneType.key == 1 && phone.phone.countryCode == "+374" && phone.priority.key == 1); if (customerEmail != null && customerPhone != null) { string phoneNumber = customerPhone.phone.countryCode + customerPhone.phone.areaCode + customerPhone.phone.phoneNumber; string emailAddress = customerEmail.email.emailAddress; result.RegistrationResponseData = new Dictionary <string, string>() { { "phoneNumber", phoneNumber.Substring(0, 6) + new StringBuilder(4).Insert(0, "*", 4).ToString() + phoneNumber.Substring(10, 2) }, { "email", emailAddress.Substring(0, 3) + new String('#', emailAddress.Length - 6) + emailAddress.Substring(emailAddress.Length - 3, 3) }, { "nameSurname", name.Substring(0, 2) + new String('#', name.Length - 2) + " " + surname.Substring(0, 2) + new String('#', surname.Length - 2) }, { "customerNumber", customer.customerNumber.ToString() } }; result.RegistrationResult = RegistrationResult.ClientWithCustomerQuality; //result.ResultDescription = "Բանկում գրանցված տվյալները հաճախորդին երևում են ոչ լիարժեք ---> sharunakvum e grancume"; //remove the + from +374xxyyyyyy this.CustomerData.PhoneNumber = phoneNumber.Remove(0, 1); this.CustomerData.Email = emailAddress; } else { result.RegistrationResult = RegistrationResult.ClientHavingCustomerQualityWithInsufficientData; result.ResultDescription = "Հարգելի հաճախորդ, Ձեր օնլայն գրանցումը հնարավոր չէ շարունակել: Խնդրում ենք մոտենալ ցանկացած մասնաճյուղ:"; } } else { result.RegistrationResult = RegistrationResult.ClientWithNonCustomerQuality; result.RegistrationResponseData = new Dictionary <string, string>() { { "nameSurname", name.Substring(0, 2) + new String('#', name.Length - 2) + " " + surname.Substring(0, 2) + new String('#', surname.Length - 2) }, { "customerNumber", customer.customerNumber.ToString() } }; //result.ResultDescription = "Ցանկացած այլ կարգավիճակ ունեցող հաճախորդ (օր` դիմորդ, ելք կատարող անձ և այլն) կուղղորվի դեպի ոչ հաճախորդ սցենարով և կունենա նոր հաճախորդ համար:"; } string registrationToken = this.RegistrateByIdentificationResult(result.RegistrationResult); if (!String.IsNullOrEmpty(registrationToken)) { result.RegistrationResponseData.Add("RegistrationToken", registrationToken); } } else { result.RegistrationResult = RegistrationResult.ExistingOnlineUser; result.ResultDescription = "Դուք արդեն հանդիսանում եք «ACBA Digital» օգտատեր:"; } } else { result.RegistrationResult = RegistrationResult.UpdateExpired; result.ResultDescription = "Հարգելի հաճախորդ, Ձեր օնլայն գրանցումը հնարավոր չէ շարունակել: Խնդրում ենք մոտենալ ցանկացած մասնաճյուղ:"; } } return(result); }