コード例 #1
0
        public async Task <ListaFaqosur <Perdorues> > GetPerdoruesit(PerdoruesParametrat perdoruesParametrat)
        {
            var perdoruesit = _context.Perdoruesit.Include(f => f.Fotot).OrderByDescending(p => p.SeFundiAktiv).AsQueryable();

            perdoruesit = perdoruesit.Where(p => p.Id != perdoruesParametrat.PerdoruesId);
            perdoruesit = perdoruesit.Where(p => p.Gjinia == perdoruesParametrat.Gjinia);

            if (perdoruesParametrat.Pelqyesit)
            {
                var perdoruesPelqyesit = await GetPelqimetPerdoruesit(perdoruesParametrat.PerdoruesId, perdoruesParametrat.Pelqyesit);

                perdoruesit = perdoruesit.Where(p => perdoruesPelqyesit.Contains(p.Id));
            }

            if (perdoruesParametrat.Pelqyerit)
            {
                var perdoruesPelqyerit = await GetPelqimetPerdoruesit(perdoruesParametrat.PerdoruesId, perdoruesParametrat.Pelqyesit);

                perdoruesit = perdoruesit.Where(p => perdoruesPelqyerit.Contains(p.Id));
            }



            if (perdoruesParametrat.MaksMosha != 18 || perdoruesParametrat.MaksMosha != 99)
            {
                var minDtLnd  = DateTime.Today.AddYears(-perdoruesParametrat.MaksMosha - 1);
                var maksDtLnd = DateTime.Today.AddYears(-perdoruesParametrat.MinMosha);

                perdoruesit = perdoruesit.Where(p => p.DataELindjes >= minDtLnd && p.DataELindjes <= maksDtLnd);
            }

            if (!string.IsNullOrEmpty(perdoruesParametrat.RadhitSipas))
            {
                switch (perdoruesParametrat.RadhitSipas)
                {
                case "krijuarMe":
                    perdoruesit = perdoruesit.OrderByDescending(p => p.KrijuarMe);
                    break;

                default:
                    perdoruesit = perdoruesit.OrderByDescending(p => p.SeFundiAktiv);
                    break;
                }
            }

            return(await ListaFaqosur <Perdorues> .KrijoAsync(perdoruesit, perdoruesParametrat.FaqjaNr, perdoruesParametrat.MadhesiaFaqes));
        }
コード例 #2
0
        public async Task <IActionResult> GetPerdoruesit([FromQuery] PerdoruesParametrat perdoruesParametrat)
        {
            var perdoruesIdAktual = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value);

            var perdoruesNgaDepo = await _depo.GetPerdoruesin(perdoruesIdAktual);

            perdoruesParametrat.PerdoruesId = perdoruesIdAktual;

            if (string.IsNullOrEmpty(perdoruesParametrat.Gjinia))
            {
                perdoruesParametrat.Gjinia = perdoruesNgaDepo.Gjinia == "mashkull" ? "femer" : "mashkull";
            }

            var perdoruesit = await _depo.GetPerdoruesit(perdoruesParametrat);

            var perdoruesitPerReturn = _mapper.Map <IEnumerable <PerdoruesListPerDto> >(perdoruesit);

            Response.ShtoFaqosje(perdoruesit.FaqjaAktuale, perdoruesit.MadhesiaFaqes,
                                 perdoruesit.SasiaTotal, perdoruesit.TotalFaqe);

            return(Ok(perdoruesitPerReturn)); // perdoruesit);
        }