public static object[] CreateCustomer(string address1, string address2, string address3, string city, string region, string country, string postal, string source, string password, string customertype, string salutation, string firstname, string middleinitial, string lastname, string suffix, string emailaddress, string username, string newmemberid, string pubcode, string expiredate, string startdate, string screenname, string mobilephone, string secondemail, string keycode) { CustomerResponseCode responsecode = 0; tbl_Customer Customer = new tbl_Customer(); tbl_NetMembership NetMembership = new tbl_NetMembership(); tbl_AddressCustomer Address = new tbl_AddressCustomer(); #region convert string input to correct types DateTime dt_expiredate = new DateTime(); DateTime dt_startdate = new DateTime(); if (!DateTime.TryParse(expiredate, out dt_expiredate)) { responsecode = CustomerResponseCode.CANNOT_CONVERT_EXPIREDATE; } if (!DateTime.TryParse(startdate, out dt_startdate)) { responsecode = CustomerResponseCode.CANNOT_CONVERT_STARTDATE; } #endregion if (responsecode == 0) { #region check user name availability switch (tbl_Customer.CheckUserName(username)) { case 0: responsecode = 0; break; case 1: responsecode = CustomerResponseCode.DUPLICATE_USER_NAME; break; case 2: responsecode = CustomerResponseCode.DUPLICATE_EMAIL_ADDRESS; break; case 3: responsecode = CustomerResponseCode.DUPLICATE_USER_NAME; break; } #endregion if (responsecode == 0) { using (AHT_MainDataContext context = new AHT_MainDataContext(ConfigurationManager.ConnectionStrings["AHT_MainConnectionString"].ConnectionString)) { #region get cuscustnum long newcustnum = 0; try { long lastcustomer = (from a in context.tbl_Customers select a.cusCustNum).Select(x => Convert.ToInt64(x)).Max(); newcustnum = lastcustomer + 1; } catch { responsecode = CustomerResponseCode.CANNOT_CREATE_CUSCUSTNUM; } #endregion if (responsecode == 0) { #region address data at AH Address = new tbl_AddressCustomer(); Address.addAddress1 = address1; Address.addAddress2 = address2; Address.addAddress3 = address3; Address.addCity = city; Address.addCountry = country; Address.addDateCreated = DateTime.Now; Address.addDateUpdated = DateTime.Now; Address.addPostalCode = postal; Address.addRegion = string.IsNullOrEmpty(region) ? "" : region; Address.addSource = string.Empty; context.tbl_AddressCustomers.InsertOnSubmit(Address); context.SubmitChanges(); #endregion #region customer data at AH Customer.cusEncryptedPassword = HarperCRYPTO.Cryptography.EncryptData(password); Customer.cusPassword = HarperCRYPTO.Cryptography.Encrypt256(password); Customer.cusPasswordSalt = HarperCRYPTO.Cryptography.Salt; Customer.addID = Address.addID; Customer.cusCustNum = newcustnum.ToString(); Customer.cusCustType = customertype; Customer.cusFirstName = firstname; Customer.cusLastName = lastname; Customer.cusPriFirstName = firstname; Customer.cusPriLastName = lastname; Customer.cusEmail = emailaddress; Customer.cusUserName = username; Customer.cusIsCharterMem = false; Customer.cusDateCreated = DateTime.Now; Customer.cusDateUpdated = DateTime.Now; Customer.cusIsDeleted = false; Customer.cusSex = 'U'; Customer.cusGUID = Guid.NewGuid(); Customer.cusDisplayName = screenname; Customer.cusMobile = mobilephone; Customer.cusHasDisplayName = true; Customer.cusSecondEmail = secondemail; Customer.cusMemberSince = DateTime.Now; Customer.cusSource = source; Customer.cusKeyCode = keycode; Customer.csoCode = source; long.TryParse(newmemberid, out Customer.SfgId); context.tbl_Customers.InsertOnSubmit(Customer); context.SubmitChanges(); #endregion #region sfg customer number data at AH HarperLINQ.SFG_CustomerNumber SfgData = new HarperLINQ.SFG_CustomerNumber(); SfgData.cusID = Customer.cusID; SfgData.SFGCustNum = newmemberid; context.SFG_CustomerNumbers.InsertOnSubmit(SfgData); context.SubmitChanges(); #endregion #region net membership data at AH NetMembership = new tbl_NetMembership(); NetMembership.cusID = Customer.cusID; NetMembership.mtyCode = HarperLINQ.SFG_ProdCode.GetFromExtCode(pubcode).IntCode; NetMembership.nmbDateCreated = DateTime.Now; NetMembership.nmbDateEnd = dt_expiredate; NetMembership.nmbDateStart = dt_startdate; context.tbl_NetMemberships.InsertOnSubmit(NetMembership); context.SubmitChanges(); #endregion } } } } return new object[] { responsecode, Customer, Address, NetMembership }; }
public static object[] CreateCustomer(string address1, string address2, string address3, string city, string region, string country, string postal, string source, string password, string customertype, string salutation, string firstname, string middleinitial, string lastname, string suffix, string emailaddress, string username, string newmemberid, string pubcode, string expiredate, string startdate, string screenname, string mobilephone, string secondemail, string keycode) { CustomerResponseCode responsecode = 0; tbl_Customer Customer = new tbl_Customer(); tbl_NetMembership NetMembership = new tbl_NetMembership(); tbl_AddressCustomer Address = new tbl_AddressCustomer(); #region convert string input to correct types DateTime dt_expiredate = new DateTime(); DateTime dt_startdate = new DateTime(); if (!DateTime.TryParse(expiredate, out dt_expiredate)) { responsecode = CustomerResponseCode.CANNOT_CONVERT_EXPIREDATE; } if (!DateTime.TryParse(startdate, out dt_startdate)) { responsecode = CustomerResponseCode.CANNOT_CONVERT_STARTDATE; } #endregion if (responsecode == 0) { #region check user name availability switch (tbl_Customer.CheckUserName(username)) { case 0: responsecode = 0; break; case 1: responsecode = CustomerResponseCode.DUPLICATE_USER_NAME; break; case 2: responsecode = CustomerResponseCode.DUPLICATE_EMAIL_ADDRESS; break; case 3: responsecode = CustomerResponseCode.DUPLICATE_USER_NAME; break; } #endregion if (responsecode == 0) { using (AHT_MainDataContext context = new AHT_MainDataContext(ConfigurationManager.ConnectionStrings["AHT_MainConnectionString"].ConnectionString)) { #region get cuscustnum long newcustnum = 0; try { long lastcustomer = (from a in context.tbl_Customers select a.cusCustNum).Select(x => Convert.ToInt64(x)).Max(); newcustnum = lastcustomer + 1; } catch { responsecode = CustomerResponseCode.CANNOT_CREATE_CUSCUSTNUM; } #endregion if (responsecode == 0) { #region address data at AH Address = new tbl_AddressCustomer(); Address.addAddress1 = address1; Address.addAddress2 = address2; Address.addAddress3 = address3; Address.addCity = city; Address.addCountry = country; Address.addDateCreated = DateTime.Now; Address.addDateUpdated = DateTime.Now; Address.addPostalCode = postal; Address.addRegion = string.IsNullOrEmpty(region) ? "" : region; Address.addSource = string.Empty; context.tbl_AddressCustomers.InsertOnSubmit(Address); context.SubmitChanges(); #endregion #region customer data at AH Customer.cusEncryptedPassword = HarperCRYPTO.Cryptography.EncryptData(password); Customer.cusPassword = HarperCRYPTO.Cryptography.Encrypt256(password); Customer.cusPasswordSalt = HarperCRYPTO.Cryptography.Salt; Customer.addID = Address.addID; Customer.cusCustNum = newcustnum.ToString(); Customer.cusCustType = customertype; Customer.cusFirstName = firstname; Customer.cusLastName = lastname; Customer.cusPriFirstName = firstname; Customer.cusPriLastName = lastname; Customer.cusEmail = emailaddress; Customer.cusUserName = username; Customer.cusIsCharterMem = false; Customer.cusDateCreated = DateTime.Now; Customer.cusDateUpdated = DateTime.Now; Customer.cusIsDeleted = false; Customer.cusSex = 'U'; Customer.cusGUID = Guid.NewGuid(); Customer.cusDisplayName = screenname; Customer.cusMobile = mobilephone; Customer.cusHasDisplayName = true; Customer.cusSecondEmail = secondemail; Customer.cusMemberSince = DateTime.Now; Customer.cusSource = source; Customer.cusKeyCode = keycode; Customer.csoCode = source; long.TryParse(newmemberid, out Customer.SfgId); context.tbl_Customers.InsertOnSubmit(Customer); context.SubmitChanges(); #endregion #region sfg customer number data at AH HarperLINQ.SFG_CustomerNumber SfgData = new HarperLINQ.SFG_CustomerNumber(); SfgData.cusID = Customer.cusID; SfgData.SFGCustNum = newmemberid; context.SFG_CustomerNumbers.InsertOnSubmit(SfgData); context.SubmitChanges(); #endregion #region net membership data at AH NetMembership = new tbl_NetMembership(); NetMembership.cusID = Customer.cusID; NetMembership.mtyCode = HarperLINQ.SFG_ProdCode.GetFromExtCode(pubcode).IntCode; NetMembership.nmbDateCreated = DateTime.Now; NetMembership.nmbDateEnd = dt_expiredate; NetMembership.nmbDateStart = dt_startdate; context.tbl_NetMemberships.InsertOnSubmit(NetMembership); context.SubmitChanges(); #endregion } } } } return(new object[] { responsecode, Customer, Address, NetMembership }); }