public EditingRacuniViewModel(RacuniViewModel rvm)
        {
            Newrevroba       = new EditingRevRobaViewModel();
            Newrevroba.Datum = DateTime.Now;
            _original        = rvm;

            Editable       = new RacuniViewModel(null);
            Editable.Brev  = _original.Brev;
            Editable.Datum = _original.Datum;
            Editable.RevRobas.NoviRedReversa.Datum = DateTime.Now;
            Editable.Kupci = _original.Kupci;
            foreach (RevRobaViewModel rr in _original.RevRobas.Items)
            {
                var newRR = new RevRobaViewModel();
                newRR.RacuniID  = rr.RacuniID;
                newRR.Datum     = rr.Datum;
                newRR.Kolic     = rr.Kolic;
                newRR.RevRobaID = rr.RevRobaID;
                newRR.Roba      = rr.Roba;
                newRR.Utro      = rr.Utro;
                newRR.Cena      = rr.Cena;
                Editable.RevRobas.Items.Add(newRR);
            }

            var revrobaquery = from rr in _original.RevRobas.Items
                               group rr by rr.Roba into GRoba
                               select new EditingRevRobaViewModel {
                Roba = GRoba.Key, Kolic = GRoba.Sum(x => x.Kolic), Datum = GRoba.Min(t => t.Datum), Cena = GRoba.Average(x => x.Cena), Utro = Convert.ToInt32(GRoba.Min(t => t.Datum).Subtract(_original.Datum).TotalDays)
            };

            InvoiceLineSummary = new ObservableCollection <EditingRevRobaViewModel>(revrobaquery);
        }
Esempio n. 2
0
        private void AddNewInvoiceLine()
        {
            var rr = new RevRobaViewModel
            {
                RacuniID = RevRobas.NoviRedReversa.RacuniID,
                Roba     = RevRobas.NoviRedReversa.Roba,
                Kolic    = RevRobas.NoviRedReversa.Kolic,
                Cena     = RevRobas.NoviRedReversa.Cena,
                Datum    = RevRobas.NoviRedReversa.Datum
            };

            RevRobas.Items.Add(rr);
            RevRobas.NoviRedReversa.Clear();
        }
        public void Save()
        {
            foreach (EditingRevRobaViewModel rr in InvoiceLineSummary)
            {
                if (!rr.IsDeleted && rr.Kolicraz != null && rr.Kolicraz != 0)
                {
                    var newRRRaz = new RevRobaViewModel();
                    newRRRaz.RacuniID = _original.Brev;
                    newRRRaz.Cena     = rr.Cena;
                    newRRRaz.Datum    = Newrevroba.Datum;
                    newRRRaz.Kolic    = -rr.Kolicraz;
                    newRRRaz.Roba     = rr.Roba;
                    _original.RevRobas.Items.Add(newRRRaz);
                    _original.RaisePropertyChanged("CurrentPrice");
                }
                else
                {
                    var existingrevroba = _original.RevRobas.Items.FirstOrDefault(x => x.Roba == rr.Roba);
                    if (existingrevroba == null)
                    {
                        var newrevroba = new RevRobaViewModel();
                        newrevroba.RacuniID = _original.Brev;
                        newrevroba.Cena     = rr.Cena;
                        newrevroba.Datum    = rr.Datum;
                        newrevroba.Kolic    = rr.Kolic;
                        newrevroba.Roba     = rr.Roba;
                        _original.RevRobas.Items.Add(newrevroba);
                    }
                }
            }

            foreach (EditingRevRobaViewModel nn in InvoiceLineSummary.Where(x => x.IsDeleted == true))
            {
                var deletedrevroba = _original.RevRobas.Items.Where(x => x.Roba == nn.Roba);
                foreach (RevRobaViewModel tt in deletedrevroba.ToList())
                {
                    tt.IsDeleted = true;
                    _original.Save();
                    _original.RevRobas.Items.Remove(tt);
                }
            }
            _original.Save();
            EditInvoiceWindow.Window.Close();
        }
Esempio n. 4
0
 public RevRobasViewModel(IList <RevRobaViewModel> revrobas)
 {
     Items = new BindingList <RevRobaViewModel>(revrobas);
     Items.RaiseListChangedEvents = true;
     NoviRedReversa = new RevRobaViewModel();
 }