public async Task LoadData() { try { var filter = new KursInstancaDataFilter { GetSve = true, GetMojiAktivni = false, GetMojiUspjesnoZavrseni = false, GetMojiZavrseni = false, Pretraga = null, TagId = null }; if (!string.IsNullOrEmpty(Pretraga)) { filter.Pretraga = Pretraga; } if (Tag != null && Tag.Id != 0) { filter.TagId = Tag.Id; } var result = await _instancaService.Get <List <KursInstancaForKlijentListViewModel> >(filter); PonudaList = new ObservableCollection <KursInstancaForKlijentListViewModel>(result); KatalogHeight = result.Count * 14; } catch { } }
public async Task <ActionResult> Get([FromQuery] KursInstancaDataFilter model) { try { if (!ModelState.IsValid) { throw new Exception("Neispravna pretraga."); } return(Ok(await _kursInstancaDataService.GetInstance(UserResolver.GetKlijentId(HttpContext.User), model))); } catch (Exception ex) { return(BadRequest(new ApiException(ex.Message, System.Net.HttpStatusCode.BadRequest))); } }
private async Task LoadData() { try { var filter = new KursInstancaDataFilter { GetSve = false, GetMojiAktivni = false, GetMojiUspjesnoZavrseni = false, GetMojiZavrseni = false, Pretraga = null, TagId = null }; if (MyType == null) { filter.GetMojiAktivni = true; } else if (MyType.MyTypeEnum == MyTypeEnum.MojiAktivni) { filter.GetMojiAktivni = true; } else if (MyType.MyTypeEnum == MyTypeEnum.MojiUspjesnoZavrseni) { filter.GetMojiUspjesnoZavrseni = true; } else if (MyType.MyTypeEnum == MyTypeEnum.MojiZavrseni) { filter.GetMojiZavrseni = true; } if (!string.IsNullOrEmpty(Pretraga)) { filter.Pretraga = Pretraga; } var result = await _instancaService.Get <List <KursInstancaForKlijentListViewModel> >(filter); KurseviList = new ObservableCollection <KursInstancaForKlijentListViewModel>(result); KatalogHeight = result.Count * 14; } catch { } }
public async Task <List <KursInstancaForKlijentListViewModel> > GetInstance(int klijentId, KursInstancaDataFilter model) { try { var query = _context.KursInstanca .Include(k => k.Kurs) .ThenInclude(kk => kk.TagoviKursa) .AsQueryable(); if (!string.IsNullOrEmpty(model.Pretraga)) { query = query .Where(k => k.Kurs.Naziv.StartsWith(model.Pretraga) || k.Kurs.SkraceniNaziv.StartsWith(model.Pretraga)); } if (model.GetSve) { query = query.Where(k => k.PrijaveDoDatum.Date > DateTime.Now.Date && k.KrajDatum == null); } var result = await query.ToListAsync(); if (model.TagId != null) { result = FiltrirajPoTagu((int)model.TagId, result); } if (model.GetSve == false) { var instanceKlijenta = await _context.KlijentKursInstanca .Where(k => k.KlijentId == klijentId) .ToListAsync(); if (model.GetMojiAktivni) { result = FiltrirajPoMojiAktivni(instanceKlijenta, result); } else if (model.GetMojiUspjesnoZavrseni) { result = FiltrirajMojiUspjesnoZavrseni(instanceKlijenta, result); } else if (model.GetMojiZavrseni) { result = FiltrirajPoMojiZavrseni(instanceKlijenta, result); } } var returnModel = new List <KursInstancaForKlijentListViewModel>(); foreach (var r in result) { returnModel.Add(MapToKursInstancaForKlijentListViewModel(r)); } return(returnModel); } catch (Exception ex) { throw new Exception(ex.Message); } }