/// <summary> /// 绑定查询的方法 /// </summary> private List <SearchParam> BindSearch() { List <SearchParam> Where = new List <SearchParam>(); Where.Add(new SearchParam("ModuleId", ModuleId, SearchType.Equal)); //不是超级管理员也不是普通管理员时,只能看到自己发布的文章 if (!IsAdministrator && !IsAdmin) { Where.Add(new SearchParam(Playngo_ClientZone_DownloadFile._.CreateUser, UserId, SearchType.Equal)); } //筛选文章的状态 if (EventStatus >= 0) { Where.Add(new SearchParam(Playngo_ClientZone_DownloadFile._.Status, EventStatus, SearchType.Equal)); } if (!String.IsNullOrEmpty(Search_Title)) { txtSearch.Text = HttpUtility.UrlDecode(Search_Title); Where.Add(new SearchParam(Playngo_ClientZone_DownloadFile._.Title, Common.ReplaceEscape(HttpUtility.UrlDecode(Search_Title)), SearchType.Like)); } return(Where); }
/// <summary> /// 创建查询语句 /// </summary> /// <param name="qp"></param> /// <param name="Context"></param> /// <returns></returns> public QueryParam CreateQueryParam(QueryParam qp, BasePage Context) { qp.Where.Add(new SearchParam("Status", (Int32)EnumStatus.Published, SearchType.Equal)); qp.Where.Add(new SearchParam("PortalId", Context.PortalId, SearchType.Equal)); //搜索标题 String Search = WebHelper.GetStringParam(Context.Request, "Search", ""); if (!String.IsNullOrEmpty(Search)) { if (qp.WhereSql.Length > 0) { qp.WhereSql.Append(" AND "); } qp.WhereSql.Append(" ( "); qp.WhereSql.Append(new SearchParam("Title", Common.ReplaceEscape(Search), SearchType.Like).ToSql()); qp.WhereSql.Append(" OR "); qp.WhereSql.Append(new SearchParam("Version", Common.ReplaceEscape(Search), SearchType.Like).ToSql()); qp.WhereSql.Append(" ) "); } return(qp); }
/// <summary> /// 创建查询语句 /// </summary> /// <param name="qp"></param> /// <param name="Context"></param> /// <returns></returns> public QueryParam CreateQueryParam(QueryParam qp, BasePage Context) { qp.Where.Add(new SearchParam(Playngo_ClientZone_DownloadFile._.Status, (Int32)EnumStatus.Published, SearchType.Equal)); qp.Where.Add(new SearchParam(Playngo_ClientZone_DownloadFile._.PortalId, Context.PortalId, SearchType.Equal)); //未到开始时间的不显示数据 qp.Where.Add(new SearchParam(Playngo_ClientZone_DownloadFile._.StartTime, xUserTime.UtcTime(), SearchType.LtEqual)); //搜索标题 String Search = WebHelper.GetStringParam(Context.Request, "Search", ""); if (!String.IsNullOrEmpty(Search)) { if (qp.WhereSql.Length > 0) { qp.WhereSql.Append(" AND "); } qp.WhereSql.Append(" ( "); qp.WhereSql.Append(new SearchParam("Title", Common.ReplaceEscape(Search), SearchType.Like).ToSql()); qp.WhereSql.Append(" OR "); qp.WhereSql.Append(new SearchParam("Version", Common.ReplaceEscape(Search), SearchType.Like).ToSql()); qp.WhereSql.Append(" ) "); } return(qp); }
/// <summary> /// 创建查询语句 /// </summary> /// <param name="qp"></param> /// <param name="Context"></param> /// <returns></returns> public QueryParam CreateQueryParam(QueryParam qp, BasePage Context) { qp.Where.Add(new SearchParam(Playngo_ClientZone_GameSheet._.Status, (Int32)EnumStatus.Published, SearchType.Equal)); qp.Where.Add(new SearchParam(Playngo_ClientZone_GameSheet._.PortalId, Context.PortalId, SearchType.Equal)); //未到开始时间的不显示数据 qp.Where.Add(new SearchParam(Playngo_ClientZone_GameSheet._.StartTime, xUserTime.UtcTime(), SearchType.LtEqual)); //搜索标题 String Search = WebHelper.GetStringParam(Context.Request, "Search", ""); if (!String.IsNullOrEmpty(Search)) { qp.Where.Add(new SearchParam("Title", Common.ReplaceEscape(Search), SearchType.Like)); } return(qp); }
/// <summary> /// 保存文章 /// </summary> /// <param name="EventStatus">文章状态(为-1的时候取选项的值)</param> private Boolean SaveDataItem(Int32 EventStatus, out Playngo_ClientZone_DownloadFile Event) { Boolean SaveResult = false; Event = EventItem; Event.Title = Common.ReplaceEscape(txtTitle.Text); Event.Version = Common.ReplaceEscape(txtVersion.Text); //Event.GameID = Common.ReplaceEscape(txtGameID.Text); Event.NotifyInclude = cbIncludeNotification.Checked ? 1:0; Event.NotifyStatus = WebHelper.GetIntParam(Request, ddlNotificationStatus.UniqueID, 0); //Event.NotifySubscribers = cbNotifySubscribers.Checked ? 1 : 0; //权限 Event.Per_AllUsers = cbPermissionsAllUsers.Checked ? 0 : 1; String textStr, idStr = String.Empty; WebHelper.GetSelected(cblPermissionsRoles, out textStr, out idStr); Event.Per_Roles = idStr; //区域 Event.Per_AllJurisdictions = cbAllJurisdictions.Checked ? 0 : 1; String JurisdictionTexts, JurisdictionIDs = String.Empty; WebHelper.GetSelected(cblJurisdictions, out JurisdictionTexts, out JurisdictionIDs); Event.Per_Jurisdictions = JurisdictionIDs; //Game Category String GameCategoryTexts, GameCategoryIDs = String.Empty; WebHelper.GetSelected(cblGameCategory, out GameCategoryTexts, out GameCategoryIDs); Event.GameCategories = GameCategoryIDs; //File Type String FileTypeTexts, FileTypeIDs = String.Empty; WebHelper.GetSelected(cblFileType, out FileTypeTexts, out FileTypeIDs); Event.FileTypes = FileTypeIDs; //文章的发布状态 if (EventStatus == -1)//如果没有指定状态就取控件的 { Event.Status = WebHelper.GetIntParam(Request, ddlEventStatus.UniqueID, (Int32)EnumStatus.Published); } else { Event.Status = EventStatus; } List <KeyValueEntity> list = new List <KeyValueEntity>(); if (divOptions.Visible) { Event.Options = SetItemSettings(ref list); } //从动态选项中获取Roadmap启用状态 if (list.Exists(r => r.Key == "IncludeRoadmap")) { KeyValueEntity Entity = list.Find(r => r.Key == "IncludeRoadmap"); Event.IncludeRoadmap = Convert.ToBoolean(Entity.Value) ? 0 : 1; } //更新项 Event.LastIP = WebHelper.UserHost; Event.LastTime = xUserTime.LocalTime(); Event.LastUser = UserId; //开始状态和时间 DateTime oTime = xUserTime.LocalTime(); string[] expectedFormats = { "G", "g", "f", "F" }; string StartDate = WebHelper.GetStringParam(Request, txtStartDate.UniqueID, oTime.ToString("MM/dd/yyyy")); string StartTime = WebHelper.GetStringParam(Request, txtStartTime.UniqueID, oTime.ToString("HH:mm:ss")); if (DateTime.TryParseExact(String.Format("{0} {1}", StartDate, StartTime), "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out oTime)) { Event.StartTime = oTime; } //发布状态和时间 DateTime oReleaseTime = xUserTime.LocalTime(); string ReleaseDate = WebHelper.GetStringParam(Request, txtReleaseDate.UniqueID, oTime.ToString("MM/dd/yyyy")); string ReleaseTime = WebHelper.GetStringParam(Request, txtReleaseTime.UniqueID, oTime.ToString("HH:mm:ss")); if (DateTime.TryParseExact(String.Format("{0} {1}", ReleaseDate, ReleaseTime), "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out oReleaseTime)) { Event.ReleaseDate = oReleaseTime; } //结束状态和时间 DateTime EndTime = xUserTime.LocalTime().AddDays(1); string DisableDate = WebHelper.GetStringParam(Request, txtDisableDate.UniqueID, EndTime.ToString("MM/dd/yyyy")); string DisableTime = WebHelper.GetStringParam(Request, txtDisableTime.UniqueID, EndTime.ToString("HH:mm:ss")); if (DateTime.TryParseExact(String.Format("{0} {1}", DisableDate, DisableTime), "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out EndTime)) { Event.EndTime = EndTime; } //创建用户改为可以选择 Event.CreateUser = WebHelper.GetIntParam(Request, hfEventAuthor.UniqueID, UserId); if (Event.ID > 0) { //更新 } else { //新增 Event.ModuleId = ModuleId; Event.PortalId = PortalId; Event.CreateTime = xUserTime.LocalTime(); } int ResultEvent = 0; if (Event.ID > 0) { ResultEvent = Event.Update(); } else { ResultEvent = Event.ID = Event.Insert(); } if (ResultEvent > 0) { SaveResult = true; //邮件发送 //if (Event.SendMail == 0 && cbNotifySubscribers.Checked) if (cbNotifySubscribers.Checked) { //利用现成发送邮件 var objs = new Dictionary <object, object>(); objs.Add("DataItem", Event); objs.Add("PortalUrl", PortalUrl); ManagedThreadPool.QueueUserWorkItem(new WaitCallback(ThreadCreateSendMail), objs); //更新发送状态 //Playngo_ClientZone_DownloadFile.Update(String.Format("SendMail={0}", 1), String.Format("ID={0}", Event.ID)); } } else { SaveResult = false; } return(SaveResult); }
/// <summary> /// 保存文章 /// </summary> /// <param name="CampaignStatus">文章状态(为-1的时候取选项的值)</param> private Boolean SaveDataItem(Int32 CampaignStatus, out Playngo_ClientZone_Campaign Campaign) { Boolean SaveResult = false; Campaign = CampaignItem; Campaign.Title = Common.ReplaceEscape(txtTitle.Text); Campaign.GameID = txtGameID.Text; Campaign.GameID_Mobile = txtGameIDMobile.Text; Campaign.Version = txtVersion.Text; Campaign.NotifyInclude = cbIncludeNotification.Checked ? 1 : 0; Campaign.NotifyStatus = WebHelper.GetIntParam(Request, ddlNotificationStatus.UniqueID, 0); //Campaign.NotifySubscribers = cbNotifySubscribers.Checked ? 1 : 0; //文件集合 //CampaignItem.Files = hfDownLoadFiles.Value; //权限 Campaign.Per_AllUsers = cbPermissionsAllUsers.Checked ? 0 : 1; String textStr, idStr = String.Empty; WebHelper.GetSelected(cblPermissionsRoles, out textStr, out idStr); Campaign.Per_Roles = idStr; //区域 Campaign.Per_AllJurisdictions = cbAllJurisdictions.Checked ? 0 : 1; String JurisdictionTexts, JurisdictionIDs = String.Empty; WebHelper.GetSelected(cblJurisdictions, out JurisdictionTexts, out JurisdictionIDs); Campaign.Per_Jurisdictions = JurisdictionIDs; //Game Category String GameCategoryTexts, GameCategoryIDs = String.Empty; WebHelper.GetSelected(cblGameCategory, out GameCategoryTexts, out GameCategoryIDs); Campaign.GameCategories = GameCategoryIDs; //文章的发布状态 if (CampaignStatus == -1)//如果没有指定状态就取控件的 { Campaign.Status = WebHelper.GetIntParam(Request, ddlEventStatus.UniqueID, (Int32)EnumStatus.Published); } else { Campaign.Status = CampaignStatus; } #region "关于动态选项的代码" List <KeyValueEntity> list = new List <KeyValueEntity>(); List <SettingEntity> ItemSettingDB = Campaign_ItemSettingDB; if (ItemSettingDB != null && ItemSettingDB.Count > 0) { ControlHelper ControlItem = new ControlHelper(ModuleId); foreach (SettingEntity ri in ItemSettingDB) { KeyValueEntity item = new KeyValueEntity(); item.Key = ri.Name; item.Value = ControlHelper.GetWebFormValue(ri, this); list.Add(item); } } //从动态选项中获取Roadmap启用状态 if (list.Exists(r => r.Key == "IncludeRoadmap")) { KeyValueEntity Entity = list.Find(r => r.Key == "IncludeRoadmap"); Campaign.IncludeRoadmap = Convert.ToBoolean(Entity.Value) ? 0 : 1; } //伪静态URL String FriendlyUrl = String.Empty; if (list.Exists(r => r.Key == "FriendlyUrl")) { KeyValueEntity TitleEntity = list.Find(r => r.Key == "FriendlyUrl"); FriendlyUrl = TitleEntity.Value.ToString(); if (String.IsNullOrEmpty(FriendlyUrl) && !String.IsNullOrEmpty(Campaign.Title)) { FriendlyUrl = Common.FriendlySlug(Campaign.Title); } Campaign.UrlSlug = FriendlyUrl; TitleEntity.Value = FriendlyUrl; list[list.FindIndex(r => r.Key == "FriendlyUrl")] = TitleEntity; } Campaign.Options = ConvertTo.Serialize <List <KeyValueEntity> >(list); #endregion //更新项 Campaign.LastIP = WebHelper.UserHost; Campaign.LastTime = xUserTime.LocalTime(); Campaign.LastUser = UserId; //开始状态和时间 DateTime oTime = xUserTime.LocalTime(); string[] expectedFormats = { "G", "g", "f", "F" }; string StartDate = WebHelper.GetStringParam(Request, txtStartDate.UniqueID, oTime.ToString("MM/dd/yyyy")); string StartTime = WebHelper.GetStringParam(Request, txtStartTime.UniqueID, oTime.ToString("HH:mm:ss")); if (DateTime.TryParseExact(String.Format("{0} {1}", StartDate, StartTime), "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out oTime)) { Campaign.StartTime = oTime; } //发布状态和时间 DateTime oReleaseTime = xUserTime.LocalTime(); string ReleaseDate = WebHelper.GetStringParam(Request, txtReleaseDate.UniqueID, oTime.ToString("MM/dd/yyyy")); string ReleaseTime = WebHelper.GetStringParam(Request, txtReleaseTime.UniqueID, oTime.ToString("HH:mm:ss")); if (DateTime.TryParseExact(String.Format("{0} {1}", ReleaseDate, ReleaseTime), "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out oReleaseTime)) { Campaign.ReleaseDate = oReleaseTime; } //结束状态和时间 DateTime EndTime = xUserTime.LocalTime().AddDays(1); string DisableDate = WebHelper.GetStringParam(Request, txtDisableDate.UniqueID, EndTime.ToString("MM/dd/yyyy")); string DisableTime = WebHelper.GetStringParam(Request, txtDisableTime.UniqueID, EndTime.ToString("HH:mm:ss")); if (DateTime.TryParseExact(String.Format("{0} {1}", DisableDate, DisableTime), "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out EndTime)) { Campaign.EndTime = EndTime; } //创建用户改为可以选择 Campaign.CreateUser = WebHelper.GetIntParam(Request, hfEventAuthor.UniqueID, UserId); if (Campaign.ID > 0) { //更新 } else { //新增 Campaign.ModuleId = ModuleId; Campaign.PortalId = PortalId; Campaign.CreateTime = xUserTime.LocalTime(); } int ResultCampaign = 0; if (Campaign.ID > 0) { ResultCampaign = Campaign.Update(); } else { ResultCampaign = Campaign.ID = Campaign.Insert(); } if (ResultCampaign > 0) { SaveResult = true; //邮件发送 //if (Campaign.SendMail == 0 && cbNotifySubscribers.Checked) if (cbNotifySubscribers.Checked) { //利用现成发送邮件 var objs = new Dictionary <object, object>(); objs.Add("DataItem", Campaign); objs.Add("PortalUrl", PortalUrl); ManagedThreadPool.QueueUserWorkItem(new WaitCallback(ThreadCreateSendMail), objs); //更新发送状态 //Playngo_ClientZone_Campaign.Update(String.Format("SendMail={0}", 1), String.Format("ID={0}", Campaign.ID)); } } else { SaveResult = false; } return(SaveResult); }