public List <Systems> GetSystemsList(BadBeeFilter filter) { if (string.IsNullOrEmpty(filter.Brands) && string.IsNullOrEmpty(filter.Series) && string.IsNullOrEmpty(filter.Models) && string.IsNullOrEmpty(filter.DateYears) && string.IsNullOrEmpty(filter.BadBeeNumbers) && string.IsNullOrEmpty(filter.Wvas) && string.IsNullOrEmpty(filter.Widths) && string.IsNullOrEmpty(filter.Heights) && string.IsNullOrEmpty(filter.Thicknesses) /*&& string.IsNullOrEmpty(filter.Systems)*/ /*&& string.IsNullOrEmpty(filter.PhraseFilter)*/) { return(GetChList <Systems>()); } else { var items = GetList(filter, false, false, false, false, false, false, false, true, false, false, false, false, false); var list = items.ToList(); var bb = list.Select(item => new Systems { SystemId = item.BadBee.Systems.SystemId, Abbreviation = item.BadBee.Systems.Abbreviation.TrimEnd() }).ToList(); var distinctRowsById = bb.Select(i => i.SystemId).Distinct().Select(i => bb.First(o => o.SystemId == i)).ToList(); return(distinctRowsById.OrderBy(q => q.Abbreviation).ToList()); } }
public List <Date> GetYearsList(BadBeeFilter filter) { if (string.IsNullOrEmpty(filter.Brands) && string.IsNullOrEmpty(filter.Series) && string.IsNullOrEmpty(filter.Models) && /*&& string.IsNullOrEmpty(filter.DateYears)*/ string.IsNullOrEmpty(filter.BadBeeNumbers) && string.IsNullOrEmpty(filter.Wvas) && string.IsNullOrEmpty(filter.Widths) && string.IsNullOrEmpty(filter.Heights) && string.IsNullOrEmpty(filter.Thicknesses) && string.IsNullOrEmpty(filter.Systems) /* && string.IsNullOrEmpty(filter.PhraseFilter)*/) { return(GetChList <Date>()); } else { var items = GetList(filter, false, false, false, false, false, false, false, false, false, false, false, false, true); var list = items.ToList(); var bb = list.Distinct().Select(item => new Date { Date1 = item.Model.Year.DateFromFK.Date1 ?? "", DateId = item.Model.Year.DateFromFK.DateId }).ToList(); var distinctRowsById = bb.Select(i => i.DateId).Distinct().Select(i => bb.First(o => o.DateId == i)).ToList(); return(distinctRowsById.OrderBy(q => q.Date1).ToList()); } }
public List <Thickness> GetThicknessesList(BadBeeFilter filter) { if (string.IsNullOrEmpty(filter.Brands) && string.IsNullOrEmpty(filter.Series) && string.IsNullOrEmpty(filter.Models) && string.IsNullOrEmpty(filter.DateYears) && string.IsNullOrEmpty(filter.BadBeeNumbers) && string.IsNullOrEmpty(filter.Wvas) && string.IsNullOrEmpty(filter.Widths) && string.IsNullOrEmpty(filter.Heights) && /*&& string.IsNullOrEmpty(filter.Thicknesses)*/ string.IsNullOrEmpty(filter.Systems) /*&& string.IsNullOrEmpty(filter.PhraseFilter)*/) { return(GetChList <Thickness>()); } else { var items = GetList(filter, false, false, false, false, false, false, true, false, false, false, false, false, false); var list = items.ToList(); var bb = list.Select(item => new Thickness { ThicknessId = item.BadBee.Dimension.Thickness.ThicknessId, Thickness1 = item.BadBee.Dimension.Thickness.Thickness1 }).ToList(); var distinctRowsById = bb.Select(i => i.ThicknessId).Distinct().Select(i => bb.First(o => o.ThicknessId == i)).ToList(); return(distinctRowsById.OrderBy(q => q.Thickness1).ToList()); } }
public List <DAL.BadBee> GetBadBeeList(BadBeeFilter filter) { if (string.IsNullOrEmpty(filter.Brands) && string.IsNullOrEmpty(filter.Series) && string.IsNullOrEmpty(filter.Models) && string.IsNullOrEmpty(filter.DateYears) /*&& string.IsNullOrEmpty(filter.BadBeeNumbers)*/ && string.IsNullOrEmpty(filter.Wvas) && string.IsNullOrEmpty(filter.Widths) && string.IsNullOrEmpty(filter.Heights) && string.IsNullOrEmpty(filter.Thicknesses) && string.IsNullOrEmpty(filter.Systems) /*&& string.IsNullOrEmpty(filter.PhraseFilter)*/) { return(GetChList <DAL.BadBee>()); } else { var items = GetList(filter, false, false, false, false, false, false, false, false, false, false, false, true, false); var list = items.OrderBy(q => q.BadBee.BadBeeNo).ToList(); var bb = list.Select(item => new BadBee.Core.DAL.BadBee { BadBeeNo = item.BadBee.BadBeeNo.TrimEnd(), BadBeeId = item.BadBeeId }).ToList(); var distinctRowsById = bb.Select(i => i.BadBeeId).Distinct().Select(i => bb.First(o => o.BadBeeId == i)).ToList(); return(distinctRowsById.OrderBy(q => q.BadBeeNo).ToList()); } }
public List <Serie> GetSeriesList(BadBeeFilter filter) { if (string.IsNullOrEmpty(filter.Brands) /*&& string.IsNullOrEmpty(filter.Series)*/ && string.IsNullOrEmpty(filter.Models) && string.IsNullOrEmpty(filter.DateYears) && string.IsNullOrEmpty(filter.BadBeeNumbers) && string.IsNullOrEmpty(filter.Wvas) && string.IsNullOrEmpty(filter.Widths) && string.IsNullOrEmpty(filter.Heights) && string.IsNullOrEmpty(filter.Thicknesses) && string.IsNullOrEmpty(filter.Systems) /*&& string.IsNullOrEmpty(filter.PhraseFilter)*/) { return(GetChList <Serie>().OrderBy(q => q.Name).ToList()); } else { var items = GetList(filter, false, true, false, false, false, false, false, false, false, false, false, false, false); var list = items.ToList(); var bb = list.Select(x => new Serie() { SerieId = x.Model.Serie.SerieId, Name = x.Model.Serie.Name.TrimEnd() }).ToList(); var distinctRowsById = bb.Select(i => i.SerieId).Distinct().Select(i => bb.First(o => o.SerieId == i)).ToList(); return(distinctRowsById.OrderBy(q => q.Name).ToList()); } }
public List <Model> GetModelsList(BadBeeFilter filter) { if (string.IsNullOrEmpty(filter.Brands) && string.IsNullOrEmpty(filter.Series) &&/* && string.IsNullOrEmpty(filter.Models)*/ string.IsNullOrEmpty(filter.DateYears) && string.IsNullOrEmpty(filter.BadBeeNumbers) && string.IsNullOrEmpty(filter.Wvas) && string.IsNullOrEmpty(filter.Widths) && string.IsNullOrEmpty(filter.Heights) && string.IsNullOrEmpty(filter.Thicknesses) && string.IsNullOrEmpty(filter.Systems) /*&& string.IsNullOrEmpty(filter.PhraseFilter)*/) { return(GetChList <Model>()); } else { var items = GetList(filter, false, false, true, false, false, false, false, false, false, false, false, false, false); var list = items.ToList(); var bb = list.Select(item => new Model { ModelId = item.ModelId, Name = item.Model.Name.TrimEnd() }).ToList(); var distinctRowsById = bb.Select(i => i.ModelId).Distinct().Select(i => bb.First(o => o.ModelId == i)).ToList(); return(distinctRowsById); } }
public ListResult GetList(BadBeeFilter filter, int page, int itemsPerPage) { ListResult results = new ListResult(); results.Items = new List <CvlItem>(); results.ItemsCount = 0; var query = db.Item.AsQueryable(); if (filter.PhraseFilter != null) { if (GetChList <Brand>().Any(row => row.Name.ToLower().StartsWith(filter.PhraseFilter.ToLower()))) { List <Brand> br = GetChList <Brand>().Where(q => q.Name.ToLower().StartsWith(filter.PhraseFilter.ToLower())).ToList(); List <int> brandIds = br.Select(x => x.BrandId).ToList(); query = query.Where(q => brandIds.Contains(q.Model.Serie.Brand.BrandId)); filter.BrandsList = brandIds; } else if (GetChList <Serie>().Any(row => row.Name.ToLower().StartsWith(filter.PhraseFilter.ToLower()))) { List <Serie> ser = GetChList <Serie>().Where(q => q.Name.ToLower().StartsWith(filter.PhraseFilter.ToLower())).ToList(); List <int> serieIds = ser.Select(x => x.SerieId).ToList(); query = query.Where(q => serieIds.Contains(q.Model.Serie.SerieId)); filter.SeriesList = serieIds; } else if (GetChList <Model>().Any(row => row.Name.ToLower().StartsWith(filter.PhraseFilter.ToLower()))) { List <Model> mod = GetChList <Model>().Where(q => q.Name.ToLower().StartsWith(filter.PhraseFilter.ToLower())).ToList(); List <int> modelIds = mod.Select(x => x.ModelId).ToList(); query = query.Where(q => modelIds.Contains(q.Model.ModelId)); filter.ModelsList = modelIds; } else if (GetChList <DAL.BadBee>().Any(q => (q.BadBeeNo.Replace(" ", "").Replace(".", "").Replace(",", "").Replace("-", "") .StartsWith(filter.PhraseFilter.Replace(" ", "").Replace(".", "").Replace(",", "").Replace("-", ""))))) { List <DAL.BadBee> bb = GetChList <DAL.BadBee>().Where(q => (q.BadBeeNo.Replace(" ", "").Replace(".", "").Replace(",", "").Replace("-", "") .StartsWith(filter.PhraseFilter.Replace(" ", "").Replace(".", "").Replace(",", "").Replace("-", "")))).ToList(); List <int> badBeeIds = bb.Select(x => x.BadBeeId).ToList(); query = query.Where(q => badBeeIds.Contains(q.BadBee.BadBeeId)); if (bb != null) { filter.BadBeeNumbersList = badBeeIds; } } else if (GetChList <Wva>().Any(q => q.WvaNo.StartsWith(filter.PhraseFilter.Replace(" ", "")))) { List <Wva> wva = GetChList <Wva>().Where(q => q.WvaNo.Replace(" ", "").StartsWith(filter.PhraseFilter.Replace(" ", ""))).ToList(); List <int> wvaIds = wva.Select(x => x.WvaId).ToList(); query = query.Where(q => wvaIds.Contains(q.BadBee.Wva.WvaId)); if (wva != null) { filter.WvasList = wvaIds; } } filter.PhraseFilter = null; } if (filter != null && filter.PhraseFilter == null) { if (!string.IsNullOrEmpty(filter.Models)) { query = query.Where(q => filter.ModelsList.Contains(q.ModelId)); } else if (!string.IsNullOrEmpty(filter.Series)) { query = query.Where(q => filter.SeriesList.Contains(q.Model.Serie.SerieId)); } else if (!string.IsNullOrEmpty(filter.Brands)) { query = query.Where(q => filter.BrandsList.Contains(q.Model.Serie.Brand.BrandId)); } if (string.IsNullOrEmpty(filter.Brands)) { filter.Series = null; filter.Models = null; } if (!string.IsNullOrEmpty(filter.BadBeeNumbers)) { query = query.Where(q => filter.BadBeeNumbersList.Contains(q.BadBee.BadBeeId)); } //if (filter.DateYear.HasValue) //{ // DateTime date = new DateTime(); // date = date.AddYears(filter.DateYear.Value - 1); // query = query.Where(q => (q.DateFrom <= date && q.DateTo >= date) || (q.DateFrom <= date && q.DateTo == null) || (q.DateFrom == null && q.DateTo >= date)); //} if (!string.IsNullOrEmpty(filter.DateYears)) { // DateTime date = new DateTime(); List <int> yslist = filter.DateYearsList.ToList(); query = query.Where(q => yslist.Contains(q.Model.Year.DateFromFK.DateId) || yslist.Contains(q.Model.Year.DateToFK.DateId)); } if (!string.IsNullOrEmpty(filter.Wvas)) { query = query.Where(q => filter.WvasList.Contains(q.BadBee.Wva.WvaId)); } if (!string.IsNullOrEmpty(filter.Widths)) { query = query.Where(q => filter.WidthsList.Contains(q.BadBee.Dimension.Width.WidthId)); } if (!string.IsNullOrEmpty(filter.Heights)) { query = query.Where(q => filter.HeightsList.Contains(q.BadBee.Dimension.Height.HeightId)); } if (!string.IsNullOrEmpty(filter.Thicknesses)) { query = query.Where(q => filter.ThicknessesList.Contains(q.BadBee.Dimension.Thickness.ThicknessId)); } if (!string.IsNullOrEmpty(filter.Systems)) { query = query.Where(q => filter.SystemsList.Contains(q.BadBee.Systems.SystemId)); } query = query.OrderBy(q => q.Model.Serie.Brand.Name).ThenBy(q => q.Model.Serie.Name).ThenBy(q => q.Model.Name).ThenBy(q => q.Id); results.ItemsCount = query.Count(); query = query.Skip((page - 1) * itemsPerPage).Take(itemsPerPage); var list = query.ToList(); filter.PhraseFilter = null; foreach (Item item in list) { string sYears = ""; if (item.Model.Year != null && item.Model.Year.DateFromId != 0) { if (item.Model.Year.DateFromFK.Date1 != "0") { sYears += item.Model.Year.DateFromFK.Date1; } if (item.Model.Year.DateToId != 0) { sYears += " - " + item.Model.Year.DateToFK.Date1; } else { sYears += " ->"; } } else { if (item.Model.Year != null && item.Model.Year.DateToId != 0) { sYears += "<- " + item.Model.Year.DateToFK.Date1; } } CvlItem newItem = new CvlItem() { Id = item.Id, BadBeeNumber = item.BadBee.BadBeeNo.TrimEnd(), Brand = item.Model.Serie.Brand.Name.TrimEnd(), Serie = item.Model.Serie.Name.TrimEnd(), Model = item.Model.Name.TrimEnd(), Years = sYears.TrimEnd(), Fr = item.BadBee.FR.TrimEnd(), WvaDesc = item.BadBee.Wva.Description.TrimEnd(), Wva = item.BadBee.Wva.WvaNo.TrimEnd(), Width = item.BadBee.Dimension.Width.Width1.ToString(), Height = item.BadBee.Dimension.Height.Height1.ToString(), Thickness = item.BadBee.Dimension.Thickness.Thickness1.ToString(), BrakeSystem = item.BadBee.Systems.Abbreviation.TrimEnd() }; results.Items.Add(newItem); } } return(results); }
public List <Item> GetList(BadBeeFilter filter, bool brand, bool serie, bool model, bool drum, bool height, bool width, bool thick, bool system, bool rivet, bool wva, bool wvad, bool bb, bool year) { if (string.IsNullOrEmpty(GlobalVars.SearchCache.SearchKey) == false && GlobalVars.SearchCache.SearchKey.Equals(filter.SearchKey)) { Debug.WriteLine(DateTime.Now + " Cache search with key " + GlobalVars.SearchCache.SearchKey); return(GlobalVars.SearchCache.GetListResult); } else { var items = db.Item.Include("Model").Include("Model.Serie").Include("Model.Serie.Brand").Include("Model.Year").Include("Model.Year.DateFromFK") .Include("Model.Year.DateToFK").Include("BadBee").Include("BadBee.Wva").Include("BadBee.Systems").Include("BadBee.Dimension") .Include("BadBee.Dimension.Width").Include("BadBee.Dimension.Height").Include("BadBee.Dimension.Thickness").AsQueryable(); if (!string.IsNullOrEmpty(filter.Models) && !model) { items = items.Where(q => filter.ModelsList.Contains(q.Model.ModelId)); } if (!string.IsNullOrEmpty(filter.Series) && !serie) { items = items.Where(q => filter.SeriesList.Contains(q.Model.Serie.SerieId)); } if (!string.IsNullOrEmpty(filter.Brands) && !brand) { items = items.Where(q => filter.BrandsList.Contains(q.Model.Serie.Brand.BrandId)); } if (!string.IsNullOrEmpty(filter.Heights) && !height) { items = items.Where(q => filter.HeightsList.Contains(q.BadBee.Dimension.Height.HeightId)); } if (!string.IsNullOrEmpty(filter.Widths) && !width) { items = items.Where(q => filter.WidthsList.Contains(q.BadBee.Dimension.Width.WidthId)); } if (!string.IsNullOrEmpty(filter.Thicknesses) && !thick) { items = items.Where(q => filter.ThicknessesList.Contains(q.BadBee.Dimension.Thickness.ThicknessId)); } if (!string.IsNullOrEmpty(filter.Systems) && !system) { items = items.Where(q => filter.SystemsList.Contains(q.BadBee.Systems.SystemId)); } if (!string.IsNullOrEmpty(filter.Wvas) && !wva) { items = items.Where(q => filter.WvasList.Contains(q.BadBee.Wva.WvaId)); } if (!string.IsNullOrEmpty(filter.BadBeeNumbers) && !bb) { items = items.Where(q => filter.BadBeeNumbersList.Contains(q.BadBeeId)); } if (!string.IsNullOrEmpty(filter.DateYears) && !year) { items = items.Where(q => filter.DateYearsList.Contains(q.Model.Year.DateFromFK.DateId) || filter.DateYearsList.Contains(q.Model.Year.DateToFK.DateId)); } var searchCache = new SearchCache(); searchCache.GetListResult = items.ToList(); searchCache.SearchKey = filter.SearchKey; GlobalVars.SearchCache = searchCache; Debug.WriteLine(DateTime.Now + " New search with key " + GlobalVars.SearchCache.SearchKey); return(GlobalVars.SearchCache.GetListResult); } }
public List <Serie> GetSeriesChList(BadBeeFilter filter) { return(GetChList <Serie>().Where(q => filter.SeriesList.Contains(q.SerieId)).ToList()); }
public List <Height> GetHeightsListCh(BadBeeFilter filter) { return(GetChList <Height>().Where(q => filter.HeightsList.Contains(q.HeightId)).ToList()); }
public List <Thickness> GetThicknessesListCh(BadBeeFilter filter) { return(GetChList <Thickness>().Where(q => filter.ThicknessesList.Contains(q.ThicknessId)).ToList()); }
public List <Width> GetWidthsListCh(BadBeeFilter filter) { return(GetChList <Width>().Where(q => filter.WidthsList.Contains(q.WidthId)).ToList()); }
public List <Systems> GetSystemsListCh(BadBeeFilter filter) { return(GetChList <Systems>().Where(q => filter.SystemsList.Contains(q.SystemId)).ToList()); }
public List <Wva> GetWvaChList(BadBeeFilter filter) { return(GetChList <Wva>().Where(q => filter.WvasList.Contains(q.WvaId)).ToList()); }
public List <DAL.BadBee> GetBadBeeChList(BadBeeFilter filter) { return(GetChList <DAL.BadBee>().Where(q => (filter.BadBeeNumbersList.Contains(q.BadBeeId))).ToList()); }
public List <Model> GetModelsChList(BadBeeFilter filter) { return(GetChList <Model>().Where(q => filter.ModelsList.Contains(q.ModelId)).ToList()); }
public List <Date> GetYearsListCh(BadBeeFilter filter) { return(GetChList <Date>().Where(q => filter.DateYearsList.Contains(q.DateId)).ToList()); }
public List <Brand> GetBrandsChList(BadBeeFilter filter) { return(GetChList <Brand>().Where(q => filter.BrandsList.Contains(q.BrandId)).OrderBy(q => q.Name).ToList()); }