コード例 #1
0
        public Model.Models.Korisnici Insert(KorisniciUpsertRequest request)
        {
            var entity = _mapper.Map <Database.Korisnici>(request);

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

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

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

            foreach (var uloga in request.Uloge)
            {
                Database.KorisniciUloge korisniciUloge = new Database.KorisniciUloge();
                Database.Uloge          u = _context.Uloge.FirstOrDefault(x => x.UlogaId == uloga);
                korisniciUloge.UlogaId      = u.UlogaId;
                korisniciUloge.KorisnikId   = entity.KorisnikId;
                korisniciUloge.DatumIzmjene = DateTime.Now;
                _context.KorisniciUloge.Add(korisniciUloge);
            }
            _context.SaveChanges();

            return(_mapper.Map <Model.Models.Korisnici>(entity));
        }
コード例 #2
0
        public Model.Models.Korisnici Update(int Id, KorisniciUpsertRequest request)
        {
            var entity = _context.Korisnici.Include(x => x.KorisniciUloge).FirstOrDefault(x => x.KorisnikId == Id);

            _context.Korisnici.Attach(entity);
            _context.Korisnici.Update(entity);
            request.KorisnikId = entity.KorisnikId;

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

                entity.LozinkaSalt = GenerateSalt();
                entity.LozinkaHash = GenerateHash(entity.LozinkaSalt, request.Password);
            }


            var trenutneUloge = _context.KorisniciUloge.Where(x => x.KorisnikId == entity.KorisnikId);

            foreach (var uloga in trenutneUloge)
            {
                bool       postoji        = false;
                List <int> sveSelectovane = request.Uloge;
                foreach (var odabrana in sveSelectovane)
                {
                    if (uloga.UlogaId == odabrana)
                    {
                        postoji = true;
                    }
                }
                if (!postoji)
                {
                    _context.KorisniciUloge.Remove(uloga);
                }
            }


            foreach (var uloga in request.Uloge)
            {
                var u = _context.KorisniciUloge.FirstOrDefault(x => x.UlogaId == uloga && x.KorisnikId == entity.KorisnikId);

                if (u == null)
                {
                    Database.KorisniciUloge korisniciUloge = new Database.KorisniciUloge();
                    Database.Uloge          ul             = _context.Uloge.FirstOrDefault(x => x.UlogaId == uloga);
                    korisniciUloge.UlogaId      = ul.UlogaId;
                    korisniciUloge.KorisnikId   = entity.KorisnikId;
                    korisniciUloge.DatumIzmjene = DateTime.Now;
                    _context.KorisniciUloge.Add(korisniciUloge);
                }
            }
            _context.SaveChanges();
            _mapper.Map(request, entity);
            _context.SaveChanges();

            return(_mapper.Map <Model.Models.Korisnici>(entity));
        }
コード例 #3
0
        public Model.Korisnici Insert(KorisniciUpsertRequest request)
        {
            if (request.Sifra != request.SifraPotvrda)
            {
                throw new UserException("Šifre se ne slažu");
            }
            var uloge = request.Uloge;
            var obj   = _mapper.Map <Database.Korisnici>(request);

            obj.LozinkaSalt = GenerateSalt();
            obj.LozinkaHash = GenerateHash(obj.LozinkaSalt, request.Sifra);
            _context.Korisnici.Add(obj);
            _context.SaveChanges();

            foreach (var item in uloge)
            {
                Database.KorisnickeUloge nova = new Database.KorisnickeUloge()
                {
                    UlogaId      = item,
                    KorisnikId   = obj.KorisnikId,
                    DatumIzmjene = DateTime.Now
                };
                _context.KorisnickeUloge.Add(nova);
            }

            _context.SaveChanges();
            return(_mapper.Map <Model.Korisnici>(obj));
        }
コード例 #4
0
        public Model.Korisnici Insert(KorisniciUpsertRequest request)
        {
            var korisnik = _mapper.Map <Database.Korisnici>(request);

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

            korisnik.LozinkaSalt = Util.Helper.GenerateSalt();
            korisnik.LozinkaHash = Util.Helper.GenerateHash(korisnik.LozinkaSalt, request.Password);

            _context.Korisnici.Add(korisnik);
            _context.SaveChanges();

            foreach (var uloga in request.Uloge)
            {
                Database.KorisniciUloge korisniciUloge = new Database.KorisniciUloge();

                korisniciUloge.KorisnikId   = korisnik.KorisnikId;
                korisniciUloge.UlogaId      = uloga;
                korisniciUloge.DatumIzmjene = DateTime.Now;

                _context.KorisniciUloge.Add(korisniciUloge);
            }
            _context.SaveChanges();

            var result = _context.Korisnici.Include(i => i.KorisniciUloge).Where(w => w.KorisnikId == korisnik.KorisnikId).FirstOrDefault();

            return(_mapper.Map <Model.Korisnici>(result));
        }
