Exemple #1
0
        public Model.Pacijent Insert(PacijentUpsertRequest request)
        {
            var entity = _mapper.Map <Database.Pacijent>(request);

            if (request.Password != request.PasswordConfirmation)
            {
                throw new UserException("Lozinke se ne podudaraju!");
            }

            entity.PasswordSalt = GenerateSalt();
            entity.PasswordHash = GenerateHash(entity.PasswordSalt, request.Password);

            _context.Pacijent.Add(entity);
            _context.SaveChanges();

            var pacijent = new Model.Pacijent()
            {
                Ime               = request.Ime,
                Prezime           = request.Prezime,
                KorisnickoIme     = request.KorisnickoIme,
                Email             = request.Email,
                BrojTelefona      = request.BrojTelefona,
                DatumRegistracije = request.DatumRegistracije
            };

            _context.SaveChanges();

            return(_mapper.Map <Model.Pacijent>(entity));
        }
Exemple #2
0
 public KorisnickiProfilPage(Model.Pacijent p)
 {
     InitializeComponent();
     BindingContext = viewmodel = new KorisnickiProfilViewModel()
     {
         Pacijent = p
     };
 }
        private async void Button_Clicked(object sender, EventArgs e)
        {
            if (!decimal.TryParse(this.Ocjena.Text, out decimal Ocjena) || Ocjena < 1 || Ocjena > 10 || this.Ocjena.Text == null)
            {
                await DisplayAlert("Greška", "Ocjena mora biti između 1 i 10.", "OK");

                return;
            }

            Model.Pacijent        pacijent        = new Model.Pacijent();
            var                   username        = APIService.Username;
            List <Model.Pacijent> listaPacijenata = await _pacijent.Get <List <Model.Pacijent> >(null);

            foreach (var item in listaPacijenata)
            {
                if (item.KorisnickoIme == username)
                {
                    pacijent = item;
                    break;
                }
            }

            var listaOcjena = await _ocjene.Get <List <Ocjena> >(null);

            foreach (var item in listaOcjena)
            {
                if (item.ClanakId == clanak.ClanakId && item.PacijentId == pacijent.PacijentId)
                {
                    OcjenaUpsertRequest request = new OcjenaUpsertRequest()
                    {
                        Ocjena1    = Ocjena,
                        PacijentId = pacijent.PacijentId,
                        ClanakId   = clanak.ClanakId
                    };
                    await _ocjene.Update <dynamic>(model.Ocjena.OcjenaId, request);
                    await DisplayAlert("OK", "Uspješno izmjenjeno!", "OK");

                    await Navigation.PushAsync(new ClanakPage());

                    return;
                }
            }
            model.Ocjena1    = Ocjena;
            model.ClanakId   = clanak.ClanakId;
            model.PacijentId = pacijent.PacijentId;
            await model.DodajOcjenu();

            await DisplayAlert("OK", "Uspješno ocijenjeno!", "OK");

            await Navigation.PushAsync(new ClanakPage());
        }
Exemple #4
0
        private async void Button_Clicked(object sender, EventArgs e)
        {
            Model.Pacijent pacijent = this.PacijentPicker.SelectedItem as Model.Pacijent;
            if (this.PacijentPicker.SelectedItem == null)
            {
                await DisplayAlert("Greška", "Morate odabrati pacijenta!", "OK");
            }
            else
            {
                try
                {
                    if (this.PacijentPicker.SelectedItem != null)
                    {
                        var listaMedKartona = await _medicinskiKarton.Get <List <Model.MedicinskiKarton> >(null);

                        foreach (var item in listaMedKartona)
                        {
                            if (item.Pacijent.PacijentId == pacijent.PacijentId)
                            {
                                await Application.Current.MainPage.DisplayAlert(" ", "Medicinski karton za ovog pacijenta vec postoji!", "OK");

                                return;
                            }
                        }

                        var listaPacijenata = await _pacijent.Get <List <Model.Pacijent> >(null);

                        foreach (var item in listaPacijenata)
                        {
                            if (item.PacijentId == pacijent.PacijentId)
                            {
                                string pacijentPodaci = item.Ime + " " + item.Prezime;
                                model.Naziv = "Medicinski karton -> " + pacijentPodaci;
                            }
                        }
                    }
                    model.PacijentId   = pacijent.PacijentId;
                    model.Opis         = this.Opis.Text;
                    model.DatumVrijeme = DateTime.Now;
                    await model.DodajMedicinskiKarton();

                    await Navigation.PushAsync(new PrikazMedicinskihKartona());
                }
                catch (Exception err)
                {
                    throw new Exception(err.Message);
                }
            }
        }
        public async void DodajPregledClanka(int clanakId)
        {
            Model.Pacijent        pacijent        = new Model.Pacijent();
            var                   username        = APIService.Username;
            List <Model.Pacijent> listaPacijenata = await _pacijent.Get <List <Model.Pacijent> >(null);

            foreach (var item in listaPacijenata)
            {
                if (item.KorisnickoIme == username)
                {
                    pacijent = item;
                    break;
                }
            }
            var listaOcjena = await _ocjene.Get <List <Ocjena> >(null);

            bool ocjenaPostoji = false;

            foreach (var item in listaOcjena)
            {
                if (item.PacijentId == pacijent.PacijentId && item.ClanakId == clanakId)
                {
                    ocjenaPostoji = true;
                }
            }
            // ocjena je postavljena  na 0, da bih zabiljezila da je pacijent otvarao (citao) odredjeni clanak
            // zbog sistema preporuke - da se korisniku ne bi prikazivali clanci koje je prethodno procitao,
            // bez obzira na to sto ih mozda nije ocijenio
            if (ocjenaPostoji == false)
            {
                await _ocjene.Insert <Ocjena>(new OcjenaUpsertRequest()
                {
                    Ocjena1    = 0,
                    PacijentId = pacijent.PacijentId,
                    ClanakId   = clanakId
                });
            }
        }
