public void EditVolunteerTest() { #region init IdentityHelper ihelper = IdentityHelper.GetInstance(); string userName = "******"; AppUser user = new AppUser { AccountName = userName, Name = "James", Mobile = "1888888888", Email = "*****@*****.**" }; string password = "******"; AppUser dbUser = database.Users.SingleOrDefault(u => u.AccountName == userName); if (dbUser != null) { database.Users.Remove(dbUser); database.SaveChanges(); } IdentityResult result1 = ihelper.CreateUser(user, password, AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队); testclaims = ihelper.CreateClaims(userName, password, userName); helper = VolunteerHelper.GetInstance(testclaims); #endregion #region 新建一个志愿者对象 Volunteer v = new Volunteer { StudentNum = 0401, Name = "EditTestName", Class = "TestClass", Email = "*****@*****.**", Room = "testroom" }; helper.AddVolunteer(v); #endregion #region 第一次修改 v.Name = "ModifiedEditTestName"; var tempvolunteer = helper.FindVolunteer(v.StudentNum); helper.EditVolunteer(tempvolunteer, v);//需要重建一个volunteer实体,因为实体v在加入数据库之后会自动更新链接到数据库中的条目。 tempvolunteer = helper.FindVolunteer(v.StudentNum); if (!Volunteer.AreSame(v, tempvolunteer)) { Assert.Fail("修改志愿者信息失败"); } #endregion #region 第二次修改 v.Name = "EditByParamTestName"; tempvolunteer = helper.FindVolunteer(v.StudentNum); helper.EditVolunteer(tempvolunteer, v.StudentNum, v.Name); tempvolunteer = helper.FindVolunteer(v.StudentNum); if (!Volunteer.AreSame(v, tempvolunteer)) { Assert.Fail("第二次修改志愿者信息失败"); } #endregion var result3 = helper.FindVolunteer(v.StudentNum); database.Volunteers.Remove(result3);//Remove }
public void FindVolunteerTest() { #region 新建一个志愿者对象 Volunteer v = new Volunteer { StudentNum = 0301, Name = "DeleteTest", Class = "TestClass", Email = "*****@*****.**", Room = "testroom", Mobile = "18888888888" }; helper.AddVolunteer(v); #endregion #region 用两种方式查找同一个志愿者 var result1 = helper.FindVolunteer(v.StudentNum); var result2 = helper.FindVolunteer(v.Name); if (!Volunteer.AreSame(v, result1)) { Assert.Fail("通过id查找志愿者失败"); } bool flag = false; foreach (Volunteer o in result2) { if (Volunteer.AreSame(o, v)) { flag = true; break; } flag = false; } if (!flag) { Assert.Fail("通过Name查找志愿者失败"); } #endregion var result3 = helper.FindVolunteer(v.StudentNum); database.Volunteers.Remove(result3);//Remove }
private void Confirm_Click(object sender, RoutedEventArgs e) { //<Volunteer> finalList = csvGrid.SelectedItems as List<Volunteer>; List <string> errors = new List <string>(); List <csvItemViewModel> succeededList = new List <csvItemViewModel>(); foreach (csvItemViewModel v in csvList) { if (v.Selected) { if (vhelper.FindVolunteer(v.StudentNum) == null) { var addResult = vhelper.AddVolunteer(v.Volunteer); if (!addResult.Succeeded) { errors.Add(addResult.ErrorString); } else { var addToProjectResult = pphelper.SingleVolunteerInputById(v.StudentNum, project); if (!addToProjectResult.Succeeded) { errors.Add(string.Join(",", addToProjectResult.Errors) + "没有成功添加入项目"); } else { succeededList.Add(v); } } } else { var addToProjectResult = pphelper.SingleVolunteerInputById(v.StudentNum, project); if (!addToProjectResult.Succeeded) { errors.Add(string.Join(",", addToProjectResult.Errors) + "没有成功添加入项目"); } else { succeededList.Add(v); } } } } string errorstring = string.Join("\n", errors); if (errorstring != "") { MessageBox.Show(errorstring); } foreach (csvItemViewModel vm in succeededList) { csvList.Remove(vm); } if (csvList.Count != 0) { MessageBox.Show("最终,共往项目中添加:" + succeededList.Count + "位志愿者.\n现在显示的是没有选择的志愿者跟添加失败的志愿者.\n若不需要添加,请关闭该窗口.", "添加成功", MessageBoxButton.OK); ShowCddGrid(); } else { MessageBox.Show("最终,共往项目中添加: " + succeededList.Count + "位志愿者.\n所有列表中的志愿者已经添加完毕."); fatherWindow.Close(); } }
public DealWithConflict(Project p, List <Volunteer> fulllist, InputWindow window)//list为完整list { InitializeComponent(); project = p; fatherWindow = window; fullList = fulllist; database = DatabaseContext.GetInstance(); itemList = new List <csvItemViewModel>(); foreach (Volunteer item in fullList) { if (database.Volunteers.Where(v => v.StudentNum == item.StudentNum).ToList().Count() != 0) { conflictList.Add(item); } else { if (vhelper.FindVolunteer(item.StudentNum) == null) { normalList.Add(item); } else { normalList.Add(vhelper.FindVolunteer(item.StudentNum)); } } } if (conflictList.Count() == 0) { List <csvItemViewModel> finalList = new List <csvItemViewModel>(); foreach (Volunteer v in normalList) { finalList.Add(new csvItemViewModel(v)); } MessageBox.Show("导入信息成功!", "", MessageBoxButton.OK); Csvviewer viewer = new Csvviewer(project, finalList, fatherWindow); fatherWindow.Content = viewer; //this.Visibility=Visibility.Collapsed; } else { foreach (Volunteer v in conflictList) { Volunteer old = vhelper.FindVolunteer(v.StudentNum); csvItemViewModel vmNew = new csvItemViewModel(v); csvItemViewModel vmOld = new csvItemViewModel(old); vmOld.IsOld = true; vmNew.IsOld = false; vmNew.Pair = vmOld; vmOld.Pair = vmNew; itemList.Add(vmNew); itemList.Add(vmOld); } /* List<Volunteer> theOldAndNew = new List<Volunteer>(); * Volunteer theOld; * foreach (Volunteer theNew in conflictList) * { * theOldAndNew.Add(theNew); * theOld = vhelper.FindVolunteer(theNew.StudentNum); * theOldAndNew.Add(theOld); * } * isOld = false; * conflictList = theOldAndNew; * csvGrid.ItemsSource = conflictList;*/ ShowCnfGrid(); } }