コード例 #5
0
        public Model.Korisnici Update(int id, KorisniciUpsertRequest request)
        {
            var entitet = _context.Korisnici.Find(id);

            if (entitet == null)
            {
                throw new UserException("Ne postoji korisnik");
            }

            _context.Korisnici.Attach(entitet);
            _context.Korisnici.Update(entitet);

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

            entitet.LozinkaSalt = Util.PasswordGenerator.GenerateSalt();
            entitet.LozinkaHash = Util.PasswordGenerator.GenerateHash(request.Lozinka, entitet.LozinkaSalt);

            _mapper.Map(request, entitet);
            _context.SaveChanges();

            return(_mapper.Map <Model.Korisnici>(entitet));
        }
コード例 #6
0
        public Model.Korisnici Insert(KorisniciUpsertRequest request)
        {
            var entity = _mapper.Map <Database.Korisnici>(request);

            if (request.Lozinka != request.PotvrdaLozinke)
            {
                throw new Exception("Passwordi se ne slažu");
            }

            entity.LozinkaSalt = GenerateSalt();
            entity.LozinkaHash = GenerateHash(entity.LozinkaSalt, request.Lozinka);

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

            foreach (var uloga in request.Uloge)
            {
                Database.KorisniciUloge korisniciUloge = new Database.KorisniciUloge
                {
                    KorisnikId   = entity.KorisnikId,
                    UlogaId      = uloga,
                    DatumIzmjene = DateTime.Now
                };
                _context.KorisniciUloge.Add(korisniciUloge);
            }
            _context.SaveChanges();

            return(_mapper.Map <Model.Korisnici>(entity));
        }
