Example #1
0
        public Model.Korisnici Insert(KorisniciInsertRequest request)
        {
            var entity = _mapper.Map <Database.Korisnik>(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.Korisnik.Add(entity);
            _context.SaveChanges();

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

            rezultat.Ime           = entity.Ime;
            rezultat.Prezime       = entity.Prezime;
            rezultat.KorisnikId    = entity.KorisnikId;
            rezultat.Email         = entity.Email;
            rezultat.Telefon       = entity.Telefon;
            rezultat.Status        = entity.Status;
            rezultat.KorisnickoIme = entity.KorisnickoIme;
            rezultat.Slika         = entity.Slika;

            return(rezultat);
        }