コード例 #1
0
        public void Execute(BasePage Context)
        {
            Dictionary <String, Object> jsonDicts = new Dictionary <String, Object>();


            Int32 DynamicModuleId = WebHelper.GetIntParam(Context.Request, "DynamicModuleId", 0);

            QueryParam qp = new QueryParam();

            qp.Where.Add(new SearchParam(Playngo_ClientZone_DynamicModule._.ID, DynamicModuleId, SearchType.Equal));

            Int32 DeleteCount = Playngo_ClientZone_DynamicModule.Delete(qp);

            if (DeleteCount > 0)
            {
                QueryParam qpItem = new QueryParam();
                qpItem.Where.Add(new SearchParam(Playngo_ClientZone_DynamicItem._.DynamicID, DynamicModuleId, SearchType.Equal));

                Int32 DeleteItemCount = Playngo_ClientZone_DynamicItem.Delete(qpItem);
                jsonDicts.Add("DeleteItemCount", DeleteItemCount);
            }


            jsonDicts.Add("DeleteCount", DeleteCount);



            //转换数据为json
            JavaScriptSerializer jsSerializer = new JavaScriptSerializer();

            ResponseString = jsSerializer.Serialize(jsonDicts);
        }
コード例 #2
0
        public void Execute(BasePage Context)
        {
            Dictionary <String, Object> jsonDicts    = new Dictionary <String, Object>();
            JavaScriptSerializer        jsSerializer = new JavaScriptSerializer();

            Int32 DynamicModuleId = WebHelper.GetIntParam(Context.Request, "DynamicModuleId", 0);
            int   UpdateResult    = 0;
            var   json            = WebHelper.GetStringParam(Context.Request, "json", "");

            if (!String.IsNullOrEmpty(json))
            {
                var JsonItems = jsSerializer.Deserialize <List <Dictionary <String, Int32> > >(json);
                if (JsonItems != null && JsonItems.Count > 0)
                {
                    for (int i = 0; i < JsonItems.Count; i++)
                    {
                        UpdateResult += Playngo_ClientZone_DynamicItem.Update(String.Format("Sort={0}", 1 + i), String.Format("ID={0}", JsonItems[i]["id"]));
                    }
                }
            }
            jsonDicts.Add("UpdateCount", UpdateResult);



            //转换数据为json

            ResponseString = jsSerializer.Serialize(jsonDicts);
        }
コード例 #3
0
        /// <summary>
        /// 绑定项集合到页面
        /// </summary>
        private void BindItemsToPage(Repeater RepeaterItems, Int32 DynamicModule, out int OptionCount)
        {
            OptionCount = 0;
            //获取效果参数
            var DynamicItems = Playngo_ClientZone_DynamicItem.FindListByFilter(DynamicModule, ModuleId);

            if (DynamicItems != null && DynamicItems.Count > 0)
            {
                OptionCount = DynamicItems.Count;
                //绑定参数项
                RepeaterItems.DataSource = DynamicItems;
                RepeaterItems.DataBind();
            }
        }
