/// <summary> /// Ավելացնում է հեռախոսահամարը հաճախորդի տվյալներ մեջ /// </summary> /// <param name="phoneNumber"></param> /// <param name="customerNumber"></param> private RegistrationActionResult AddPhoneForCustomer(string phoneNumber, ulong customerNumber) { var result = new RegistrationActionResult(); var phone = new CustomerPhone(); phone.phoneType = new KeyValue(); phone.phone = new Phone(); phone.priority = new KeyValue(); phone.priority.key = 1; phone.phoneType.key = 1; phone.phone.areaCode = phoneNumber.Substring(3, 2); phone.phone.countryCode = "+374"; phone.phone.phoneNumber = phoneNumber.Substring(5); phone.Checked = new KeyValue { key = 1 }; var saveResult = _acbaOperationService.SaveCustomerPhone(customerNumber, phone); if (saveResult.resultCode == 1) { result.ResultCode = CustomerRegistration.ResultCode.Normal; } else if (saveResult.resultCode == 2) { throw new Exception(saveResult.resultDescription); } return(result); }
public ActionResult SaveCustomerPhone(ulong customerNumber, CustomerPhone phone) { var result = new ActionResult(); this.Use(client => { result = client.SaveCustomerPhoneAsync(customerNumber, phone).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); }