public void HandleRequest(IRequest request) { using (var scope = Db.CreateTransaction()) { foreach (var dockingBase in _dockingBaseHelper.GetDefaultDockingBases()) { var count = Db.Query().CommandText("select count(*) from channels where name=@terminalChannelName") .SetParameter("@terminalChannelName", dockingBase.ChannelName) .ExecuteScalar <int>(); if (count == 1) { Logger.Info($"docking base {dockingBase.Eid} already has terminal channel"); continue; } const string deleteSqlCmd = "delete channels where name=@terminalChannelName; insert channels ([name],[type]) values (@terminalChannelName,@type)"; Db.Query().CommandText(deleteSqlCmd) .SetParameter("@terminalChannelName", dockingBase.ChannelName) .SetParameter("@type", (int)ChannelType.Station) .ExecuteNonQuery(); Logger.Info($"channel created for terminal {dockingBase.Eid} {dockingBase.ChannelName}"); } Message.Builder.FromRequest(request).WithOk().Send(); scope.Complete(); } }
public void Init() { var dockingBases = _dockingBaseHelper.GetDefaultDockingBases(); foreach (var dockingBase in dockingBases) { var market = dockingBase.GetMarketOrThrow(); GetPriceCollectorByMarket(market);//beiniteljuk } }
private IDictionary <string, object> LoadDefaultMarketsToDictionary() { return(_dockingBaseHelper.GetDefaultDockingBases().Select(b => b.GetMarket()).ToDictionary("m", m => m.ToDictionary())); }