コード例 #4
0
        protected void RepeaterItems_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                Playngo_ClientZone_DynamicItem DynamicItem = e.Item.DataItem as Playngo_ClientZone_DynamicItem;


                HyperLink hlDynamicItemEdit = e.Item.FindControl("hlDynamicItemEdit") as HyperLink;
                if (hlDynamicItemEdit != null)
                {
                    hlDynamicItemEdit.Attributes.Add("data-href", DynamicItem_IframeUrl(DynamicItem.ID, DynamicItem.DynamicID, ((EnumDynamicItemType)DynamicItem.Type).ToString()));
                }

                Literal liItemType = e.Item.FindControl("liItemType") as Literal;
                if (liItemType != null)
                {
                    liItemType.Text = EnumHelper.GetEnumTextVal(DynamicItem.Type, typeof(EnumDynamicItemType));
                }
            }
        }
        /// <summary>
        /// 复制动态模块
        /// </summary>
        /// <param name="NewID">新的编号</param>
        /// <param name="OldID">老的编号</param>
        public void CopyDynamicModules(Int32 NewID, Int32 OldID)
        {
            //找到动态模块老数据
            var DynamicModules = Playngo_ClientZone_DynamicModule.FindListByFilter(OldID, (Int32)EnumDynamicModuleType.GameSheet, ModuleId);

            if (DynamicModules != null && DynamicModules.Count > 0)
            {
                foreach (var DynamicModule in DynamicModules)
                {
                    //查找动态项老数据
                    var DynamicItems = Playngo_ClientZone_DynamicItem.FindListByFilter(DynamicModule.ID, ModuleId);
                    //构造新的动态模块
                    var DynamicModuleNew = DynamicModule.Clone() as Playngo_ClientZone_DynamicModule;
                    DynamicModuleNew.ID       = 0;
                    DynamicModuleNew.LinkID   = NewID;
                    DynamicModuleNew.LastTime = xUserTime.UtcTime();
                    DynamicModuleNew.LastIP   = WebHelper.UserHost;
                    DynamicModuleNew.LastUser = UserId;
                    DynamicModuleNew.ID       = DynamicModuleNew.Insert();

                    if (DynamicModuleNew.ID > 0 && DynamicItems != null && DynamicItems.Count > 0)
                    {
                        foreach (var DynamicItem in DynamicItems)
                        {
                            //构造性的动态项
                            var DynamicItemNew = DynamicItem.Clone() as Playngo_ClientZone_DynamicItem;
                            DynamicItemNew.ID        = 0;
                            DynamicItemNew.DynamicID = DynamicModuleNew.ID;
                            DynamicItemNew.LastTime  = xUserTime.UtcTime();
                            DynamicItemNew.LastIP    = WebHelper.UserHost;
                            DynamicItemNew.LastUser  = UserId;

                            DynamicItemNew.Insert();
                        }
                    }
                }
            }
        }
コード例 #6
0
        /// <summary>
        /// 获取动态模块和动态项
        /// </summary>
        /// <param name="Puts"></param>
        /// <returns></returns>
        public Hashtable GetDynamics(Hashtable Puts)
        {
            var DynamicModules = Playngo_ClientZone_DynamicModule.FindViewAllByFilter(DataItem.ID, (Int32)EnumDynamicModuleType.GameSheet, Settings_ModuleID, this);

            var DynamicItems = new List <Playngo_ClientZone_DynamicItem>();

            if (DynamicModules != null && DynamicModules.Count > 0)
            {
                foreach (var DynamicModule in DynamicModules)
                {
                    var minDynamicItems = Playngo_ClientZone_DynamicItem.FindListByFilter(DynamicModule.ID, Settings_ModuleID);
                    if (minDynamicItems != null && minDynamicItems.Count > 0)
                    {
                        DynamicItems.AddRange(minDynamicItems);
                    }
                }
            }

            Puts.Add("DynamicModules", DynamicModules);
            Puts.Add("DynamicItems", DynamicItems);

            return(Puts);
        }
