Пример #1
0
        private OldDBWeb.PozycjaReklamacji dodajPozycje(OldDBWeb.Produkt towar, decimal?cena = null, double?ilosc = null)
        {
            int maxLp   = this.pozycje.Count == 0 ? 0 : this.pozycje.Max(r => r.Lp);
            var pozycja = new Enova.Business.Old.DB.Web.PozycjaReklamacji()
            {
                Towar      = towar,
                TowarNazwa = towar.Kod + " - " + towar.Nazwa,
                Cena       = cena != null ? cena.Value : (towar.Cena == null ? 0 : towar.Cena.Value),
                Lp         = maxLp + 1
            };

            if (ilosc != null)
            {
                if (ilosc.Value < 0)
                {
                    pozycja.IloscBraki = -ilosc.Value;
                }
                else if (ilosc > 0)
                {
                    pozycja.IloscNadwyzki = ilosc.Value;
                }
            }
            this.Reklamacja.Pozycje.Add(pozycja);
            int idx = this.pozycjeBindingSource.Add(pozycja);

            this.pozycjeReklamacjiGrid.CurrentCell = this.pozycjeReklamacjiGrid.Rows[idx].Cells[lloscBrakiColumn.Index];
            this.pozycjeReklamacjiGrid.Focus();
            return(pozycja);
        }
Пример #2
0
        private void rozdzielButton_Click(object sender, EventArgs e)
        {
            List <DataGridViewRow> selectedRows = new List <DataGridViewRow>();

            foreach (DataGridViewCell cell in pozycjeReklamacjiGrid.SelectedCells)
            {
                if (!selectedRows.Any(r => r.Index == cell.RowIndex))
                {
                    selectedRows.Add(cell.OwningRow);
                }
            }


            if (selectedRows.Count > 0 && BAL.Forms.FormManager.Confirm("Czy napewno chcesz rodzielić reklamację"))
            {
                //var hm = HandelModule.GetInstance(this.DataContext);
                var dc   = (Enova.Business.Old.DB.Web.WebContext)((Enova.Business.Old.Core.IContexable) this.DataContext);
                var view = (ReklamacjeView)this.DataContext.Parent;

                //var rkl = new Enova.Business.Old.DB.Web.Reklamacja();
                var rkl = (Enova.Business.Old.DB.Web.Reklamacja)view.CreateData();
                rkl.Kontrahent = this.Reklamacja.Kontrahent;
                //hm.Reklamacje.AddRow(rkl);

                int i = 1;

                foreach (DataGridViewRow row in selectedRows)
                {
                    var poz = (Enova.Business.Old.DB.Web.PozycjaReklamacji)row.DataBoundItem;

                    var newPoz = new Enova.Business.Old.DB.Web.PozycjaReklamacji();
                    //hm.Reklamacje.AddRow(newPoz);

                    newPoz.Reklamacja    = rkl;
                    newPoz.Towar         = poz.Towar;
                    newPoz.TowarNazwa    = poz.TowarNazwa;
                    newPoz.Cena          = poz.Cena;
                    newPoz.Indywidualny  = poz.Indywidualny;
                    newPoz.Korekta       = poz.Korekta;
                    newPoz.Lp            = i++;
                    newPoz.Opis          = poz.Opis;
                    newPoz.IloscBraki    = poz.IloscBraki;
                    newPoz.IloscNadwyzki = poz.IloscNadwyzki;

                    poz.Deleted = true;
                }

                ((ReklamacjeEditContext)this.DataContext).RozdzielonaReklamacja = rkl;
                ((BAL.Forms.DataEditForm) this.ParentForm).ProcessOKButton();
            }
        }
Пример #3
0
 private void usunPozycje()
 {
     if (pozycjeReklamacjiGrid.CurrentRow != null)
     {
         if (FormManager.Confirm("Czy napewno chcesz usunąć pozycję?"))
         {
             Enova.Business.Old.DB.Web.PozycjaReklamacji pozycja = (Enova.Business.Old.DB.Web.PozycjaReklamacji)pozycjeReklamacjiGrid.CurrentRow.DataBoundItem;
             if (pozycja.EntityState == EntityState.Added)
             {
                 DbContext.DeleteObject(pozycja);
             }
             else if (pozycja.EntityState == EntityState.Modified || pozycja.EntityState == EntityState.Unchanged)
             {
                 pozycja.Deleted = true;
             }
             int i = 1;
             foreach (var poz in this.Reklamacja.Pozycje.Where(r => r.Deleted == false).OrderBy(r => r.Lp))
             {
                 poz.Lp = i++;
             }
             pozycjeBindingSource.Remove(pozycja);
         }
     }
 }