private void AddNotInInventory_Click(object sender, RoutedEventArgs e)
        {
            if (NotInName.Text != String.Empty && NotInSize.Text != String.Empty && NotInPrice.Text != String.Empty)
            {
                //if (!notInInventory.Where(a => a.NotInInventoryName != NotInName.Text && a.NotInInventoryQuantity != Convert.ToInt32(NotInInventoryQuantity.Text) &&
                //     a.NotInInventorySize != NotInInventorySize.Text && a.NotInInventoryPrice != Convert.ToDecimal(NotInInventoryPrice.Text)).Any())
                {
                    Random            r     = new Random();
                    NotInInventoryDTO notIn = new NotInInventoryDTO();
                    notIn.NotInInventoryId       = r.Next(-5000, -1);
                    notIn.NotInInventoryName     = NotInName.Text;
                    notIn.NotInInventoryQuantity = 1;
                    notIn.NotInInventorySize     = NotInSize.Text;
                    notIn.NotInInventoryPrice    = Convert.ToDecimal(NotInPrice.Text);

                    if (basePage != null)
                    {
                        WorkOrderMessage msg = new WorkOrderMessage();

                        msg.NotInInventory = notIn;

                        basePage.LoadWorkOrderData(msg);
                    }

                    this.Close();
                }
            }
        }
Exemplo n.º 2
0
        private void SaveArrangement_Click(object sender, RoutedEventArgs e)
        {
            MainWindow wnd = Application.Current.MainWindow as MainWindow;

            if (wnd.PageIsOnStack(typeof(WorkOrderPage)))
            {
                if (wnd.PageIsOnStack(typeof(InventoryFilter)))
                {
                    wnd.NavigationStack.Pop();
                }

                //save this arangement to the work order in progress
                IEOStackPage workOrderPage = wnd.GetEOStackPage(typeof(WorkOrderPage));

                if (workOrderPage != null)
                {
                    GetArrangementData();

                    WorkOrderMessage msg = new WorkOrderMessage();
                    msg.Arrangement = currentArrangement;
                    workOrderPage.LoadWorkOrderData(msg);
                }

                wnd.OnBackClick(this);
            }
            else
            {
                //AddArrangement();
            }
        }
