Exemple #1
0
        public IActionResult PretragaPoOpisuKancelarije(string opisKancelarije)
        {
            var osoba = _repository.DajSveEntitete().Where(o => o.Kancelarija.Opis == opisKancelarije)
                        .Select(osobaa => _mapper.Map <OsobaDTO>(osobaa));

            if (osoba == null)
            {
                return(NotFound());
            }
            return(Ok(osoba.ToList()));
        }
Exemple #2
0
        public IActionResult Brisanje(long id)
        {
            try
            {
                Kancelarija kancelarija = _repository.EntitetPoId(id);

                if (kancelarija == null)
                {
                    return(NotFound("Nema takve kancelarije."));
                }

                if (kancelarija.Opis.Equals("kantina"))
                {
                    return(BadRequest("Necu obrisat kantinu."));
                }
                unitOfWork.PocniTransakciju();

                List <Osoba> beziIzKancelarije = _osobaRepository.DajSveEntitete().Where(o => o.Kancelarija == kancelarija).ToList();

                for (int i = 0; i < beziIzKancelarije.Count(); i++)
                {
                    Osoba osoba = beziIzKancelarije[i];
                    osoba.Kancelarija = new Kancelarija()
                    {
                        Opis = "kantina"
                    };

                    var mozdaIma = _repository.DajSveEntitete().Where(k => k.Opis == osoba.Kancelarija.Opis)
                                   .FirstOrDefault();
                    if (mozdaIma != null)
                    {
                        osoba.Kancelarija = mozdaIma;
                    }
                    unitOfWork.Sacuvaj();
                    unitOfWork.ZavrsiTransakciju();
                }

                _repository.ObrisiEntitet(kancelarija);
                unitOfWork.Sacuvaj();

                return(Ok("Kancelarija je izbrisana iz baze podataka."));
            }
            catch (Exception ex)
            {
                Error greska = new Error()
                {
                    Exception  = ex.Message,
                    StackTrace = ex.StackTrace
                };
                return(BadRequest(greska));
            }
        }
        public IActionResult PretragaPoOpisuKancelarije(string opisKancelarije)
        {
            try
            {
                var mozdaJeNema = _kancelarijaRepository.PretragaPoNazivu(opisKancelarije);

                if (mozdaJeNema != null)
                {
                    var osobe = _repository.DajSveEntitete()
                                .Where(o => o.Kancelarija.Opis == opisKancelarije)
                                .Select(osoba => _mapper.Map <OsobaDTO>(osoba));

                    return(Ok(osobe.ToList()));
                }

                return(BadRequest("Ne postoji ta kancelarija."));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Exemple #4
0
        public IActionResult DodatiNovi(OsobaUredjajDTO ouNovi)
        {
            try
            {
                if (ouNovi == null)
                {
                    return(BadRequest("aha ne moze to tako e"));
                }
                _unitOfWork.PocniTransakciju();

                //ako se uredjaj vec koristi
                var akoSeKorsiti = _repository.DajSveEntitete().Where(vec =>
                                                                      vec.Uredjaj.Naziv == ouNovi.Uredjaj.Naziv &&
                                                                      vec.KrajKoriscenja > DateTime.Now).FirstOrDefault();
                if (akoSeKorsiti != null)
                {
                    return(BadRequest($"{ouNovi.Osoba.Ime} ne moze koristiti ovaj uredjaj zato sto ga vec neko koristi."));
                }

                OsobaUredjaj osobaUredjaj = _mapper.Map <OsobaUredjaj>(ouNovi);

                // ako osoba vec postoji
                Osoba osoba = (from nn in _osobaRepository.DajSveEntitete()
                               where nn.Ime == osobaUredjaj.Osoba.Ime && nn.Prezime == osobaUredjaj.Osoba.Prezime
                               select nn).FirstOrDefault();
                if (osoba != null)
                {
                    osobaUredjaj.Osoba = osoba;
                }

                // ako kancelarija vec postoji
                if (osoba == null)
                {
                    var kancelarija = _kancelarijaRepository.PretragaPoNazivu(ouNovi.Osoba.Kancelarija.Opis);
                    if (kancelarija != null)
                    {
                        osobaUredjaj.Osoba.Kancelarija = kancelarija;
                    }
                }

                // ako uredjaj vec postoji
                Uredjaj uredjaj = _uredjajRepository.PretragaPoImenu(ouNovi.Uredjaj.Naziv);
                if (uredjaj != null)
                {
                    osobaUredjaj.Uredjaj = uredjaj;
                }

                _repository.DodajEntitet(osobaUredjaj);
                _unitOfWork.Sacuvaj();
                _unitOfWork.ZavrsiTransakciju();

                return(Ok("Sacuvano je ;)"));
            }
            catch (Exception ex)
            {
                Error greska = new Error()
                {
                    Exception  = ex.Message,
                    StackTrace = ex.StackTrace
                };
                return(BadRequest(greska));
            }
        }