コード例 #7
0
        /// <summary>
        /// 删除数据所关联的所有动态模块项
        /// </summary>
        /// <param name="LinkID"></param>
        /// <param name="ModuleId"></param>
        /// <param name="DynamicType"></param>
        /// <returns></returns>
        public static Int32 DeleteAll(Int32 LinkID, Int32 ModuleId, Int32 DynamicType)
        {
            int RecordCount    = 0;
            var DynamicModules = FindListByFilter(LinkID, DynamicType, ModuleId);

            if (DynamicModules != null && DynamicModules.Count > 0)
            {
                foreach (var DynamicModule in DynamicModules)
                {
                    if (DynamicModule.Delete() > 0)
                    {
                        RecordCount++;


                        QueryParam qp = new QueryParam();
                        qp.Where.Add(new SearchParam(Playngo_ClientZone_DynamicItem._.DynamicID, DynamicModule.ID, SearchType.Equal));
                        qp.Where.Add(new SearchParam(Playngo_ClientZone_DynamicItem._.ModuleId, ModuleId, SearchType.Equal));
                        RecordCount += Playngo_ClientZone_DynamicItem.Delete(qp);
                    }
                }
            }
            return(RecordCount);
        }
        /// <summary>
        /// 设置数据项
        /// </summary>
        private void SetDataItem()
        {
            Dictionary <String, Object> DynamicItemJsons = new Dictionary <String, Object>();

            Playngo_ClientZone_DynamicItem Dynamic = DynamicItem;


            List <KeyValueEntity> list = new List <KeyValueEntity>();

            if (divOptions.Visible)
            {
                Dynamic.Options = SetItemSettings(ref list);
            }



            if (list.Exists(r => r.Key == "Title"))
            {
                var TitleItem = list.Find(r => r.Key == "Title");
                Dynamic.Title = TitleItem.Value.ToString();
            }



            //更新项
            Dynamic.LastIP   = WebHelper.UserHost;
            Dynamic.LastTime = xUserTime.UtcTime();
            Dynamic.LastUser = UserId;


            if (Dynamic.ID > 0)
            {
                //更新
            }
            else
            {
                //新增
                Dynamic.ModuleId = ModuleId;
                Dynamic.PortalId = PortalId;

                Dynamic.DynamicID = DynamicID;

                if (ConfigName == EnumDynamicItemType.ImageText.ToString())
                {
                    Dynamic.Type = (Int32)EnumDynamicItemType.ImageText;
                }
                else if (ConfigName == EnumDynamicItemType.Video.ToString())
                {
                    Dynamic.Type = (Int32)EnumDynamicItemType.Video;
                }
                else if (ConfigName == EnumDynamicItemType.Image.ToString())
                {
                    Dynamic.Type = (Int32)EnumDynamicItemType.Image;
                }
                else if (ConfigName == EnumDynamicItemType.xFrame.ToString())
                {
                    Dynamic.Type = (Int32)EnumDynamicItemType.xFrame;
                }
                else
                {
                    Dynamic.Type = (Int32)EnumDynamicItemType.Text;
                }



                QueryParam qp = new QueryParam();
                qp.Where.Add(new SearchParam(Playngo_ClientZone_DynamicItem._.ModuleId, ModuleId, SearchType.Equal));
                qp.Where.Add(new SearchParam(Playngo_ClientZone_DynamicItem._.DynamicID, DynamicID, SearchType.Equal));

                Dynamic.Sort = Playngo_ClientZone_DynamicItem.FindCount(qp) + 10;
            }


            int ResultDynamic = 0;

            if (Dynamic.ID > 0)
            {
                ResultDynamic = Dynamic.Update();
                DynamicItemJsons.Add("Action", "Update");
            }
            else
            {
                ResultDynamic = Dynamic.ID = Dynamic.Insert();
                DynamicItemJsons.Add("Action", "Insert");
            }



            foreach (var Field in Playngo_ClientZone_DynamicItem.Meta.Fields)
            {
                DynamicItemJsons.Add(Field.ColumnName, Dynamic[Field.ColumnName]);
            }

            DynamicItemJsons.Add("TypeText", EnumHelper.GetEnumTextVal(Dynamic.Type, typeof(EnumDynamicItemType)));
            DynamicItemJsons.Add("EditUrl", DynamicItem_IframeUrl(Dynamic.ID, Dynamic.DynamicID, ((EnumDynamicItemType)Dynamic.Type).ToString()));



            JavaScriptSerializer jsSerializer = new JavaScriptSerializer();

            jsSerializer.MaxJsonLength = Int32.MaxValue;
            String JsonString = jsSerializer.Serialize(DynamicItemJsons);

            Response.Write(String.Format("<script>window.parent.EditDynamicItems({0});</script>", JsonString));
        }