Exemplo n.º 3
0
        public void OnSave(object sender, EventArgs e)
        {
            MainWindow wnd = Application.Current.MainWindow as MainWindow;

            if (wnd.PageIsOnStack(typeof(WorkOrderPage)))
            {
                //save this arangement to the work order in progress
                IEOStackPage workOrderPage = wnd.GetEOStackPage(typeof(WorkOrderPage));

                if (workOrderPage != null)
                {
                    WorkOrderMessage msg = new WorkOrderMessage();
                    //load the currennt object with data from the form
                    GetArrangementData();
                    msg.Arrangement = currentArrangement;
                    workOrderPage.LoadWorkOrderData(new WorkOrderMessage());
                }

                wnd.OnBackClick(this);
            }
            else
            {
                //AddArrangement();
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Add data from a subordinate page to this arrangement
        /// </summary>
        /// <param name="msg"></param>
        public override void LoadWorkOrderData(WorkOrderMessage msg)
        {
            if (msg.HasMessage())
            {
                if (msg.CustomerContainer.CustomerContainerId != 0)
                {
                    CustomerContainer = msg.CustomerContainer;
                    CustomerContainerLabelEntry.Text = CustomerContainer.Label;
                }

                if (msg.Inventory.InventoryId != 0)
                {
                    if (currentArrangement.ArrangementInventory.Where(a => a.InventoryId == msg.Inventory.InventoryId).Any())
                    {
                        ArrangementInventoryItemDTO dto = currentArrangement.ArrangementInventory.Where(a => a.InventoryId == msg.Inventory.InventoryId).First();
                        currentArrangement.ArrangementInventory.Remove(dto);
                    }

                    currentArrangement.ArrangementInventory.Add(new ArrangementInventoryItemDTO()
                    {
                        ArrangementId = currentArrangement.Arrangement.ArrangementId,
                        InventoryId   = msg.Inventory.InventoryId,
                        InventoryName = msg.Inventory.InventoryName + " " + msg.Inventory.Size,
                        Quantity      = 1
                    });;
                }

                if (!String.IsNullOrEmpty(msg.NotInInventory.NotInInventoryName))
                {
                    if (msg.NotInInventory.NotInInventoryId != 0)
                    {
                        if (currentArrangement.NotInInventory.Where(a => a.NotInInventoryId == msg.NotInInventory.NotInInventoryId).Any())
                        {
                            NotInInventoryDTO dto = currentArrangement.NotInInventory.Where(a => a.NotInInventoryId == msg.NotInInventory.NotInInventoryId).First();
                            currentArrangement.NotInInventory.Remove(dto);
                        }
                    }
                    else if (msg.NotInInventory.UnsavedId != 0)
                    {
                        if (currentArrangement.NotInInventory.Where(a => a.UnsavedId == msg.NotInInventory.UnsavedId).Any())
                        {
                            NotInInventoryDTO dto = currentArrangement.NotInInventory.Where(a => a.UnsavedId == msg.NotInInventory.UnsavedId).First();
                            currentArrangement.NotInInventory.Remove(dto);
                        }
                    }

                    //validate - no dupes
                    msg.NotInInventory.ArrangementId = currentArrangement.Arrangement.ArrangementId;
                    currentArrangement.NotInInventory.Add(msg.NotInInventory);
                }

                ReloadListData();
            }
        }
Exemplo n.º 5
0
        private void Save_Click(object sender, RoutedEventArgs e)
        {
            MainWindow wnd = Application.Current.MainWindow as MainWindow;

            if (basePage != null)
            {
                WorkOrderMessage msg = new WorkOrderMessage();
                msg.CustomerContainer = CustomerContainer;
                basePage.LoadWorkOrderData(msg);
                wnd.OnBackClick(this);
            }
        }
Exemplo n.º 6
0
        private void ListView_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            //they selected a person - close the dialog and populate the edit fields on the parent form

            PersonDTO item = (sender as ListView).SelectedValue as PersonDTO;

            if (basePage != null)
            {
                WorkOrderMessage msg = new WorkOrderMessage();
                msg.Person = item;

                basePage.LoadWorkOrderData(msg);
            }

            this.Close();
        }
Exemplo n.º 7
0
        public MainWindow()
        {
            try
            {
                InitializeComponent();

                WorkOrderMessage = new WorkOrderMessage();

                MainContent.Content = new Frame()
                {
                    Content = new LoginPage()
                };
            }
            catch (Exception ex)
            {
                int debug = 1;
            }
        }
Exemplo n.º 8
0
        //load the other combos as their "bosses" are loaded

        private void InventorySelected_Click(object sender, RoutedEventArgs e)
        {
            //send selection back to caller - this filter is used when creating a work order or an arrangement
            //either way, in either of these two modes, use the Navigation Stack

            WorkOrderMessage msg = new WorkOrderMessage();

            msg.Inventory = (WorkOrderInventoryMapDTO)((ListView)sender).SelectedItem;

            if (page != null)
            {
                page.LoadWorkOrderData(msg);
            }

            MainWindow wnd = Application.Current.MainWindow as MainWindow;

            wnd.OnBackClick(this);
        }
Exemplo n.º 9
0
        public override void LoadWorkOrderData(WorkOrderMessage msg)
        {
            //respond to arrangement filter selection

            if (msg.HasMessage())
            {
                if (msg.Inventory.InventoryId != 0)
                {
                    ProcessInventoryData(msg.Inventory);
                }

                if (!String.IsNullOrEmpty(msg.NotInInventory.NotInInventoryName))
                {
                    ProcessNotInInventoryData(msg.NotInInventory);
                }

                ReloadItemList();
            }
        }
Exemplo n.º 10
0
        private void ArrangementInventoryList_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            ArrangementInventoryFilteredItem item = (sender as ListView).SelectedValue as ArrangementInventoryFilteredItem;

            if (item != null)
            {
                if (basePage != null)
                {
                    WorkOrderMessage msg = new WorkOrderMessage();

                    msg.Inventory = new WorkOrderInventoryMapDTO()
                    {
                        InventoryId   = item.Id,
                        InventoryName = item.Name,
                        Quantity      = 1,
                        Size          = item.Size
                    };

                    basePage.LoadWorkOrderData(msg);
                }
            }
            this.Close();
        }
