//Teksto laukuose gauta informacija yra siunčiama objektui AsmuoRepo metodui Prisijungti, jei prisijungti pavyks, objektas Asmuo prisijunges gaus tinkamą vertę
        //Ir pateks į jo grupei tinkamą langą
        private void Prisijungti_Click(object sender, EventArgs e)
        {
            try
            {
                repo.Prisijungti(prisijungimoBox.Text, slaptBox.Text);
                Asmuo prisijunges = repo.GetPrisijunges();
                Form  ff          = new Studento();

                if (prisijunges.GetGrupe() == "adminai")
                {
                    ff = new Admino();
                }


                if (prisijunges.GetGrupe() == "destytojai")
                {
                    ff = new Destytojo();
                }

                ff.ShowDialog();
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }
Пример #2
0
        public async Task <IActionResult> Edit(string id, [Bind("AsmesnsId,AsmensKodas,Vardas,Pavarde,Telefonas,Miestas,Salis,Adresas,PastoKodas")] Asmuo asmuo)
        {
            var user = await GetCurrentUserAsync();

            var userId = user?.Id;

            asmuo.AsmesnsId = userId;
            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(asmuo);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AsmuoExists(asmuo.AsmensKodas))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(MyInfo)));
            }
            return(View(asmuo));
        }
        //Yra gaunamas objektas Asmuo, kurio atributas grupes yra naudojamas gauti, su jo grupe susijusius dalykus, naudojant metodą GetGrupesDalykai
        //Tuomet yra iteruojama per visus gautus grupesDalykus, iteraciju metu yra naudojamas metodas GetDalykas, kuris naudojant grupesDalykas atributą dalykas
        //sugražina sugražiną objektą iš DB lentelės dalykas.
        //tuomet gauto dalyko atributai pavdinimas ir destytojas(jo id)(Šis id yra naudojamas gauti dėstytojo vardą ir pavardę naudojant metoda GetDestytojoVardas iš DB
        //yra naudojami gauti naujam objektui Dalyko vertinimas pavadinimui
        //Tuomet jau per sukurtą dalykuVertinimas sąrašą yra iteruojama ir su kiekviena iteracija yra priskiriami susiję su dalyku ir studentu pažymiai iš DB lentelės vertinimas
        public List <DalykoVertinimai> GetDalykai(Asmuo gautas)
        {
            List <DalykoVertinimai> dalykuVertinimai = new List <DalykoVertinimai>();

            try
            {
                List <int> dalykuId = GetDalykuId(gautas.GetId());
                for (int i = 0; i < dalykuId.Count; i++)
                {
                    Dalykas temp = GetDalykas(dalykuId[i]);
                    dalykuVertinimai.Add(new DalykoVertinimai($"{temp.Pavadinimas} ({GetDestytojoVardas(temp.Destytojas)})"));
                    dalykuVertinimai[i].SetVertinimai(GetVertinimai(gautas.GetId(), temp.Id));
                }
            }
            catch (Exception exc)
            {
                Console.WriteLine(exc.Message);
            }

            if (dalykuVertinimai.Count < 1)
            {
                throw new Exception("Nepavyko gauti destomu dalyku");
            }

            return(dalykuVertinimai);
        }
