public ActionResult Create(Darbuotojas collection)
        {
            try
            {
                // Patikrinama ar tokiod arbuotojo nėra duomenų bazėje
                Darbuotojas tmpDarbuotojas = darbuotojasRepository.getDarbuotojas(collection.tabelis);

                if (tmpDarbuotojas.tabelis != null)
                {
                    ModelState.AddModelError("tabelis", "Darbuotojas su tokiu tabelio numeriu jau egzistuoja duomenų bazėje.");
                    return(View(collection));
                }
                //Jei darbuotojo su tabelio nr neranda prideda naują
                if (ModelState.IsValid)
                {
                    darbuotojasRepository.addDarbuotojas(collection);
                }

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View(collection));
            }
        }
        public Darbuotojas getDarbuotojas(string tabnr)
        {
            Darbuotojas     darbuotojas     = new Darbuotojas();
            string          conn            = ConfigurationManager.ConnectionStrings["MysqlConnection"].ConnectionString;
            MySqlConnection mySqlConnection = new MySqlConnection(conn);
            string          sqlquery        = "select * from " + Globals.dbPrefix + "darbuotojai where tabelio_nr=?tab";
            MySqlCommand    mySqlCommand    = new MySqlCommand(sqlquery, mySqlConnection);

            mySqlCommand.Parameters.Add("?tab", MySqlDbType.VarChar).Value = tabnr;
            mySqlConnection.Open();
            MySqlDataAdapter mda = new MySqlDataAdapter(mySqlCommand);
            DataTable        dt  = new DataTable();

            mda.Fill(dt);
            mySqlConnection.Close();

            foreach (DataRow item in dt.Rows)
            {
                darbuotojas.tabelis = Convert.ToString(item["tabelio_nr"]);
                darbuotojas.vardas  = Convert.ToString(item["vardas"]);
                darbuotojas.pavarde = Convert.ToString(item["pavarde"]);
            }

            return(darbuotojas);
        }