Exemplo n.º 11
0
        public override void LoadWorkOrderData(WorkOrderMessage msg)
        {
            if (msg.HasMessage())
            {
                if (msg.Person.person_id != 0)
                {
                    Customer   = msg.Person;
                    Buyer.Text = Customer.CustomerName;
                }

                if (msg.Inventory.InventoryId != 0)
                {
                    ProcessInventoryData(msg.Inventory);
                }

                if (!String.IsNullOrEmpty(msg.NotInInventory.NotInInventoryName))
                {
                    ProcessNotInInventoryData(msg.NotInInventory);
                }

                if ((msg.Arrangement.Arrangement.ArrangementId != 0 || msg.Arrangement.Arrangement.UnsavedId != 0) &&
                    (msg.Arrangement.ArrangementInventory.Count > 0 || msg.Arrangement.NotInInventory.Count > 0))
                {
                    ProcessArrangementData(msg);
                }

                if (msg.WorkOrderPaid.HasValue)
                {
                    PayButton.IsEnabled             = false;
                    SaveButton.IsEnabled            = false;
                    CameraButton.IsEnabled          = false;
                    currentWorkOrder.WorkOrder.Paid = true;
                }

                ReloadItemList();
            }
        }
Exemplo n.º 12
0
        void ProcessArrangementData(WorkOrderMessage msg)
        {
            if (msg.Arrangement.Arrangement.ArrangementId != 0)
            {
                if (currentWorkOrder.Arrangements.Where(a => a.Arrangement.ArrangementId == msg.Arrangement.Arrangement.ArrangementId).Any())
                {
                    AddArrangementRequest aar = arrangementList.Where(a => a.Arrangement.ArrangementId == msg.Arrangement.Arrangement.ArrangementId).First();

                    arrangementList.Remove(aar);
                }

                arrangementList.Add(msg.Arrangement);
            }
            else if (msg.Arrangement.Arrangement.UnsavedId != 0)
            {
                if (arrangementList.Where(a => a.Arrangement.UnsavedId == msg.Arrangement.Arrangement.UnsavedId).Any())
                {
                    AddArrangementRequest aar = arrangementList.Where(a => a.Arrangement.UnsavedId == msg.Arrangement.Arrangement.UnsavedId).First();
                    arrangementList.Remove(aar);
                }

                arrangementList.Add(msg.Arrangement);
            }
        }
Exemplo n.º 13
0
 public override void LoadWorkOrderData(WorkOrderMessage msg)
 {
     int debug = 1;
 }
Exemplo n.º 14
0
 public override void LoadWorkOrderData(WorkOrderMessage msg)
 {
 }
Exemplo n.º 15
0
 public virtual void LoadWorkOrderData(WorkOrderMessage msg)
 {
 }
Exemplo n.º 16
0
        private async void Pay_Click(object sender, RoutedEventArgs e)
        {
            //send record for payment

            //success? show message - go back to Work Order page

            //failure? show message stay on this page

            Pay.IsEnabled = false;

            bool proceedWithSave = true;

            string ccConfirm = String.Empty;

            if (PaymentTypeComboBox.SelectedIndex == 2)
            {
                CreditCard cc = new CreditCard()
                {
                    Cvc        = CVVTextBox.Text,
                    HolderName = NameOnCardTextBox.Text,
                    Numbers    = CardNumberTextBox.Text,
                    Month      = ExpMonthTextBox.Text,
                    Year       = ExpYearTextBox.Text
                };

                List <string> msgs = cc.VerifyCreditCardInfo();

                if (msgs.Count == 0)
                {
                    PaymentResponse paymentResponse = await PayWithCC(cc);

                    ccConfirm = paymentResponse.ccConfirm;

                    proceedWithSave = paymentResponse.success;

                    if (paymentResponse.Messages.Count > 0)
                    {
                        MessageBox.Show(Application.Current.MainWindow, MessageFormatter(paymentResponse.Messages["Stripe"]), "Error", MessageBoxButton.OK);
                    }
                }
                else
                {
                    proceedWithSave = false;
                    MessageBox.Show("Error", MessageFormatter(msgs), MessageBoxButton.OK);
                }
            }

            if (proceedWithSave)
            {
                bool paymentSaved = await SavePaymentRecord(ccConfirm);

                if (paymentSaved)
                {
                    MessageBox.Show(Application.Current.MainWindow, "Payment Successful", "Success", MessageBoxButton.OK);
                    MainWindow wnd = Application.Current.MainWindow as MainWindow;
                    if (wnd.PageIsOnStack(typeof(WorkOrderPage)))
                    {
                        EOStackPage parentPage = wnd.GetEOStackPage(typeof(WorkOrderPage));

                        if (parentPage != null)
                        {
                            WorkOrderMessage msg = new WorkOrderMessage();
                            msg.WorkOrderPaid = true;
                            parentPage.LoadWorkOrderData(msg);
                        }
                    }

                    wnd.OnBackClick(this);
                }
                else
                {
                    MessageBox.Show(Application.Current.MainWindow, "There was a problem saving the payment record", "Error", MessageBoxButton.OK);
                }
            }

            Pay.IsEnabled = true;
        }