/// <summary> /// Created by Michael Takrama /// 04/15/17 /// /// Logic to Apply for Commercial Account - MVC /// </summary> /// <param name="user"></param> /// <returns></returns> public bool ApplyForCommercialAccount(RegisterCommercialViewModel user) { // App User Creation var userManager = new UserManager(); try { var createdUserResult = userManager.CreateNewUser(user, user.Password, user.ConfirmPassword); if ("Created" != createdUserResult) { throw new ApplicationException(createdUserResult); } } catch (Exception ex) { Debug.WriteLine("CustomerManager-ApplyForCommercialAccount: " + ex.Message); throw; } // Commercial Customer Creation User userData = null; try { userData = userManager.RetrieveUserByUserName(user.UserName); var cm = new CommercialCustomer { UserId = userData.UserId, FederalTaxId = int.Parse(user.FederalTaxID), ApprovedBy = 0, Active = true }; if (CreateCommercialAccount(cm)) { return(true); } //Commercial Customer Creation failed - delete created user if (1 == UserAccessor.DeleteUser(userData.UserId)) { throw new ApplicationException("Fatal Error Occured"); } } catch (SqlException ex) { if (userData != null) { UserAccessor.DeleteUser(userData.UserId); } Debug.WriteLine(ex.Message); throw new ApplicationException("Fatal Error Occured"); } catch (Exception e) { Debug.WriteLine(e); throw; } return(false); }