private ClassDisplayModel BuildModel(classes classEntity) { if (classEntity == null) { return(null); } else { ClassDisplayModel classmodel = new ClassDisplayModel(); classmodel.Id = classEntity.class_id; classmodel.Name = classEntity.class_name; classmodel.LastCount = classEntity.last_count; classmodel.TypeId = classEntity.class_type; classmodel.TypeName = classEntity.parentClassTypes.name; if (classEntity.start_date.HasValue) { classmodel.StartDate = classEntity.start_date.Value.ToString("yyyy-MM-dd"); } else { classmodel.StartDate = "1900-01-01"; } if (classEntity.end_date.HasValue) { classmodel.EndDate = classEntity.end_date.Value.ToString("yyyy-MM-dd"); } else { classmodel.EndDate = "1900-01-01"; } classmodel.IsActive = classEntity.is_active; return(classmodel); } }
private IList <ClassTypeModel> BuildModelList(List <class_types> classTypes, bool withClasses = false) { if (classTypes == null) { return(null); } else { IList <ClassTypeModel> moduledisplays = new List <ClassTypeModel>(); foreach (class_types classtypes in classTypes) { ClassTypeModel moduledisplay = BuildModel(classtypes); if (withClasses) { moduledisplay.classDisplayModels = new List <ClassDisplayModel>(); foreach (classes cs in classtypes.subclasses) { if (cs.is_active) { ClassDisplayModel cdm = new ClassDisplayModel(); cdm.Id = cs.class_id; cdm.Name = cs.class_name; cdm.LastCount = cs.last_count; moduledisplay.classDisplayModels.Add(cdm); } } } moduledisplays.Add(moduledisplay); } return(moduledisplays); } }
private async void gvStudent_Filtered(object sender, Telerik.Windows.Controls.GridView.GridViewFilteredEventArgs e) { ClassDisplayModel cdm = this.ClassTypeTree.SelectedItem as ClassDisplayModel; if (cdm != null) { await bindStudentListByClass(cdm.Id); } }
//private async void ckShowAllStudents_Checked(object sender, RoutedEventArgs e) //{ // if (ckShowAllStudents.IsChecked == true) // { // this.gvStudent.ItemsSource = null; // this.gvStudent.Items.Clear(); // await bindStudentList(); // } // else // { // this.gvStudent.ItemsSource = null; // this.gvStudent.Items.Clear(); // } //} private async void ClassTypeTree_SelectionChanged(object sender, SelectionChangedEventArgs e) { ClassDisplayModel cdm = this.ClassTypeTree.SelectedItem as ClassDisplayModel; if (cdm != null) { await bindStudentListByClass(cdm.Id); } }
private async void btnUpdateMenu_Click(object sender, RoutedEventArgs e) { ClassDisplayModel cdm = this.ClassTypeTree.SelectedItem as ClassDisplayModel; List <int> studentIds = new List <int>(); foreach (var item in this.gvStudent.SelectedItems) { studentIds.Add((item as StudentDisplayModel).Id); } IAsyncProxy <IClassesService> _classAyncProxy = await Task.Run(() => ServiceHelper.GetClassService()); //await _classAyncProxy.CallAsync(c => c.UpdateClassStudents(cdm.Id,studentIds)); classStudentIds = classStudentIds.Distinct().ToList(); await _classAyncProxy.CallAsync(c => c.UpdateClassStudents(cdm.Id, classStudentIds)); }
private async void UpdateClass_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { ClassDisplayModel selectClass = this.gvClasses.SelectedItem as ClassDisplayModel; if (selectClass != null) { string strErrorMsg = string.Empty; try { EditClassWindow newClassWindow = new EditClassWindow(); newClassWindow.ClassId = selectClass.Id; newClassWindow.Om = OperationMode.EditMode; if (newClassWindow.ShowDialog() == true) { await bindClassList(); } } catch (TimeoutException timeProblem) { strErrorMsg = timeProblem.Message + UIResources.TimeOut + timeProblem.Message; } catch (FaultException <LCFault> af) { strErrorMsg = af.Detail.Message; } catch (FaultException unknownFault) { strErrorMsg = UIResources.UnKnowFault + unknownFault.Message; } catch (CommunicationException commProblem) { strErrorMsg = UIResources.ConProblem + commProblem.Message + commProblem.StackTrace; } catch (Exception ex) { strErrorMsg = ex.Message; } if (strErrorMsg != string.Empty) { await DialogManager.ShowMessageAsync(this.GetMainWindow(), UIResources.MsgError, "更新班级失败!原因:" + strErrorMsg, MessageDialogStyle.Affirmative, null); } } }
private async void DeleteClass_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (gvClasses.SelectedItem == null) { await DialogManager.ShowMessageAsync(this.GetMainWindow(), UIResources.MsgInfo, "请选择需要删除的班级!", MessageDialogStyle.Affirmative, null); return; } MessageDialogResult delResult = await DialogManager.ShowMessageAsync(this.GetMainWindow(), UIResources.MsgInfo, "确定删除该班级吗?", MessageDialogStyle.AffirmativeAndNegative, null); if (delResult == MessageDialogResult.Affirmative) { ClassDisplayModel selectClass = this.gvClasses.SelectedItem as ClassDisplayModel; if (selectClass != null) { string strErrorMsg = string.Empty; try { IAsyncProxy <IClassesService> classAyncProxy = await Task.Run(() => ServiceHelper.GetClassService()); if (selectClass.Id != 0) { //删除已经存在于数据库的数据,对于没有存于数据库的,则事件处理完成时都会刷新列表,故不用处理 bool blIsSuccess = await classAyncProxy.CallAsync(c => c.DeleteById(selectClass.Id)); if (blIsSuccess == true) { await DialogManager.ShowMessageAsync(this.GetMainWindow(), UIResources.MsgInfo, "删除班级成功!", MessageDialogStyle.Affirmative, null); } } await bindClassList(); } catch (TimeoutException timeProblem) { strErrorMsg = timeProblem.Message + UIResources.TimeOut + timeProblem.Message; } catch (FaultException <LCFault> af) { strErrorMsg = af.Detail.Message; } catch (FaultException unknownFault) { strErrorMsg = UIResources.UnKnowFault + unknownFault.Message; } catch (CommunicationException commProblem) { strErrorMsg = UIResources.ConProblem + commProblem.Message + commProblem.StackTrace; } catch (Exception ex) { strErrorMsg = ex.Message; } if (strErrorMsg != string.Empty) { await DialogManager.ShowMessageAsync(this.GetMainWindow(), UIResources.MsgError, "删除班级失败!原因:" + strErrorMsg, MessageDialogStyle.Affirmative, null); } } } }