public Model.Korisnici Registracija(KorisniciRegistracijaRequest request)
        {
            var entity = _mapper.Map <Database.Korisnici>(request);

            if (request.Password != request.PasswordPotvrda)
            {
                throw new UserException("Password i potvrda se ne slažu!");
            }

            var korisnici = _context.Korisnici.ToList();

            foreach (var korisnik in korisnici)
            {
                if (korisnik.KorisnickoIme == request.KorisnickoIme)
                {
                    throw new UserException("Korisnicko ime koje ste unijeli je zauzeto!");
                }
                if (korisnik.Email == request.Email)
                {
                    throw new UserException("Email koji ste unijeli je zauzet!");
                }
            }

            _context.Add(entity);

            entity.LozinkaSalt = GenerateSalt();
            entity.LozinkaHash = GenerateHash(entity.LozinkaSalt, request.Password);
            entity.Kreirano    = DateTime.Now;

            if (request.Slika == null)//registracija preko mobitela
            {
                var noimgpath = new DirectoryInfo(Environment.CurrentDirectory).FullName;
                noimgpath = noimgpath + "\\no_image.jpeg";
                var file = File.ReadAllBytes(noimgpath);
                entity.Slika = file;
            }

            //pacijent uloga ID = 4
            entity.UlogaId = 4;
            _context.SaveChanges();

            var noviPacijent = new Database.Pacijent
            {
                AlergijaNaLijek = request.AlergijaNaLijek,
                Aparatic        = request.Aparatic,
                KorisnikId      = entity.KorisnikId,
                Navlake         = request.Navlake,
                Proteza         = request.Proteza,
                Terapija        = request.Terapija
            };

            _context.Pacijents.Add(noviPacijent);
            _context.SaveChanges();


            return(_mapper.Map <Model.Korisnici>(entity));
        }
        async Task Register()
        {
            if (ValidateForm())
            {
                var insertRequest = new KorisniciRegistracijaRequest
                {
                    Ime             = Ime,
                    Prezime         = Prezime,
                    Email           = Email,
                    KorisnickoIme   = KorisnickoIme,
                    JMBG            = JMBG,
                    DatumRodjenja   = DatumRodjenja,
                    Mobitel         = "061000000",
                    Adresa          = "Adresa",
                    Password        = Lozinka,
                    PasswordPotvrda = PotvrdaLozinke,
                    Spol            = "Muško",
                    Status          = true,
                    GradId          = 1,
                    AlergijaNaLijek = false,
                    Aparatic        = false,
                    Navlake         = false,
                    Proteza         = false,
                    Terapija        = false,
                    Slika           = null
                };


                APIService.Context = "Registracija";


                var temp = await _serviceRegistracija.Registracija <Model.Korisnici>(insertRequest);

                if (temp != null)
                {
                    await Application.Current.MainPage.DisplayAlert("Registracija uspjesna", "Uspjesno ste se registrovali, mozete se prijaviti!", "OK");

                    await Application.Current.MainPage.Navigation.PopAsync();
                }
                else
                {
                    await Application.Current.MainPage.DisplayAlert("Greška", "Registracija nije uspjela!", "OK");
                }
            }
        }
Esempio n. 3
0
 public Model.Korisnici Registracija(KorisniciRegistracijaRequest request)
 {
     return(_service.Registracija(request));
 }