Пример #3
0
        public async Task <IActionResult> Edit(int id, [Bind("DarbuotojasId,Vardas,elPastas,Slaptazodis,Pavarde,tabelioNr,Pareigos")] Darbuotojas darbuotojas)
        {
            if (id != darbuotojas.DarbuotojasId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(darbuotojas);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DarbuotojasExists(darbuotojas.DarbuotojasId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(darbuotojas));
        }
        public ActionResult Darbuotojo_informacijos_langas(int id = 0)
        {
            try
            {
                Darbuotojas empl  = repository.Set <Darbuotojas>().Find(id);
                var         model = new EmpViewModel();
                if (empl != null)
                {
                    model.id        = empl.darbuojo_kodas;
                    model.Name      = empl.vardas;
                    model.Surname   = empl.pavarde;
                    model.Email     = empl.el_pastas;
                    model.Phone     = empl.telefonas;
                    model.Address   = empl.adresas;
                    model.Gender    = empl.lytis;
                    model.StartTime = empl.darbo_pradzios_laikas;
                    model.Role      = empl.darbuotojo_tipas.name.First().ToString().ToUpper() + empl.darbuotojo_tipas.name.Substring(1);
                }

                return(View(model));
            }
            catch (ITPProException ex)
            {
                return(RedirectToAction("Sistemos_klientu_langas"));
            }
        }
Пример #5
0
        public async Task <ActionResult <Darbuotojas> > PostDarbuotojas(Darbuotojas darbuotojas)
        {
            _context.Darbuotojai.Add(darbuotojas);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetDarbuotojas", new { id = darbuotojas.Id }, darbuotojas));
        }
Пример #6
0
        public async Task <IActionResult> PutDarbuotojas(int id, Darbuotojas darbuotojas)
        {
            if (id != darbuotojas.Id)
            {
                return(BadRequest());
            }

            _context.Entry(darbuotojas).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!DarbuotojasExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        // GET: Darbuotojas/Create
        public ActionResult Create()
        {
            //Grazinama darbuotojo kūrimo forma
            Darbuotojas darbuotojas = new Darbuotojas();

            return(View(darbuotojas));
        }
Пример #8
0
 public ActionResult Edit([Bind(Include = "Id,Vardas,Pavarde,Asmens_kodas,Gimimo_data,Adresas,Aktyvumo_pozymis")] Darbuotojas darbuotojas)
 {
     if (ModelState.IsValid)
     {
         db.Entry(darbuotojas).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(darbuotojas));
 }
Пример #9
0
        public async Task <IActionResult> Create([Bind("DarbuotojasId,Vardas,elPastas,Slaptazodis,Pavarde,tabelioNr,Pareigos")] Darbuotojas darbuotojas)
        {
            if (ModelState.IsValid)
            {
                _context.Add(darbuotojas);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(darbuotojas));
        }
Пример #10
0
 public ActionResult Irasyti(RestrictRightsViewModel model, int clientid)
 {
     if (ModelState.IsValid)
     {
         Darbuotojas emp    = repository.Set <Darbuotojas>().Find(CurrentUser.UserId);
         Viesbutis   hotel  = repository.Set <Viesbutis>().Find(emp.fk_Viesbutisid);
         Teises      rights = repository.Set <Teises>().Where(x => x.viesbuciu_tinklas == hotel.viesbuciu_tinklas && x.fk_Klientaskliento_kodas == clientid).FirstOrDefault();
         rights.priezastis      = model.Reason;
         rights.data_iki        = model.DateEnd;
         rights.teisiu_statusas = false;
         repository.SaveChanges();
     }
     return(RedirectToAction("Sistemos_klientu_langas"));
 }
Пример #11
0
        // GET: Darbuotojas/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Darbuotojas darbuotojas = db.Darbuotojas.Find(id);

            if (darbuotojas == null)
            {
                return(HttpNotFound());
            }
            return(View(darbuotojas));
        }
Пример #12
0
        public ActionResult DeleteConfirmed(int id)
        {
            Darbuotojas darbuotojas = db.Darbuotojas.Find(id);

            if (darbuotojas.Aktyvumo_pozymis == false)
            {
                darbuotojas.Aktyvumo_pozymis = true;
            }
            else
            {
                darbuotojas.Aktyvumo_pozymis = false;
            }
            db.Entry(darbuotojas).State = EntityState.Modified;
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult Edit(string id, Darbuotojas collection)
        {
            try
            {
                // Atnaujina darbuotojo informacija
                if (ModelState.IsValid)
                {
                    darbuotojasRepository.updateDarbuotojas(collection);
                }

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View(collection));
            }
        }
        protected void Application_PostAuthenticateRequest(Object sender, EventArgs e)
        {
            HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName];

            if (authCookie != null)
            {
                FormsAuthenticationTicket ticket     = FormsAuthentication.Decrypt(authCookie.Value);
                JavaScriptSerializer      serializer = new JavaScriptSerializer();
                Darbuotojas serializedModel          = serializer.Deserialize <Darbuotojas>(ticket.UserData);
                // Klientas serializedModel2 = serializer.Deserialize <Klientas>(ticket.UserData);
                if (serializedModel != null)
                {
                    CustomPrincipal principal = new CustomPrincipal(serializedModel.el_pastas);
                    principal.UserId = serializedModel.darbuojo_kodas;
                    principal.RoleId = serializedModel.darbuotojo_tipas.id;

                    HttpContext.Current.User = principal;
                }
            }
        }
 public bool addDarbuotojas(Darbuotojas darbuotojas)
 {
     try
     {
         string          conn            = ConfigurationManager.ConnectionStrings["MysqlConnection"].ConnectionString;
         MySqlConnection mySqlConnection = new MySqlConnection(conn);
         string          sqlquery        = @"INSERT INTO " + Globals.dbPrefix + "darbuotojai(tabelio_nr,vardas,pavarde)VALUES(?tabelio_nr,?vardas,?pavarde);";
         MySqlCommand    mySqlCommand    = new MySqlCommand(sqlquery, mySqlConnection);
         mySqlCommand.Parameters.Add("?vardas", MySqlDbType.VarChar).Value     = darbuotojas.vardas;
         mySqlCommand.Parameters.Add("?pavarde", MySqlDbType.VarChar).Value    = darbuotojas.pavarde;
         mySqlCommand.Parameters.Add("?tabelio_nr", MySqlDbType.VarChar).Value = darbuotojas.tabelis;
         mySqlConnection.Open();
         mySqlCommand.ExecuteNonQuery();
         mySqlConnection.Close();
         return(true);
     }
     catch (Exception)
     {
         return(false);
     }
 }
 public bool updateDarbuotojas(Darbuotojas darbuotojas)
 {
     try
     {
         string          conn            = ConfigurationManager.ConnectionStrings["MysqlConnection"].ConnectionString;
         MySqlConnection mySqlConnection = new MySqlConnection(conn);
         string          sqlquery        = @"UPDATE " + Globals.dbPrefix + "darbuotojai a SET a.vardas=?vardas, a.pavarde=?pavarde WHERE a.tabelio_nr=?tab";
         MySqlCommand    mySqlCommand    = new MySqlCommand(sqlquery, mySqlConnection);
         mySqlCommand.Parameters.Add("?vardas", MySqlDbType.VarChar).Value  = darbuotojas.vardas;
         mySqlCommand.Parameters.Add("?pavarde", MySqlDbType.VarChar).Value = darbuotojas.pavarde;
         mySqlCommand.Parameters.Add("?tab", MySqlDbType.VarChar).Value     = darbuotojas.tabelis;
         mySqlConnection.Open();
         mySqlCommand.ExecuteNonQuery();
         mySqlConnection.Close();
         return(true);
     }
     catch (Exception)
     {
         return(false);
     }
 }
