public IReadOnlyDictionary <long, StateData> Get(string language, params long[] ids) { var idsTable = TableParameters.GeIdsTable("Ids", ids.Distinct().ToArray()); var list = _executor.Array <dynamic>("[dbo].[State_GetOrderedList]", new TableParameters(idsTable)); var table = new DataTable("Localizations"); table.Columns.Add("Value"); table.Rows.Add(language); var localizations = _executor.Array <dynamic>( "[dbo].[StateLocalization_Get]", new TableParameters(idsTable, table)) .GroupBy(x => x.StateId) .ToDictionary(x => x.Key, x => x.ToDictionary(y => y.TwoLetterISOLanguageName, y => y.Name)); return(list.ToDictionary(x => (long)x.Id, x => new StateData { Name = x.Name, Position = x.Position, LocalizedName = localizations[x.Id][language], IsSystem = x.IsSystem })); }
public Dictionary <long, decimal> GetTariffs(long[] ids) { var table = TableParameters.GeIdsTable("Ids", ids); var tariffs = _executor.Array <dynamic>("[dbo].[Sender_GetTariffs]", new TableParameters(table)); return(tariffs.ToDictionary(x => (long)x.Id, x => (decimal)x.TariffOfTapePerBox)); }
public void SetStateVisibilities(long stateId, RoleType[] roles) { if (roles == null) { throw new ArgumentNullException("roles"); } var table = TableParameters.GeIdsTable("Roles", roles.Select(x => (long)x).ToArray()); _executor.Execute("[dbo].[State_SetStateVisibilities]", new TableParameters(new { stateId }, table)); }
public ReadOnlyCollection <FileInfo> GetNames(long applicationId, ApplicationFileType type) { var idsTable = TableParameters.GeIdsTable("AppIds", new[] { applicationId }); var parameters = new TableParameters(new { TypeId = type }, idsTable); var names = _executor.Array <dynamic>("[dbo].[ApplicationFile_GetNames]", parameters) .Select(x => new FileInfo { Name = x.Name, Id = x.Id }).ToArray(); return(new ReadOnlyCollection <FileInfo>(names)); }
public ReadOnlyDictionary <long, ReadOnlyCollection <FileInfo> > GetInfo(long[] awbIds, AwbFileType type) { var idsTable = TableParameters.GeIdsTable("AwbIds", awbIds); var parameters = new TableParameters(new { TypeId = type }, idsTable); var dictionary = _executor.Array <dynamic>("[dbo].[AwbFile_GetNames]", parameters) .GroupBy(x => (long)x.AwbId) .ToDictionary(a => a.Key, a => { var infos = a.Select(x => new FileInfo { Id = x.Id, Name = x.Name }).ToArray(); return(new ReadOnlyCollection <FileInfo>(infos)); }); return(new ReadOnlyDictionary <long, ReadOnlyCollection <FileInfo> >(dictionary)); }
public void SetCountries(long senderId, long[] countries) { var table = TableParameters.GeIdsTable("CountryIds", countries); _executor.Execute("[dbo].[SenderCountry_Set]", new TableParameters(new { senderId }, table)); }
public void Set(EventType eventType, RoleType[] recipients) { var table = TableParameters.GeIdsTable("Recipients", recipients.Select(x => (long)x).ToArray()); _executor.Execute("[dbo].[EventEmailRecipient_Set]", new TableParameters(new { EventTypeId = eventType }, table)); }
public TransitData[] Get(params long[] ids) { var idsTable = TableParameters.GeIdsTable("Ids", ids.Distinct().ToArray()); return(_executor.Array <TransitData>("[dbo].[Transit_Get]", new TableParameters(idsTable))); }
public void SetCities(long carrierId, long[] cities) { var table = TableParameters.GeIdsTable("CityIds", cities); _executor.Execute("[dbo].[CarrierCity_Set]", new TableParameters(new { carrierId }, table)); }