Esempio n. 1
0
        private void Delete_Click(object sender, RoutedEventArgs e)
        {
            User usedBy;

            if (recordData != null)
            {
                using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                {
                    usedBy = connection.AccessValidation(nameof(UserData.CustomerId), recordData.Id);
                    if (usedBy == null || usedBy.Id == UserData.Id)
                    {
                        UserData.CustomerId = recordData.Id;
                        connection.UserAccessUpdate(UserData, nameof(UserData.CustomerId));
                    }
                }

                if (usedBy == null || usedBy.Id == UserData.Id)
                {
                    LoadingControl.Visibility = Visibility.Visible;

                    MessageBoxResult result = MessageWindow.Show($"Deleting", $"Are you sure want to delete:\n{recordData.Name} ?", MessageWindowButton.YesNo, MessageWindowImage.Warning);
                    if (result == MessageBoxResult.Yes)
                    {
                        using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                        {
                            var      query         = $"Select * From Inquiry._Inquiries Where CustomerId = {recordData.Id}";
                            Customer CheckCustomer = connection.QueryFirstOrDefault <Customer>(query);
                            if (CheckCustomer == null)
                            {
                                connection.Execute($"Delete From [Customer].[_Customers] Where Id = {recordData.Id} ");
                                connection.Execute($"Delete From [Customer].[_Contacts] Where CustomerId = {recordData.Id} ");

                                RecordsData.Remove(recordData);

                                UserData.CustomerId = null;
                                connection.UserAccessUpdate(UserData, nameof(UserData.CustomerId));
                            }
                            else
                            {
                                MessageWindow.Show("Deleting", $"You can't delete {recordData.Name} data \n Because its used in projects data", MessageWindowButton.OK, MessageWindowImage.Warning);
                            }
                        }
                    }
                    else
                    {
                        using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                        {
                            UserData.CustomerId = null;
                            connection.UserAccessUpdate(UserData, nameof(UserData.CustomerId));
                        }
                    }

                    LoadingControl.Visibility = Visibility.Collapsed;
                }
                else
                {
                    MessageWindow.Show($"Access", $"This customer data underwork by {usedBy.Name}!", MessageWindowButton.OK, MessageWindowImage.Warning);
                }
            }
        }
Esempio n. 2
0
        private void Quote_Click(object sender, RoutedEventArgs e)
        {
            if (InquiriesList.SelectedItem is Inquiry inquiryData)
            {
                User      usedBy;
                Quotation quotationData = new Quotation()
                {
                    InquiryId = inquiryData.Id, Inquiry = inquiryData
                };

                using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                {
                    usedBy = connection.AccessValidation(nameof(quotationData.InquiryId), inquiryData.Id);

                    if (usedBy == null)
                    {
                        string query = $"Select MAX(Number) as Number From [Quotation].[_Qoutations] Where Year = {DateTime.Now.Year}";
                        quotationData.Number = connection.QueryFirstOrDefault <Quotation>(query).Number + 1;
                        quotationData.Year   = DateTime.Now.Year;
                        quotationData.Month  = DateTime.Now.Month;
                        quotationData.Code   =
                            $"ER-{quotationData.Number:000}/{UserData.UserCode}/{quotationData.Month}/{quotationData.Year}/R00";
                        quotationData.ReviseDate = DateTime.Now;

                        quotationData.Id = Convert.ToInt32(connection.Insert <Quotation>(quotationData));
                        Term.GetDefaultTerms(connection, quotationData.Id);

                        UserData.InquiryId = inquiryData.Id;
                        connection.UserAccessUpdate(UserData, nameof(UserData.InquiryId));

                        UserData.QuotationId = quotationData.Id;
                        connection.UserAccessUpdate(UserData, nameof(UserData.QuotationId));
                    }
                }

                if (usedBy == null)
                {
                    var quotationWindow = new QuotationWindow()
                    {
                        UserData         = this.UserData,
                        OpenPanelsWindow = true,
                        QuotationData    = quotationData
                    };
                    this.Close();
                    quotationWindow.ShowDialog();
                }
                else
                {
                    MessageWindow.Show($"Access", $"This inquiry underwork by {usedBy.Name}!", MessageWindowButton.OK, MessageWindowImage.Warning);
                }
            }
        }