Пример #17
0
        public async Task Create(string vardas, string pavarde, string asmensKodas, DateTime gimimoData, int namoNr,
                                 string gatve, string miestas, string pastoKodas, bool aktyvus)

        {
            var darbuotojas = new Darbuotojas
            {
                Vardas      = vardas,
                Pavardė     = pavarde,
                AsmensKodas = asmensKodas,
                GimimoData  = gimimoData,
                NamoNumeris = namoNr,
                Gatve       = gatve,
                Miestas     = miestas,
                PastoKodas  = pastoKodas,
                Aktyvus     = aktyvus
            };

            await _context.Darbuotojai.AddAsync(darbuotojas);

            await _context.SaveChangesAsync();
        }
Пример #18
0
        public ActionResult Kliento_informacijos_langas(int id = 0)
        {
            try
            {
                Klientas    client = repository.Set <Klientas>().Find(id);
                Darbuotojas emp    = repository.Set <Darbuotojas>().Find(CurrentUser.UserId);
                Viesbutis   hotel  = repository.Set <Viesbutis>().Find(emp.fk_Viesbutisid);
                Teises      rights = repository.Set <Teises>().Where(x => x.viesbuciu_tinklas == hotel.viesbuciu_tinklas && x.fk_Klientaskliento_kodas == id).FirstOrDefault();
                bool        isRestricted;
                if (rights.data_iki < DateTime.Now)
                {
                    isRestricted = false;
                }
                else
                {
                    isRestricted = true;
                }
                var model = new ClientsViewModel();
                if (client != null)
                {
                    model.id           = client.kliento_kodas;
                    model.Name         = client.vardas;
                    model.Surname      = client.pavarde;
                    model.Email        = client.el_pastas;
                    model.Phone        = client.telefonas;
                    model.Address      = client.adresas;
                    model.Gender       = client.lytis;
                    model.isRestricted = isRestricted;
                }

                return(View(model));
            }
            catch (ITPProException ex)
            {
                return(RedirectToAction("Sistemos_klientu_langas"));
            }
        }
