Beispiel #1
0
        public async Task SubmitOrderAsync()
        {
            var strokeCount = InkCanvas?.InkPresenter?.StrokeContainer?.GetStrokes()?.Count();

            if (SelectedCustomer == null || SelectedProduct == null || Units == 0 || strokeCount == null || strokeCount == 0)
            {
                WriteStatus("Incomplete Order", false);
                return;
            }

            IsSubmitEnabled = false;

            int orderId = -1;

            try
            {
                orderId = OrdersBLL.Current.AddOrder(
                    selectedCustomer.CustomerID,
                    DateTime.Now,
                    DateTime.Now.AddDays(30)
                    );
            }
            catch (SqlException ex)
            {
                await new MessageDialog(ex.Message).ShowAsync();
                IsSubmitEnabled = true;
                return;
            }

            if (orderId == -1)
            {
                await new MessageDialog("Error creating order.").ShowAsync();
                IsSubmitEnabled = true;
                return;
            }

            try
            {
                orderId = OrderDetailsBLL.Current.AddOrderDetails(
                    orderId,
                    SelectedProduct.ProductID,
                    SelectedProduct.UnitPrice,
                    (short)Units,
                    0);
            }
            catch (SqlException ex)
            {
                await new MessageDialog(ex.Message).ShowAsync();
                IsSubmitEnabled = true;
                return;
            }

            if (orderId == -1)
            {
                await new MessageDialog("Error creating order details.").ShowAsync();
                IsSubmitEnabled = true;
                return;
            }

            WriteStatus("Submitted");

            OrderSubmitted?.Invoke(this, EventArgs.Empty);

            IsSubmitEnabled = true;
        }
        private void submit_Click(object sender, EventArgs e)
        {
            var selectedCustomerItem = comboBoxCustomers.SelectedItem;
            var selectedProductItem  = comboBoxProducts.SelectedItem;

            if (selectedCustomerItem == null || selectedProductItem == null || units.Value == 0)
            {
                WriteStatus("Incomplete Order", false);
                return;
            }

            submit.Enabled = false;

            var customer = ((DataRowView)selectedCustomerItem)?.Row as CustomersRow;
            var product  = ((DataRowView)selectedProductItem)?.Row as ProductsRow;

            int orderId = -1;

            try
            {
                orderId = OrdersBLL.Current.AddOrder(
                    customer.CustomerID,
                    DateTime.Now,
                    DateTime.Now.AddDays(30)
                    );
            }
            catch (SqlException ex)
            {
                MessageBox.Show(ex.Message);
                submit.Enabled = true;
                return;
            }

            if (orderId == -1)
            {
                MessageBox.Show("Error creating order.");
                submit.Enabled = true;
                return;
            }

            try
            {
                orderId = OrderDetailsBLL.Current.AddOrderDetails(
                    orderId,
                    product.ProductID,
                    (decimal)pricePerUnit.Tag,
                    (short)units.Value,
                    0);
            }
            catch (SqlException ex)
            {
                MessageBox.Show(ex.Message);
                submit.Enabled = true;
                return;
            }

            if (orderId == -1)
            {
                MessageBox.Show("Error creating order details.");
                submit.Enabled = true;
                return;
            }

            WriteStatus("Submitted");

            OrderSubmitted?.Invoke(this, EventArgs.Empty);

            submit.Enabled = true;
        }