/// <summary> /// Metode kura tiek izsaukta lai piesaistītu kādu preci pie nomnieka /// </summary> /// <param name="searchModel">Meklēšanas modelis nomniekiem</param> /// <param name="Page">Lappuse</param> /// <returns></returns> public ActionResult AddStatus(NomnieksSearchModel searchModel, int Page = 1) { var viewModel = new AddStatusViewModel(); viewModel.SearchModel = new NomnieksSearchModel { IrKavejumi = searchModel.IrKavejumi, IznomatajaVardsUzvards = searchModel.IznomatajaVardsUzvards ?? "", PersonasKods = searchModel.PersonasKods ?? "", PrecesID = searchModel.PrecesID }; //Atfiltre tiakai tos datus kuri atbilst meklēšanas kritērijiem IEnumerable<NomnieksTableViewModel> partialFilteredData = dataRepostory.Nomnieki .Where(n => n.NomniekaPersKods.Contains(viewModel.SearchModel.PersonasKods)) .Where(n => (n.NomniekaVards + " " + n.NomniekaUzvards).Contains(viewModel.SearchModel.IznomatajaVardsUzvards)) .Select(n => new NomnieksTableViewModel { NomniekaID = n.NomniekaID, Iznomatajs = n.NomniekaVards + " " + n.NomniekaUzvards, PersKods = n.NomniekaPersKods, }).ToArray(); IQueryable<NomnieksTableViewModel> completeModel = partialFilteredData.Select(td => new NomnieksTableViewModel { NomniekaID = td.NomniekaID, Iznomatajs = td.Iznomatajs, PersKods = td.PersKods, IznomatoPrecuDaudzums = dataRepostory.Termini.Count(t => t.NomniekaID == td.NomniekaID), Kavejumi = dataRepostory.Termini .Any(t => t.NomniekaID == td.NomniekaID && EntityFunctions.DiffDays(t.NodosanasDatums, DateTime.Now) > 0) }).AsQueryable(); IQueryable<NomnieksTableViewModel> completeFilteredTableData = completeModel.Where(cm => searchModel.IrKavejumi ? cm.Kavejumi : true); IQueryable<NomnieksTableViewModel> pageTableData = completeFilteredTableData .OrderBy(fd => fd.IznomatoPrecuDaudzums) .Skip((Page - 1)*PAGE_SIZE) .Take(PAGE_SIZE); viewModel.NomnieksTableData = pageTableData; viewModel.PagingInfo = new PagingInfo { CurrentPage = Page, ItemsPerPage = PAGE_SIZE, TotalItems = completeFilteredTableData.Count() }; return View(viewModel); }
public PartialViewResult NomnieksSearch(NomnieksSearchModel searchModel) { NomnieksSearchModel search; if (searchModel != null) { search = new NomnieksSearchModel { IrKavejumi = searchModel.IrKavejumi, IznomatajaVardsUzvards = searchModel.IznomatajaVardsUzvards, PersonasKods = searchModel.PersonasKods, PrecesID = searchModel.PrecesID }; } else { search = new NomnieksSearchModel(); } return PartialView(search); }