Пример #1
0
        public async Task <IEnumerable <SmsServiceInfo> > GetServiceInfoList(SmsServiceInfoCondition smsServiceInfoCondition)
        {
            if (!_smsServiceInfoListInitialized)
            {
                await InitializeSmsServiceInfoList();
            }
            var smsServiceInfoList = _smsServiceInfoList
                                     .Where(z => z.ServiceCode == smsServiceInfoCondition.ServiceCode && z.NumberCount > 0 && !z.Skiped)
                                     .OrderBy(z => z.FailCount)
                                     .ThenBy(z => z.Price)
                                     .ThenByDescending(z => z.NumberCount)
                                     .ToList();

            if ((smsServiceInfoCondition.CountryCodes != null) && smsServiceInfoCondition.CountryCodes.Any())
            {
                smsServiceInfoList = smsServiceInfoList
                                     .Where(z => smsServiceInfoCondition.CountryCodes.Contains(z.CountryCode))
                                     .ToList();
            }
            if ((smsServiceInfoCondition.SmsServiceCodes != null) && smsServiceInfoCondition.SmsServiceCodes.Any())
            {
                smsServiceInfoList = smsServiceInfoList
                                     .Where(z => smsServiceInfoCondition.SmsServiceCodes.Contains(z.SmsServiceCode))
                                     .ToList();
            }
            return(smsServiceInfoList);
        }
Пример #2
0
        private SmsServiceInfoCondition GetSmsServiceInfoCondition(ServiceCode serviceCode)
        {
            if (cbSmsAuto.Checked && cbCountryAuto.Checked)
            {
                return(null);
            }
            var smsServiceInfoCondition = new SmsServiceInfoCondition {
                ServiceCode = serviceCode
            };

            if (!cbCountryAuto.Checked)
            {
                smsServiceInfoCondition.CountryCodes = new List <CountryCode>
                {
                    ((CountryItem)cmbCountry.SelectedItem).CountryCode
                };
            }
            if (!cbSmsAuto.Checked)
            {
                smsServiceInfoCondition.SmsServiceCodes = new List <SmsServiceCode>
                {
                    ((SmsServiceItem)cmbSmsService.SelectedItem).SmsServiceCode
                };
            }
            return(smsServiceInfoCondition);
        }