Пример #19
0
        public ActionResult Viesbuciu_langas(int page = 1, int items = 10)
        {
            if (page < 1)
            {
                page = 1;
            }

            ViewData["page"]  = page;
            ViewData["items"] = items;
            Darbuotojas            emp    = repository.Set <Darbuotojas>().Find(CurrentUser.UserId);
            Viesbutis              hotel  = repository.Set <Viesbutis>().Find(emp.fk_Viesbutisid);
            HotelsViewModel        model  = new HotelsViewModel();
            List <HotelsViewModel> hotels = new List <HotelsViewModel>();
            List <Teises>          rights = repository.Set <Teises>().Where(x => x.fk_Darbuotojasdarbuojo_kodas == CurrentUser.UserId).ToList();

            foreach (var item in repository.Set <Viesbutis>())
            {
                if (item.viesbuciu_tinklas == hotel.viesbuciu_tinklas)
                {
                    hotels.Add(new HotelsViewModel()
                    {
                        id          = item.id,
                        Title       = item.pavadinimas,
                        HotelsNet   = item.viesbuciu_tinklas,
                        Stars       = item.zvaigzduciu_sk,
                        City        = item.miestas,
                        Address     = item.adresas,
                        Description = item.aprasymas,
                        Rights      = rights.Where(x => x.viesbutis == item.pavadinimas).Select(x => x.teisiu_statusas).FirstOrDefault()
                    });
                }
            }
            hotels.OrderBy(x => x.id);
            model.hotels = hotels.ToPagedList(1, 10);

            return(View(model));
        }
Пример #20
0
        public ActionResult Login(LoginViewModel model)
        {
            if (WebSecurity.IsAuthenticated)
            {
                return(RedirectToAction("Index", "Home"));
            }

            if (WebSecurity.Login(model.Email, model.Password, false))
            {
                int userId = WebSecurity.GetUserId(model.Email);
                var user   = repository.Set <Darbuotojas>().Find(userId);
                if (user != null)
                {
                    var serializableModel = new Darbuotojas();
                    serializableModel.darbuojo_kodas   = userId;
                    serializableModel.el_pastas        = user.el_pastas;
                    serializableModel.darbuotojo_tipas = user.darbuotojo_tipas;

                    var    serializer = new JavaScriptSerializer();
                    string userData   = serializer.Serialize(serializableModel);

                    FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
                                                                                     user.el_pastas, DateTime.Now, DateTime.Now.AddMinutes(30), false, userData);

                    string     encryptedTicket = FormsAuthentication.Encrypt(ticket);
                    HttpCookie cookie          = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
                    Response.Cookies.Add(cookie);

                    return(RedirectToAction("Index", "Home"));
                }
                else
                {
                    throw new Exception("user not found");
                }
            }
            else
            {
                bool userExists2 = repository.Set <Klientas>().Any(x => x.el_pastas == model.Email);
                if (userExists2)
                {
                    var user2 = repository.Set <Klientas>().Where(x => x.el_pastas == model.Email).First();
                    if (user2 != null)
                    {
                        /* Fetch the stored value */
                        string savedPasswordHash = user2.slaptazodis;
                        /* Extract the bytes */
                        byte[] hashBytes = Convert.FromBase64String(savedPasswordHash);
                        /* Get the salt */
                        byte[] salt = new byte[16];
                        Array.Copy(hashBytes, 0, salt, 0, 16);
                        /* Compute the hash on the password the user entered */
                        var    pbkdf2 = new Rfc2898DeriveBytes(model.Password, salt, 10000);
                        byte[] hash   = pbkdf2.GetBytes(20);
                        /* Compare the results */
                        for (int i = 0; i < 20; i++)
                        {
                            byte first  = hashBytes[i + 16];
                            byte second = hash[i];
                            if (hashBytes[i + 16] != hash[i])
                            {
                                throw new UnauthorizedAccessException();
                            }
                        }
                        var serializableModel = new Darbuotojas();
                        serializableModel.darbuojo_kodas = user2.kliento_kodas;
                        serializableModel.el_pastas      = user2.el_pastas;
                        Darbuotoju_Tipai_Enum test = new Darbuotoju_Tipai_Enum();
                        test.id = 0;
                        serializableModel.darbuotojo_tipas = test;

                        var    serializer = new JavaScriptSerializer();
                        string userData   = serializer.Serialize(serializableModel);

                        FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
                                                                                         user2.el_pastas, DateTime.Now, DateTime.Now.AddMinutes(30), false, userData);

                        string     encryptedTicket = FormsAuthentication.Encrypt(ticket);
                        HttpCookie cookie          = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
                        Response.Cookies.Add(cookie);

                        return(RedirectToAction("Index", "Home"));
                        //Kaip geriausia paprastai prijungti ji? :D
                    }
                }
                else
                {
                    throw new Exception("user not found");
                }
            }
            return(RedirectToAction("Login"));
        }