Exemple #1
0
        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
            }));
        }
Exemple #2
0
        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));
        }
Exemple #3
0
        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));
        }
Exemple #4
0
        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));
        }
Exemple #5
0
        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));
        }
Exemple #6
0
        public void SetCountries(long senderId, long[] countries)
        {
            var table = TableParameters.GeIdsTable("CountryIds", countries);

            _executor.Execute("[dbo].[SenderCountry_Set]", new TableParameters(new { senderId }, table));
        }
Exemple #7
0
        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));
        }
Exemple #8
0
        public TransitData[] Get(params long[] ids)
        {
            var idsTable = TableParameters.GeIdsTable("Ids", ids.Distinct().ToArray());

            return(_executor.Array <TransitData>("[dbo].[Transit_Get]", new TableParameters(idsTable)));
        }
Exemple #9
0
        public void SetCities(long carrierId, long[] cities)
        {
            var table = TableParameters.GeIdsTable("CityIds", cities);

            _executor.Execute("[dbo].[CarrierCity_Set]", new TableParameters(new { carrierId }, table));
        }