Beispiel #1
0
 private static void                     DbRecordToItemRecord(ItemPrices.PricesRow a_DbRecord, ItemRecord a_ItemRecord)
 {
     lock (a_ItemRecord)
     {
         a_ItemRecord.PriceDate = DateTime.FromFileTimeUtc(Convert.ToInt64(a_DbRecord.UpdateTime));
         a_ItemRecord.Price     = a_DbRecord.Price;
     }
 }
Beispiel #2
0
        private void                            DbRecordToItemRecord(ItemPrices.PricesRow a_DbRecord)
        {
            ItemRecord currItem = m_ItemsDB.GetItemByTypeID(a_DbRecord.TypeID);

            if (currItem == null)
            {
                return;
            }

            DbRecordToItemRecord(a_DbRecord, currItem);
        }
Beispiel #3
0
        private void                            ApplyPrices(List <PriceRecord> a_Prices, PriceRecord a_Filter)
        {
            ItemPrices.PricesDataTable newDbData = new ItemPrices.PricesDataTable();

            foreach (PriceRecord currRecord in a_Prices)
            {
                ItemPrices.PricesRow dbRecord = newDbData.NewPricesRow();
                PriceRecordToDbRecord(currRecord, dbRecord);
                newDbData.Rows.Add(dbRecord);

                // Price provider can return more data then requested (for example, all price types at once, or all regions at once).
                // If data matches currently selected filter, apply it to loaded items.
                if (currRecord.IsMatchesFilter(a_Filter))
                {
                    DbRecordToItemRecord(dbRecord);
                }
            }

            // Store everything in database
            m_Database.ReplaceRows(newDbData, newDbData.Rows);
        }
Beispiel #4
0
 private static void                     PriceRecordToDbRecord(PriceRecord a_PriceRecord, ItemPrices.PricesRow a_DbRecord)
 {
     a_DbRecord.ProviderID = (UInt32)a_PriceRecord.Provider;
     a_DbRecord.RegionID   = a_PriceRecord.RegionID;
     a_DbRecord.SolarID    = a_PriceRecord.SolarID;
     a_DbRecord.StationID  = a_PriceRecord.StationID;
     a_DbRecord.PriceType  = (UInt32)a_PriceRecord.PriceType;
     a_DbRecord.TypeID     = a_PriceRecord.TypeID;
     a_DbRecord.Price      = a_PriceRecord.Price;
     a_DbRecord.UpdateTime = a_PriceRecord.UpdateTime;
 }