private void RefreshCantitateDisponibila() { if (SelectedProdus == null) { return; } cantitateDisponibilaTbox.Text = SelectedProdus.CantitateDisponibila().ToString("0.00"); pretUnitarTbox.Text = produs.Pret.ToString("0.00"); }
private void addBtn_Click(object sender, EventArgs e) { if (SelectedProdus == null) { return; } if (SelectedProdus.CantitateDisponibila() == 0) { MessageBox.Show("Produsul '" + produs.Nume + "' nu este disponibil!"); return; } decimal cantitate = 0m; decimal.TryParse(cantitateTbox.Text, out cantitate); if (cantitate <= 0) { MessageBox.Show("Introduceti o cantitate!"); return; } if (cantitate > produs.CantitateDisponibila()) { MessageBox.Show("Ati ales o cantitate mai mare decat cantitatea disponibila!"); return; } decimal pretUnitar = 0; decimal.TryParse(pretUnitarTbox.Text, out pretUnitar); bool verifiedErrorsFlag = false; string cantitateString = cantitate.ToString("0.00"); List <PozitieFacturaIesire> pozitiiNoiList = new List <PozitieFacturaIesire>(); while (cantitate > 0) { var pozitieIesireNoua = new PozitieFacturaIesire(); pozitieIesireNoua.IdFacturaIesire = 2;// pt a evita avertismentele pozitieIesireNoua.PretUnitar = pretUnitar; var stocDisponibil = Stoc.GetAll().Where(p => p.Cantitate > 0 && p.IdProdus == produs.ID).First(); pozitieIesireNoua.IdStoc = stocDisponibil.ID; pozitieIesireNoua.Cantitate = stocDisponibil.Cantitate; if (!verifiedErrorsFlag) { verifiedErrorsFlag = true; var errors = pozitieIesireNoua.GetErrorString(); if (errors.Trim() != string.Empty) { MessageBox.Show(errors); return; } } if (stocDisponibil.Cantitate >= cantitate) { stocDisponibil.Cantitate -= cantitate; pozitieIesireNoua.Cantitate = cantitate; cantitate = 0; } else { cantitate -= stocDisponibil.Cantitate; stocDisponibil.Cantitate = 0; } pozitiiNoiList.Add(pozitieIesireNoua); pozitiiOut.Add(pozitieIesireNoua); } DataGridViewRow row = new DataGridViewRow(); row.CreateCells(dataGrid, produs.Nume, cantitateString, pretUnitar.ToString("0.00")); row.Tag = pozitiiNoiList; dataGrid.Rows.Add(row); RefreshCantitateDisponibila(); }