private void btnCOMANDA_Click(object sender, EventArgs e) // buton comanda din meniu. Efectuare calcul pret total -> memorare in fisier { if (lblGetPret.Text != "") { float pret_total; if (lblPretTotal.Text == "") { pret_total = 0; } else { pret_total = Validari.Validare_ConvertToFloat_Pret_Meniu(lblPretTotal.Text); } float pret_item_meniu = Validari.Validare_ConvertToFloat_Pret_Meniu(lblGetPret.Text); lblPretTotal.Text = (pret_total + pret_item_meniu).ToString(); lblPretTotal.ForeColor = Color.Transparent; lblTotalPlata_Bon.Text = $"Total plată:\n{lblPretTotal.Text} RON"; IStocareMasa stocare_info_masa = new Administrare_masa(); List <Masa> l_mese = stocare_info_masa.GetInfo(); stocare_info_masa.UpdateMasa(l_mese[id_masa_pentru_actualizare_pret_total_comanda - 1].id, true, 0, "", lblPretTotal.Text); stocare_info_masa.GetInfo(); lstAfisareInfo.ClearSelected(); } }
public void Afisare_Mese(int index) { rdbANULEAZA.Visible = true; IStocareMasa stocare_info_masa = new Administrare_masa(); List <Masa> l_mese = stocare_info_masa.GetInfo(); if (l_mese != null) { foreach (Button btn in grMese.Controls.Cast <Control>().Reverse()) { if (l_mese[index].ocupat == true) { btn.BackColor = Color.Gray; btn.Enabled = false; btn.Text = "Masa " + btn.TabIndex + "\nOCUPAT"; } else { btn.BackColor = Color.Lime; btn.Enabled = true; btn.Cursor = Cursors.Hand; btn.Text = "Masa " + btn.TabIndex + "\n" + l_mese[index].locuri.ToString() + " locuri"; } index++; } } }
public void mentenanta() { IStocareMasa stocare_info_masa = new Administrare_masa(); List <Masa> l_mese = stocare_info_masa.GetInfo(); if (Masa.last_id != 0) { IStocareMeniu stocare_info_meniu = new Administrare_meniu(); List <Meniu> l_meniu = stocare_info_meniu.GetInfo(); if (l_meniu.Count != 0) { grOPTIUNI.Visible = true; btnADMIN.Location = new Point(26, 25); } else { grOPTIUNI.Visible = false; btnADMIN.Location = new Point(639, 435); MessageBox.Show("Momentan restaurantul este in mentenanta! Ne cerem scuze pentru discomfortul creat!\n\n* Daca sunteti administratorul va rugam sa actualizati meniul in restaurant!"); } } else { grOPTIUNI.Visible = false; btnADMIN.Location = new Point(639, 435); MessageBox.Show("Momentan restaurantul este in mentenanta! Ne cerem scuze pentru discomfortul creat!\n\n* Daca sunteti administratorul va rugam sa actualizati mesele in restaurant!"); } }
private void btnAfiseazaInfo_Click(object sender, EventArgs e) // buton Afiseaza --- afiseaza meniul || afiseaza mesele { if (btn_pentru_mese == false) // afisarea meniu client + admin { btnEliberareMasa.Visible = false; lstAfisareInfo.Enabled = true; lblGetPret.Text = ""; lstAfisareInfo.Items.Clear(); var antetTabel = String.Format("{0,-14}\t{1,0}\t{2,-30}\t{3,5}\n", "TIP", "ID", "NUME", "PRET"); lstAfisareInfo.Items.Add(antetTabel); lstAfisareInfo.Items.Add("___________________________________________________________________"); IStocareMeniu stocare_info_meniu = new Administrare_meniu(); List <Meniu> list_meniu = stocare_info_meniu.GetInfo(); foreach (Meniu meniu in list_meniu) { string linieTabel = ""; //if( meniu.denumire.Length) linieTabel = String.Format("{0,-14}\t{1,0}\t{2,-30}\t{3,5}\n", meniu.tip_aliment, meniu.id, meniu.denumire, meniu.pret); //linieTabel= String.Format("{0,-14}\t{1,0}\t{2,15}\t\t{3,5}\n", meniu.tip_aliment, meniu.id, meniu.denumire, meniu.pret); if (meniu.tip_aliment == Tip_aliment.Mancare.ToString()) { lstAfisareInfo.Items.Add(linieTabel); } } foreach (Meniu meniu in list_meniu) { string linieTabel = String.Format("{0,-14}\t{1,0}\t{2,-30}\t{3,5}\n", meniu.tip_aliment, meniu.id, meniu.denumire, meniu.pret); if (meniu.tip_aliment == Tip_aliment.Bautura.ToString()) { lstAfisareInfo.Items.Add(linieTabel); } } foreach (Meniu meniu in list_meniu) { string linieTabel = String.Format("{0,-14}\t{1,0}\t{2,-30}\t{3,5}\n", meniu.tip_aliment, meniu.id, meniu.denumire, meniu.pret); if (meniu.tip_aliment == Tip_aliment.Desert.ToString()) { lstAfisareInfo.Items.Add(linieTabel); } } } // afisarea meselor in cadrul ADMIN else { btnEliberareMasa.Visible = false; lstAfisareInfo.Enabled = true; lblGetPret.Text = ""; lstAfisareInfo.Items.Clear(); var antetTabel = String.Format("{0,-10}\t{1,-5}\t{2,-5}\t{3,-5}\t{4,-5}\t{5,-5}\n", "ID", "LOCATIE", "LOCURI", "COD", "TOTAL", "STATUS"); lstAfisareInfo.Items.Add(antetTabel); lstAfisareInfo.Items.Add("________________________________________________________________"); IStocareMasa stocare_info_masa = new Administrare_masa(); List <Masa> list_masa = stocare_info_masa.GetInfo(); foreach (Masa masa in list_masa) { string linieTabel = ""; if (masa.ocupat == true) { linieTabel = String.Format("{0,-10}\t{1,-5}\t{2,-5}\t{3,-5}\t{4,-5}\t{5,-5}\n", masa.id, masa.locatie, masa.locuri, masa.cod_unic, masa.total_plata, "Rezervat"); } else { linieTabel = String.Format("{0,-10}\t{1,-5}\t{2,-5}\t{3,-5}\t{4,-5}\t{5,-5}\n", masa.id, masa.locatie, masa.locuri, masa.cod_unic, masa.total_plata, "Liber"); } lstAfisareInfo.Items.Add(linieTabel); } } }
private void btnCodGata_Click(object sender, EventArgs e) // buton Gata ce apare dupa ce este introdus codul unic { IStocareMasa stocare_info_masa = new Administrare_masa(); List <Masa> l_mese = stocare_info_masa.GetInfo(); bool test = false; for (int i = 0; i < l_mese.Count; i++) { if (l_mese[i].cod_unic == Convert.ToInt32(txtCodUnic.Text)) { id_masa_pentru_actualizare_pret_total_comanda = l_mese[i].id; if (l_mese[i].ocupat == false) { MessageBox.Show("Masa cu acest cod nu a fost rezervata de dumneavoastra!"); txtCodUnic.Text = ""; btnCodGata.Visible = false; grAfiseazaInfo.Visible = false; lblOPTMASA.Visible = false; } else { lblOPTMASA.Visible = true; if (l_mese[i].locatie == "Interior") { lblOPTMASA.Text = $"MASA {id_masa_pentru_actualizare_pret_total_comanda} - {l_mese[i].locatie}"; } if (l_mese[i].locatie == "Separeu") { lblOPTMASA.Text = $"MASA {id_masa_pentru_actualizare_pret_total_comanda - 4} - {l_mese[i].locatie}"; } if (l_mese[i].locatie == "Terasa") { lblOPTMASA.Text = $"MASA {id_masa_pentru_actualizare_pret_total_comanda - 8} - {l_mese[i].locatie}"; } lblPretTotal.Text = (Validari.Validare_ConvertToFloat_Pret_Meniu(l_mese[i].total_plata.ToString())).ToString(); // primeste 0 din fisier sau valoarea adunata a preturilor // 4 comenzi necesare pentru revenirea de la admin la client grAfiseazaInfo.Visible = true; grAfiseazaInfo.Text = "Meniu"; lblTotalPlata_Bon.Visible = true; btnCOMANDA.Visible = true; lblPretTotal.ForeColor = Color.Transparent; lblTotalPlata_Bon.Text = $"Total plata\n{lblPretTotal.Text} RON"; lblGetPret.Text = ""; lstAfisareInfo.Items.Clear(); } test = true; break; } } if (test == false) { txtCodUnic.Text = ""; btnCodGata.Visible = false; MessageBox.Show("Codul mesei nu corespunde cu una dintre mesele rezervate!"); grAfiseazaInfo.Visible = false; lblOPTMASA.Visible = false; } }
private void btnREZERVA_Click(object sender, EventArgs e) // BUTON DE REZERVARE ---- ADAUGARE CLIENT IN FISIER { if (!Validari.Validare_Date_Rezervare(lblNUME.Text, lblPRENUME.Text, lblCNP.Text)) { lblNUME.ForeColor = Color.Red; lblPRENUME.ForeColor = Color.Red; lblCNP.ForeColor = Color.Red; MessageBox.Show("Completarea campurilor este obligatorie!"); return; } if (validare == false) { MessageBox.Show("Date introduse gresit! Verificati din nou informatiile din campuri"); return; } grIntroducetiCodulMesei.Visible = false; grAfiseazaInfo.Visible = false; grRezervareClient.Visible = false; IStocareClient stocare_info_client = new Administrare_client(); List <Client> al_client; if (stocare_info_client != null) { al_client = stocare_info_client.GetInfo(); last_id = al_client.Count + 1; } else { last_id = 0; } string cl = last_id.ToString() + ";" + txtNUME.Text + ";" + txtPRENUME.Text + ";" + txtCNP.Text + ";" + index_rezervare_dupa_selectie_masa.ToString(); Client client = new Client(cl); stocare_info_client.AddClient(client); IStocareMasa stocare_info_masa = new Administrare_masa(); List <Masa> l_mese = stocare_info_masa.GetInfo(); int cod_unic = 0; for (int i = 0; i < l_mese.Count; i++) { if (l_mese[i].id == index_rezervare_dupa_selectie_masa) { stocare_info_masa.UpdateMasa(l_mese[i].id, true); cod_unic = l_mese[i].cod_unic; break; } } stocare_info_masa.GetInfo(); Afisare_Mese(index_rezervare + 1); reset_controale_client(); DialogResult raspuns; raspuns = MessageBox.Show($"Codul mesei este: [ {cod_unic} ]", "COD UNIC", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); if (raspuns == System.Windows.Forms.DialogResult.Cancel) { MessageBox.Show($"Este necesara cunoasterea codului unic al mesei pentru a putea efectua comenzi.\n\nCodul este: [ {cod_unic} ]", "ATENTIE", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } grIntroducetiCodulMesei.Visible = true; rdbANULEAZA.Checked = false; // just in case rdbANULEAZA.Visible = false; // nu permit anularea actiunii daca s-a efectuat actiunea de rezervare }
private void btnAdminAdauga_Modifica_Click(object sender, EventArgs e)// Buton de modificare meniu pentru rolul de administrator { validare = true; if (btn_pentru_mese == false) // am selectat in admin optiunea de adaugare meniu { lblTextCamp1.ForeColor = Color.Black; lblTextCamp2.ForeColor = Color.Black; lblTextCamp3.ForeColor = Color.Black; if (rdbAdmin_rdb1.Checked == false && rdbAdmin_rdb2.Checked == false && rdbAdmin_rdb3.Checked == false) { lblEroareCamp1.Text = "Selectati locatia mesei"; lblEroareCamp1.ForeColor = Color.Green; lblEroareCamp1.Visible = true; validare = false; } if (txtAdminCamp2.Text == "") { lblEroareCamp2.Text = "Introduceti denumirea produsului"; lblEroareCamp2.ForeColor = Color.Green; lblEroareCamp2.Visible = true; validare = false; } if (txtAdminCamp3.Text == "") { lblEroareCamp3.Text = "Introduceti pretul produsului"; lblEroareCamp3.ForeColor = Color.Green; lblEroareCamp3.Visible = true; validare = false; } if (validare == true) { IStocareMeniu stocare_info_meniu = new Administrare_meniu(); List <Meniu> list_meniu = stocare_info_meniu.GetInfo(); Meniu add_meniu = new Meniu(); if (rdbAdmin_rdb1.Checked == true) { add_meniu.tip_aliment = rdbAdmin_rdb1.Text; } else if (rdbAdmin_rdb2.Checked == true) { add_meniu.tip_aliment = rdbAdmin_rdb2.Text; } else if (rdbAdmin_rdb3.Checked == true) { add_meniu.tip_aliment = rdbAdmin_rdb3.Text; } add_meniu.denumire = txtAdminCamp2.Text; string pret_nou = ""; string pret = txtAdminCamp3.Text; for (int i = 0; i < pret.Length; i++) { if (pret[i] == '.') { pret_nou += '.'; } else if (pret[i] == ',') { pret_nou += '.'; } else if (char.IsDigit(pret[i])) { pret_nou += pret[i]; } } add_meniu.pret = float.Parse(pret_nou, System.Globalization.CultureInfo.InvariantCulture); if (list_meniu.Count != 0) { add_meniu.id = Meniu.last_id; stocare_info_meniu.UpdateMeniu(add_meniu); } else { add_meniu.id = 1; stocare_info_meniu.UpdateMeniu(add_meniu, true); } MessageBox.Show("Produsul a fost adăugat!"); rdbAdmin_rdb1.Checked = false; rdbAdmin_rdb2.Checked = false; rdbAdmin_rdb3.Checked = false; admin_reset_controale_meniu(); btnAfiseazaInfo_Click(sender, e); } } // adaugare mese else { if (rdbAdmin_rdb1.Checked == false && rdbAdmin_rdb2.Checked == false && rdbAdmin_rdb3.Checked == false) { lblEroareCamp1.Text = "Selectati locatia mesei"; lblEroareCamp1.ForeColor = Color.Green; lblEroareCamp1.Visible = true; validare = false; } if (rdb2locuri.Checked == false && rdb3locuri.Checked == false && rdb5locuri.Checked == false && rdb7locuri.Checked == false && rdb9locuri.Checked == false) { lblEroareCamp3.Text = "Selectati numarul de locuri"; lblEroareCamp3.ForeColor = Color.Green; lblEroareCamp3.Visible = true; validare = false; } if (validare == true) { lblEroareCamp1.Text = ""; lblEroareCamp2.Text = ""; lblEroareCamp3.Text = ""; lblEroareCamp1.ForeColor = Color.Transparent; lblEroareCamp2.ForeColor = Color.Transparent; lblEroareCamp3.ForeColor = Color.Transparent; string _locatie = ""; int _locuri = 0; if (rdbAdmin_rdb1.Checked == true) { _locatie = rdbAdmin_rdb1.Text; } else if (rdbAdmin_rdb2.Checked == true) { _locatie = rdbAdmin_rdb2.Text; } else if (rdbAdmin_rdb3.Checked == true) { _locatie = rdbAdmin_rdb3.Text; } if (rdb2locuri.Checked) { _locuri = Convert.ToInt32(rdb2locuri.Text); } if (rdb3locuri.Checked) { _locuri = Convert.ToInt32(rdb3locuri.Text); } if (rdb5locuri.Checked) { _locuri = Convert.ToInt32(rdb5locuri.Text); } if (rdb7locuri.Checked) { _locuri = Convert.ToInt32(rdb7locuri.Text); } if (rdb9locuri.Checked) { _locuri = Convert.ToInt32(rdb9locuri.Text); } Masa b = new Masa(); b.locuri = b.GenerareCodUnic(); IStocareMasa stocare_info_masa = new Administrare_masa(); List <Masa> list_masa = stocare_info_masa.GetInfo(); if (list_masa.Count != 0) { // Verificare numar mese int nr1 = 0; foreach (Masa m in list_masa) { if (m.locatie == _locatie) { nr1++; } } if (nr1 < 4) { stocare_info_masa.UpdateMasa(Masa.last_id, false, _locuri, _locatie); } if (nr1 == 4) { MessageBox.Show($"Nu se mai pot adauga mese in {_locatie}!\nNumar maxim de mese: 4"); } } else { stocare_info_masa.UpdateMasa(1, false, _locuri, _locatie); } MessageBox.Show("Masa a fost adăugată!"); rdbAdmin_rdb1.Checked = false; rdbAdmin_rdb2.Checked = false; rdbAdmin_rdb3.Checked = false; rdb2locuri.Checked = false; rdb3locuri.Checked = false; rdb5locuri.Checked = false; rdb7locuri.Checked = false; rdb9locuri.Checked = false; txtAdminCamp1.Text = ""; txtAdminCamp2.Text = ""; txtAdminCamp3.Text = ""; } } }
static void Main(string[] args) { List <Client> list_client; List <Masa> list_masa; List <Meniu> list_meniu; IStocareClient stocare_info_client; IStocareMasa stocare_info_masa; IStocareMeniu stocare_info_meniu; Console.WriteLine("Daca se anuleaza masa rezervata - clientul pleaca - sa se genereze alt cod unic pentru masa respectiva"); Console.ReadKey(); string optiune; do { stocare_info_client = new Administrare_client(); stocare_info_masa = new Administrare_masa(); stocare_info_meniu = new Administrare_meniu(); list_client = stocare_info_client.GetInfo(); list_masa = stocare_info_masa.GetInfo(); list_meniu = stocare_info_meniu.GetInfo(); Console.Clear(); Console.WriteLine("A. Afisare mese disponibile"); Console.WriteLine("B. Modifica locuri masa"); Console.WriteLine("C. Adauga mese\n"); Console.WriteLine("D. Afisare meniu"); Console.WriteLine("E. Adauga in meniu"); Console.WriteLine("F. Cauta aliment\n"); Console.WriteLine("G. Rezervare masa"); Console.WriteLine("H. Afisare clienti"); Console.WriteLine("I. Cauta client\n"); Console.WriteLine("J. Comanda din meniu"); Console.WriteLine("X. Parasire restaurant"); Console.Write("\nAlegeti o optiune: "); optiune = Console.ReadLine(); switch (optiune.ToUpper()) { case "A": { if (list_masa.Count == 0) { Console.WriteLine("Nu exista inregistrari valide!"); } else { AfisareMese(list_masa); } break; } case "B": { /*string id, locuri; * Console.WriteLine("ID-ul mesei este: "); * id = Console.ReadLine(); * if (list_masa.Count < Convert.ToInt32(id)) * Console.WriteLine("Masa nu a putut fi actualizata deoarece id-ul introdus nu este atribuit la nici o masa"); * else * { * Console.WriteLine("Noul numar de locuri: "); * locuri = Console.ReadLine(); * * bool confirmare; * confirmare = stocare_info_masa.UpdateMasa(id, locuri); * if (confirmare) * { * list_masa = stocare_info_masa.GetInfo(); * AfisareMese(list_masa); * } * }*/ break; } case "C": { Masa addmasa = AddMasa_Citire_Consola(); list_masa.Add(addmasa); stocare_info_masa.AddMasa(addmasa); Console.WriteLine("Masa a fost adaugata cu succes!"); break; } case "D": { if (list_meniu.Count == 0) { Console.WriteLine("Nu exista inregistrari valide!"); } else { AfisareMeniu(list_meniu); } break; } case "E": { Meniu adauga_in_meniu = AddMeniu(); list_meniu.Add(adauga_in_meniu); stocare_info_meniu.Add(adauga_in_meniu); Console.WriteLine("Produsul a fost adaugat cu succes!"); break; } case "F": { CautaAliment(stocare_info_meniu); break; } case "G": { Client addclient = Rezervare(list_client.Count, list_masa); list_client.Add(addclient); stocare_info_client.AddClient(addclient); Console.WriteLine("Clientul a fost inregistrat!"); break; } case "H": { if (list_client.Count == 0) { Console.WriteLine("Nu exista clienti in restaurant!"); } else { AfisareClienti(list_client, list_masa); } break; } case "I": { CautaClient(stocare_info_client); break; } case "J": { if (list_client.Count == 0) { Console.WriteLine("Nu aveti vreo masa rezervata! Rezervati prima data o masa!"); } break; } case "X": Console.WriteLine("\nLa revedere! Va mai asteptam cu drag!"); break; default: Console.WriteLine("Optiune inexistenta"); break; } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } while (optiune.ToUpper() != "X"); }