private void Remove_Click(object sender, EventArgs e)
        {
            try
            {
                using (var db = new AcademyEntities())
                {
                    //var studentsOfGroup = db.Users.Where(d => d.RoleId == 3).Where(f => f.GroupId == id).FirstOrDefault();

                    //var subjectsOfGroup = db.RSGs.Where(g => g.GroupId == id).FirstOrDefault();

                    var testQuestion = db.REQs.Where(t => t.ExamId == id).FirstOrDefault();
                    if (testQuestion != null)
                    {
                        //var subjectToDelete = AddedSubjects.CurrentRow.Cells["Id"].Value;
                        int questionToRemoveId = Convert.ToInt32(AddedQuestions.CurrentRow.Cells["Id"].Value);

                        //int subjectToDeleteId = Convert.ToInt32(db.RSGs.Where(s => s.GroupId == id).
                        //    Where(g => g.Subject.Name == subjectToDelete).Select(i=>i.Id));

                        var questionToRemove = db.REQs.Find(questionToRemoveId);

                        //MessageBox.Show(subjectToDelete.ToString());
                        db.REQs.Remove(questionToRemove);

                        db.SaveChanges();

                        var addedQuestions = from rq in db.REQs
                                             where rq.ExamId == id
                                             select new
                        {
                            Id      = rq.Id,
                            Text    = rq.Question.Name,
                            Subject = rq.Question.Subject.Name
                        };

                        AddedQuestions.DataSource = addedQuestions.ToList();

                        var exam      = db.Exams.Find(id);
                        var questions = from q in db.Questions
                                        where q.SubjectId == exam.SubjectId
                                        select new
                        {
                            Id      = q.Id,
                            Text    = q.Name,
                            Subject = q.Subject.Name
                        };

                        AllQuestions.DataSource = questions.ToList();
                    }
                    else
                    {
                        MessageBox.Show("No questions for the exam left!");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
 private void AddInformationfrm_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         teacher_datagridview.DataSource = aem.Teachers.ToList();
     }
 }
Пример #3
0
 private void Btn_employee_show_Click(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         employe_datagridview.DataSource = aem.Employees.ToList();
     }
 }
        private void Delete_Click(object sender, EventArgs e)
        {
            try
            {
                using (AcademyEntities academyDb = new AcademyEntities())
                {
                    if (academyDb.Subjects.Any())
                    {
                        var id      = Convert.ToInt32(SubjectsView.CurrentRow.Cells["Id"].Value);
                        var subject = academyDb.Subjects.Find(id);

                        if (academyDb.RSGs.Where(rs => rs.SubjectId == id).Any())
                        {
                            academyDb.RSGs.RemoveRange(academyDb.RSGs.Where(rg => rg.SubjectId == id));
                        }

                        academyDb.Subjects.Remove(subject);

                        academyDb.SaveChanges();
                        MessageBox.Show("Subject " + subject.Name + " was deleted");
                    }

                    else
                    {
                        MessageBox.Show("No subjects existed!");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #5
0
        private void PassExam_Click(object sender, EventArgs e)
        {
            using (var db = new AcademyEntities())
            {
                var examId = Convert.ToInt32(ExamsView.CurrentRow.Cells["Id"].Value);

                if (db.REQs.Where(exm => exm.ExamId == examId).Any())
                {
                    //MessageBox.Show("Has questions");
                    if (!db.Student_Answer.Where(ex => ex.ExamId == examId).Where(s => s.UserId == studentId).Any())
                    {
                        this.Hide();
                        TakeExam takeExam = new TakeExam(examId, studentId);
                        takeExam.Show();
                        this.AddOwnedForm(takeExam);
                    }
                    else
                    {
                        MessageBox.Show("You have already passed this exam");
                    }
                }
                else
                {
                    MessageBox.Show("This exam is not ready as it may not have questions prepared yet");
                }
            }
        }
 private void Btn_teacher_show_Click(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         teacher_datagridview.DataSource = aem.Teachers.ToList();
     }
 }
Пример #7
0
        private void SaveBtn_Click(object sender, EventArgs e)
        {
            try
            {
                using (AcademyEntities academyDb = new AcademyEntities())
                {
                    var editedQuestion = academyDb.Questions.Find(id);

                    if (QuestionText.Text != "")
                    {
                        editedQuestion.Name = QuestionText.Text;

                        editedQuestion.SubjectId = Convert.ToInt32(SubjectsView.CurrentRow.Cells["Id"].Value);
                        academyDb.SaveChanges();
                        this.Owner.Show();
                        this.Close();
                    }
                    //else if ()
                    //{
                    //    MessageBox.Show("Do not leave any field empty!");
                    //}
                    else
                    {
                        MessageBox.Show("Do not leave any field empty!");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                this.Owner.Show();
                this.Close();
            }
        }
Пример #8
0
 private void Educationfrm_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         edctn_datagridview.DataSource = aem.Educations.ToList();
     }
 }
Пример #9
0
 private void GroupForm_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         frm_grp_datagrid.DataSource = aem.Groups.ToList();
     }
 }
        private void Btn_teacher_save_Click(object sender, EventArgs e)
        {
            AcademyMngtSystem.Model.ClassRoom clsrm = new AcademyMngtSystem.Model.ClassRoom();


            Regex rgxName     = new Regex("[A-z]");
            Regex rgxCapacity = new Regex("[0-9A-z]");

            if (!rgxCapacity.IsMatch(clsrm_grp_capacity.Text))
            {
                MessageBox.Show("Not enter Letters");
            }
            if (!rgxName.IsMatch(clsrm_stdnt_name.Text))
            {
                MessageBox.Show("Fill in the form");
            }
            else
            {
                using (AcademyEntities aem = new AcademyEntities())
                {
                    AcademyMngtSystem.Model.Group group = aem.Groups.FirstOrDefault(c => c.Id == selectedId);
                    if (group != null)
                    {
                        clsrm.Groups.Add(group);
                    }
                    clsrm.Name     = clsrm_stdnt_name.Text;
                    clsrm.Capacity = clsrm_grp_capacity.Text;
                    aem.ClassRooms.Add(clsrm);
                    aem.SaveChanges();
                    clsrmdatagrid.DataSource = aem.ClassRooms.ToList();
                }
            }
        }
 private void ClassRoom_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         clsrmdatagrid.DataSource = aem.ClassRooms.ToList();
     }
 }