Exemple #6
0
        public async Task NavigateFromMenu(int id)
        {
            if (!MenuPages.ContainsKey(id))
            {
                switch (id)
                {
                case (int)MenuItemType.KorisnickiProfil:
                    Model.Pacijent        pacijent       = new Model.Pacijent();
                    var                   korisnickoIme  = APIService.Username;
                    List <Model.Pacijent> listaPacijenta = await _pacijenti.Get <List <Model.Pacijent> >(null);

                    foreach (var item in listaPacijenta)
                    {
                        if (item.KorisnickoIme == korisnickoIme)
                        {
                            pacijent = item;
                            break;
                        }
                    }
                    MenuPages.Add(id, new NavigationPage(new Pacijent.KorisnickiProfilPage(pacijent)));
                    break;

                case (int)MenuItemType.MojMedicinskiKarton:
                    Model.Pacijent         Pacijent = new Model.Pacijent();
                    Model.MedicinskiKarton PacijentMedicinskiKarton = new Model.MedicinskiKarton();
                    var username = APIService.Username;
                    List <Model.Pacijent> listPacijenti = await _pacijenti.Get <List <Model.Pacijent> >(null);

                    foreach (var item in listPacijenti)
                    {
                        if (item.KorisnickoIme == username)
                        {
                            Pacijent = item;
                        }
                    }

                    var listMedKarton = await _medicinskiKarton.Get <IEnumerable <MedicinskiKarton> >(null);

                    var listPregledi = await _pregled.Get <IEnumerable <Pregled> >(null);

                    foreach (var item in listMedKarton)
                    {
                        if (item.PacijentId == Pacijent.PacijentId)
                        {
                            PacijentMedicinskiKarton = item;
                            break;
                        }
                    }
                    MenuPages.Add(id, new NavigationPage(new Pacijent.MojMedicinskiKarton(PacijentMedicinskiKarton)));
                    break;

                case (int)MenuItemType.MojeRezervacije:
                    MenuPages.Add(id, new NavigationPage(new Pacijent.MojeRezervacije()));
                    break;

                case (int)MenuItemType.RezervisiTermin:
                    MenuPages.Add(id, new NavigationPage(new Pacijent.RezervisiTermin()));
                    break;

                case (int)MenuItemType.Usluge:
                    MenuPages.Add(id, new NavigationPage(new Pacijent.UslugePage()));
                    break;

                case (int)MenuItemType.lanci:
                    MenuPages.Add(id, new NavigationPage(new Pacijent.ClanakPage()));
                    break;

                case (int)MenuItemType.Preporuke:
                    MenuPages.Add(id, new NavigationPage(new Pacijent.PreporukaPage()));
                    break;

                case (int)MenuItemType.Odjava:
                    MenuPages.Add(id, new NavigationPage(new LoginPage()));
                    break;
                }
            }

            var newPage = MenuPages[id];

            if (newPage != null && Detail != newPage)
            {
                Detail = newPage;

                if (Device.RuntimePlatform == Device.Android)
                {
                    await Task.Delay(100);
                }

                IsPresented = false;
            }
        }