public static object GetCurrentSelectedCrowdInCrowdCollection(Object tv, out ICrowdMemberModel crowdMember) { CrowdModel containingCrowdModel = null; crowdMember = null; TreeView treeView = tv as TreeView; if (treeView != null && treeView.SelectedItem != null) { if (treeView.SelectedItem is CrowdModel) { containingCrowdModel = treeView.SelectedItem as CrowdModel; } else { DependencyObject dObject = treeView.GetItemFromSelectedObject(treeView.SelectedItem); TreeViewItem tvi = dObject as TreeViewItem; // got the selected treeviewitem crowdMember = tvi.DataContext as ICrowdMemberModel; dObject = VisualTreeHelper.GetParent(tvi); // got the immediate parent tvi = dObject as TreeViewItem; // now get first treeview item parent while (tvi == null) { dObject = VisualTreeHelper.GetParent(dObject); tvi = dObject as TreeViewItem; } containingCrowdModel = tvi.DataContext as CrowdModel; } } return(containingCrowdModel); }
protected void InitializeDefaultList(bool nestCrowd = false) { CrowdModel crowdAllChars = new CrowdModel { Name = "All Characters", Order = -1 }; CrowdModel crowd1 = new CrowdModel { Name = "Gotham City" }; CrowdMemberModel crowdMember1 = new CrowdMemberModel { Name = "Batman" }; crowd1.SavedPositions = new Dictionary <string, IMemoryElementPosition>(); CrowdModel childCrowd = new CrowdModel { Name = "The Narrows" }; CrowdMemberModel crowdMember2 = new CrowdMemberModel { Name = "Scarecrow" }; crowd1.Add(crowdMember1); crowd1.Add(childCrowd); childCrowd.Add(crowdMember2); CrowdMemberModel crowdMember4 = new CrowdMemberModel() { Name = "Robin" }; crowd1.Add(crowdMember4); CrowdModel crowd2 = new CrowdModel { Name = "League of Shadows" }; CrowdMemberModel crowdMember3 = new CrowdMemberModel { Name = "Ra'as Al Ghul" }; crowd2.Add(crowdMember3); if (nestCrowd) { crowd2.Add(childCrowd); } crowdAllChars.Add(new List <ICrowdMemberModel>() { crowdMember1, crowdMember2, crowdMember3, crowdMember4 }); this.crowdModelList = new List <CrowdModel> { crowdAllChars, crowd1, crowd2, childCrowd }; }
protected List <ICrowdMemberModel> GetFlattenedMemberList(List <ICrowdMemberModel> list) { List <ICrowdMemberModel> _list = new List <ICrowdMemberModel>(); foreach (ICrowdMemberModel cm in list) { if (cm is CrowdModel) { CrowdModel crm = (cm as CrowdModel); if (crm.CrowdMemberCollection != null && crm.CrowdMemberCollection.Count > 0) { _list.AddRange(GetFlattenedMemberList(crm.CrowdMemberCollection.ToList())); } } _list.Add(cm); } return(_list); }
protected void CountNumberOfCrowdMembersByName(List <ICrowdMemberModel> collection, string name) { foreach (ICrowdMember bcm in collection) { if (bcm.Name == name) { numberOfItemsFound++; } if (bcm is CrowdModel) { CrowdModel cm = bcm as CrowdModel; if (cm.CrowdMemberCollection != null && cm.CrowdMemberCollection.Count > 0) { CountNumberOfCrowdMembersByName(cm.CrowdMemberCollection.ToList(), name); } } } }
private bool CanPlace(object state) { bool canPlace = false; if (this.EditedCharacter != null) { var crowdMemberModel = EditedCharacter as CrowdMemberModel; if (crowdMemberModel != null && crowdMemberModel.RosterCrowd.Name == Constants.ALL_CHARACTER_CROWD_NAME && crowdMemberModel.SavedPosition != null) { canPlace = true; } else if (crowdMemberModel != null && crowdMemberModel.RosterCrowd.Name != Constants.ALL_CHARACTER_CROWD_NAME) { CrowdModel rosterCrowdModel = crowdMemberModel.RosterCrowd as CrowdModel; if (rosterCrowdModel.SavedPositions.ContainsKey(crowdMemberModel.Name)) { canPlace = true; } } } return(canPlace); }
public HttpResponseMessage AddCrowdInfo([FromBody] CrowdModel crowdModel) { if (crowdModel != null) { var entity = new CrowdEntity { Uptime = DateTime.Now, Addtime = DateTime.Now, Adduser = 1, Upuser = 1, Ttitle = crowdModel.Ttitle, Intro = crowdModel.Intro, Starttime = DateTime.Now, Endtime = DateTime.Now, Status = 1, crowdUrl = crowdModel.crowdUrl }; var entityImg = new PartImageEntity { Orderby = 1, Imgurl = "", Adduser = 2, Addtime = DateTime.Now, Uptime = DateTime.Now, Upuser = 2, Crowd = null }; try { int id; if (crowdModel.Id > 0) //修改众筹 { id = crowdModel.Id; entity = _crowdService.GetCrowdById(id); entity.Intro = crowdModel.Intro; entity.Ttitle = crowdModel.Ttitle; entity.crowdUrl = crowdModel.crowdUrl; _crowdService.Update(entity);//更新众筹表crowd var enImg = new PartImageSearchCondition { OrderBy = EnumPartImageSearchOrderBy.OrderById, CrowdId = id }; var model = _partImageService.GetPartImagesByCondition(enImg);//根据众筹id查询众筹图片 foreach (var p in model) { _partImageService.Delete(p);//删除众筹图片 } if (crowdModel.ImgList1.Count > 0) { entityImg.Crowd = _crowdService.GetCrowdById(id); for (int i = 0; i < crowdModel.ImgList1.Count; i++)//添加众筹图片 { entityImg.Imgurl = crowdModel.ImgList1[i]; _partImageService.Create(entityImg); } } return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据保存成功!"))); } else//新增众筹 { id = _crowdService.Create(entity).Id; //插入众筹图片 if (crowdModel.ImgList1.Count > 0) { entityImg.Crowd = _crowdService.GetCrowdById(id); for (int i = 0; i < crowdModel.ImgList1.Count; i++) { entityImg.Imgurl = crowdModel.ImgList1[i]; _partImageService.Create(entityImg); } } return(PageHelper.toJson(PageHelper.ReturnValue(true, "数据添加成功!"))); } } catch { return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据添加失败!"))); } } return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据验证错误!"))); }