Пример #12
0
        private void TakeExam_Load(object sender, EventArgs e)
        {
            using (var db = new AcademyEntities())
            {
                var exam    = db.Exams.Find(examId);
                var student = db.Users.Find(studentId);
                subjectId = exam.SubjectId;


                ExamInfo.Text = "Exam '" + exam.Name + "' on the subject '" + exam.Subject.Name + "'\nTeacher: "
                                + exam.Subject.User.FName + " " + exam.Subject.User.LName + "\nStudent: "
                                + student.FName + " " + student.LName + " " + student.Group.Name;

                QuestionsCount.Text = "Total questions: " + exam.REQs.Where(q => q.ExamId == examId).Count();

                questionCount = Convert.ToInt32(exam.REQs.Where(q => q.ExamId == examId).Count());

                var questionsOfExam = db.REQs.Where(r => r.ExamId == examId);

                examStarted = false;

                answer = "";

                foreach (var question in questionsOfExam)
                {
                    allAnswers.AddRange(question.Question.Answers);
                    allQuestions.Add(question);
                }
            }
            QuestionGroup.Visible = false;
            EndTest.Enabled       = false;
            NextQuestion.Enabled  = false;
        }
 private void Btn_teacher_show_Click(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         clsrmdatagrid.DataSource = aem.ClassRooms.ToList();
     }
 }
        private void Btn_task_save_Click(object sender, EventArgs e)
        {
            AcademyMngtSystem.Model.Task tsk = new AcademyMngtSystem.Model.Task();

            Regex rgxName     = new Regex("[A-z]");
            Regex rgxDeadline = new Regex(@"\[0\-9\]\{2\}\.\[0\-9\]\{2\}\.\[0\-9\]\{4\}");
            Regex rgxGroup    = new Regex("[A-z]");

            if (!rgxName.IsMatch(task_txbx_name.Text))
            {
                MessageBox.Show("Fill in the form");
            }
            else if (!rgxGroup.IsMatch(task_txbx_grp.Text))
            {
                MessageBox.Show("Fill in the form");
            }
            using (AcademyEntities aem = new AcademyEntities())
            {
                tsk.Name     = task_txbx_name.Text;
                tsk.Deadline = Convert.ToDateTime(task_txbx_deadline.Text);
                //tsk.Groups = task_txbx_grp.Text;
                aem.Tasks.Add(tsk);
                aem.SaveChanges();
                frm_task_datagridview.DataSource = aem.Tasks.ToList();
            }
        }
 private void Taskfrmnew_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         frm_task_datagridview.DataSource = aem.Tasks.ToList();
     }
 }
 private void PositionFrm_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         position_datagridview.DataSource = aem.Positions.ToList();
     }
 }
 private void StudentsF_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         student_datagridview.DataSource = aem.Students.ToList();
     }
 }
        private void SaveBtn_Click(object sender, EventArgs e)
        {
            try
            {
                using (AcademyEntities academyDb = new AcademyEntities())
                {
                    var editedGroup = academyDb.Groups.Find(id);

                    if (GroupName.Text != "")
                    {
                        editedGroup.Name = GroupName.Text;
                        academyDb.SaveChanges();
                        this.Owner.Show();
                        this.Close();
                    }
                    //else if ()
                    //{
                    //    MessageBox.Show("Do not leave any field empty!");
                    //}
                    else
                    {
                        MessageBox.Show("Do not leave any field empty!");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                this.Owner.Show();
                this.Close();
            }
        }
Пример #19
0
        private void AddComments(IEntity article, string articleInfo)
        {
            var comments = Regex.Matches(articleInfo, "(?<=text:).*");
            var authors  = Regex.Matches(articleInfo, "(?<=author:).*");

            for (int i = 0; i < comments.Count; i++)
            {
                var comment = new Comment();
                comment.ArticleId = article.Id;
                comment.Text      = comments[i].Value;
                using (var academyEntities = new AcademyEntities())
                {
                    var email = authors[i].Value.TrimEnd('\r');
                    comment.UserId = academyEntities.Users.Single(
                        x => x.Email.Equals(email)).Id;
                }
                using (var context = new EfDataContext())
                {
                    var publicationService = new PublicationService(context);
                    publicationService.Comment(comment);
                    var notificationService = new NotificationService(context);
                    notificationService.NotifyAboutNewComment(comment);
                }
            }
        }
Пример #20
0
        private void UdpateBtn_Click(object sender, EventArgs e)
        {
            using (var db = new AcademyEntities())
            {
                var students = from u in db.Users
                               where u.RoleId == 3
                               where u.GroupId == null
                               select new
                {
                    Id    = u.Id,
                    FName = u.FName,
                    LName = u.LName,
                    Phone = u.Phone
                };

                StudentsChoiceView.DataSource = students.ToList();

                var group = db.Groups.Find(id);

                GroupName.Text = group.Name;

                var addedStudents = from u in db.Users
                                    where u.RoleId == 3
                                    where u.GroupId == id
                                    select new
                {
                    Id    = u.Id,
                    FName = u.FName,
                    LName = u.LName,
                    Phone = u.Phone
                };

                AddedStudents.DataSource = addedStudents.ToList();
            }
        }
        private void FillTasks()
        {
            dataGridView1.Rows.Clear();
            comboBox1.Items.Clear();
            using (AcademyEntities db = new AcademyEntities())
            {
                List <Models.Task> task = db.Tasks.ToList();

                List <Group> groups = db.Groups.ToList();
                foreach (var item in groups)
                {
                    comboBox1.Items.Add(item.Name);
                }

                foreach (var item in task)
                {
                    string statusTrue = item.Status.ToString();
                    if (statusTrue == "True")
                    {
                        string groupss = "";
                        groupss += item.Group.Name + ",";
                        if (groupss.EndsWith(","))
                        {
                            groupss = groupss.Remove(groupss.Length - 1, 1);
                        }
                        dataGridView1.Rows.Add(item.Id, item.Name, item.Deadline, groupss);
                    }
                }
            }
        }
        private void AddSubjectsDialog_Load(object sender, EventArgs e)
        {
            using (var db = new AcademyEntities())
            {
                var subjects = from s in db.Subjects
                               select new
                {
                    Id   = s.Id,
                    Name = s.Name
                };

                AllSubjects.DataSource = subjects.ToList();


                var group = db.Groups.Find(id);
                GroupName.Text = group.Name;
                var groupSubjects = from r in db.RSGs
                                    where r.GroupId == id
                                    select new
                {
                    Id      = r.Id,
                    Name    = r.Subject.Name,
                    GroupId = r.Group.Name
                };

                AddedSubjects.DataSource = groupSubjects.ToList();
            }
        }
Пример #23
0
        private void FillStudents()
        {
            dataGridView1.Rows.Clear();
            using (AcademyEntities db = new AcademyEntities())
            {
                List <Models.Student> students = db.Students.ToList();

                foreach (var item in students)
                {
                    string status = item.Status.ToString();
                    if (status == "True")
                    {
                        List <Models.GroupTask> tasks = db.GroupTasks.Where(c => c.StudentId == item.Id).ToList();
                        int         educationId       = (int)item.Group.EducationId;
                        Education[] education         = db.Educations.Where(c => c.Id == educationId).ToArray();

                        decimal averageMark = 0;
                        if (tasks.Count != 0)
                        {
                            foreach (var i in tasks)
                            {
                                averageMark += i.Mark;
                            }
                            averageMark = averageMark / tasks.Count;
                        }
                        dataGridView1.Rows.Add(item.Id, item.Name, item.Surname, item.Email, item.Phone, item.Group.Name, item.Fee, averageMark);
                        if (item.Fee < (int)education[0].Price)
                        {
                            dataGridView1.Rows[dataGridView1.Rows.Count - 1].DefaultCellStyle.BackColor = Color.Red;
                        }
                    }
                }
            }
        }
Пример #24
0
        private void FillTeacher()
        {
            dataGridView2.Rows.Clear();
            using (AcademyEntities db = new AcademyEntities())
            {
                List <Models.Teacher> teachers = db.Teachers.ToList();

                foreach (var item in teachers)
                {
                    List <Group> groups        = db.Groups.Where(c => c.TeacherId.ToString().Contains(item.Id.ToString())).ToList();
                    string       teachergroups = "";
                    foreach (var tt in groups)
                    {
                        teachergroups += tt.Name + ",";
                    }

                    string status = item.Status.ToString();
                    if (status == "True")
                    {
                        if (teachergroups.EndsWith(","))
                        {
                            teachergroups = teachergroups.Remove(teachergroups.Length - 1, 1);
                        }
                        dataGridView2.Rows.Add(item.Id, item.Name, item.Surname, item.Email, item.Phone, item.Speciality, teachergroups);
                    }
                }
            }
        }
        private void EditUserDialog_Load(object sender, EventArgs e)
        {
            using (AcademyEntities academyDb = new AcademyEntities())
            {
                var user = academyDb.Users.Find(id);

                LName.Text    = user.LName;
                FName.Text    = user.FName;
                Phone.Text    = user.Phone;
                Login.Text    = user.Login;
                Password.Text = user.Password;

                RolesChoice.Items.AddRange(new string[] { "Admin", "Teacher", "Student" });

                if (user.RoleId == 1)
                {
                    RolesChoice.Items[0] += " - Current";
                }
                if (user.RoleId == 2)
                {
                    RolesChoice.Items[1] += " - Current";
                }
                if (user.RoleId == 3)
                {
                    RolesChoice.Items[2] += "  Current";
                }
            }
        }
Пример #26
0
        private void TeacherBtn_Click(object sender, EventArgs e)
        {
            dataGridView2.Rows.Clear();
            using (AcademyEntities db = new AcademyEntities())
            {
                string searchTeacher          = txtTeacher.Text;
                List <Models.Teacher> teacher = db.Teachers.Where(c =>
                                                                  c.Name.ToLower().Contains(searchTeacher) ||
                                                                  c.Surname.ToLower().Contains(searchTeacher) ||
                                                                  c.Email.ToLower().Contains(searchTeacher) ||
                                                                  c.Phone.ToLower().Contains(searchTeacher)
                                                                  ).ToList();


                foreach (var item in teacher)
                {
                    List <Group> groups        = db.Groups.Where(c => c.TeacherId.ToString().Contains(item.Id.ToString())).ToList();
                    string       teachergroups = "";
                    foreach (var tt in groups)
                    {
                        teachergroups += tt.Name + ",";
                    }

                    string status = item.Status.ToString();
                    if (status == "True")
                    {
                        if (teachergroups.EndsWith(","))
                        {
                            teachergroups = teachergroups.Remove(teachergroups.Length - 1, 1);
                        }
                        dataGridView1.Rows.Add(item.Id, item.Name, item.Surname, item.Email, item.Phone, item.Speciality, teachergroups);
                    }
                }
            }
        }
        private void ShowMarksBtn_Click(object sender, EventArgs e)
        {
            try
            {
                using (var db = new AcademyEntities())
                {
                    var examId  = Convert.ToInt32(ExamsView.CurrentRow.Cells["Id"].Value);
                    var groupId = Convert.ToInt32(GroupsView.CurrentRow.Cells["Id"].Value);

                    var marks = from m in db.Marks
                                where m.ExamId == examId
                                where m.User.GroupId == groupId
                                select new
                    {
                        Id      = m.Id,
                        Student = m.User.FName + " " + m.User.LName,
                        Group   = m.User.Group.Name,
                        Exam    = m.Exam.Name,
                        Mark    = m.Mark1,
                        Pass    = m.Pass
                    };

                    MarksView.DataSource = marks.ToList();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        private void ExamMarks_Load(object sender, EventArgs e)
        {
            using (var db = new AcademyEntities())
            {
                var exams = from ex in db.Exams
                            where ex.Subject.TeacherId == teacher.Id

                            select new
                {
                    Id       = ex.Id,
                    ExamName = ex.Name,
                    ExamDate = ex.Date,
                    Subject  = ex.Subject.Name
                };

                ExamsView.DataSource = exams.ToList();



                //if (db.Groups.Any()) { }
                var groups = from s in db.RSGs
                             where s.Subject.TeacherId == teacher.Id
                             select new
                {
                    Id          = s.GroupId,
                    GroupName   = s.Group.Name,
                    SubjectName = s.Subject.Name
                };

                GroupsView.DataSource = groups.ToList();
            }
        }
        private void Btn_positionfrm_save_Click(object sender, EventArgs e)
        {
            Position pstn    = new Position();
            Regex    rgxName = new Regex("[A-z]");

            //Regex rgxEmployee = new Regex("[A-z]");
            if (!rgxName.IsMatch(pstntxtbxemplote_name.Text))
            {
                MessageBox.Show("Fill in the form");
            }
            //else if (!rgxEmployee.IsMatch(pstntxtbxemplote.Text))
            //{
            //    MessageBox.Show("Not enter Letters");
            //}
            else
            {
                using (AcademyEntities aem = new AcademyEntities())
                {
                    Employee employe = aem.Employees.FirstOrDefault(g => g.Id == selectedId);
                    //pstn.Employees = employe;
                    if (employe != null)
                    {
                        pstn.Employees.Add(employe);
                    }
                    pstn.Name = pstntxtbxemplote_name.Text;
                    //pstn.PositionId =Convert.ToInt32(pstntxtbxemploteId.Text);
                    aem.Positions.Add(pstn);
                    position_datagridview.DataSource = aem.Positions.ToList();
                    aem.SaveChanges();
                }
            }
        }
Пример #30
0
 private void EmployeeFrm_Load(object sender, EventArgs e)
 {
     using (AcademyEntities aem = new AcademyEntities())
     {
         employe_datagridview.DataSource = aem.Employees.ToList();
     }
 }
Пример #31
0
 public EfUserStorage(AcademyEntities academyEntities)
     : base(academyEntities)
 {
 }
Пример #32
0
 public EfDisciplineStorage(AcademyEntities academyEntities)
     : base(academyEntities)
 {
 }
Пример #33
0
 public EfArticleStorage(AcademyEntities academyEntities)
     : base(academyEntities)
 {
 }
Пример #34
0
 public EfCommentStorage(AcademyEntities academyEntities)
     : base(academyEntities)
 {
 }
Пример #35
0
 public EfQuestionStorage(AcademyEntities academyEntities)
     : base(academyEntities)
 {
 }
Пример #36
0
 public EfNoteStorage(AcademyEntities academyEntities)
     : base(academyEntities)
 {
 }