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);
        }
Esempio n. 2
0
        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
            };
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
 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);
        }
Esempio n. 6
0
        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, "数据验证错误!")));
        }