Example #1
0
        private void GetOrdersOnCurrentRun()
        {
            string sqlRequest = "Select Client, CargoWeight, (select PhoneNumber from Users where Username = Client)[phoneNumber] from Orders where run = '" + FillCurrentDirectionRuns.Rows[RunsOnChosenDirection.SelectedIndex][0] + "'";

            FillCurrentRunOrders = new DataTable();
            try
            {
                SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                adapter.Fill(FillCurrentRunOrders);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }

            AllOrdersOnCurrentRun.Visibility = Visibility.Visible;
            if (FillCurrentRunOrders.Rows.Count != 0)
            {
                AllOrdersOnCurrentRunTable.ItemsSource = FillCurrentRunOrders.DefaultView;
                AllOrdersOnCurrentRunTable.Visibility  = Visibility.Visible;
                AllOrdersTopic.Visibility = Visibility.Visible;
                NoOrders.Visibility       = Visibility.Collapsed;
            }
            else
            {
                AllOrdersOnCurrentRunTable.Visibility = Visibility.Collapsed;
                AllOrdersTopic.Visibility             = Visibility.Collapsed;
                NoOrders.Visibility = Visibility.Visible;
            }
        }
        private void showFullMessage(int messageID)
        {
            string    sqlRequest     = "Select [from], headerMessage, messageMain, [to]  from ALLMESSAGERS where IDmessage = '" + messageID + "';";
            DataTable CurrentMessage = new DataTable();

            try
            {
                SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                adapter.Fill(CurrentMessage);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            if (!outMessage)
            {
                sqlRequest = "Update ALLMESSAGERS set IsReaded = 1 where IDmessage = '" + messageID + "'";
            }
            ConnectionToDatabase.insertData(sqlRequest);
            Sender.Text                = Convert.ToString(CurrentMessage.Rows[0][0]);
            Adresee.Text               = Convert.ToString(CurrentMessage.Rows[0][3]);
            Header.Text                = Convert.ToString(CurrentMessage.Rows[0][1]);
            Text.Text                  = Convert.ToString(CurrentMessage.Rows[0][2]);
            ReadMessage.Visibility     = Visibility.Visible;
            ShowAllMessages.Visibility = Visibility.Collapsed;
        }
Example #3
0
        private void loadRunsTable()
        {
            string sqlRequest = "select Run , DepartureDate, (Select COUNT(*) from orders where Run =r.Run)[OrderCount], RunStatus from RUNS r where DIRECTION ='" + FilLCurrentUserDirections.Rows[AllDirections.SelectedIndex][0] + "'";

            FillCurrentDirectionRuns = new DataTable();
            try
            {
                SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                adapter.Fill(FillCurrentDirectionRuns);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            if (FillCurrentDirectionRuns.Rows.Count != 0)
            {
                RunsOnChosenDirection.Visibility = Visibility.Visible;
                NoRuns.Visibility = Visibility.Collapsed;
                RunsOnChosenDirection.ItemsSource = FillCurrentDirectionRuns.DefaultView;
            }
            else
            {
                RunsOnChosenDirection.Visibility = Visibility.Collapsed;
                NoRuns.Visibility = Visibility.Visible;
            }
        }
        private void LoadOrders()
        {
            string sqlRequest = "select [Order],DepartingPoint, ArrivalPoint, Price*CargoWeight[OrderPrice], CargoWeight, OrderStatus " +
                                "from Orders Inner join Runs on Orders.Run = Runs.Run " +
                                "inner join Direction on Runs.Direction = Direction.Direction where Client = '" + CurrentUser.UsernameV + "'";

            CurrentUserOrders = new DataTable();
            try
            {
                SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                adapter.Fill(CurrentUserOrders);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            if (CurrentUserOrders.Rows.Count == 0)
            {
                ThisUserOrders.Visibility = System.Windows.Visibility.Collapsed;
                tip.Visibility            = Visibility.Collapsed;
                NoOrders.Visibility       = System.Windows.Visibility.Visible;
            }
            else
            {
                NoOrders.Visibility        = System.Windows.Visibility.Collapsed;
                tip.Visibility             = Visibility.Visible;
                ThisUserOrders.ItemsSource = CurrentUserOrders.DefaultView;
            }
        }
Example #5
0
        private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            string         sqlRequest = "select Username from users where Userstatus = 'Carrier'";
            SqlDataAdapter adapter    = ConnectionToDatabase.GetRequestResult(sqlRequest);
            DataTable      Carriers   = new DataTable();

            try
            {
                adapter.Fill(Carriers);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            ForAdmin.Items.Clear();
            for (int i = 0; i < Carriers.Rows.Count; i++)
            {
                ForAdmin.Items.Add(Convert.ToString(Carriers.Rows[i][0]));
            }
            if (CurrentUser.UserStatusV == "Admin")
            {
                ForAdmin.Visibility     = Visibility.Visible;
                ForAdminText.Visibility = Visibility.Visible;
                carrier = Convert.ToString(ForAdmin.SelectedItem);
            }
            else
            {
                ForAdminText.Visibility = Visibility.Collapsed;
                ForAdmin.Visibility     = Visibility.Collapsed;
                carrier = CurrentUser.UsernameV;
            }
            LoadTable(carrier);
        }
Example #6
0
        private void LoadTable(string carrier)
        {
            string sqlRequest = "select distinct dir.Direction, DepartingPoint, ArrivalPoint, cast(Departing as time(0))[DepartingTime], (Select Count(*) from Runs where Direction =dir.Direction)[RunsCountByDir] " +
                                "from DIRECTION dir " +
                                "where Carrier = '" + carrier + "'";

            FilLCurrentUserDirections = new DataTable();
            SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);

            try
            {
                adapter.Fill(FilLCurrentUserDirections);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            if (FilLCurrentUserDirections.Rows.Count == 0)
            {
                AllDirections.Visibility = Visibility.Collapsed;
                NoDirections.Visibility  = Visibility.Visible;
            }
            else
            {
                AllDirections.Visibility  = Visibility.Visible;
                NoDirections.Visibility   = Visibility.Collapsed;
                AllDirections.ItemsSource = FilLCurrentUserDirections.DefaultView;
            }
        }
 private void NewMessage_Click(object sender, RoutedEventArgs e)
 {
     if (CurrentUser.UserStatusV == "Admin")
     {
         {
             string    sqlRequest = "select Username from users where Userstatus != 'Admin'";
             DataTable Users      = new DataTable();
             try
             {
                 SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                 adapter.Fill(Users);
             }
             catch
             {
                 Switcher.Switch(new FirstPage());
             }
             SelectUser.Items.Clear();
             for (int i = 0; i < Users.Rows.Count; i++)
             {
                 SelectUser.Items.Add(Convert.ToString(Users.Rows[i][0]));
             }
             SelectUser.SelectedIndex = 0;
         }
         MessageText.Height     = 128;
         ChooseUsers.Visibility = Visibility.Visible;
     }
     else
     {
         MessageText.Height     = 150;
         ChooseUsers.Visibility = Visibility.Collapsed;
     }
     ShowAllMessages.Visibility = Visibility.Collapsed;
     WriteNewMessage.Visibility = Visibility.Visible;
 }
        private void FillOutcomingMessages()
        {
            string sqlRequest = "select IDmessage, [from] , headerMessage, case when IsReaded = 0 then N'Не прочитано' else N'Прочитано' end IsReaded from ALLMESSAGERS where [from] = '" + Receiver + "'";

            Outcoming = new DataTable();
            try
            {
                SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                adapter.Fill(Outcoming);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            if (Outcoming.Rows.Count != 0)
            {
                NoOutcoming.Visibility  = Visibility.Collapsed;
                OutMessages.Visibility  = Visibility.Visible;
                OutMessages.ItemsSource = Outcoming.DefaultView;
            }
            else
            {
                NoOutcoming.Visibility = Visibility.Visible;
                OutMessages.Visibility = Visibility.Collapsed;
            }
        }
Example #9
0
        private void getOrderInfo()
        {
            string SqlRequest = "select DepartingPoint, ArrivalPoint, cast (DepartureDate as date) [DepartureDate], cast(Departing as time(0))[DepartingTime],cast(Arrival as time(0))[ArrivalTime], (select Count (*) from ORDERS)[OrderAmount], Price, case when r.AvailableSpace is NULL or (select sum (CargoWeight) from Orders where Run = r.Run) is null then 0 else (r.AvailableSpace -(select sum (CargoWeight) from Orders where Run = r.Run)) end SpaceAvailable " +
                                "from DIRECTION inner join Runs r on r.Direction = DIRECTION.Direction where Run = " + NewOrder.RunV;
            SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(SqlRequest);

            adapter.Fill(OrderInfo);
        }
Example #10
0
        private void LoadTable()
        {
            string SqlRequest = "select direction.Direction[DirectionKey], Run[RunKey], DepartingPoint, ArrivalPoint, cast(Departing as time(0))[DepartingTime],cast(Arrival as time(0))[ArrivalTime], Round((cast(datediff(minute, Departing, Arrival) as float(2)) / 60), 2)[TimeToReach],Price, cast (DepartureDate as date) [DepartureDate], Carrier, Ranking " +
                                " from DIRECTION inner join Runs on RUNS.Direction = DIRECTION.Direction " +
                                "inner join USERS on DIRECTION.Carrier = USERS.Username ";

            if (FromPoint.Text != "" || ToPoint.Text != "")
            {
                SqlRequest += "where ";
            }
            if (FromPoint.Text != "")
            {
                SqlRequest += "(DepartingPoint = N'" + FromPoint.Text + "')";
                if (ToPoint.Text != "")
                {
                    SqlRequest += " and ";
                }
            }
            if (ToPoint.Text != "")
            {
                SqlRequest += "(ArrivalPoint = N'" + ToPoint.Text + "')";
            }
            SqlRequest += " Order by ";
            if (HowToSort.SelectedIndex == 0)
            {
                SqlRequest += " TimeToReach";
            }
            else
            {
                SqlRequest += " Price";
            }
            if (Order.SelectedIndex == 1)
            {
                SqlRequest += " Desc";
            }
            DirectionsTable = new DataTable();
            try
            {
                SqlDataAdapter Adapter = ConnectionToDatabase.GetRequestResult(SqlRequest);
                Adapter.Fill(DirectionsTable);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            if (DirectionsTable.Rows.Count == 0)
            {
                AllDirections.Visibility = System.Windows.Visibility.Collapsed;
                Tip.Text = "Поиск не дал результатов.";
            }
            else
            {
                AllDirections.Visibility = System.Windows.Visibility.Visible;
                Tip.Text = "Нажмите на результат, для бронирования места";
                AllDirections.ItemsSource = DirectionsTable.DefaultView;
            }
        }
Example #11
0
        private void UpdateTable()
        {
            SqlDataAdapter adapter;
            string         sqlRequest = "select Username, UserPassword, Userstatus, PhoneNumber, Convert(nvarchar,RegistrationDate,1)[RegistrationDate1], Ranking from USERS ";

            if (SearchVar.Text != "" && SearchVar.Text != null && SearchVar.Text != " ")
            {
                sqlRequest += "where ";
                switch (SearchParams.SelectedIndex)
                {
                case 0:
                    sqlRequest += "Username";
                    break;

                case 1:
                    sqlRequest += "PhoneNumber";
                    break;
                }
                sqlRequest += " like N'%" + SearchVar.Text + "%' ";
            }
            sqlRequest += "ORDER BY ";
            switch (SortPref.SelectedIndex)
            {
            case 0:
                sqlRequest += "Username";
                break;

            case 1:
                sqlRequest += "Userstatus";
                break;

            case 2:
                sqlRequest += "Ranking";
                break;

            case 3:
                sqlRequest += "RegistrationDate";
                break;
            }
            if (SortOrder.SelectedIndex == 1)
            {
                sqlRequest += " Desc";
            }
            UsersTable = new DataTable();
            try
            {
                adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                adapter.Fill(UsersTable);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
            AllUsers.ItemsSource = UsersTable.DefaultView;
        }
Example #12
0
        private void Enter(object sender, RoutedEventArgs e)
        {
            if (UsernameEntered.Text.Length == 0)
            {
                UsernameEntered.BorderBrush = Brushes.Red;
                UsernameError.Text          = "Заполните это поле";
            }
            if (PasswordEntered.Password.Length == 0)
            {
                PasswordEntered.BorderBrush = Brushes.Red;
                passwordError.Text          = "Заполните это поле";
            }

            if (UsernameError.Text == "" && passwordError.Text == "")
            {
                string         sqlCommand    = "select UserPassword from Users where Username = '******'";
                SqlDataAdapter adapter       = ConnectionToDatabase.GetRequestResult(sqlCommand);
                DataTable      ThisUser      = new DataTable();
                DataTable      ThisUserFound = new DataTable();
                try
                {
                    adapter.Fill(ThisUser);
                }
                catch (Exception ex)
                {
                    Switcher.Switch(new pages.FirstPage());
                }
                if (ThisUser.Rows.Count == 0)
                {
                    UsernameEntered.BorderBrush = Brushes.Red;
                    UsernameError.Text          = "Пользователь не найден, проверьте введённые данные";
                }
                else
                {
                    if (Convert.ToString(ThisUser.Rows[0][0]) != PasswordEntered.Password)
                    {
                        PasswordEntered.BorderBrush = Brushes.Red;
                        passwordError.Text          = "Неверный пароль";
                    }
                    else
                    {
                        sqlCommand = "select * from Users where Username = '******'";
                        adapter    = ConnectionToDatabase.GetRequestResult(sqlCommand);
                        adapter.Fill(ThisUserFound);
                        DBUsers      EnteredUser = new DBUsers((string)ThisUserFound.Rows[0][0], (string)ThisUserFound.Rows[0][1], (long)ThisUserFound.Rows[0][3], (string)ThisUserFound.Rows[0][2], (DateTime)ThisUserFound.Rows[0][4], (int)ThisUserFound.Rows[0][5]);
                        SendedObject Send        = new SendedObject(EnteredUser);
                        Switcher.Switch(new UserMainPage(), Send);
                    }
                }
            }
        }
Example #13
0
        private void AddRunButton_Click(object sender, RoutedEventArgs e)
        {
            Regex reg = new Regex(@"^\d{2}-\d{2}-\d{4}$");

            if (RunDepartingTime.Text.Length == 0)
            {
                RunDepartingTimeError.Text   = "Заполните это поле";
                RunDepartingTime.BorderBrush = Brushes.Red;
            }
            else
            {
                if (!reg.IsMatch(RunDepartingTime.Text))
                {
                    RunDepartingTimeError.Text   = "Введите дату в формате дд-мм-гггг";
                    RunDepartingTime.BorderBrush = Brushes.Red;
                }
            }

            reg = new Regex(@"\D");
            if (RunAvailableCapacity.Text.Length == 0)
            {
                RunAvailableCapacityError.Text   = "Заполните это поле";
                RunAvailableCapacity.BorderBrush = Brushes.Red;
            }
            else
            {
                if (reg.IsMatch(RunAvailableCapacity.Text))
                {
                    RunAvailableCapacityError.Text   = "Введено некорректное значение";
                    RunAvailableCapacity.BorderBrush = Brushes.Red;
                }
            }

            if (RunAvailableCapacityError.Text == "" && RunDepartingTimeError.Text == "")
            {
                string sqlRequest = "insert into RUNS (RUN, Direction, DepartureDate, AvailableSpace, RunStatus) values (select((select count (*) from RUNS )+1), '" + FilLCurrentUserDirections.Rows[AllDirections.SelectedIndex][0] + "', '" + RunDepartingTime.Text + "', '" + RunAvailableCapacity.Text + "', 'Ordered' )";
                try
                {
                    ConnectionToDatabase.insertData(sqlRequest);
                }
                catch
                {
                    Switcher.Switch(new FirstPage());
                }
                loadRunsTable();
                AddRun.Visibility = Visibility.Collapsed;
            }
        }
        private void OrdersAmount()
        {
            string    SqlRequest = "select Count(*) from ORDERS where client = '" + CurrentUser.UsernameV + "'";
            DataTable OrderCount = new DataTable();

            try
            {
                SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(SqlRequest);
                adapter.Fill(OrderCount);
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }

            ShowOrderAmount.Text = "Колличество заказов: " + OrderCount.Rows[0][0];
        }
Example #15
0
        private void AllUsers_Selected(object sender, RoutedEventArgs e)
        {
            switch (UsersTable.Rows[AllUsers.SelectedIndex][2])
            {
            case "User":
                ShowStatus.SelectedIndex = 0;
                break;

            case "Carrier":
                ShowStatus.SelectedIndex = 1;
                break;

            case "Admin":
                ShowStatus.SelectedIndex = 2;
                break;
            }
            ShowRanking.Value                = Convert.ToDouble(UsersTable.Rows[AllUsers.SelectedIndex][5]);
            AboutAccount.Visibility          = Visibility.Visible;
            ChangeSelectedAccount.Visibility = Visibility.Visible;
            {
                string sqlRequest = "select [Order],DepartingPoint, ArrivalPoint, Price*CargoWeight[OrderPrice], CargoWeight, OrderStatus " +
                                    "from Orders Inner join Runs on Orders.Run = Runs.Run " +
                                    "inner join Direction on Runs.Direction = Direction.Direction where Client = '" + UsersTable.Rows[AllUsers.SelectedIndex][0] + "'";
                DataTable CurrentUserOrders = new DataTable();
                try
                {
                    SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                    adapter.Fill(CurrentUserOrders);
                }
                catch
                {
                    Switcher.Switch(new FirstPage());
                }
                if (CurrentUserOrders.Rows.Count == 0)
                {
                    ThisUserOrders.Visibility = System.Windows.Visibility.Collapsed;
                }
                else
                {
                    ThisUserOrders.ItemsSource = CurrentUserOrders.DefaultView;
                }
                Status.Text    = "Пользователь: " + Convert.ToString(UsersTable.Rows[AllUsers.SelectedIndex][0]) + "  Статус пользователя: " + Convert.ToString(UsersTable.Rows[AllUsers.SelectedIndex][2]) + "  Рейтинг: " + Convert.ToString(UsersTable.Rows[AllUsers.SelectedIndex][5]);
                AllOrders.Text = "Всего заказов: " + Convert.ToString(CurrentUserOrders.Rows.Count);
            }
        }
Example #16
0
 private void DeleteDirection_Click(object sender, RoutedEventArgs e)
 {
     if (AllDirections.SelectedIndex != -1)
     {
         string sqlRequest = "Delete DIRECTION where direction = '" + FilLCurrentUserDirections.Rows[AllDirections.SelectedIndex][0] + "'";
         try
         {
             ConnectionToDatabase.insertData(sqlRequest);
         }
         catch
         {
             Switcher.Switch(new FirstPage());
         }
         LoadTable(carrier);
     }
     RunsOnChosenDirectionStats.Visibility = Visibility.Collapsed;
     DeleteDirection.Visibility            = Visibility.Collapsed;
 }
        private void ThisUserOrders_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            MessageBoxResult messsageBox = MessageBox.Show("Вы действительно хотите отменить заказ?", "Отменить заказ", MessageBoxButton.YesNo);

            if (messsageBox == MessageBoxResult.Yes)
            {
                string sql = "delete orders where [order] = '" + CurrentUserOrders.Rows[ThisUserOrders.SelectedIndex][0] + "'";
                try
                {
                    ConnectionToDatabase.insertData(sql);
                }
                catch
                {
                    Switcher.Switch(new FirstPage());
                }
                MessageBox.Show("Заказ отменён");
                OrdersAmount();
                LoadOrders();
            }
        }
Example #18
0
 private void ToMakeOrder(object sender, RoutedEventArgs e)
 {
     if (EnterWeight.Text.Length == 0)
     {
         EnterError.Text         = "Заполните это поле";
         EnterWeight.BorderBrush = Brushes.Red;
     }
     else
     {
         if (Regex.IsMatch(EnterWeight.Text, @"\D"))
         {
             EnterError.Text         = "Введены некорректные данные";
             EnterWeight.BorderBrush = Brushes.Red;
         }
         else
         {
             if (Convert.ToInt32(OrderInfo.Rows[0][7]) == 0)
             {
                 EnterError.Text         = "Введённая масса не может быть перевезена этим перевозчиком";
                 EnterWeight.BorderBrush = Brushes.Red;
             }
             else if (Convert.ToInt32(EnterWeight.Text) > Convert.ToInt32(OrderInfo.Rows[0][7]))
             {
                 EnterError.Text         = "Введённая масса не может быть перевезена этим перевозчиком";
                 EnterWeight.BorderBrush = Brushes.Red;
             }
         }
     }
     if (EnterError.Text == "")
     {
         MessageBoxResult messageBox = MessageBox.Show("Вы действительно хотите оформить заказ?", "Подтвердите действие", MessageBoxButton.YesNo);
         if (messageBox == MessageBoxResult.Yes)
         {
             string sqlRequest = "insert into Orders ([Order], CargoWeight, Run, Client, OrderStatus) values " +
                                 "('" + NewOrder.OrderV + "', '" + EnterWeight.Text + "', '" + NewOrder.RunV + "', '" + NewOrder.ClientV + "', '" + NewOrder.OrderStatusV + "')";
             ConnectionToDatabase.insertData(sqlRequest);
             MessageBox.Show("Заказ оформлен успешно");
             ToFindDirection();
         }
     }
 }
Example #19
0
        private void CompleteRun_Click(object sender, RoutedEventArgs e)
        {
            string sqlCommand = "update RUNS set RunStatus = 'Completed' where run = '" + FillCurrentDirectionRuns.Rows[RunsOnChosenDirection.SelectedIndex][0] + "'";

            sqlCommand += " update Orders set OrderStatus = 'Completed' Where run = '" + FillCurrentDirectionRuns.Rows[RunsOnChosenDirection.SelectedIndex][0] + "'";
            MessageBoxResult messsageBox = MessageBox.Show("Вы действительно хотите подтвердить прибытие рейса?", "Подтвердить прибытие рейса", MessageBoxButton.YesNo);

            if (messsageBox == MessageBoxResult.Yes)
            {
                MessageBox.Show("Прибытие рейса подтверждено");
                try
                {
                    ConnectionToDatabase.insertData(sqlCommand);
                }
                catch
                {
                    Switcher.Switch(new FirstPage());
                }
                deleteRun.Visibility   = Visibility.Collapsed;
                completeRun.Visibility = Visibility.Collapsed;
            }
        }
Example #20
0
        private void SaveChanges_Click(object sender, RoutedEventArgs e)
        {
            if (ChangePassword.Text.Length < 4 && ChangePassword.Text.Length != 0)
            {
                PasswordError.Text         = "Пароль слишком короткий (минимум 4 символа)";
                ChangePassword.BorderBrush = Brushes.Red;
            }
            if ((ChangePhone.Text.Length < 12 || Regex.IsMatch(ChangePhone.Text, @"\D")) && ChangePhone.Text.Length != 0)
            {
                PhoneError.Text         = "Введите корректный номер мобильного телефона, начиная с цифры";
                ChangePhone.BorderBrush = Brushes.Red;
            }

            if (PhoneError.Text == "" && PasswordError.Text == "")
            {
                string sqlRequest = "Update USERS set Userstatus = '" + ShowStatus.Text + "' where Username = '******'";
                if (ChangePassword.Text.Length != 0)
                {
                    sqlRequest += " Update USERS set UserPassword = '******' where Username = '******'";
                }
                if (ChangePhone.Text.Length != 0)
                {
                    sqlRequest += " Update USERS set PhoneNumber = '" + ChangePhone.Text + "' where Username = '******'";
                }
                sqlRequest += "Update USERS set Ranking = '" + ShowRanking.Value + "' where Username = '******'";
                try
                {
                    ConnectionToDatabase.insertData(sqlRequest);
                }
                catch
                {
                    Switcher.Switch(new FirstPage());
                }
                MessageBox.Show("Данные успешно обновлены");
                ChangeSelectedAccount.Visibility = Visibility.Collapsed;
                UpdateTable();
            }
        }
        private void SendMessageButtonClick(object sender, RoutedEventArgs e)
        {
            if (EnterHeader.Text.Length == 0)
            {
                EnterHeader.BorderBrush = Brushes.Red;
                EnterHeaderError.Text   = "Это обязательное поле";
            }

            if (EnterHeaderError.Text == "")
            {
                string ToSomeone, FromSomeone;
                if (CurrentUser.UserStatusV != "Admin")
                {
                    ToSomeone   = "ADMIN";
                    FromSomeone = CurrentUser.UsernameV;
                }
                else
                {
                    FromSomeone = "ADMIN";
                    ToSomeone   = Convert.ToString(SelectUser.SelectedItem);
                }
                string sqlRequest = "insert into ALLMESSAGERS (IDmessage, [from], [to], headerMessage, messageMain, IsReaded) values ((select count(*) from ALLMESSAGERS)+1, '" + FromSomeone + " ', '" + ToSomeone + " ' , N'" + EnterHeader.Text + " ', N'" + MessageText.Text + " ', 0)";
                try
                {
                    ConnectionToDatabase.insertData(sqlRequest);
                }
                catch
                {
                    Switcher.Switch(new FirstPage());
                }
                MessageBox.Show("Письмо отправлено");

                FillIncomingMessages();
                FillOutcomingMessages();
                ToMainView();
            }
        }
        private void Register(object sender, RoutedEventArgs e)
        {
            string    sqlRequest = "select Username from Users where Username = '******'";
            DataTable Usernames  = new DataTable();

            try
            {
                if (UsernameEntered.Text.Length == 0)
                {
                    usernameError.Text          = "Заполните это поле";
                    UsernameEntered.BorderBrush = Brushes.Red;
                }
                else
                {
                    if (Regex.IsMatch(UsernameEntered.Text, @"\W"))
                    {
                        usernameError.Text          = "Имя пользователя должно состоять из чисел и букв";
                        UsernameEntered.BorderBrush = Brushes.Red;
                    }
                    else
                    {
                        SqlDataAdapter adapter = ConnectionToDatabase.GetRequestResult(sqlRequest);
                        adapter.Fill(Usernames);
                        if (Usernames.Rows.Count != 0)
                        {
                            usernameError.Text          = "Имя пользователя занято";
                            UsernameEntered.BorderBrush = Brushes.Red;
                        }
                    }
                }
                if (PasswordEntered1.Password.Length == 0)
                {
                    password1Error.Text          = "Заполните это поле";
                    PasswordEntered1.BorderBrush = Brushes.Red;
                }
                else
                {
                    if (PasswordEntered1.Password.Length < 4)
                    {
                        password1Error.Text          = "Пароль слишком короткий (минимум 4 символа)";
                        PasswordEntered1.BorderBrush = Brushes.Red;
                    }
                }
                if (PasswordEntered2.Password.Length == 0)
                {
                    password2Error.Text          = "Заполните это поле";
                    PasswordEntered2.BorderBrush = Brushes.Red;
                }
                else
                {
                    if (PasswordEntered1.Password != PasswordEntered2.Password)
                    {
                        password2Error.Text          = "Пароли не совпадают";
                        PasswordEntered1.BorderBrush = Brushes.Red;
                        PasswordEntered2.BorderBrush = Brushes.Red;
                    }
                }
                if (PhoneNumber.Text.Length == 0)
                {
                    phoneError.Text         = "Заполните это поле";
                    PhoneNumber.BorderBrush = Brushes.Red;
                }
                else
                {
                    if (PhoneNumber.Text.Length < 12 || Regex.IsMatch(PhoneNumber.Text, @"\D"))
                    {
                        phoneError.Text         = "Введите корректный номер мобильного телефона, начиная с цифры";
                        PhoneNumber.BorderBrush = Brushes.Red;
                    }
                }

                if (usernameError.Text == "" && password1Error.Text == "" && password2Error.Text == "" && phoneError.Text == "")
                {
                    DBUsers CurrentUser = new DBUsers(UsernameEntered.Text, PasswordEntered1.Password, Convert.ToInt64(PhoneNumber.Text));

                    sqlRequest = "insert into " +
                                 "USERS (Username, UserPassword,  PhoneNumber, RegistrationDate, Ranking) " +
                                 "values ('" + CurrentUser.UsernameV + "', '" + CurrentUser.UserPasswordV + "', '" + CurrentUser.PhoneNumberV + "', '" + CurrentUser.RegistrarionDateV.Year + "-" + CurrentUser.RegistrarionDateV.Month + "-" + CurrentUser.RegistrarionDateV.Day + "', '" + CurrentUser.RankingV + "')";
                    int i = ConnectionToDatabase.insertData(sqlRequest);
                    if (i == 0)
                    {
                        SendedObject send = new SendedObject(CurrentUser);
                        Switcher.Switch(new UserMainPage(), send);
                    }
                }
            }
            catch
            {
                Switcher.Switch(new FirstPage());
            }
        }
Example #23
0
        private void AddDirectionButton_Click(object sender, RoutedEventArgs e)
        {
            if (DepartingPointIn.Text.Length == 0)
            {
                DepartingPointInError.Text   = "Заполните это поле";
                DepartingPointIn.BorderBrush = Brushes.Red;
            }
            if (ArrivalPointIn.Text.Length == 0)
            {
                ArrivalPointInError.Text   = "Заполните это поле";
                ArrivalPointIn.BorderBrush = Brushes.Red;
            }
            if (PriceIn.Text.Length == 0)
            {
                PriceInError.Text   = "Заполните это поле";
                PriceIn.BorderBrush = Brushes.Red;
            }
            else
            {
                if (Regex.IsMatch(PriceIn.Text, @"\D"))
                {
                    PriceInError.Text   = "В данном поле могут быть только цифры";
                    PriceIn.BorderBrush = Brushes.Red;
                }
            }
            if (CapacityIn.Text.Length == 0)
            {
                CapacityInError.Text   = "Заполните это поле";
                CapacityIn.BorderBrush = Brushes.Red;
            }
            else
            {
                if (Regex.IsMatch(CapacityIn.Text, @"\D"))
                {
                    CapacityInError.Text   = "В данном поле могут быть только цифры";
                    CapacityIn.BorderBrush = Brushes.Red;
                }
            }

            Regex reg = new Regex(@"^[0-2][0-9]:[0-5][0-9]$");

            if (ArrivalTime.Text.Length == 0)
            {
                ArrivalTimeInError.Text = "Заполните это поле";
                ArrivalTime.BorderBrush = Brushes.Red;
            }
            else
            {
                if (!reg.IsMatch(ArrivalTime.Text))
                {
                    MessageBox.Show(CapacityIn.Text);
                    ArrivalTimeInError.Text = "Введите время в формате чч:мм";
                    ArrivalTime.BorderBrush = Brushes.Red;
                }
            }
            if (DepartureTimeIn.Text.Length == 0)
            {
                DepartureTimeInError.Text   = "Заполните это поле";
                DepartureTimeIn.BorderBrush = Brushes.Red;
            }
            else
            {
                if (!reg.IsMatch(DepartureTimeIn.Text))
                {
                    DepartureTimeInError.Text   = "Введите время в формате чч:мм";
                    DepartureTimeIn.BorderBrush = Brushes.Red;
                }
            }

            if (DepartingPointInError.Text == "" && ArrivalPointInError.Text == "" && PriceInError.Text == "" && DepartureTimeInError.Text == "" && ArrivalTimeInError.Text == "" && CapacityInError.Text == "")
            {
                int DirNumber;
                if (FilLCurrentUserDirections.Rows.Count == 0)
                {
                    DirNumber = (10000 * ForAdmin.Items.Count) + 1;
                }
                else
                {
                    DirNumber = (Convert.ToInt32(FilLCurrentUserDirections.Rows[0][0]) / 10000) * 10000 + FilLCurrentUserDirections.Rows.Count + 1;
                }
                string sqlRequest = "insert Into DIRECTION (Direction, DepartingPoint, ArrivalPoint, Price, Departing,Arrival, Carrier, Capacity) values " +
                                    " ('" + DirNumber + "', '" + DepartingPointIn.Text + "', '" + ArrivalPointIn.Text + "', '" + PriceIn.Text + "', '" + DepartureTimeIn.Text + "', '" + ArrivalTime.Text + "', '" + carrier + "', '" + CapacityIn.Text + "')";
                try
                {
                    ConnectionToDatabase.insertData(sqlRequest);
                }
                catch
                {
                    Switcher.Switch(new FirstPage());
                }
                MessageBox.Show("Маршрут добавлен");
                LoadTable(carrier);
                FormToAddDirection.Visibility = Visibility.Collapsed;
            }
        }
 private void ChangePassword(object sender, RoutedEventArgs e)
 {
     if (PasswordOld.Password.Length == 0)
     {
         passwordOldError.Text   = "Заполните это поле";
         PasswordOld.BorderBrush = Brushes.Red;
     }
     else
     {
         if (PasswordOld.Password != CurrentUser.UserPasswordV)
         {
             passwordOldError.Text   = "Введён неверный пароль";
             PasswordOld.BorderBrush = Brushes.Red;
         }
     }
     if (PasswordEntered1.Password.Length == 0)
     {
         password1Error.Text          = "Заполните это поле";
         PasswordEntered1.BorderBrush = Brushes.Red;
     }
     else
     {
         if (PasswordEntered1.Password.Length < 4)
         {
             password1Error.Text          = "Пароль слишком короткий (минимум 4 символа)";
             PasswordEntered1.BorderBrush = Brushes.Red;
         }
     }
     if (PasswordEntered2.Password.Length == 0)
     {
         password2Error.Text          = "Заполните это поле";
         PasswordEntered2.BorderBrush = Brushes.Red;
     }
     else
     {
         if (PasswordEntered1.Password != PasswordEntered2.Password)
         {
             password2Error.Text          = "Пароли не совпадают";
             PasswordEntered1.BorderBrush = Brushes.Red;
             PasswordEntered2.BorderBrush = Brushes.Red;
         }
     }
     if (passwordOldError.Text == "" && password1Error.Text == "" && password2Error.Text == "")
     {
         MessageBoxResult messsageBox = MessageBox.Show("Вы действительно хотите изменить пароль", "Сменить пароль", MessageBoxButton.YesNo);
         if (messsageBox == MessageBoxResult.Yes)
         {
             MessageBox.Show("Пароль успешно изменён");
             string Sqlrequest = "update USERS set UserPassword = '******' where Username = '******'";
             CurrentUser.UserPasswordV = PasswordEntered2.Password;
             try
             {
                 ConnectionToDatabase.insertData(Sqlrequest);
             }
             catch
             {
                 Switcher.Switch(new FirstPage());
             }
         }
     }
 }