Пример #1
0
        private void btnCreateUser_Click(object sender, EventArgs e)
        {
            bool userInfoIsValid = ValidateUserInformation();

            if (!userInfoIsValid)
            {
                return;
            }

            UserAccount newUser = new UserAccount(txtUsername.Text, txtUserPassword.Text, false);

            newUser.EmailAddress = txtEmailAddress.Text;
            newUser.FirstName    = txtFirstName.Text;
            newUser.LastName     = txtLastName.Text;
            newUser.PhoneNumber  = txtPhoneNumber.Text;

            foreach (object item in chklstRoles.CheckedItems)
            {
                PermissionSet permissionSet = new PermissionSet();
                switch (item.ToString())
                {
                case "Operational Manager":
                    permissionSet.IsManager        = true;
                    permissionSet.IsStockClerk     = true;
                    permissionSet.IsCustomer       = true;
                    permissionSet.IsWorkSpecialist = true;
                    break;

                case "Sales Person": permissionSet.IsCustomer = true;
                    break;

                case "Printing / Engraving Specialist": permissionSet.IsWorkSpecialist = true;
                    break;

                case "Stock Clerk": permissionSet.IsStockClerk = true;
                    break;
                }
                newUser.PermissionSet = permissionSet;
            }

            int returnValue = ApplicationObjects.NewUser(newUser);

            ApplicationObjects.DisplayDataStatus(returnValue);
            if (returnValue == 1)
            {
                return;
            }
            else if (returnValue == 2)
            {
                MessageBox.Show("A user by this name already exists.", "Duplicate User", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            _loginForm.ShowManagerMainForm(userAccount, _loginForm);
            this.Close();
        }
Пример #2
0
        protected void btnRegister_Click(object sender, EventArgs e)
        {
            //Call ValidateRegistration Function
            bool isvailid = ValidateRegistration();

            System.Collections.Hashtable confirmht = new System.Collections.Hashtable();
            if (isvailid == true)
            {
                PermissionSet permissionSet = new PermissionSet();
                permissionSet.IsCustomer = true;
                //add code here to register user.
                string      regUserName = txtFirstName.Text.Substring(0, 1) + txtLastName.Text;
                UserAccount newUser     = new UserAccount(regUserName, txtRegPassword.Text, false);
                newUser.EmailAddress  = txtEmail.Text;
                newUser.FirstName     = txtFirstName.Text;
                newUser.LastName      = txtLastName.Text;
                newUser.PhoneNumber   = txtPhoneNumber.Text;
                newUser.PermissionSet = permissionSet;

                int returnUserValue = ApplicationObjects.NewUser(newUser);
                //Display Status Upon Success
                confirmht.Add("UserName", newUser.UserName);
                if (returnUserValue == 1)
                {
                    return;
                }
                else if (returnUserValue == 2)
                {
                    lblError.Visible = true;
                    lblError.Text    = "A user by this name already exists, duplicate user";
                    return;
                }

                // Populate customer object with user input
                Customer customer = new Customer();
                customer.FirstName    = txtFirstName.Text;
                customer.LastName     = txtLastName.Text;
                customer.PhoneNumber  = txtPhoneNumber.Text;
                customer.EmailAddress = txtEmail.Text;

                // Populate mailing address object with user input
                Address mailingAddress = new Address();
                mailingAddress.PersonId     = customer.PersonId;
                mailingAddress.StreetNumber = int.Parse(txtAddressStreetNumber.Text);
                mailingAddress.StreetName   = txtAddressStreetName.Text;
                mailingAddress.AddressCity  = txtCity.Text;
                mailingAddress.AddressState = txtState.Text;
                mailingAddress.AddressZip   = txtZipCode.Text;
                mailingAddress.AddressType  = AddressType.Mailing;

                // Populate billing address object with user input
                Address billingAddress = new Address();
                billingAddress.PersonId     = customer.PersonId;
                billingAddress.StreetNumber = int.Parse(txtBillingAddressStreetNumber.Text);
                billingAddress.StreetName   = txtBillingAddressStreetName.Text;
                billingAddress.AddressCity  = txtBillingCity.Text;
                billingAddress.AddressState = txtBillingState.Text;
                billingAddress.AddressZip   = txtBillingZipCode.Text;
                billingAddress.AddressType  = AddressType.Billing;

                // Transaction to perform 4 inter-related data inserts on multiple database tables
                using (TransactionScope scope = new TransactionScope())
                {
                    int returnValue = 1;

                    // Write PERSON record to database
                    BusinessObjects _personBusinessObject = new BusinessObjects();
                    returnValue = _personBusinessObject.InsertPersonFromCustomer(customer);
                    if (returnValue == 1)
                    {   // If insert fails, rollback transaction & display error message
                        confirmht.Add("WritePersonRecord", "Failed");
                        scope.Dispose();
                        return;
                    }

                    // Write CUSTOMER record to database
                    BusinessObjects _customerBusinessObject = new BusinessObjects();
                    returnValue = _customerBusinessObject.InsertCustomer(customer);
                    if (returnValue == 1)
                    {   // If insert fails, rollback transaction & display error message
                        confirmht.Add("WriteCustomerRecord", "Failed");
                        scope.Dispose();
                        return;
                    }

                    // Write MAILING ADDRESS record to database
                    BusinessObjects _mailingAddressBusinessObject = new BusinessObjects();
                    returnValue = _mailingAddressBusinessObject.InsertAddress(mailingAddress);
                    if (returnValue == 1)
                    {   // If insert fails, rollback transaction & display error message
                        confirmht.Add("WriteMailingAddress", "Failed");
                        scope.Dispose();
                        return;
                    }

                    // Write BILLING ADDRESS record to database
                    BusinessObjects _billingAddressBusinessObject = new BusinessObjects();
                    returnValue = _billingAddressBusinessObject.InsertAddress(billingAddress);
                    if (returnValue == 1)
                    {   // If insert fails, rollback transaction & display error message
                        confirmht.Add("WriteBillingAddress", "Failed");
                        scope.Dispose();
                        return;
                    }
                    // Committ data transaction & display success message
                    confirmht.Add("CustomerCreated", "Success");
                    confirmht.Add("WriteBillingAddress", "Success");
                    confirmht.Add("WriteMailingAddress", "Success");
                    confirmht.Add("WriteCustomerRecord", "Success");
                    confirmht.Add("WritePersonRecord", "Success");
                    confirmht.Add("Role", "Customer");
                    scope.Complete();
                }// End transaction

                Session["Confirmation"] = confirmht;
                Response.Redirect("Confirmation.aspx");

                txtFirstName.Text           = null;
                txtLastName.Text            = null;
                txtCity.Text                = null;
                txtAddressStreetName.Text   = null;
                txtAddressStreetNumber.Text = null;
                txtEmail.Text               = null;
                txtEmailConfirm.Text        = null;
                txtRegPassword.Text         = null;
                txtRegPasswordConfirm.Text  = null;
            }
        }