public async static Task <string> InsertStudentAsync(long BaseId, string Name, string LName, string FName, string Gender, byte[] Image) { using (var db = new DataClass.myDbContext()) { var Student = new DataClass.Tables.Student(); Student.BaseId = BaseId; Student.Name = Name; Student.LName = LName; Student.FName = FName; Student.Gender = Gender; Student.Image = Image; db.Students.Add(Student); await db.SaveChangesAsync(); return("Student Added Successfully"); } }
private void addAttendance(long StudentId, bool Exist, string Date) { try { using (var db = new DataClass.myDbContext()) { var Attendance = new DataClass.Tables.Attendance(); Attendance.StudentId = StudentId; Attendance.Exist = Exist; Attendance.Date = Date; db.Attendances.Add(Attendance); db.SaveChanges(); } } catch (Exception) { } }
public async static Task <string> InsertScoreAsync(long StudentId, string Book, string Date, string Scorez, string Desc) { using (var db = new DataClass.myDbContext()) { var Score = new DataClass.Tables.Score(); Score.StudentId = StudentId; Score.Book = Book; Score.Date = Date; Score.Scores = Scorez; Score.Desc = Desc; db.Scores.Add(Score); await db.SaveChangesAsync(); return("Score Added Successfully"); } }
private void getSchool() { try { using (var db = new DataClass.myDbContext()) { var query = db.Schools.Select(x => x); if (query.Any()) { cmbBase.ItemsSource = query.ToList(); cmbEditBase.ItemsSource = query.ToList(); } } } catch (Exception) { } }
private void cmbAzmon_SelectionChanged(object sender, SelectionChangedEventArgs e) { gpChart.Visibility = Visibility.Visible; double[] values = new double[] { }; try { dynamic getGroupName = cmbGroups.SelectedItem; string gpName = getGroupName.GroupName; dynamic getDateText = cmbAzmon.SelectedItem; string dPass = getDateText.DatePass; using (var db = new DataClass.myDbContext()) { dynamic selectedItem = dataGrid.SelectedItems[0]; long uId = selectedItem.Id; var data = db.AHistories.Where(x => x.UserId == uId && x.DatePass == dPass && x.GroupName.Equals(gpName)).Select(x => x).OrderByDescending(x => x.DatePass).ToList(); values = new double[] { data.FirstOrDefault().TrueItem, data.FirstOrDefault().FalseItem, data.FirstOrDefault().NoneItem }; list.Add(new DataClass.DataTransferObjects.myChartTemplate { Caption = "پاسخ صحیح", Scores = data.FirstOrDefault().TrueItem }); list.Add(new DataClass.DataTransferObjects.myChartTemplate { Caption = "پاسخ غلط", Scores = data.FirstOrDefault().FalseItem }); list.Add(new DataClass.DataTransferObjects.myChartTemplate { Caption = "بدون پاسخ", Scores = data.FirstOrDefault().NoneItem }); Mapper = Mappers.Xy <DataClass.DataTransferObjects.myChartTemplate>() .X((myData, index) => index) .Y(myData => myData.Scores); //lets take the first 15 records by default; var records = list.OrderBy(x => x.Scores).ToArray(); Results = records.AsChartValues(); Labels = new ObservableCollection <string>(records.Select(x => x.Caption)); DataContext = this; } } catch (Exception) { } }
private void addAQuestions(long GroupId, string Class, string QuestionText, string Case1, string Case2, string Case3, string Case4, int Answer, string Date) { using (var db = new DataClass.myDbContext()) { var aQuestion = new DataClass.Tables.AQuestion(); aQuestion.GroupId = GroupId; aQuestion.Class = Class; aQuestion.QuestionText = QuestionText; aQuestion.Case1 = Case1; aQuestion.Case2 = Case2; aQuestion.Case3 = Case3; aQuestion.Case4 = Case4; aQuestion.Answer = Answer; aQuestion.Date = Date; db.AQuestions.Add(aQuestion); db.SaveChanges(); } }
private void deleteSchool(long id) { using (var db = new DataClass.myDbContext()) { var checkQuery = db.Students.Where(x => x.BaseId == id).Any(); if (checkQuery) { MainWindow.main.ShowDeleteExistNotification("مدرسه", "دانش آموزان"); } else { var DeleteSchool = db.Schools.Find(id); db.Schools.Remove(DeleteSchool); db.SaveChanges(); MainWindow.main.getexHint(); MainWindow.main.ShowDeletedNotification(true, txtSchool.Text, "مدرسه"); } } }
private void UserControl_Loaded(object sender, RoutedEventArgs e) { try { using (var db = new DataClass.myDbContext()) { var qschool = db.Schools.ToList(); cmbEditBase.ItemsSource = qschool.Any() ? qschool : null; var qGroupName = db.Groups.ToList(); cmbGroups.ItemsSource = qGroupName.Any() ? qGroupName : null; } } catch (Exception) { } cmbEditBase.SelectedIndex = Convert.ToInt32(FindElement.Settings.DefaultSchool); }
public async static Task <string> UpdateStudentAsync(long id, long BaseId, string Name, string LName, string FName, string Gender, byte[] Image) { using (var db = new DataClass.myDbContext()) { var EditStudent = await db.Students.FindAsync(id); EditStudent.Name = Name; EditStudent.LName = LName; EditStudent.FName = FName; EditStudent.Gender = Gender; EditStudent.BaseId = BaseId; EditStudent.Image = Image; await db.SaveChangesAsync(); return("Student Updated Successfully"); } }
public void getTopStudent(long BaseId) { using (var db = new DataClass.myDbContext()) { var query = db.Scores.Join( db.Students, c => c.StudentId, v => v.Id, (c, v) => new DataClass.DataTransferObjects.StudentsScoresDto { Id = c.Id, BaseId = v.BaseId, StudentId = v.Id, Name = v.Name, LName = v.LName, FName = v.FName, Scores = c.Scores } ).OrderBy(x => x.Scores).Where(x => x.BaseId == BaseId).ToList(); var res = query.GroupBy(x => new { x.StudentId }) .Select(x => new { x.Key.StudentId, Name = x.FirstOrDefault().Name, LName = x.FirstOrDefault().LName, FName = x.FirstOrDefault().FName, Sum = x.Sum(y => AppVariable.EnumToNumber(y.Scores)) }).OrderByDescending(x => x.Sum).Take(6).ToArray(); foreach (var item in res) { ProgressBar progressBar = new ProgressBar() { FlowDirection = FlowDirection.LeftToRight, Value = item.Sum }; TextBlock textBlock = new TextBlock() { Opacity = .4, Margin = new Thickness(0, 5, 0, 0), FontSize = 15, Text = item.Name + " " + item.LName }; stkDash.Children.Add(textBlock); stkDash.Children.Add(progressBar); } } }
public static async Task <string> DeleteGroupAsync(long id) { using (var db = new DataClass.myDbContext()) { var DeleteQuestion = await db.AQuestions.FindAsync(id); if (!db.AQuestions.Any()) { db.AQuestions.Remove(DeleteQuestion); } var DeleteGroup = await db.Groups.FindAsync(id); db.Groups.Remove(DeleteGroup); await db.SaveChangesAsync(); return("Group Deleted Successfully"); } }
//Todo:if new table created this func must be update private void deleteStudent(long id) { using (var db = new DataClass.myDbContext()) { var checkQuery = db.Scores.Where(x => x.StudentId == id).Any(); var checkQuery2 = db.Attendances.Where(x => x.StudentId == id).Any(); if (checkQuery || checkQuery2) { MainWindow.main.ShowDeleteExistNotification("دانش آموز", "فعالیت ها، نمره ها و لیست حضور غیاب"); } else { var query = DeleteStudentAsync(id); query.Wait(); MainWindow.main.getexHint(); MainWindow.main.ShowDeletedNotification(true, txtName.Text, "دانش آموز"); } } }
private void getStudentScore(long StudentId) { try { using (var db = new DataClass.myDbContext()) { var query = db.Scores.Where(x => x.StudentId == StudentId).ToList(); if (query.Any()) { _initialCollection = query; } else { _initialCollection = null; } } } catch (NullReferenceException) { } }
private void getGroup() { try { using (var db = new DataClass.myDbContext()) { var query = db.Groups.Select(x => x); if (query.Any()) { cmbGroup.ItemsSource = query.ToList(); } else { cmbGroup.ItemsSource = null; MainWindow.main.showGrowlNotification(NotificationKEY: AppVariable.No_Data_KEY, param: "Group"); } } } catch (Exception) { } }
private void getGroup() { try { using (var db = new DataClass.myDbContext()) { var query = db.Groups.Select(x => x); if (query.Any()) { cmbGroup.ItemsSource = query.ToList(); } else { cmbGroup.ItemsSource = null; MainWindow.main.ShowNoDataNotification("Group"); } } } catch (Exception) { } }
private void getStudent(long BaseId) { try { using (var db = new DataClass.myDbContext()) { var query = db.Students.OrderBy(x => x.LName).Where(x => x.BaseId == BaseId).Select(x => new DataClass.DataTransferObjects.StudentsDto { Name = x.Name, LName = x.LName, FName = x.FName, BaseId = x.BaseId, Id = x.Id }); if (query.Any()) { dataGrid.ItemsSource = query.ToList(); } else { MainWindow.main.ShowNoDataNotification(null); } } } catch (Exception) { } }
private void getSchool() { try { using (var db = new DataClass.myDbContext()) { var query = db.Schools.Select(x => x); _initialCollection = query.ToList(); if (query.Any()) { dataGrid.ItemsSource = query.ToList(); } else { dataGrid.ItemsSource = null; MainWindow.main.ShowNoDataNotification("School"); } } } catch (Exception) { } }
private void getStudent(long BaseId) { try { using (var db = new DataClass.myDbContext()) { var query = db.Students.OrderBy(x => x.LName).Where(x => x.BaseId == BaseId).Select(x => new DataClass.DataTransferObjects.StudentsDto { Name = x.Name, LName = x.LName, FName = x.FName, BaseId = x.BaseId, Id = x.Id }); if (query.Any()) { dataGrid.ItemsSource = query.OrderBy(x => x.LName).ToList(); } else { MainWindow.main.showGrowlNotification(NotificationKEY: AppVariable.No_Data_KEY, param: string.Empty); } } } catch (Exception) { } }
private void getScores(long StudentId) { try { using (var db = new DataClass.myDbContext()) { var query = db.Scores.Where(x => x.StudentId == StudentId).Select(x => x).OrderByDescending(x => new { x.Date, x.Book }).ThenBy(x => x.Scores); _initialCollectionScore = query.ToList(); if (query.Any()) { dataGridEdit.ItemsSource = query.ToList(); } else { dataGridEdit.ItemsSource = null; MainWindow.main.showGrowlNotification(NotificationKEY: AppVariable.No_Data_KEY, param: "Score"); } } } catch (Exception) { } }
private void getUser() { try { using (var db = new DataClass.myDbContext()) { var query = db.Users.ToList(); _initialCollection = query; if (query.Any()) { dataGrid.ItemsSource = query; } else { dataGrid.ItemsSource = null; MainWindow.main.showGrowlNotification(NotificationKEY: AppVariable.No_Data_KEY, param: "User"); } } } catch (Exception) { } }
private void getScores(long StudentId) { try { using (var db = new DataClass.myDbContext()) { var query = db.Scores.Where(x => x.StudentId == StudentId).Select(x => x).OrderByDescending(x => new { x.Date, x.Book }).ThenBy(x => x.Scores); _initialCollectionScore = query.ToList(); if (query.Any()) { dataGridEdit.ItemsSource = query.ToList(); } else { stEdit.IsEnabled = false; dataGridEdit.ItemsSource = null; MainWindow.main.ShowNoDataNotification("Score"); } } } catch (Exception) { } }
private void UserControl_Loaded(object sender, System.Windows.RoutedEventArgs e) { if (!runFirst) { getSchool(); cmbEditBase.SelectedIndex = Convert.ToInt32(FindElement.Settings.DefaultSchool); runFirst = true; } using (var db = new DataClass.myDbContext()) { long baseId = Convert.ToInt64(cmbEditBase.SelectedValue); var query = db.Scores.Join( db.Students, c => c.StudentId, v => v.Id, (c, v) => new DataClass.DataTransferObjects.StudentsScoresDto { Id = c.Id, BaseId = v.BaseId, StudentId = v.Id, Name = v.Name, LName = v.LName, FName = v.FName, Scores = c.Scores } ).Where(y => y.BaseId == baseId).ToList(); var x = query.Where(y => y.Scores == "نیاز به تلاش بیشتر").ToList(); var xx = query.Where(y => y.Scores == "قابل قبول").ToList(); var xxx = query.Where(y => y.Scores == "خوب").ToList(); var xxxx = query.Where(y => y.Scores == "خیلی خوب").ToList(); AchievementChart.Series.Add(new LineSeries { Values = new ChartValues <double>(new double[] { xxxx.Count, xxx.Count, xx.Count, x.Count }), StrokeDashArray = new System.Windows.Media.DoubleCollection(20) }); AchievementChart.AxisX.Add(new Axis { Labels = new string[] { "خیلی خوب", "خوب", "قابل قبول", "نیاز به تلاش بیشتر" }, Separator = new LiveCharts.Wpf.Separator { } }); } }
private void btnStart_Click(object sender, RoutedEventArgs e) { if (txtTedad.Value == 0 || cmbGroup.SelectedIndex == -1 || cmbEditStudent.SelectedIndex == -1) { MainWindow.main.showGrowlNotification(NotificationKEY: AppVariable.Fill_All_Data_KEY); return; } else { using (var db = new DataClass.myDbContext()) { var id = Convert.ToInt64(cmbGroup.SelectedValue); var classText = uClass; if (isGuid) { result = db.AQuestions.Where(x => x.GroupId == id && x.Class == classText).OrderBy(x => Guid.NewGuid()).Take(Convert.ToInt32(txtTedad.Value)).ToList(); } else { result = db.AQuestions.Where(x => x.GroupId == id && x.Class == classText).Take(Convert.ToInt32(txtTedad.Value)).ToList(); } if (result.Count < Convert.ToInt32(txtTedad.Value)) { MainWindow.main.showGrowlNotification(NotificationKEY: AppVariable.Azmon_KEY); } else { QN = 0; lblQNumber.Content = Convert.ToString(QN + 1); lblQtext.Content = result[QN].QuestionText; txtFirst.Text = result[QN].Case1; txtSec.Text = result[QN].Case2; txtThird.Text = result[QN].Case3; txtForth.Text = result[QN].Case4; btnNext.IsEnabled = true; btnPrev.IsEnabled = false; btnStart.IsEnabled = false; swLimit.IsEnabled = false; txtTedad.IsEnabled = false; cmbGroup.IsEnabled = false; cmbEditBase.IsEnabled = false; swRandom.IsEnabled = false; gpAzmon.IsEnabled = true; ClearCheck(); answerlist = new ListBox(); for (int i = 0; i < result.Count; i++) { answerlist.Items.Add("0"); } gpControl.Visibility = Visibility.Visible; if (swLimit.IsChecked == true) { lblTime.Content = Convert.ToString(Convert.ToInt32(txtTime.Value) * (Convert.ToInt32(txtTedad.Value))); dispatcherTimer.Start(); } else { lblTime.Content = "نامحدود"; } } } } }
private async void InitialDataAsync() { var b = await Task.Run(async() => { using (var db = new DataClass.myDbContext()) { var SchoolQuery = db.Schools.ToList(); await Dispatcher.InvokeAsync(() => { if (SchoolQuery.Any()) { cmbEditBase.ItemsSource = SchoolQuery; } txtScCount.Text = db.Schools.Count().ToString(); txtUCount.Text = db.Users.Count().ToString(); txtStCount.Text = db.Students.Count().ToString(); cmbEditBase.SelectedIndex = Convert.ToInt32(FindElement.Settings.DefaultSchool); getTopStudent(Convert.ToInt64(cmbEditBase.SelectedValue)); try { long baseId = Convert.ToInt64(cmbEditBase.SelectedValue); var query = db.Scores.Join( db.Students, c => c.StudentId, v => v.Id, (c, v) => new DataClass.DataTransferObjects.StudentsScoresDto { Id = c.Id, BaseId = v.BaseId, StudentId = v.Id, Name = v.Name, LName = v.LName, FName = v.FName, Scores = c.Scores } ).Where(y => y.BaseId == baseId).ToList(); var niazBeTalash = query.Where(y => y.Scores == "نیاز به تلاش بیشتر").Count(); var ghabelGhabol = query.Where(y => y.Scores == "قابل قبول").Count(); var khob = query.Where(y => y.Scores == "خوب").Count(); var kheyliKhob = query.Where(y => y.Scores == "خیلی خوب").Count(); list.Add(new DataClass.DataTransferObjects.myChartTemplate { Caption = "نیاز به تلاش", Scores = niazBeTalash * 100 / query.Count }); list.Add(new DataClass.DataTransferObjects.myChartTemplate { Caption = "قابل قبول", Scores = ghabelGhabol * 100 / query.Count }); list.Add(new DataClass.DataTransferObjects.myChartTemplate { Caption = "خوب", Scores = khob * 100 / query.Count }); list.Add(new DataClass.DataTransferObjects.myChartTemplate { Caption = "خیلی خوب", Scores = kheyliKhob * 100 / query.Count }); Mapper = Mappers.Xy <DataClass.DataTransferObjects.myChartTemplate>() .X((myData, index) => index) .Y(myData => myData.Scores); var records = list.OrderBy(x => x.Scores).ToArray(); Results = records.AsChartValues(); Labels = new ObservableCollection <string>(records.Select(x => x.Caption)); Formatter = val => string.Format("{0}%", val); DataContext = this; Loading.Visibility = Visibility.Collapsed; Chart.Visibility = Visibility.Visible; } catch (DivideByZeroException) { } catch (Exception) { } }); return(await db.Users.FirstOrDefaultAsync()); } }); }
private void btnStart_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrWhiteSpace(txtTedad.Text) || txtTedad.Text == "0" || txtTedad.Text == "تعداد سوالات" || cmbGroup.SelectedIndex == -1 || cmbEditStudent.SelectedIndex == -1) { MainWindow.main.ShowFillAllDataNotification(); return; } else { using (var db = new DataClass.myDbContext()) { var id = Convert.ToInt64(cmbGroup.SelectedValue); var classText = uClass; if (isGuid) { result = db.AQuestions.Where(x => x.GroupId == id && x.Class == classText).OrderBy(x => Guid.NewGuid()).Take(Convert.ToInt32(txtTedad.Text)).ToList(); } else { result = db.AQuestions.Where(x => x.GroupId == id && x.Class == classText).Take(Convert.ToInt32(txtTedad.Text)).ToList(); } if (result.Count < Convert.ToInt32(txtTedad.Text)) { MainWindow.main.ShowAzmonNotification(); } else { QN = 0; lblQNumber.Text = Convert.ToString(QN + 1); lblQtext.Text = result[QN].QuestionText; swCase1.Content = result[QN].Case1; swCase2.Content = result[QN].Case2; swCase3.Content = result[QN].Case3; swCase4.Content = result[QN].Case4; btnNext.IsEnabled = true; btnPrev.IsEnabled = false; btnStart.IsEnabled = false; swLimit.IsEnabled = false; txtTedad.IsEnabled = false; cmbGroup.IsEnabled = false; cmbEditBase.IsEnabled = false; swRandom.IsEnabled = false; gpAzmon.IsEnabled = true; ClearCheck(); answerlist = new ListBox(); for (int i = 0; i < result.Count; i++) { answerlist.Items.Add("0"); } gpControl.Visibility = Visibility.Visible; if (swLimit.IsChecked == true) { lblTime.Text = Convert.ToString(Convert.ToInt32(txtTime.Text) * (Convert.ToInt32(txtTedad.Text))); dispatcherTimer.Start(); } else { lblTime.Text = "نامحدود"; } } } } }
private void cmbAzmon_SelectionChanged(object sender, SelectionChangedEventArgs e) { gpChart.Visibility = Visibility.Visible; double[] values = new double[] { }; try { dynamic getGroupName = cmbGroups.SelectedItem; string gpName = getGroupName.GroupName; dynamic getDateText = cmbAzmon.SelectedItem; string dPass = getDateText.DatePass; using (var db = new DataClass.myDbContext()) { dynamic selectedItem = dataGrid.SelectedItems[0]; long uId = selectedItem.Id; var data = db.AHistories.Where(x => x.UserId == uId && x.DatePass == dPass && x.GroupName.Equals(gpName)).Select(x => x).OrderByDescending(x => x.DatePass).ToList(); values = new double[] { data.FirstOrDefault().TrueItem, data.FirstOrDefault().FalseItem, data.FirstOrDefault().NoneItem }; Series series = new ColumnSeries(); switch (FindElement.Settings.ChartType ?? 0) { case 0: series = new ColumnSeries { }; break; case 1: series = new StackedColumnSeries { }; break; case 2: series = new LineSeries { }; break; case 3: series = new StepLineSeries { }; break; case 4: series = new StackedAreaSeries { }; break; } if (series.GetType() == typeof(ColumnSeries)) { AchievementChart.Series.Add(new ColumnSeries { Values = new ChartValues <double>(values), StrokeDashArray = new System.Windows.Media.DoubleCollection(20) }); } else if (series.GetType() == typeof(LineSeries)) { AchievementChart.Series.Add(new LineSeries { Values = new ChartValues <double>(values), StrokeDashArray = new System.Windows.Media.DoubleCollection(20) }); } else if (series.GetType() == typeof(StackedAreaSeries)) { AchievementChart.Series.Add(new StackedAreaSeries { Values = new ChartValues <double>(values), StrokeDashArray = new System.Windows.Media.DoubleCollection(20) }); } else if (series.GetType() == typeof(StackedColumnSeries)) { AchievementChart.Series.Add(new StackedColumnSeries { Values = new ChartValues <double>(values), StrokeDashArray = new System.Windows.Media.DoubleCollection(20) }); } else if (series.GetType() == typeof(StepLineSeries)) { AchievementChart.Series.Add(new StepLineSeries { Values = new ChartValues <double>(values), StrokeDashArray = new System.Windows.Media.DoubleCollection(20) }); } AchievementChart.AxisX.Add(new Axis { Labels = new string[] { "پاسخ صحیح", "پاسخ غلط", "بدون پاسخ" }, Separator = new LiveCharts.Wpf.Separator { } }); txtName.Text = dPass; txtBook.Text = gpName; } } catch (Exception) { } }