< Summary

Information
Class: Services.FiltersServices.DataFilterManagers.EtProducerFilterManager
Assembly: Services
File(s): /home/runner/work/Studio2Prod/Studio2Prod/AppRepository/FiltersServices/DataFilterManagers/EtProducerFilterManager.cs
Line coverage
100%
Covered lines: 43
Uncovered lines: 0
Coverable lines: 43
Total lines: 81
Line coverage: 100%
Branch coverage
100%
Covered branches: 22
Total branches: 22
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
FilterByFilterData(...)100%11100%
FilterByFilterDataAsync()100%2222100%
FilterByRadioButton(...)100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/AppRepository/FiltersServices/DataFilterManagers/EtProducerFilterManager.cs

#LineLine coverage
 1using Microsoft.EntityFrameworkCore;
 2using OzonDomains.Models;
 3using Services.DataServices;
 4using Services.FiltersServices.FilterModels;
 5
 6namespace Services.FiltersServices.DataFilterManagers;
 7
 8public class EtProducerFilterManager : IFilterManager<EtProducer, EtProducerFilterModel>
 9{
 10    private readonly DataFilter<EtProducer> _filter;
 11    private readonly QueryableDataFilter<EtProducer> _queryableFilter;
 12    private readonly EtProducerDataServices _dataService;
 3013    public EtProducerFilterManager(DataFilter<EtProducer> dataFilter,
 3014                                    QueryableDataFilter<EtProducer> queryableFilter,
 3015                                    EtProducerDataServices dataService)
 16    {
 3017        _filter = dataFilter;
 3018        _queryableFilter = queryableFilter;
 3019        _dataService = dataService;
 3020    }
 21
 22    public List<EtProducer> FilterByFilterData(List<EtProducer> producers, EtProducerFilterModel filterData)
 23    {
 2124        producers = _filter.FilterByString(producers, pr => pr.Prefix, filterData.Prefix).ToList();
 1625        producers = _filter.FilterByString(producers, pr => pr.Name, filterData.Name).ToList();
 1626        producers = _filter.FilterByString(producers, pr => pr.Address, filterData.Address).ToList();
 1627        producers = _filter.FilterByString(producers, pr => pr.Domain, filterData.Domain).ToList();
 1628        producers = _filter.FilterByString(producers, pr => pr.Www, filterData.Www).ToList();
 3429        producers = _filter.FilterByInt(producers, pr => pr.TecdocSupplierId, filterData.TecdocSupplierId).ToList();
 1330        producers = _filter.FilterByString(producers, pr => pr.MarketPrefix, filterData.MarketPrefix).ToList();
 2131        producers = _filter.FilterByInt(producers, pr => pr.Rating, filterData.Rating).ToList();
 1332        producers = _filter.FilterByString(producers, pr => pr.ExistName, filterData.ExistName).ToList();
 33
 1234        return producers;
 35    }
 36
 37    public async Task<List<EtProducer>> FilterByFilterDataAsync(EtProducerFilterModel filterData)
 38    {
 1739        var query = _dataService.GetQueryableEtProducers();
 40
 1741        if (!string.IsNullOrEmpty(filterData.Prefix))
 242            query = _queryableFilter.FilterByString(query, pr => pr.Prefix, filterData.Prefix);
 43
 1744        if (!string.IsNullOrEmpty(filterData.Name))
 145            query = _queryableFilter.FilterByString(query, pr => pr.Name, filterData.Name);
 46
 1747        if (!string.IsNullOrEmpty(filterData.Address))
 248            query = _queryableFilter.FilterByString(query, pr => pr.Address, filterData.Address);
 49
 1750        if (!string.IsNullOrEmpty(filterData.Domain))
 151            query = _queryableFilter.FilterByString(query, pr => pr.Domain, filterData.Domain);
 52
 1753        if (!string.IsNullOrEmpty(filterData.Www))
 154            query = _queryableFilter.FilterByString(query, pr => pr.Www, filterData.Www);
 55
 1756        if (filterData.TecdocSupplierId != 0)
 257            query = _queryableFilter.FilterByInt(query, pr => pr.TecdocSupplierId, filterData.TecdocSupplierId);
 58
 1759        if (!string.IsNullOrEmpty(filterData.MarketPrefix))
 160            query = _queryableFilter.FilterByString(query, pr => pr.MarketPrefix, filterData.MarketPrefix);
 61
 1762        if (filterData.Rating != 0)
 263            query = _queryableFilter.FilterByInt(query, pr => pr.Rating, filterData.Rating);
 64
 1765        if (!string.IsNullOrEmpty(filterData.ExistName))
 166            query = _queryableFilter.FilterByString(query, pr => pr.ExistName, filterData.ExistName);
 67
 1768        if (!string.IsNullOrEmpty(filterData.Id))
 169            query = _queryableFilter.FilterByInt(query, pr => pr.Id, int.Parse(filterData.Id));
 70
 1771        if (filterData.RealId != 0)
 172            query = _queryableFilter.FilterByInt(query, pr =>pr.RealId, filterData.RealId);
 73
 1774        return await query.ToListAsync();
 1775    }
 76
 77    public List<EtProducer> FilterByRadioButton(List<EtProducer> filterModel, string buttonState)
 78    {
 179        throw new NotImplementedException();
 80    }
 81}