Пример #1
0
        private void Zaczytaj()
        {
            int autonumercennik = Context.IHP_NUMERACJA.FirstOrDefault(x => x.ID_TABELA == 3).NUMER;

            string LastMessage;

            try
            {
                var listKartotek = Context.IHP_KARTOTEKA.ToList();
                _lstItem.Clear();
                foreach (IHP_KARTOTEKA item in listKartotek)

                {
                    if (!LstCennik.Any(x => x.ID_IHP_KARTOTEKA == item.ID_IHP_KARTOTEKA && x.ID_IHP_DEFCENY == _defceny.ID_IHP_DEFCENY))
                    {
                        autonumercennik++;
                        IHP_CENNIK cena = new IHP_CENNIK()
                        {
                            ID_IHP_CENNIK    = autonumercennik,
                            ID_IHP_KARTOTEKA = item.ID_IHP_KARTOTEKA,
                            ID_IHP_DEFCENY   = _defceny.ID_IHP_DEFCENY,
                            CENAN            = 0,
                            CENAB            = 0,
                            IHP_KARTOTEKA    = item,
                            IHP_DEFCENY      = _defceny
                        };
                        _lstItem.Add(cena);
                    }
                }
                Context.IHP_NUMERACJA.FirstOrDefault(x => x.ID_TABELA == 3).NUMER = autonumercennik;
                Context.IHP_CENNIK.AddRange(_lstItem);
                Context.SaveChanges();
                GetCeny(_defceny.ID_IHP_DEFCENY);
            }
            catch (Exception ex)
            {
                LastMessage = ex.ToString();
                if (LastMessage == String.Empty)
                {
                    LastMessage = ex.InnerException.ToString();
                }
                LogManager.WriteLogMessage(LogManager.LogType.Error, LastMessage);
                throw ex;
            }
        }
Пример #2
0
        private void Item_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            decimal cenaold = 0;
            string  LastMessage;

            try
            {
                CennikView row = (CennikView)sender;
                if (_oldrow != null)
                {
                    if (_oldrow.ID_IHP_CENNIK == row.ID_IHP_CENNIK)
                    {
                        {
                            //if (_defceny.ODNETTO == 1)
                            //{

                            //    if (_oldrow.CENAB == row.CENAB)&& (_oldrow.CENAN == row.CENAB))
                            //        return;

                            //}
                            //if (_defceny.ODNETTO == 0)
                            //{
                            if ((_oldrow.CENAN == row.CENAN) && (_oldrow.CENAB == row.CENAB))
                            {
                                return;
                            }
                        }
                    }
                }
                decimal Cenanetto  = row.CENAN;
                int     vat        = row.VAT;
                decimal wartvat    = 0;
                decimal vatvalue   = 0m;
                decimal Cenabrutto = row.CENAB;

                if (vat > 0)
                {
                    if (_defceny.ODNETTO == 1)
                    {
                        wartvat    = (Cenanetto * vat) / 100;
                        Cenabrutto = Cenanetto + wartvat;
                        Cenabrutto = Math.Round(Cenabrutto, 2);
                        _oldrow    = new CennikView()
                        {
                            ID_IHP_CENNIK = row.ID_IHP_CENNIK,
                            CENAB         = Cenabrutto,
                            CENAN         = Cenanetto
                        };


                        _lstcennik.FirstOrDefault(x => x.ID_IHP_CENNIK == row.ID_IHP_CENNIK).CENAB = Cenabrutto;
                    }

                    if (_defceny.ODNETTO == 0)
                    {
                        vatvalue  = (Convert.ToDecimal(vat) / 100);
                        vatvalue  = 1 + vatvalue;
                        Cenanetto = Cenabrutto / vatvalue;
                        Cenanetto = Math.Round(Cenanetto, 2);
                        wartvat   = Cenabrutto - Cenanetto;
                        _oldrow   = new CennikView()
                        {
                            ID_IHP_CENNIK = row.ID_IHP_CENNIK,
                            CENAN         = Cenanetto,
                            CENAB         = Cenabrutto
                        };
                        _lstcennik.FirstOrDefault(x => x.ID_IHP_CENNIK == row.ID_IHP_CENNIK).CENAN = Cenanetto;
                    }
                }
                else
                {
                    Cenabrutto = Cenanetto;
                }


                IHP_CENNIK cena = Context.IHP_CENNIK.Where(x => x.ID_IHP_CENNIK == row.ID_IHP_CENNIK).SingleOrDefault();
                //wysylamy w eter
                if (cena != null)
                {
                    _lstItem.FirstOrDefault(x => x.ID_IHP_CENNIK == row.ID_IHP_CENNIK).CENAN = Cenanetto;
                    _lstItem.FirstOrDefault(x => x.ID_IHP_CENNIK == row.ID_IHP_CENNIK).CENAB = Cenabrutto;
                    Messenger.Default.Send <List <IHP_CENNIK> >(_lstItem);
                }
                //zapisuejmy do bazy
                if (cena != null)
                {
                    cena.CENAB = row.CENAB;
                    cena.CENAN = row.CENAN;
                    DodajHistoria(row.CENAN);
                    Context.IHP_CENNIK.Attach(cena);
                    Context.Entry(cena).State = EntityState.Modified;
                    Context.SaveChanges();
                    LoadCollectionHist();
                }
            }
            catch (Exception ex)
            {
                LastMessage = ex.ToString();
                LogManager.WriteLogMessage(LogManager.LogType.Error, LastMessage);
                throw ex;
            }
        }