Пример #4
0
        //Yra gaunamas objektas Asmuo, o pagal jo atributą Id yra gaunami susiję įrašai iš DB lentelės dalykas (pagal foreign key destytojas)
        //Tuomet gauta informacija Dalykas objektų sąrašui, kuris baigus gautos informacijos skaitymą ir priskyrimą yra grąžinamas
        public new List <Dalykas> GetDalykai(Asmuo gautas)
        {
            List <Dalykas> dalykai = new List <Dalykas>();
            string         sql     = "SELECT * FROM dalykas WHERE destytojas=@id";
            SqlCommand     cmd     = new SqlCommand(sql, conn);

            cmd.Parameters.AddWithValue("@id", gautas.GetId());

            conn.Open();
            try
            {
                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        int    Id          = Convert.ToInt32(reader["id"]);
                        int    destytojas  = Convert.ToInt32(reader["destytojas"]);
                        string pavadinimas = reader["pavadinimas"].ToString();
                        string aprasymas   = reader["aprasymas"].ToString();
                        dalykai.Add(new Dalykas(Id, destytojas, pavadinimas, aprasymas));
                    }
                }
                if (dalykai.Count < 1)
                {
                    throw new Exception("Nepavyko gauti mokomu dalyku");
                }
            }
            catch (Exception exc)
            {
                Console.WriteLine(exc.Message);
            }
            conn.Close();

            return(dalykai);
        }
        public DestytojoPazymiai(Asmuo gautas, int dalykoId)
        {
            InitializeComponent();
            TipaiComboBox.SelectedIndex = 0;
            balaiComboBox.SelectedIndex = 0;

            // priskiriami reikiami objektai ir užpildoma pazymiaiFlowLayoutPanel DestytojoPazimysControls
            // Jie gauna reikiama informacija iš gauto objektų sąrašo Vertinimas
            // Su kiekviena iteracija yra pridedamas DestytojoPazimysControls kuris gauna atitinkama vertinima
            try
            {
                this.gautas   = gautas;
                this.dalykoId = dalykoId;
                repoD         = new DestytojoRepo();
                List <Vertinimas> vertinimai = repoD.GetVertinimai(gautas.GetId(), dalykoId);

                pazymiaiFlowLayoutPanel.Controls.Clear();
                int width = pazymiaiFlowLayoutPanel.Width - 5;
                foreach (Vertinimas v in vertinimai)
                {
                    DestytojoPazimysControl pazimys = new DestytojoPazimysControl(v)
                    {
                        Width = width
                    };
                    pazymiaiFlowLayoutPanel.Controls.Add(pazimys);
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }
Пример #6
0
        public ActionResult DeleteConfirmed(int id)
        {
            Asmuo asmuo = db.Asmuos.Find(id);

            db.Asmuos.Remove(asmuo);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #7
0
        //Yra gaunamas Asmuo objektas, pagal jo atributą id yra gaunami usije dalykai, besikreipiant į metodą GetDalykai, tuomet gautų dalykų sąrašas yra
        //užpildomas grupėmis, kurios yra susietos su šiuo dalyku DB lentelėje grupesDalykai
        public List <Dalykas> GetUzpildytiDalykai(Asmuo gautas)
        {
            List <Dalykas> dalykai = GetDalykai(gautas);

            foreach (Dalykas d in dalykai)
            {
                d.SetGrupes(GetGrupes(d.Id));
            }
            return(dalykai);
        }
        //reikiami objektai yra priskiriami, o DalykasControl controleris yra užpildomas gautomis objekto Dalykas ir Asmuo vertėmis
        public DalykasControl(Dalykas dalykas, Asmuo asmuo)
        {
            InitializeComponent();
            this.dalykas = dalykas;
            repoA        = new AdminoRepo();

            idLabel.Text          = dalykas.Id.ToString();
            pavadinimasLabel.Text = dalykas.Pavadinimas;
            destytojoIdLabel.Text = asmuo.GetId().ToString();
            vardasLabel.Text      = asmuo.GetVardas();
            pavardeLabel.Text     = asmuo.GetPavarde();
        }
Пример #9
0
        //pašalina Asmeni, jei tas asmuo yra dėstytojas nuo jo pirmiau atskiria mokomuosius dalykus, jei studentas su juo susijusius vertinimus
        public void SalintiNaudotoja(Asmuo gautas)
        {
            if (gautas.GetGrupe() == "destytojai")
            {
                AtskirtiDalykus(gautas);
            }
            else
            {
                SalintiVertinimus(gautas);
            }

            SalintiAsmeni(gautas);
        }
Пример #10
0
        public FileContentResult GetImage(int id)
        {
            Asmuo asmuo = db.Asmuos.Find(id);

            if (asmuo != null)
            {
                byte[] imgBytes = asmuo.AsmuoImage;
                return(File(asmuo.AsmuoImage, ".jpg"));
            }
            else
            {
                return(null);
            }
        }
Пример #11
0
        //Gauna asmens objektą ir pagal jo id išrina įrašą iš DB lentelės asmuo
        private int SalintiAsmeni(Asmuo gautas)
        {
            string     sql = "DELETE FROM asmuo WHERE id=@id";
            SqlCommand cmd = new SqlCommand(sql, conn);

            cmd.Parameters.AddWithValue("@id", gautas.GetId());
            int kiek;

            conn.Open();
            kiek = cmd.ExecuteNonQuery();
            conn.Close();

            return(kiek);
        }
Пример #12
0
        //Gauna asmuo objektą ir pagal jo id ištrina susijusį asmenį
        private int SalintiVertinimus(Asmuo gautas)
        {
            string     sql = "DELETE FROM vertinimas WHERE studentas=@studentas";
            SqlCommand cmd = new SqlCommand(sql, conn);

            cmd.Parameters.AddWithValue("@studentas", gautas.GetId());
            int kiek;

            conn.Open();
            kiek = cmd.ExecuteNonQuery();
            conn.Close();

            return(kiek);
        }
Пример #13
0
        //Gauna asmuo objektą, ir naudojant objekto id atributą suranda visus jam priskirtus DB lenteles dalykas įrašus ir juose dėstytoja (jo id) pakeičia
        //į 1 "Nepriskiti Dalykai" dėstytojui
        private int AtskirtiDalykus(Asmuo gautas)
        {
            string     sql = "UPDATE dalykas SET destytojas=1 WHERE destytojas=@destytojas";
            SqlCommand cmd = new SqlCommand(sql, conn);

            cmd.Parameters.AddWithValue("@destytojas", gautas.GetId());
            int kiek;

            conn.Open();
            kiek = cmd.ExecuteNonQuery();
            conn.Close();

            return(kiek);
        }
Пример #14
0
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Asmuo asmuo = db.Asmuos.Find(id);

            if (asmuo == null)
            {
                return(HttpNotFound());
            }
            return(View(asmuo));
        }
Пример #15
0
        public async Task <IActionResult> Create([Bind("AsmensKodas,Vardas,Pavarde,Telefonas,Miestas,Salis,Adresas,PastoKodas")] Asmuo asmuo)
        {
            if (ModelState.IsValid)
            {
                var user = await GetCurrentUserAsync();

                var userId = user?.Id;
                asmuo.AsmesnsId = userId;
                _context.Add(asmuo);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(asmuo));
        }
Пример #16
0
        public ActionResult Edit([Bind(Include = "Id,Vardas,Pavarde,AlgaNet,VaikuSkaicius,AuginaVaikusVienas,AlgaGross", Exclude = "AsmuoImage")] Asmuo asmuo, HttpPostedFileBase asmuoImage)
        {
            if (!ModelState.IsValid)
            {
                return(View(asmuo));
            }


            var asmuoInDb = db.Asmuos.Single(c => c.Id == asmuo.Id);

            asmuo.AsmuoImage = asmuoInDb.AsmuoImage;

            if (asmuoImage != null)
            {
                if (asmuoImage.ContentLength > 0 && asmuoImage.ContentLength < 512000)
                {
                    var fileExt = Path.GetExtension(asmuoImage.FileName);
                    if (fileExt != null && fileExt.ToLower().EndsWith(".jpg") && IsFileImage(asmuoImage))
                    {
                        BinaryReader reader = new BinaryReader(asmuoImage.InputStream);
                        asmuo.AsmuoImage     = reader.ReadBytes(asmuoImage.ContentLength);
                        asmuoInDb.AsmuoImage = asmuo.AsmuoImage;
                    }
                    else
                    {
                        ViewBag.Error = "Picture is not JPG";
                        return(View());
                    }
                }
                else
                {
                    ViewBag.Error = "Picture is bigger than 500kb";
                    return(View(asmuo));
                }
            }

            asmuoInDb.Vardas             = asmuo.Vardas;
            asmuoInDb.Pavarde            = asmuo.Pavarde;
            asmuoInDb.AlgaNet            = asmuo.AlgaNet;
            asmuoInDb.VaikuSkaicius      = asmuo.VaikuSkaicius;
            asmuoInDb.AuginaVaikusVienas = asmuo.AuginaVaikusVienas;

            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #17
0
        // GET: Asmuos/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Asmuo asmuo = db.Asmuos.Find(id);

            if (asmuo == null)
            {
                return(HttpNotFound());
            }
            if (User.IsInRole(RoleName.Admin))
            {
                return(View(asmuo));
            }

            return(View("DetailsReadOnly", asmuo));
        }
        //Yra gaunami du string objektai, jie patikrinami ar nėra tušti, ir tuomet DB lentelėje yra ieškomas įrašas atitinkantis šias vertes
        //jį radus įrašo vertes yra priskiriamos objektui Asmuo
        public void Prisijungti(string prisijungimoV, string slaptazodis)
        {
            prisijunges = null;

            if (String.IsNullOrWhiteSpace(slaptazodis))
            {
                throw new Exception("netinkamas slaptazodis");
            }

            if (String.IsNullOrWhiteSpace(prisijungimoV))
            {
                throw new Exception("netinkamas prisijungimo vardas");
            }

            string sql = "SELECT * FROM asmuo WHERE prisijungimoV=@prisijungimoV and slaptazodis=@slaptazodis";

            SqlCommand cmd = new SqlCommand(sql, conn);

            cmd.Parameters.AddWithValue("@prisijungimoV", prisijungimoV);
            cmd.Parameters.AddWithValue("@slaptazodis", slaptazodis);
            conn.Open();

            using (SqlDataReader reader = cmd.ExecuteReader())
            {
                if (reader.Read())
                {
                    string id       = reader["id"].ToString();
                    string vardas   = reader["vardas"].ToString();
                    string pavarde  = reader["pavarde"].ToString();
                    string grupe    = reader["grupe"].ToString();
                    string password = reader["slaptazodis"].ToString();
                    string nickname = reader["PrisijungimoV"].ToString();
                    prisijunges = new Asmuo(id, vardas, pavarde, grupe, password, nickname);
                }
            }
            conn.Close();

            if (prisijunges == null)
            {
                throw new Exception("Netinkami Prisijungimo duomenys");
            }
        }
Пример #19
0
        //Funkcija priema asmuo objektą ir prideda jo vertes į duomenų bazę. Jei dėl įterpimo komandos niekas nepakito DB apie tai yra pranešama klaidos pranešimu.
        public void InsertAsmuo(Asmuo gautas)
        {
            string sql = "INSERT INTO asmuo (vardas, pavarde, grupe, slaptazodis, prisijungimoV) " +
                         "VALUES (@vardas, @pavarde, @grupe, @slaptazodis, @prisijungimoV)";
            SqlCommand cmd = new SqlCommand(sql, conn);

            cmd.Parameters.AddWithValue("@vardas", gautas.GetVardas());
            cmd.Parameters.AddWithValue("@pavarde", gautas.GetPavarde());
            cmd.Parameters.AddWithValue("@grupe", gautas.GetGrupe());
            cmd.Parameters.AddWithValue("@slaptazodis", gautas.GetSlaptazodis());
            cmd.Parameters.AddWithValue("@prisijungimoV", gautas.GetPrisijungimoV());

            conn.Open();
            int kiek = cmd.ExecuteNonQuery();

            conn.Close();

            if (kiek < 1)
            {
                throw new Exception("Nepavyko pridėti naujo naudotojo");
            }
        }