/// <summary>
        /// Function to populate the purchased item data grid
        /// </summary>
        private void PopulatePurchasedItemsDataGrid()
        {
            purchasedItemsDataGridView.DataSource = new List <Product>();
            purchasedItemsDataGridView.Refresh();

            #region Grid Formating
            // Hidding unnecessary fields
            purchasedItemsDataGridView.Columns["Key"].Visible              = false;
            purchasedItemsDataGridView.Columns["Supplier"].Visible         = false;
            purchasedItemsDataGridView.Columns["Category"].Visible         = false;
            purchasedItemsDataGridView.Columns["Type"].Visible             = false;
            purchasedItemsDataGridView.Columns["UnitCost"].Visible         = false;
            purchasedItemsDataGridView.Columns["MinimumQuantity"].Visible  = false;
            purchasedItemsDataGridView.Columns["MaximumQuantity"].Visible  = false;
            purchasedItemsDataGridView.Columns["RegisteredBy"].Visible     = false;
            purchasedItemsDataGridView.Columns["RegistrationDate"].Visible = false;
            purchasedItemsDataGridView.Columns["ModifiedBy"].Visible       = false;
            purchasedItemsDataGridView.Columns["ModificationDate"].Visible = false;
            purchasedItemsDataGridView.Columns["Discontinued"].Visible     = false;

            // Formating columns
            purchasedItemsDataGridView.Columns["Id"].Width        = 60;
            purchasedItemsDataGridView.Columns["Name"].Width      = 150;
            purchasedItemsDataGridView.Columns["Unit"].Width      = 50;
            purchasedItemsDataGridView.Columns["UnitPrice"].Width = 80;
            purchasedItemsDataGridView.Columns["Brand"].Width     = 70;
            purchasedItemsDataGridView.Columns["Quantity"].Width  = 60;
            #endregion

            if (purchasedItems.Count == 0 && trigger) // requesting purchased items once to avoid reseting the list once changes have been made
            {
                purchasedItems = SaleInformationManager.ConsultTransactionContentInformation(sale.Id);
            }

            if (purchasedItems.Count > 0)
            {
                purchasedItemsDataGridView.DataSource = purchasedItems;
                purchasedItemsDataGridView.Refresh();

                int     quantity = 0;
                decimal total    = 0;

                foreach (Product item in purchasedItems)
                {
                    quantity += item.Quantity; // counting units of items
                    total    += item.Total;    // calculating total of purchased items
                }

                numberOfPurchasedItemsLabel.Text = "# of Items: " + quantity.ToString();
                purchasedTotalLabel.Text         = "Total: $" + total.ToString("0.00");
            }
            else
            {
                numberOfPurchasedItemsLabel.Text = "# of Items: 0";
                purchasedTotalLabel.Text         = "Total: $0.00";
            }
        }
        /// <summary>
        /// Function to populate the transaction content grid
        /// </summary>
        private void PopulateContentDataGrid()
        {
            contentDataGridView.DataSource = new List <Product>();
            contentDataGridView.Refresh();

            #region Grid Formating
            // Hidding unnecessary fields
            contentDataGridView.Columns["Key"].Visible              = false;
            contentDataGridView.Columns["Supplier"].Visible         = false;
            contentDataGridView.Columns["Category"].Visible         = false;
            contentDataGridView.Columns["Type"].Visible             = false;
            contentDataGridView.Columns["UnitCost"].Visible         = false;
            contentDataGridView.Columns["MinimumQuantity"].Visible  = false;
            contentDataGridView.Columns["MaximumQuantity"].Visible  = false;
            contentDataGridView.Columns["RegisteredBy"].Visible     = false;
            contentDataGridView.Columns["RegistrationDate"].Visible = false;
            contentDataGridView.Columns["ModifiedBy"].Visible       = false;
            contentDataGridView.Columns["ModificationDate"].Visible = false;
            contentDataGridView.Columns["Discontinued"].Visible     = false;

            // Formationg columns
            contentDataGridView.Columns["Id"].Width        = 60;
            contentDataGridView.Columns["Name"].Width      = 150;
            contentDataGridView.Columns["Unit"].Width      = 50;
            contentDataGridView.Columns["UnitPrice"].Width = 80;
            contentDataGridView.Columns["Brand"].Width     = 70;
            contentDataGridView.Columns["Quantity"].Width  = 60;
            #endregion

            // Fetching purchased products associated with this transaction
            List <Product> content = SaleInformationManager.ConsultTransactionContentInformation(sale.Id);

            if (content.Count > 0)
            {
                contentDataGridView.DataSource = content;
                contentDataGridView.Refresh();

                int     quantity = 0;
                decimal total    = 0;

                foreach (Product item in content)
                {
                    quantity += item.Quantity; // counting how manu units of products were previously purchased in this transaction
                    total    += item.Total;    // calculating total cost of transaction
                }

                numberOfItemsLabel.Text = "Number of Items: " + quantity.ToString();
                totalLabel.Text         = "Total: $" + total.ToString("0.00");
            }
            else
            {
                numberOfItemsLabel.Text = "Number of Items: 0";
                totalLabel.Text         = "Total: $0.00";
            }
        }
        /// <summary>
        /// Funtion to populate the data grid
        /// </summary>
        private void PopulateSalesDataGrid()
        {
            salesList.DataSource = SaleInformationManager.ConsultSalesRecordsInformation(salesSearchBox.Text);

            // Formating the flieds
            salesList.Columns["Id"].Width = 50;
            salesList.Columns["TransactionDate"].Width = 180;
            salesList.Columns["Delivery"].Width        = 50;
            salesList.Columns["Status"].Width          = 70;
            salesList.Columns["Parent"].Width          = 50;
            salesList.Columns["Child"].Width           = 50;
            salesList.Columns["LastModified"].Width    = 180;
        }
