public FormHome() { InitializeComponent(); // inizializzo una stringa che andrà a contenere i nomi dei vari elementi da poter cercare List <string> righe = new List <string>(); // aggiungo i vari nomi degli elementi alla stringa DbVino v = new DbVino(); DbVigneto w = new DbVigneto(); DbMarmellata m = new DbMarmellata(); righe.Add(v.NameTable()); righe.Add(w.NameTable()); righe.Add(m.NameTable()); // ciclo che aggiunge al menu di scelta i vari nomi inseriti nella stringa 'righe' for (int i = 0; i < righe.Count; i++) { VisualizzaTabella.Items.Add(righe[i]); } //---------------------------------------------------------------------// // sezione per la stampa dei prodotti con maggiore priorità di vendita // //---------------------------------------------------------------------// // implementazione del visitor pattern, chiamata ai metodi che restituiranno delle liste di id ordinate in base al numero di prodotti in magazzino PrinterVisitor p = new PrinterVisitor(); List <string> vini_p = p.VisitVini(v); List <string> marmellate_p = p.VisitMarmellate(m); List <string> vigneti_p = p.VisitVigneti(w); Console.WriteLine(vini_p.Count); // ciclo che aggiunge i 5 vini con maggiore priorità di vendita alla listview for (int i = 0; (i < 5) & (i < vini_p.Count); i++) { ListViewItem entryListItem = listViewPriorita.Items.Add(v.SelectElement(vini_p[i].ToString(), "nome")); entryListItem.UseItemStyleForSubItems = true; ListViewItem.ListViewSubItem quantita = entryListItem.SubItems.Add(v.SelectElement(vini_p[i].ToString(), "nrbottiglie")); } // ciclo che aggiunge i 3 vigneti con maggiore priorità di vendita alla listview for (int i = 0; (i < 3) & (i < vigneti_p.Count); i++) { ListViewItem entryListItem = listViewPriorita.Items.Add(w.SelectElement(vigneti_p[i].ToString(), "nome")); entryListItem.UseItemStyleForSubItems = true; ListViewItem.ListViewSubItem quantita = entryListItem.SubItems.Add(w.SelectElement(vigneti_p[i].ToString(), "nrvitimorte")); } // ciclo che aggiunge i 3 marmellate con maggiore priorità di vendita alla listview for (int i = 0; (i < 3) & (i < marmellate_p.Count); i++) { ListViewItem entryListItem = listViewPriorita.Items.Add(m.SelectElement(marmellate_p[i].ToString(), "frutto")); entryListItem.UseItemStyleForSubItems = true; ListViewItem.ListViewSubItem quantita = entryListItem.SubItems.Add(m.SelectElement(marmellate_p[i].ToString(), "nrbarattoli")); } }// end form
public FormModificaVigneto(ListViewItem.ListViewSubItem id, FormVigneto formvigneto, FormHome home) { InitializeComponent(); this.id = id; this.formvigneto = formvigneto; this.home = home; DbVigneto w = new DbVigneto(); // lettura dal db dei dati necessari // stampa dei dati tramite textbox textBox1.Text = w.SelectElement(id, "nome"); textBox2.Text = w.SelectElement(id, "nrvitimorte"); }// end form
}// end button elemina // evento che applica le modifiche effettuate dall'utente private void ButtonApplica_Click(object sender, EventArgs e) { // caso in cui l'utente voglia moidifcare entrambi gli elementi if (this.comboBoxNomeVigneto.Text != "" && this.numericUpDownNrViti.Value != 0) { DbVigneto w = new DbVigneto(); // conversione dei valori da decimal a int per eseguire la sottrazione dei valori int nrvitimorte = int.Parse(w.SelectElement(this.id, "nrvitimorte")); int vitisostituite = decimal.ToInt32(this.numericUpDownNrViti.Value); int viti = nrvitimorte - vitisostituite; // metodo chiamato 2 volte per apportare tutte le modifiche w.ModifyItem(this.comboBoxNomeVigneto.Text, "nome", this.id); w.ModifyItem(viti, "nrvitimorte", this.id); // chiusura del form attuale a apertura del form precedente this.formvigneto.Dispose(); FormVigneto frm = new FormVigneto(this.home); frm.Show(); this.Dispose(); } // caso in cui l'utente voglia modificare solo il numero di viti else if (this.comboBoxNomeVigneto.Text == "" && this.numericUpDownNrViti.Value != 0) { DbVigneto w = new DbVigneto(); // conversione dei valori da decimal a int per eseguire la sottrazione dei valori int nrvitimorte = int.Parse(w.SelectElement(this.id, "nrvitimorte")); int vitisostituite = decimal.ToInt32(this.numericUpDownNrViti.Value); int viti = nrvitimorte - vitisostituite; // chiamata del metodo per modificare un elemento w.ModifyItem(viti, "nrvitimorte", this.id); // chiusura del form attuale a apertura del form precedente this.formvigneto.Dispose(); FormVigneto frm = new FormVigneto(this.home); frm.Show(); this.Dispose(); } // caso in cui l'utente voglia moidifcare solo il nome del vigneto else if (this.comboBoxNomeVigneto.Text != "" && this.numericUpDownNrViti.Value == 0) { DbVigneto w = new DbVigneto(); // metodo chiamato 2 volte per apportare tutte le modifiche w.ModifyItem(this.comboBoxNomeVigneto.Text, "nome", this.id); // chiusura del form attuale a apertura del form precedente this.formvigneto.Dispose(); FormVigneto frm = new FormVigneto(this.home); frm.Show(); this.Dispose(); } // se l'utente scegli di non modificare nulla e preme il pulsante non succede nulla }// end applica