예제 #1
0
        private void saveSupply()
        {
            if (sdh_collection.Collection.Count == 0)
            {
                System.Windows.MessageBox.Show("Невозможно сохранить пустое поступление!");
                return;
            }
            if (System.Windows.MessageBox.Show("Подтвердите поступление", "Подтвердите поступление", MessageBoxButton.YesNo) != MessageBoxResult.Yes)
            {
                return;
            }

            if (!sdh_collection.isAllCorrect())
            {
                System.Windows.MessageBox.Show("Проверьте введенные данные!\nОдна или более строк заполнены некорректно!");
                return;
            }

            Supply supply = new Supply();

            supply.SupplyDate = DateTime.Now;

            if (supply.save())
            {
                for (int i = 0; i < sdh_collection.Collection.Count; i++)
                {
                    SupplyDetailsHelper sdh           = sdh_collection.Collection[i];
                    SupplyDetails       supplyDetails = new SupplyDetails();
                    supplyDetails.IdDetails    = sdh.IdDetails;
                    supplyDetails.IdSupply     = supply.Id;
                    supplyDetails.DetailsCount = sdh.DetailsCount;
                    if (!supplyDetails.save())
                    {
                        System.Windows.MessageBox.Show("При сохранении произошли ошибки.");
                        supply.remove();
                        return;
                    }
                }

                ///Update current count
                //sdh_collection.Collection.Count-1 - т.к. последняя строка пустая
                for (int i = 0; i < sdh_collection.Collection.Count - 1; i++)
                {
                    sdh_collection.Collection[i].Detail.CurrentCount = 0;
                }

                sdh_collection.clear();

                SupplyDetailsHelper newSupplyDetails = new SupplyDetailsHelper();
                sdh_collection.add(newSupplyDetails);
            }
            else
            {
                System.Windows.MessageBox.Show("При сохранении произошли ошибки.");
                return;
            }
        }
예제 #2
0
        protected override void populate(SQLiteDataReader reader)
        {
            SupplyDetails supplyDetails = new SupplyDetails();

            supplyDetails.Id           = reader.GetInt32(0);
            supplyDetails.DetailsCount = reader.GetInt32(1);
            supplyDetails.IdDetails    = reader.GetInt32(2);
            supplyDetails.IdSupply     = reader.GetInt32(3);
            add(supplyDetails);
        }
예제 #3
0
        public bool add <T>(T model)
        {
            try
            {
                SupplyDetails supplyDetails = model as SupplyDetails;
                _collection.Add(supplyDetails);

                return(true);
            }
            catch (Exception ex)
            {
                Log.WriteError(ex.Message);
                return(false);
            }
        }
예제 #4
0
 public bool remove <T>(T model)
 {
     try
     {
         SupplyDetails supplyDetails = model as SupplyDetails;
         if (_collection.Contains(supplyDetails))
         {
             _collection.Remove(supplyDetails);
         }
         return(true);
     }
     catch (Exception ex)
     {
         Log.WriteError(ex.Message);
         return(false);
     }
 }
예제 #5
0
 internal static void addSupplyDetails(string prodName, int units, decimal price, int id)
 {
     using (var db = new TradeDB())
     {
         SupplyDetails ord = new SupplyDetails
         {
             SupplyID    = id,
             ProductName = prodName,
             Quantity    = (short)units,
             UnitPrice   = price
         };
         // 3. Добавление сущностного объекта в таблицу Customers
         db.SupplyDetails.Add(ord);
         // 4. Вызов метода SaveChanges
         db.SaveChanges();
     }
 }