Example #4
0
        private void DisplaySelectedSalesContentDataGrid()
        {
            // Initializing the grid before any information has been requested
            salesContentDataGridView.DataSource = new List <Product>();
            salesContentDataGridView.Refresh();

            #region Grid Formating
            salesContentDataGridView.Columns["Key"].Visible              = false;
            salesContentDataGridView.Columns["Supplier"].Visible         = false;
            salesContentDataGridView.Columns["Category"].Visible         = false;
            salesContentDataGridView.Columns["Type"].Visible             = false;
            salesContentDataGridView.Columns["UnitCost"].Visible         = false;
            salesContentDataGridView.Columns["MinimumQuantity"].Visible  = false;
            salesContentDataGridView.Columns["MaximumQuantity"].Visible  = false;
            salesContentDataGridView.Columns["RegisteredBy"].Visible     = false;
            salesContentDataGridView.Columns["RegistrationDate"].Visible = false;
            salesContentDataGridView.Columns["ModifiedBy"].Visible       = false;
            salesContentDataGridView.Columns["ModificationDate"].Visible = false;
            salesContentDataGridView.Columns["Discontinued"].Visible     = false;

            // Formationg columns
            salesContentDataGridView.Columns["Id"].Width        = 60;
            salesContentDataGridView.Columns["Name"].Width      = 200;
            salesContentDataGridView.Columns["Unit"].Width      = 50;
            salesContentDataGridView.Columns["UnitPrice"].Width = 80;
            salesContentDataGridView.Columns["Quantity"].Width  = 60;
            salesContentDataGridView.Columns["Brand"].Width     = 150;
            #endregion

            List <Product> content = new List <Product>();

            // Requesting sales content information if at least one sale information is available
            if (salesDataGridView.Rows.Count > 0)
            {
                content = SaleInformationManager.ConsultTransactionContentInformation(salesDataGridView.SelectedCells[0].Value.ToString());
            }

            // Staging requested information
            salesContentDataGridView.DataSource = content;
            salesContentDataGridView.Refresh();

            // Counter
            Decimal total = 0;

            foreach (Product product in content)
            {
                total += product.Total; // Calculating the total dollar amount of the sale
            }
            // Displaying summary information
            totalLabel.Text = totalLabel.Text.Split('$')[0] + "$ " + total.ToString("0.00");
        }
        /// <summary>
        /// Function to display a transaction's information
        /// </summary>
        /// <param name="saleId">Identification number of the desired transaction</param>
        private void DisplayTransactionInformation(String saleId)
        {
            // Requesting transaction information
            sale = SaleInformationManager.ConsultTransactionInformationBySalesId(saleId);

            this.Text = "Sale Information: " + sale.Id;

            saleIdLabel.Text           = sale.Id;
            saleDateLabel.Text         = sale.TransactionDate.ToString();
            soldByLabel.Text           = sale.SoldBy;
            statusLabel.Text           = sale.Status;
            deliveryCheckBox.Checked   = sale.Delivery;
            parentIdLabel.Text         = sale.Parent == "" ? "None" : sale.Parent;
            childIdLabel.Text          = sale.Child == "" ? "None" : sale.Child;
            lastModifiedDateLabel.Text = sale.LastModified.ToString();
        }
        private void VoidSaleButton_Click(object sender, EventArgs e)
        {
            if (sale.Status == "Valid") // Confirming that the current transaction is valid
            {
                // Requesting to void the current transaction
                SaleInformationManager.UpdateTransactionStatusInformationToVoid(sale.Id);

                DisplayTransactionInformation(sale.Id);                      // Updating the sale's information

                FormsMenuList.salesRecordForm.RefreshSalesRecordsDataGrid(); // Notifying the parent to update its information

                MessageBox.Show("Transaction has been voided!");
            }
            else
            {
                MessageBox.Show("This transaction has already been voided/returned");
            }
        }
        public ReturnItemsMiniForm(String saleId)
        {
            InitializeComponent();

            sale = SaleInformationManager.ConsultTransactionInformationBySalesId(saleId);
        }