You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							185 lines
						
					
					
						
							7.4 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							185 lines
						
					
					
						
							7.4 KiB
						
					
					
				
								using BiskLog_Point_Of_Sale;
							 | 
						|
								using BiskLog_Point_Of_Sale.Cashier_Module;
							 | 
						|
								using BiskLog_Point_Of_Sale.Company_Setup;
							 | 
						|
								using BiskLog_Point_Of_Sale.Multiple_Login;
							 | 
						|
								using System;
							 | 
						|
								using System.Collections.Generic;
							 | 
						|
								using System.ComponentModel;
							 | 
						|
								using System.Data;
							 | 
						|
								using System.Data.SqlClient;
							 | 
						|
								using System.Drawing;
							 | 
						|
								using System.Linq;
							 | 
						|
								using System.Text;
							 | 
						|
								using System.Threading.Tasks;
							 | 
						|
								using System.Windows.Forms;
							 | 
						|
								
							 | 
						|
								namespace Point_Of_Sale_Managment
							 | 
						|
								{
							 | 
						|
								    public partial class AdminUser : Form
							 | 
						|
								    {
							 | 
						|
								        SqlConnection cn;
							 | 
						|
								        SqlCommand cm;
							 | 
						|
								        DatabaseConn conn = new DatabaseConn();
							 | 
						|
								        SqlDataReader dr;
							 | 
						|
								        string firstname = "", surname = "", address1 = "", address2 = "", state = "", phone = "", email = "", pass = "";
							 | 
						|
								        private void TxtPassword_KeyDown(object sender, KeyEventArgs e)
							 | 
						|
								        {
							 | 
						|
								            if (e.KeyCode == Keys.Back)
							 | 
						|
								            {
							 | 
						|
								                txtPassword.Text = "";
							 | 
						|
								                txtConfirmation.Text = "";
							 | 
						|
								            }
							 | 
						|
								        }
							 | 
						|
								        private async void Button1_Click(object sender, EventArgs e)
							 | 
						|
								        {
							 | 
						|
								            if ((txtPassword.Text.Equals(txtConfirmation.Text)) && !String.IsNullOrEmpty(txtPassword.Text))
							 | 
						|
								            {
							 | 
						|
								                Task<int> task = new Task<int>(updateDetails);
							 | 
						|
								                holding.Visible = true;
							 | 
						|
								                button1.Enabled = false;
							 | 
						|
								                button2.Enabled = false;
							 | 
						|
								                task.Start();
							 | 
						|
								                int result = await task;
							 | 
						|
								                if (result == 1)
							 | 
						|
								                {
							 | 
						|
								                    string title = "Success";
							 | 
						|
								                    string message = "Update successful";
							 | 
						|
								                    NoAction noAction = new NoAction(title, message);
							 | 
						|
								                    noAction.BringToFront();
							 | 
						|
								                    noAction.ShowDialog();
							 | 
						|
								                }
							 | 
						|
								                else
							 | 
						|
								                {
							 | 
						|
								                    string title = "Error Occurred";
							 | 
						|
								                    string message = "An error occurred while updating user details, please try again later";
							 | 
						|
								                    NoAction noAction = new NoAction(title, message);
							 | 
						|
								                    noAction.BringToFront();
							 | 
						|
								                    noAction.ShowDialog();
							 | 
						|
								                }
							 | 
						|
								                holding.Visible = false;
							 | 
						|
								                button1.Enabled = true;
							 | 
						|
								                button2.Enabled = true;
							 | 
						|
								            }
							 | 
						|
								
							 | 
						|
								        }
							 | 
						|
								        public AdminUser()
							 | 
						|
								        {
							 | 
						|
								            InitializeComponent();
							 | 
						|
								            cn = new SqlConnection(conn.MyConnection());
							 | 
						|
								            holding.Left = (ClientSize.Width - holding.Width) / 2;
							 | 
						|
								        }
							 | 
						|
								        private async void AdminUser_Load(object sender = null, EventArgs e = null)
							 | 
						|
								        {
							 | 
						|
								            Task<int> task = new Task<int>(getUser);
							 | 
						|
								            holding.Visible = true;
							 | 
						|
								            task.Start();
							 | 
						|
								            int result = await task;
							 | 
						|
								            if (result == 0)
							 | 
						|
								            {
							 | 
						|
								                string title = "Error Occurred";
							 | 
						|
								                string message = "An error occurred while getting user details, please try again later";
							 | 
						|
								                NoAction noAction = new NoAction(title, message);
							 | 
						|
								                noAction.BringToFront();
							 | 
						|
								                noAction.ShowDialog();
							 | 
						|
								            }
							 | 
						|
								            holding.Visible = false;
							 | 
						|
								        }
							 | 
						|
								        public int getUser()
							 | 
						|
								        {
							 | 
						|
								            string currentUser;
							 | 
						|
								            currentUser = MainLogin.login_user;
							 | 
						|
								
							 | 
						|
								            try
							 | 
						|
								            {
							 | 
						|
								                cn.Open();
							 | 
						|
								                cm = new SqlCommand("Select firstname,surname,street_address1,street_address2,tblUsers.state_or_province,telephone,email,access_level," +
							 | 
						|
								                    "tblBranches.branchName,username,password from tblUsers Left Join tblBranches On tblBranches.branchID = tblUsers.branchID where username = @username", cn);
							 | 
						|
								                cm.Parameters.AddWithValue("@username", currentUser);
							 | 
						|
								                cm.ExecuteNonQuery();
							 | 
						|
								                dr = cm.ExecuteReader();
							 | 
						|
								                dr.Read();
							 | 
						|
								                if (dr.HasRows)
							 | 
						|
								                {
							 | 
						|
								                    txtBranch.Invoke(new Action(() =>
							 | 
						|
								                    {
							 | 
						|
								                        txtBranch.Text = dr["branchName"].ToString();
							 | 
						|
								                        firstname = txtFirstname.Text = dr[0].ToString();
							 | 
						|
								                        surname = txtSurname.Text = dr[1].ToString();
							 | 
						|
								                        address1 = txtAddress1.Text = dr[2].ToString();
							 | 
						|
								                        address2 = txtAddress2.Text = dr[3].ToString();
							 | 
						|
								                        state = txtState.Text = dr[4].ToString();
							 | 
						|
								                        phone = txtPhone.Text = dr[5].ToString();
							 | 
						|
								                        email = txtEmail.Text = dr[6].ToString();
							 | 
						|
								                        switch (dr[7].ToString())
							 | 
						|
								                        {
							 | 
						|
								                            case "owner":
							 | 
						|
								                                acesslevel.Text = "Owner";
							 | 
						|
								                                break;
							 | 
						|
								                            case "manager":
							 | 
						|
								                                acesslevel.Text = "Manager";
							 | 
						|
								                                break;
							 | 
						|
								                            case "assist":
							 | 
						|
								                                acesslevel.Text = "Assistant Manager";
							 | 
						|
								                                break;
							 | 
						|
								                            case "cashier":
							 | 
						|
								                                acesslevel.Text = "Cashier";
							 | 
						|
								                                break;
							 | 
						|
								                        }
							 | 
						|
								                        txtusername.Text = dr[9].ToString();
							 | 
						|
								                        pass = txtPassword.Text = passwordEncryption.Decrypt(dr[10].ToString());
							 | 
						|
								                        txtConfirmation.Text = passwordEncryption.Decrypt(dr[10].ToString());
							 | 
						|
								                    }));
							 | 
						|
								                }
							 | 
						|
								                dr.Close();
							 | 
						|
								                cn.Close();
							 | 
						|
								                return 1;
							 | 
						|
								            }
							 | 
						|
								            catch
							 | 
						|
								            {
							 | 
						|
								                cn.Close();
							 | 
						|
								                return 0;
							 | 
						|
								            }
							 | 
						|
								        }
							 | 
						|
								        public int updateDetails()
							 | 
						|
								        {
							 | 
						|
								            try
							 | 
						|
								            {
							 | 
						|
								                cn.Open();
							 | 
						|
								                cm = new SqlCommand("Update tblUsers set firstname = @firstname,surname = @surname,street_address1=@address1,street_address2 = @address2,state_or_province = @state," +
							 | 
						|
								                    "telephone = @telephone,email = @email,password = @password where username = @username", cn);
							 | 
						|
								                cm.Parameters.AddWithValue("@username", MainLogin.login_user);
							 | 
						|
								                txtFirstname.Invoke(new Action(() =>
							 | 
						|
								               {
							 | 
						|
								                   cm.Parameters.AddWithValue("@firstname", txtFirstname.Text);
							 | 
						|
								                   cm.Parameters.AddWithValue("@surname", txtSurname.Text);
							 | 
						|
								                   cm.Parameters.AddWithValue("@address1", txtAddress1.Text);
							 | 
						|
								                   cm.Parameters.AddWithValue("@address2", txtAddress2.Text);
							 | 
						|
								                   cm.Parameters.AddWithValue("@state", txtState.Text);
							 | 
						|
								                   cm.Parameters.AddWithValue("@email", txtEmail.Text);
							 | 
						|
								                   cm.Parameters.AddWithValue("@telephone", txtPhone.Text);
							 | 
						|
								                   cm.Parameters.AddWithValue("@password", passwordEncryption.Encrypt(txtPassword.Text));
							 | 
						|
								                   cm.ExecuteNonQuery();
							 | 
						|
								               }));
							 | 
						|
								                cn.Close();
							 | 
						|
								                return 1;
							 | 
						|
								            }
							 | 
						|
								            catch
							 | 
						|
								            {
							 | 
						|
								                cn.Close();
							 | 
						|
								                return 0;
							 | 
						|
								            }
							 | 
						|
								        }
							 | 
						|
								        private void Button2_Click(object sender, EventArgs e)
							 | 
						|
								        {
							 | 
						|
								            txtFirstname.Text = firstname;
							 | 
						|
								            txtSurname.Text = surname;
							 | 
						|
								            txtAddress1.Text = address1;
							 | 
						|
								            txtAddress2.Text = address2;
							 | 
						|
								            txtState.Text = state;
							 | 
						|
								            txtPhone.Text = phone;
							 | 
						|
								            txtEmail.Text = email;
							 | 
						|
								            txtPassword.Text = pass;
							 | 
						|
								            txtConfirmation.Text = pass;
							 | 
						|
								        }
							 | 
						|
								    }
							 | 
						|
								}
							 | 
						|
								
							 |