//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);
        }
예제 #2
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);
        }
        //Paspaudus mygtuką užpildyta informacija yra priskiriama objektui Vertinimas, kur yra tikrinama ar gauta informacija atitinka reikalavimus
        //Jei atitinka, Vertinimas yra įterpiamas į DB lentelę vertinimas naudojant DestytojoRepo metodą InsertVertinimas
        //Tuomet įterptas vertinimas yra pavaizduojamas pridedant naują elementą į pazymiaiFlowLayoutPanel
        private void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                DestytojoRepo destytojoRepo = new DestytojoRepo();
                string        data          = dateTimePicker1.Value.ToString();
                int           balas         = Convert.ToInt32(balaiComboBox.SelectedItem);
                string        tipas         = TipaiComboBox.SelectedItem.ToString();
                Vertinimas    laikinas      = new Vertinimas(0, gautas.GetId(), dalykoId, data, balas, tipas);

                destytojoRepo.InsertVertinimas(laikinas);

                DestytojoPazimysControl pazimys = new DestytojoPazimysControl(laikinas)
                {
                    Width = pazymiaiFlowLayoutPanel.Width - 5
                };

                pazymiaiFlowLayoutPanel.SuspendLayout();
                pazymiaiFlowLayoutPanel.Controls.Add(pazimys);
                pazymiaiFlowLayoutPanel.Controls.SetChildIndex(pazimys, 0);
                pazymiaiFlowLayoutPanel.ResumeLayout();
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }
        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);
            }
        }
        //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();
        }
예제 #6
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);
        }
예제 #7
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);
        }
예제 #8
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);
        }