public void loadAll() { indexList.Clear(); searchlist.Clear(); lvItems.Clear(); lblMsg.Visible = true; String name, cat, manu; double price = 0; int unitcur = 0, unitsold = 0, barcode = 0; Logicdll.clearSearchC(logicobj); arrsize = Logicdll.getSizeC(logicobj); searchsize = arrsize; for (int i = 0; i < arrsize; i++) { ListViewItem item = new ListViewItem(); Logicdll.addSearchProC(logicobj, i); Logicdll.getSearchProC(logicobj, 1, ref temp, i, ref barcode, ref price, ref unitcur, ref unitsold); indexList.Add(temp); searchlist.Add(temp); name = Logicdll.getSearchNameC(logicobj, i); cat = Logicdll.getSearchCatC(logicobj, i); manu = Logicdll.getSearchManuC(logicobj, i); item.Text = name; item.SubItems.Add(cat); item.SubItems.Add(manu); item.SubItems.Add(barcode.ToString()); item.SubItems.Add(unitcur.ToString()); item.SubItems.Add(unitsold.ToString()); item.SubItems.Add(price.ToString()); lvItems.Add(item); } lblSystemInfo0.Text = getOSInfo(); lblSystemInfo1.Text = System.Environment.OSVersion.Version.ToString(); }
void topSell(int n) { groupBox6.Text = "Top " + n + " selling product(s) as of " + DateTime.Now.ToShortTimeString(); lvStats.Items.Clear(); colStatName.Text = "Name"; colStatSold.Text = "Units Sold"; String name; double price = 0; int unitcur = 0, unitsold = 0, barcode = 0; lvStats.Items.Clear(); int arrsize = Logicdll.topNsellingC(logicobj, n); List <int> statsList = new List <int>(); for (int i = 0; i < arrsize; i++) { ListViewItem item = new ListViewItem(); Logicdll.getSearchProC(logicobj, 1, ref temp, i, ref barcode, ref price, ref unitcur, ref unitsold); statsList.Add(temp); name = Logicdll.getSearchNameC(logicobj, i); item.Text = name; item.SubItems.Add(unitsold.ToString()); lvStats.Items.Add(item); } altStatRow(); }
public Product() { InitializeComponent(); logicobj = Logicdll.init(); FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; Left = Top = 0; Width = Screen.PrimaryScreen.WorkingArea.Width; Height = Screen.PrimaryScreen.WorkingArea.Height; }
private void Restock_btn_Click(object sender, EventArgs e) { if (!int.TryParse(tFieldValue.Text, out check)) { lblStatus.Text = "Please enter a valid value."; lblStatus.Visible = true; lblStatus.ForeColor = Color.Red; } else { int percent, result; progressBar1.Value = 0; progressBar1.Minimum = 0; progressBar1.Maximum = 100; int index = result_listbox.FocusedItem.Index; ListViewItem item = new ListViewItem(); item = result_listbox.FocusedItem; int change_data = indexList.ElementAt(index); start = DateTime.Now; result = Logicdll.restockProductC(logicobj, int.Parse(tFieldValue.Text), indexList.ElementAt(index)); // restock inside the datastrage of C++ end = DateTime.Now; lblStatus.Text = (end - start).ToString() + "s."; lblStatus.Visible = true; progressBar1.Value += 50; if (result == -1) { lblMsg.ForeColor = Color.Red; lblMsg.Text = "Restock Failed."; item = null; } else { editPanel.Hide(); progressBar1.Value += 50; result_listbox.BeginUpdate(); item.SubItems[4].Text = (int.Parse(result_listbox.SelectedItems[0].SubItems[4].Text) + int.Parse(tFieldValue.Text)).ToString(); //update the selected data at the list view for user friendly lvItems[change_data].SubItems[4].Text = (int.Parse(result_listbox.SelectedItems[0].SubItems[4].Text)).ToString(); result_listbox.EndUpdate(); result_listbox.Refresh(); lblMsg.ForeColor = Color.Green; lblMsg.Text = "Restock Successful in " + (end - start).ToString() + "s."; result_listbox.Items[index].EnsureVisible(); tFieldValue.Clear(); groupBox2.Enabled = true; } percent = Convert.ToInt32(Convert.ToDouble(progressBar1.Value) / Convert.ToDouble(progressBar1.Maximum) * 100); progressBar1.CreateGraphics().DrawString(percent.ToString() + "%", new Font("Times New Roman", 8, FontStyle.Regular), Brushes.Black, new PointF(progressBar1.Width / 2 - 10, progressBar1.Height / 2 - 7)); altRow(); checkLow(); groupBox5.Enabled = true; } }
private void Specify_btn_Click(object sender, EventArgs e) { if (!int.TryParse(tFieldValue.Text, out check)) { lblStatus.Text = "Please enter a valid value."; lblStatus.Visible = true; lblStatus.ForeColor = Color.Red; } else { int percent, result; progressBar1.Value = 0; progressBar1.Minimum = 0; progressBar1.Maximum = 100; int index = result_listbox.FocusedItem.Index; ListViewItem item = new ListViewItem(); item = result_listbox.FocusedItem; start = DateTime.Now; result = Logicdll.specifySalesOfProductsC(logicobj, int.Parse(tFieldValue.Text), indexList.ElementAt(index)); int change_data = indexList.ElementAt(index); end = DateTime.Now; progressBar1.Value += 50; if (result == -1) { lblMsg.ForeColor = Color.Red; lblMsg.Text = "Updating of sales failed."; item = null; } else { editPanel.Hide(); result_listbox.BeginUpdate(); progressBar1.Value += 50; item.SubItems[5].Text = (int.Parse(result_listbox.SelectedItems[0].SubItems[5].Text) + int.Parse(tFieldValue.Text)).ToString(); item.SubItems[4].Text = (int.Parse(result_listbox.SelectedItems[0].SubItems[4].Text) - int.Parse(tFieldValue.Text)).ToString(); lvItems[change_data].SubItems[4].Text = (int.Parse(result_listbox.SelectedItems[0].SubItems[4].Text)).ToString(); lvItems[change_data].SubItems[5].Text = (int.Parse(result_listbox.SelectedItems[0].SubItems[5].Text)).ToString(); result_listbox.EndUpdate(); result_listbox.Refresh(); lblMsg.ForeColor = Color.Green; lblMsg.Text = "Updating of sales is successful in " + (end - start).ToString() + "s."; percent = Convert.ToInt32(Convert.ToDouble(progressBar1.Value) / Convert.ToDouble(progressBar1.Maximum) * 100); progressBar1.CreateGraphics().DrawString(percent.ToString() + "%", new Font("Times New Roman", 8, FontStyle.Regular), Brushes.Black, new PointF(progressBar1.Width / 2 - 10, progressBar1.Height / 2 - 7)); groupBox2.Enabled = true; tFieldValue.Clear(); } checkLow(); loadAll(); listViewUpdate(0); altRow(); groupBox5.Enabled = true; } }
private void Delete_btn_Click(object sender, EventArgs e) { int index = -1, percent = 0; progressBar1.Value = 0; progressBar1.Minimum = 0; progressBar1.Maximum = 100; lblMsg.Visible = true; index = result_listbox.FocusedItem.Index; start = DateTime.Now; int dindex = indexList.ElementAt(index); int result = Logicdll.delProdC(logicobj, indexList.ElementAt(index), index); lvItems.RemoveAt(dindex); indexList.RemoveAt(index); searchlist.RemoveAt(index); end = DateTime.Now; result_listbox.Items[index].Remove(); int count = indexList.Count; arrsize--; searchsize--; for (int i = index; i < count; i++) { indexList[i]--; } Delete_btn.Enabled = false; Restock_btn.Enabled = false; Specify_btn.Enabled = false; if (!listEmpty()) { result_listbox.Enabled = true; lblMsg.ForeColor = Color.Black; lblMsg.Text = "Please select a product."; } else { result_listbox.Enabled = true; Search_btn.Enabled = true; lblMsg.ForeColor = Color.Red; lblMsg.Text = "No products loaded."; } lblStatus.Visible = true; lblStatus.ForeColor = Color.Green; progressBar1.Value += 100; lblStatus.Text = "Product deleted successfully in " + (end - start).ToString() + "s."; altRow(); checkLow(); percent = Convert.ToInt32(Convert.ToDouble(progressBar1.Value) / Convert.ToDouble(progressBar1.Maximum) * 100); progressBar1.CreateGraphics().DrawString(percent.ToString() + "%", new Font("Times New Roman", 8, FontStyle.Regular), Brushes.Black, new PointF(progressBar1.Width / 2 - 10, progressBar1.Height / 2 - 7)); }
private void btnTopN_Click(object sender, EventArgs e) { if (int.TryParse(txtTopN.Text, out check) && int.Parse(txtTopN.Text) <= Logicdll.getSizeC(logicobj) && int.Parse(txtTopN.Text) > 0) { topSell(int.Parse(txtTopN.Text)); grpBoxTopN.Visible = false; } else { lblStatsError.Visible = true; txtTopN.Clear(); } }
public bool loadFile(string filename, int type) { int result, time = 0; result = Logicdll.loadFileC(logicobj, filename, type, ref time); // 1 for csv 2 for txt if (result == 1) { return(true); } else { return(false); } }
private void transDialog_FileOk(object sender, CancelEventArgs e) { //use openfile dialog int a = Logicdll.readTransC(logicobj, Path.GetFileName(transDialog.FileName)); if (a == 1) { lblMsg.Text = "Transaction added successfully!"; lblMsg.ForeColor = Color.Green; batchProcessingToolStripMenuItem.Enabled = true; } else { lblMsg.Text = "Failed."; lblMsg.ForeColor = Color.Red; } }
private void save_btn_Click(object sender, EventArgs e) { int result; if (csv_rbtn.Checked == true) { result = Logicdll.saveFileC(logicobj, Save_txt.Text, 1); // 1 for csv 2 for txt } else { result = Logicdll.saveFileC(logicobj, Save_txt.Text, 2); // 1 for csv 2 for txt } if (result == 1) { save_lbl.Text = "Successful"; } Application.Exit(); }
void topManu() { groupBox6.Text += " as of " + DateTime.Now.ToShortTimeString(); lvStats.Items.Clear(); colStatName.Text = "Manufacturer"; colStatSold.Text = "Units Sold"; Logicdll.callbestSellingC(logicobj); int count = Logicdll.getBSWsizeC(logicobj); int sale = 0; ListViewItem statItem = new ListViewItem(); for (int i = 0; i < count; i++) { statItem.Text = Logicdll.bestSellingManC(logicobj, i, ref sale); statItem.SubItems.Add(sale.ToString()); lvStats.Items.Add(statItem); } altStatRow(); }
public void autoComplete() { catList.Clear(); nameList.Clear(); Logicdll.clearSearchC(logicobj); arrsize = Logicdll.getSizeC(logicobj); String name, cat, manu; double price = 0; int unitcur = 0, unitsold = 0, barcode = 0; for (int i = 0; i < arrsize; i++) { Logicdll.addSearchProC(logicobj, i); Logicdll.getSearchProC(logicobj, 1, ref temp, i, ref barcode, ref price, ref unitcur, ref unitsold); name = Logicdll.getSearchNameC(logicobj, i); cat = Logicdll.getSearchCatC(logicobj, i); manu = Logicdll.getSearchManuC(logicobj, i); catList.Add(cat); nameList.Add(name); } }
private void batchProcessingToolStripMenuItem_Click(object sender, EventArgs e) { // will return 3 kinds of values int result = Logicdll.processBatchC(logicobj); if (result == 1) { lblMsg.Text = "Some errors occured, please check log.txt file!"; loadAll(); // listViewUpdate(); } else if (result == 2) { lblMsg.Text = "Batch processed successfully!"; lblMsg.ForeColor = Color.Green; loadAll(); } else { lblMsg.Text = "Please add some transactions!"; lblMsg.ForeColor = Color.Red; } }
// LinkedListNode<int> llist; public loadForm() { InitializeComponent(); logicobj = Logicdll.init(); }
public Save() { InitializeComponent(); logicobj = Logicdll.init(); }
private void btnPriceChange_Click(object sender, EventArgs e) { passwordForm password = new passwordForm(); password.ShowDialog(); if (password.lblPassError.Text == "ok") { if (!int.TryParse(tFieldValue.Text, out check)) { lblStatus.Text = "Please enter a valid value."; lblStatus.Visible = true; lblStatus.ForeColor = Color.Red; } else { int percent, result; progressBar1.Value = 0; progressBar1.Minimum = 0; progressBar1.Maximum = 100; int index = result_listbox.SelectedIndices[0]; ListViewItem item = new ListViewItem(); item = result_listbox.FocusedItem; start = DateTime.Now; result = Logicdll.changepriceC(logicobj, double.Parse(tFieldValue.Text), indexList.ElementAt(index)); end = DateTime.Now; progressBar1.Value += 50; if (result == 0) { lblMsg.ForeColor = Color.Red; lblMsg.Text = "Updating of price failed."; item = null; } else { editPanel.Hide(); result_listbox.BeginUpdate(); progressBar1.Value += 50; item.SubItems[6].Text = tFieldValue.Text; result_listbox.EndUpdate(); result_listbox.Refresh(); lblMsg.ForeColor = Color.Green; lblMsg.Text = "Updating of price is successful in " + (end - start).ToString() + "s."; percent = Convert.ToInt32(Convert.ToDouble(progressBar1.Value) / Convert.ToDouble(progressBar1.Maximum) * 100); progressBar1.CreateGraphics().DrawString(percent.ToString() + "%", new Font("Times New Roman", 8, FontStyle.Regular), Brushes.Black, new PointF(progressBar1.Width / 2 - 10, progressBar1.Height / 2 - 7)); groupBox2.Enabled = true; tFieldValue.Clear(); lblStatus.Text = ""; } loadAll(); altRow(); checkLow(); groupBox5.Enabled = true; } } else { lblStatus.Text = "Not enough rights to update price."; } }
private void Add_btn_Click(object sender, EventArgs e) { if (int.TryParse(price_txt.Text, out check) && int.TryParse(currentunit_txt.Text, out check) && int.TryParse(barcode_txt.Text, out check)) { Search_btn.Enabled = true; result_listbox.Enabled = true; unitsold_txt.Text = "0"; int result; start = DateTime.Now; result = Logicdll.addProdC(logicobj, name_txt.Text, cat_txt.Text, manu_txt.Text, int.Parse(barcode_txt.Text), int.Parse(currentunit_txt.Text), double.Parse(price_txt.Text)); // to update the datastorage of C++ end = DateTime.Now; ListViewItem item = new ListViewItem(); if (result == 1) { lblStatus.ForeColor = Color.Green; lblMsg.Text = "Product Added in " + (end - start).ToString() + "s."; indexList.Add(arrsize); searchlist.Add(arrsize); arrsize++; searchsize++; Logicdll.addSearchProC(logicobj, arrsize - 1); item.Text = name_txt.Text; item.SubItems.Add(cat_txt.Text); item.SubItems.Add(manu_txt.Text); item.SubItems.Add(barcode_txt.Text); item.SubItems.Add(currentunit_txt.Text); item.SubItems.Add(unitsold_txt.Text); item.SubItems.Add(price_txt.Text); result_listbox.Items.Add(item); lvItems.Add(item); catList.Add(cat_txt.Text); nameList.Add(name_txt.Text); name_txt.Clear(); cat_txt.Clear(); manu_txt.Clear(); barcode_txt.Clear(); unitsold_txt.Clear(); currentunit_txt.Clear(); price_txt.Clear(); groupBox2.Enabled = false; altRow(); btnAdd.Enabled = true; } else { lblStatus.ForeColor = Color.Red; lblStatus.Text = "Adding product failed, duplicate barcode found."; } } else { lblStatus.ForeColor = Color.Red; if (!int.TryParse(price_txt.Text, out check)) { lblStatus.Text = "Adding product failed. Invalid price entered."; price_txt.Focus(); } else if (!int.TryParse(barcode_txt.Text, out check)) { lblStatus.Text = "Adding product failed. Invalid barcode entered."; barcode_txt.Focus(); } else { lblStatus.Text = "Adding product failed. Invalid current units entered."; currentunit_txt.Focus(); } } lblStatus.Visible = true; }
private void Search_btn_Click(object sender, EventArgs e) { indexList.Clear(); name_txt.Clear(); cat_txt.Clear(); barcode_txt.Clear(); manu_txt.Clear(); price_txt.Clear(); unitsold_txt.Clear(); currentunit_txt.Clear(); lblStatus.Visible = false; int percent, result, unitcur = 0, unitsold = 0, barcode = 0; progressBar1.Value = 0; String name, cat, manu; double price = 0; Logicdll.clearSearchC(logicobj); // clear the search list in C++ start = DateTime.Now; if (Search_txt.Text == "") { lblStatus.Text = "Please enter a search term."; lblStatus.ForeColor = Color.Red; lblStatus.Visible = true; } else { result_listbox.Items.Clear(); if (NameS_rbtn.Checked == true) { result = Logicdll.searchC(logicobj, 1, Search_txt.Text); } else if (CatS_rbtn.Checked == true) { result = Logicdll.searchC(logicobj, 2, Search_txt.Text); } else { result = Logicdll.searchC(logicobj, 3, Search_txt.Text); } end = DateTime.Now; arrsize = result; progressBar1.Minimum = 0; progressBar1.Maximum = arrsize; for (int i = 0; i < result; i++) { progressBar1.Value++; lblMsg.ForeColor = Color.Red; ListViewItem item = new ListViewItem(); Logicdll.getSearchProC(logicobj, 1, ref temp, i, ref barcode, ref price, ref unitcur, ref unitsold); // to get the properties of each product from C++ name = Logicdll.getSearchNameC(logicobj, i); cat = Logicdll.getSearchCatC(logicobj, i); manu = Logicdll.getSearchManuC(logicobj, i); indexList.Add(temp); item.Text = name; item.SubItems.Add(cat); item.SubItems.Add(manu); item.SubItems.Add(barcode.ToString()); item.SubItems.Add(unitcur.ToString()); item.SubItems.Add(unitsold.ToString()); item.SubItems.Add(price.ToString()); result_listbox.Items.Add(item); percent = Convert.ToInt32(Convert.ToDouble(progressBar1.Value) / Convert.ToDouble(progressBar1.Maximum) * 100); progressBar1.CreateGraphics().DrawString(percent.ToString() + "%", new Font("Times New Roman", 8, FontStyle.Regular), Brushes.Black, new PointF(progressBar1.Width / 2 - 10, progressBar1.Height / 2 - 7)); } if (result_listbox.Items.Count == 0) { lblMsg.ForeColor = Color.Red; lblMsg.Text = "No results found."; Delete_btn.Enabled = false; Restock_btn.Enabled = false; Specify_btn.Enabled = false; lblMsg.Visible = true; } else { lblMsg.Text = result_listbox.Items.Count + " product(s) found in " + (end - start).ToString() + "s."; lblStatus.ForeColor = Color.Green; lblStatus.Text = "You have searched for '" + Search_txt.Text + "'."; lblStatus.Visible = true; } Search_txt.Clear(); checkLow(); altRow(); ShowAll_btn.Enabled = true; } }