Esempio n. 3
0
        private void Edit_Click(object sender, RoutedEventArgs e)
        {
            User usedBy;

            if (recordData != null)
            {
                using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                {
                    usedBy = connection.AccessValidation(nameof(UserData.ContactId), recordData.Id);
                    if (usedBy == null || usedBy.Id == UserData.Id)
                    {
                        UserData.ContactId = recordData.Id;
                        connection.UserAccessUpdate(UserData, nameof(UserData.ContactId));
                    }
                }

                if (usedBy == null)
                {
                    LoadingControl.Visibility = Save.Visibility = Cancel.Visibility = Visibility.Visible;
                    Done.Visibility           = Visibility.Collapsed;
                    foreach (object control in Body.Children)
                    {
                        if (control is TextBlock || control is StackPanel)
                        {
                        }
                        else
                        {
                            if (((Control)control).Name == "Company")
                            {
                            }
                            else
                            {
                                ((Control)control).IsEnabled = true;
                            }
                        }
                    }
                    action  = Actions.Edit;
                    oldData = new Contact();
                    oldData.Update(recordData);
                }
                else
                {
                    MessageWindow.Show($"Access", $"This contact data underwork by {usedBy.Name}!", MessageWindowButton.OK, MessageWindowImage.Warning);
                }
            }
        }
Esempio n. 4
0
        private void Delete_Click(object sender, RoutedEventArgs e)
        {
            if (InquiriesList.SelectedItem is Inquiry inquiry)
            {
                User      usedBy;
                Quotation quotation;
                using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                {
                    usedBy    = connection.AccessValidation(nameof(UserData.InquiryId), inquiry.Id);
                    quotation = connection.QueryFirstOrDefault <Quotation>($"Select * From Quotation._Quotations Where InquiryId = {inquiry.Id}");

                    if (usedBy == null)
                    {
                        UserData.InquiryId = inquiry.Id;
                        connection.UserAccessUpdate(UserData, nameof(UserData.InquiryId));
                    }
                }

                if (quotation != null)
                {
                    MessageWindow.Show($"Access", $"Can't delete this Inquiry!", MessageWindowButton.OK, MessageWindowImage.Warning);
                    return;
                }

                if (usedBy == null || usedBy.Id == UserData.Id)
                {
                    MessageBoxResult result = MessageWindow.Show("Deleting", $"Do you want to Delete Inquiy: \n{inquiry.RegisterCode}?", MessageWindowButton.YesNo, MessageWindowImage.Warning);
                    if (result == MessageBoxResult.Yes)
                    {
                        using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                        {
                            connection.Execute($"Delete From [Inquiry].[_Inquiries] Where Id = {inquiry.Id}");
                            connection.Execute($"Delete From [Inquiry].[_ProjectsContacts] Where InquiryId = {inquiry.Id}");
                            inquiriesData.Remove(inquiry);
                        }
                    }
                }
                else
                {
                    MessageWindow.Show($"Access", $"This inquiry underwork by {usedBy.Name}!", MessageWindowButton.OK, MessageWindowImage.Warning);
                }
            }
        }
Esempio n. 5
0
        private void Edit_ClicK(object sender, RoutedEventArgs e)
        {
            if (InquiriesList.SelectedItem is Inquiry inquiry)
            {
                User      usedBy;
                Quotation quotation;
                using (SqlConnection connection = new SqlConnection(Database.ConnectionString))
                {
                    usedBy    = connection.AccessValidation(nameof(UserData.InquiryId), inquiry.Id);
                    quotation = connection.QueryFirstOrDefault <Quotation>($"Select * From [Quotation].[_Quotations] Where InquiryId = {inquiry.Id}");

                    if (usedBy == null)
                    {
                        UserData.InquiryId = inquiry.Id;
                        connection.UserAccessUpdate(UserData, nameof(UserData.InquiryId));
                    }
                }

                if (quotation != null)
                {
                    if (quotation.Status != Statuses.Running.ToString())
                    {
                        MessageWindow.Show($"Access", $"Can't edit this Inquiry!", MessageWindowButton.OK, MessageWindowImage.Warning);
                        return;
                    }
                }

                if (usedBy == null || usedBy.Id == UserData.Id)
                {
                    var inquiryWindow = new InquiryWindow()
                    {
                        UserData    = this.UserData,
                        WindowMode  = Actions.Edit,
                        InquiryData = inquiry,
                    };
                    inquiryWindow.ShowDialog();
                }
                else
                {
                    MessageWindow.Show($"Access", $"This inquiry underwork by {usedBy.Name}!", MessageWindowButton.OK, MessageWindowImage.Warning);
                }
            }
        }