/// <summary> /// Update InsStore /// </summary> /// <param name="insStore">InsStore</param> public void UpdateInsStore(CommonData.InsStore insStore) { InsStore db_secStore = new InsStore() { InsStoreID = insStore.InsStoreID, InsID = insStore.InsID, Tf = (byte)insStore.Tf, IsEnable = insStore.IsEnable }; _da.DbContext.Update(db_secStore); }
/// <summary> /// Синхронизация блока данных. /// Запрашивает с сервера данные и записывает их в базу. /// </summary> /// <param name="insStore">Поток данных</param> /// <param name="date1">Дата начала блока</param> /// <param name="date2">Дата окончания блока</param> /// <param name="isLastDirty">true - данные за последнюю дату неполные</param> /// <param name="cancel">Токен отмены операции</param> /// <returns>Задача, выдающая список баров</returns> private async Task <IEnumerable <Bar> > SyncDataBlock(InsStore insStore, DateTime date1, DateTime date2, bool isLastDirty, CancellationToken cancel) { CommonData.Instrum ins = _instrumBL.GetInstrumByID(insStore.InsID); _logger.LogInformation("SyncDataBlock {Ticker} {date1} to {date2}", ins.Ticker, date1.ToString("yyyy-MM-dd"), date2.ToString("yyyy-MM-dd")); var bars = await _provider.GetDataAsync(ins.Ticker, insStore.Tf, date1, date2); if (bars == null) { return(null); } _insStoreBL.InsertData(insStore.InsStoreID, ins.Decimals, bars, date1, date2, isLastDirty, cancel); _logger.LogInformation("SyncDataBlock.InsertBars: {count}", bars.Count().ToString()); return(bars); }