コード例 #7
0
        private async void btnSacuvaj_Click(object sender, EventArgs e)
        {
            try
            {
                if (ValidateChildren())
                {
                    var newkorisnik = new KorisniciUpsertRequest();

                    newkorisnik.Ime            = txtIme.Text;
                    newkorisnik.Prezime        = txtPrezime.Text;
                    newkorisnik.Email          = txtEmail.Text;
                    newkorisnik.Status         = cbAktivan.Checked;
                    newkorisnik.Slika          = Helper.ImageHelper.FromImageToByte(pbSlika.Image);
                    newkorisnik.KorisnickoIme  = txtKorisnickoIme.Text;
                    newkorisnik.Lozinka        = txtLozinka.Text;
                    newkorisnik.PotvrdiLozinku = txtPotvrdiLozinku.Text;


                    if (newkorisnik.Lozinka != newkorisnik.PotvrdiLozinku)
                    {
                        MessageBox.Show("Lozinke se ne podudaraju");
                    }

                    await _korisniciService.Update <Model.Korisnici>(korisnik.Id, newkorisnik);

                    MessageBox.Show("Uspjesno izmjenjeni podaci");
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
コード例 #8
0
ファイル: frmTreneri.cs プロジェクト: ilmakazazic/GymTime
        private async void btnSacuvaj_ClickAsync(object sender, EventArgs e)
        {
            var uloge   = clbUloge.CheckedItems.Cast <Model.Uloge>().Select(x => x.UlogaId).ToList();
            var licence = clbLicence.CheckedItems.Cast <Model.Licenca>().Select(x => x.LicencaId).ToList();

            var request = new KorisniciUpsertRequest()
            {
                Email                = txtEmail.Text,
                Ime                  = txtIme.Text,
                Username             = txtKorisnickoIme.Text,
                Password             = txtPass.Text,
                PasswordConfirmation = txtPassConf.Text,
                Prezime              = txtPrezime.Text,
                Telefon              = txtTel.Text,
                Uloge                = uloge,
                Licence              = licence,
            };

            if (_id.HasValue)
            {
                await _services.Update <Model.Korisnici>(_id, request);

                MessageBox.Show("Uspješno ste izmjenili korisnika!");
            }
            else
            {
                await _services.Insert <Model.Korisnici>(request);

                MessageBox.Show("Uspješno ste dodali korisnika!");
            }
        }
コード例 #9
0
        public Model.Korisnici Insert(KorisniciUpsertRequest request)
        {
            var entitet = _mapper.Map <Database.Korisnici>(request);

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

            entitet.LozinkaSalt = Util.PasswordGenerator.GenerateSalt();
            entitet.LozinkaHash = Util.PasswordGenerator.GenerateHash(request.Lozinka, entitet.LozinkaSalt);

            _context.Korisnici.Add(entitet);

            _context.SaveChanges();

            foreach (var item in request.Uloge)
            {
                var korisniciUloga = new Database.KorisniciUloge();
                korisniciUloga.DatumIzmjene = DateTime.Now;
                korisniciUloga.KorisnikId   = entitet.Id;
                korisniciUloga.UlogaId      = item;
                _context.KorisniciUloge.Add(korisniciUloga);
            }

            _context.SaveChanges();

            return(_mapper.Map <Model.Korisnici>(entitet));
        }
コード例 #10
0
        public Korisnici Update(int id, KorisniciUpsertRequest request)
        {
            var entity = _context.Korisnik.Find(id);

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

            _mapper.Map(request, entity);

            _korisnickiNalogService.Update(entity.KorisnickiNalogId, request);

            _context.SaveChanges();
            return(_mapper.Map <Model.Korisnici>(entity));
        }
コード例 #11
0
        private async void btnSacuvaj_Click(object sender, EventArgs e)
        {
            if (ValidateChildren() && txtLozinka_Validating() && await txtKorisnickoIme_Validating() && await txtEmail_Validating())
            {
                KorisniciUpsertRequest request = new KorisniciUpsertRequest()
                {
                    Ime           = txtIme.Text,
                    Prezime       = txtPrezime.Text,
                    Email         = txtEmail.Text,
                    KorisnickoIme = txtKorIme.Text,
                    Telefon       = txtTelefon.Text,
                    Sifra         = txtSifra.Text,
                    SifraPotvrda  = txtSifraPotvrda.Text,
                    Status        = chbStatus.Checked,
                    DatumRodjenja = dtpRodjenje.Value,
                    Uloge         = clbKorisnickeUloge.CheckedItems.Cast <Model.Uloge>().Select(a => a.UlogaId).ToList()
                };
                if (Id == null)
                {
                    try
                    {
                        var result = await _korisnici.Insert <Model.Korisnici>(request);

                        if (result != null)
                        {
                            MessageBox.Show(Properties.Resources.UspjesnoDodano);
                        }
                    }
                    catch (Exception err)
                    {
                        MessageBox.Show(err.Message);
                    }
                }
                else
                {
                    try {
                        var result = await _korisnici.Update <Model.Korisnici>(Id, request);

                        if (result != null)
                        {
                            MessageBox.Show(Properties.Resources.UspjesnoPromijenjeno);
                        }
                    }
                    catch (Exception err)
                    {
                        MessageBox.Show(err.Message);
                    }
                }
            }
        }
コード例 #12
0
        private async void btnSacuvaj_Click(object sender, EventArgs e)
        {
            if (ValidateChildren() && txtLozinka_Validating() && await txtKorisnickoIme_Validating() && await txtEmail_Validating())
            {
                var roleList = clbUloge.CheckedItems.Cast <Model.Uloge>().Select(x => x.UlogaId).ToList();
                var request  = new KorisniciUpsertRequest()
                {
                    Ime            = txtIme.Text,
                    Prezime        = txtPrezime.Text,
                    Email          = txtEmail.Text,
                    Telefon        = txtTelefon.Text,
                    GradId         = int.Parse(cbGrad.SelectedValue.ToString()),
                    KorisnickoIme  = txtKorisnickoIme.Text,
                    Lozinka        = txtLozinka.Text,
                    PotvrdaLozinke = txtPotvrdaLozinke.Text,
                    Status         = cbStatus.Checked,
                    Uloge          = roleList
                };

                Model.Korisnici entity = null;
                try
                {
                    if (_id.HasValue)
                    {
                        entity = await _korisniciService.Update <Model.Korisnici>(_id.Value, request);

                        if (entity.KorisnickoIme.Equals(APIService.Username) && request.Lozinka != string.Empty)
                        {
                            APIService.Password = request.Lozinka;//da nas ne izbaci
                        }
                    }
                    else
                    {
                        entity = await _korisniciService.Insert <Model.Korisnici>(request);
                    }
                }
                catch (Exception err)
                {
                    MessageBox.Show(err.Message);
                }
                if (entity != null)
                {
                    MessageBox.Show("Uspješno izvršeno");
                }
                this.Close();
            }
        }
コード例 #13
0
        public Bilten.Model.Korisnici Insert(KorisniciUpsertRequest request)
        {
            var entity = _mapper.Map <Database.Korisnici>(request);

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

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

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

            return(_mapper.Map <Bilten.Model.Korisnici>(entity));
        }
コード例 #14
0
        public Model.Korisnici Update(int id, KorisniciUpsertRequest request)
        {
            var entity = _context.Korisnici.Find(id);

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

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

                entity.LozinkaSalt = GenerateSalt();
                entity.LozinkaHash = GenerateHash(entity.LozinkaSalt, request.Lozinka);
            }


            var korisnickeUloge = _context.KorisniciUloge.Where(x => x.KorisnikId == id).ToList();

            foreach (var item in korisnickeUloge)
            {
                _context.KorisniciUloge.Remove(item);
            }
            _context.SaveChanges();

            foreach (var uloga in request.Uloge)
            {
                Database.KorisniciUloge korisniciUloge = new Database.KorisniciUloge
                {
                    KorisnikId   = entity.KorisnikId,
                    UlogaId      = uloga,
                    DatumIzmjene = DateTime.Now
                };
                _context.KorisniciUloge.Add(korisniciUloge);
            }
            _context.SaveChanges();


            _mapper.Map(request, entity);

            _context.SaveChanges();

            return(_mapper.Map <Model.Korisnici>(entity));
        }
コード例 #15
0
        public Korisnici Insert(KorisniciUpsertRequest request)
        {
            var entity  = _mapper.Map <Database.Korisnik>(request);
            var nalogId = _korisnickiNalogService.Insert(request).KorisnickiNalogId;

            entity.KorisnickiNalogId = nalogId;

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

            foreach (var licenca in request.Licence)
            {
                _context.TrenerLicence.Add(new Database.TrenerLicence()
                {
                    KorisnikId = entity.KorisnikId,
                    LicencaId  = licenca
                });
            }
            _context.SaveChanges();
            return(_mapper.Map <Model.Korisnici>(entity));
        }
コード例 #16
0
        public Model.Korisnici Update(int id, KorisniciUpsertRequest request)
        {
            var entity = _context.Korisnici.Include(i => i.KorisniciUloge).Where(w => w.KorisnikId == id).FirstOrDefault();

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

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

                entity.LozinkaSalt = Util.Helper.GenerateSalt();
                entity.LozinkaHash = Util.Helper.GenerateHash(entity.LozinkaSalt, request.Password);
            }

            _mapper.Map(request, entity);
            _context.SaveChanges();

            return(_mapper.Map <Model.Korisnici>(entity));
        }
コード例 #17
0
        public Model.Korisnici Update(int Id, KorisniciUpsertRequest request)
        {
            var obj = _context.Korisnici.Find(Id);

            _mapper.Map(request, obj);
            var ulogeBrisanje = _context.KorisnickeUloge.ToList();

            foreach (var item in ulogeBrisanje)
            {
                if (item.KorisnikId == obj.KorisnikId)
                {
                    _context.Remove(item);
                }
            }
            if ((!string.IsNullOrWhiteSpace(request.Sifra)) && (request.Sifra == request.SifraPotvrda))
            {
                obj.LozinkaSalt = GenerateSalt();
                obj.LozinkaHash = GenerateHash(obj.LozinkaSalt, request.Sifra);
            }
            else
            {
                throw new UserException("Nemoguće promijeniti šifru.");
            }
            _context.SaveChanges();
            foreach (var item in request.Uloge)
            {
                Database.KorisnickeUloge nova = new Database.KorisnickeUloge()
                {
                    KorisnikId   = obj.KorisnikId,
                    UlogaId      = item,
                    DatumIzmjene = DateTime.Now
                };
                _context.KorisnickeUloge.Add(nova);
            }
            _context.SaveChanges();
            return(_mapper.Map <Model.Korisnici>(obj));
        }
コード例 #18
0
        public Bilten.Model.Korisnici Update(int id, KorisniciUpsertRequest request)
        {
            var entity = _context.Korisnici.Find(id);

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

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

                entity.LozinkaSalt = GenerateSalt();
                entity.LozinkaHash = GenerateHash(entity.LozinkaSalt, request.Password);
            }

            _mapper.Map(request, entity);

            _context.SaveChanges();

            return(_mapper.Map <Bilten.Model.Korisnici>(entity));
        }
コード例 #19
0
        public Model.Models.Korisnici Update(int id, [FromBody] KorisniciUpsertRequest request)
        {
            var r = _service.Update(id, request);

            return(r);
        }
コード例 #20
0
 public Bilten.Model.Korisnici Insert(KorisniciUpsertRequest request)
 {
     return(_service.Insert(request));
 }
コード例 #21
0
 public Model.Korisnici Update(int id, KorisniciUpsertRequest request)
 {
     return(_service.Update(id, request));
 }
コード例 #22
0
 public Model.Korisnici Insert(KorisniciUpsertRequest request)
 {
     return(_korisniciService.Insert(request));
 }
コード例 #23
0
 public Bilten.Model.Korisnici Update(int id, [FromBody] KorisniciUpsertRequest request)
 {
     return(_service.Update(id, request));
 }
コード例 #24
0
 public Korisnici Insert(KorisniciUpsertRequest request)
 {
     return(_service.Insert(request));
 }