Пример #1
0
        private List<Receipt> ComputeReceipt(string itemId, string quantity)
        {
            int id = -1;
            int qty = -1;
            string shortDesc = string.Empty;
            decimal? price = 0.0M;
            decimal? amount = 0.0M;
            List<Receipt> crcpt = new List<Receipt>();

            if (int.TryParse(itemId, out id))
            {
                var itemPrice = this.db.ItemSalePrices.Where(i => i.ItemId == id).FirstOrDefault();

                var itemDesc = this.db.ItemShortDescriptions.Where(i => i.ItemId == id).FirstOrDefault();

                price = itemPrice.SalePrice;
                shortDesc = itemDesc.ShortDescription;

                if (int.TryParse(quantity, out qty))
                {
                    amount = price * qty;

                    decimal _prc = (decimal)price;
                    decimal _amt = (decimal)amount;

                    Receipt receiptEntry = new Receipt
                    {
                        ItemId = id.ToString(),
                        ShortDescription = shortDesc,
                        Quantity = qty.ToString(),
                        Price = price.Value.ToString("G29"),
                        Amount = amount.Value.ToString("G29")
                    };

                    crcpt.Add(receiptEntry);

                    return crcpt;
                }
                else
                {
                    throw new Exception("Invalid item quantity provided for receipt computation.");
                }
            }
            else
            {
                throw new Exception("Invalid item Id provided for receipt computation.");
            }
        }
Пример #2
0
        private void AddReceiptItem()
        {
            List<Receipt> receipt = new List<Receipt>();

            try
            {
                string itemId = this.dataGridViewStockItems.CurrentRow.Cells[0].Value.ToString();
                string quantity = this.textBoxQuantity.Text.Trim().ToString();

                if (this.dataGridViewReceipt.Rows.Count > 0)
                {
                    for (int i = 0; i < this.dataGridViewReceipt.Rows.Count; i++)
                    {
                        Receipt cr = new Receipt
                        {
                            ItemId = this.dataGridViewReceipt.Rows[i].Cells[0].Value.ToString(),
                            ShortDescription = this.dataGridViewReceipt.Rows[i].Cells[1].Value.ToString(),
                            Quantity = this.dataGridViewReceipt.Rows[i].Cells[2].Value.ToString(),
                            Price = this.dataGridViewReceipt.Rows[i].Cells[3].Value.ToString(),
                            Amount = this.dataGridViewReceipt.Rows[i].Cells[4].Value.ToString()
                        };

                        receipt.Add(cr);
                    }

                    List<Receipt> datasource = this.receipt.Add(receipt, itemId, quantity).ToList();
                    this.dataGridViewReceipt.DataSource = datasource;

                    ReceiptTotalAmount(datasource);
                }
                else
                {
                    List<Receipt> datasource = this.receipt.Add(null, itemId, quantity).ToList();

                    this.dataGridViewReceipt.DataSource = datasource;

                    ReceiptTotalAmount(datasource);
                }

                this.dataGridViewReceipt.Columns[0].Width = 40;
                this.dataGridViewReceipt.Columns[2].Width = 40;

                // Receipt Price column alignment
                this.dataGridViewReceipt.Columns[3].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight;
                this.dataGridViewReceipt.Columns[3].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;

                // Receipt Amount column alignment
                this.dataGridViewReceipt.Columns[4].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight;
                this.dataGridViewReceipt.Columns[4].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;

                this.comboBoxBarcode.Text = "";
                this.comboBoxDescription.Text = "";
                this.textBoxQuantity.Clear();

                this.comboBoxBarcode.Focus();
            }
            catch (Exception ex)
            {

                MessageBox.Show("ERROR: Failed to add item :- " + ex.Message + ".", "EastSeat Point of Sale", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }