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(); } }
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)); }
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); } } }
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)); }
public Model.Pacijent Update(int id, [FromBody] PacijentUpsertRequest request) { return(_service.Update(id, request)); }
public Model.Pacijent Insert(PacijentUpsertRequest request) { return(_service.Insert(request)); }