Exemplo n.º 1
0
        private async void btnSnimi_Click(object sender, EventArgs e)
        {
            if (this.ValidateChildren())
            {
                var request = new PacijentUpsertRequest()
                {
                    Email                = txtEmail.Text,
                    Ime                  = txtIme.Text,
                    KorisnickoIme        = txtKorisnickoIme.Text,
                    Password             = txtPassword.Text,
                    PasswordConfirmation = txtPasswordConfirmation.Text,
                    Prezime              = txtPrezime.Text,
                    BrojTelefona         = txtBrojTelefona.Text,
                    DatumRegistracije    = dateTimePicker1.Value
                };

                if (!_Id.HasValue)
                {
                    await _pacijenti.Insert <Model.Pacijent>(request);
                }
                else
                {
                    await _pacijenti.Update <Model.Pacijent>(_Id, request);
                }
                MessageBox.Show("Operacija uspješna!");
            }
            else
            {
                MessageBox.Show("Operacija nije uspjela!");
                this.Close();
            }
        }
Exemplo n.º 2
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));
        }
Exemplo n.º 3
0
        private async void Button_Clicked(object sender, EventArgs e)
        {
            if (!Regex.IsMatch(this.Ime.Text, @"^[a-zA-Z]+$"))
            {
                await DisplayAlert("Greška", "Ime se sastoji samo od slova", "OK");
            }
            else if (!Regex.IsMatch(this.Prezime.Text, @"^[a-zA-Z]+$"))
            {
                await DisplayAlert("Greška", "Prezime se sastoji samo od slova", "OK");
            }
            else if (!Regex.IsMatch(this.KorisnickoIme.Text, @"^(?=.{4,40}$)(?![_.])(?!.*[_.]{2})[a-zA-Z0-9._]+(?<![_.])$"))
            {
                await DisplayAlert("Greška", "Neispravno korisničko ime", "OK");
            }
            else if (this.Password.Text != this.PasswordConfirmation.Text)
            {
                await DisplayAlert("Greška", "Lozinke moraju biti iste", "OK");
            }
            else if (this.Password.Text.Length < 4)
            {
                await DisplayAlert("Greška", "Lozinka ne smije biti kraća od 4 karaktera", "OK");
            }
            else
            {
                try
                {
                    PacijentUpsertRequest request = new PacijentUpsertRequest()
                    {
                        Ime               = this.Ime.Text,
                        Prezime           = this.Prezime.Text,
                        KorisnickoIme     = this.KorisnickoIme.Text,
                        BrojTelefona      = this.BrojTelefona.Text,
                        Email             = this.Email.Text,
                        DatumRegistracije = Convert.ToDateTime(this.DatumRegistracije.Text)
                    };
                    var lozinka       = APIService.Password;
                    var korisnickoIme = APIService.Username;
                    await _pacijent.Update <dynamic>(viewmodel.Pacijent.PacijentId, request);
                    await DisplayAlert("OK", "Uspješno uneseni podaci", "OK");

                    if (lozinka != this.Password.Text || korisnickoIme != this.KorisnickoIme.Text)
                    {
                        Application.Current.MainPage = new LoginPage();
                    }
                }
                catch (Exception err)
                {
                    throw new Exception(err.Message);
                }
            }
        }
Exemplo n.º 4
0
        public Model.Pacijent Update(int id, PacijentUpsertRequest request)
        {
            var entity = _context.Pacijent.Find(id);

            _context.Pacijent.Attach(entity);
            _context.Pacijent.Update(entity);

            if (!string.IsNullOrWhiteSpace(request.Password))
            {
                if (request.Password != request.PasswordConfirmation)
                {
                    throw new Exception("Passwordi se ne slažu");
                }

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

            _mapper.Map(request, entity);

            _context.SaveChanges();

            return(_mapper.Map <Model.Pacijent>(entity));
        }
Exemplo n.º 5
0
 public Model.Pacijent Update(int id, [FromBody] PacijentUpsertRequest request)
 {
     return(_service.Update(id, request));
 }
Exemplo n.º 6
0
 public Model.Pacijent Insert(PacijentUpsertRequest request)
 {
     return(_service.Insert(request));
 }