WebReportPageBase
using System; using System.Collections.Generic; using System.Linq; using System.Web; using .IDAL; using BLL; using MTS2.Model; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Web.UI;
namespace Common { public class WebReportPageBase : System.Web.UI.Page { public WebInputParasSqlStr SQLCOLLECTION = new WebInputParasSqlStr(); public IWeb_Cache Webcache = new IWeb_Cache(); public string WEBFileName = ""; public string WEBFilePath = ""; public string WEBURL = ""; public string WEBServerMapPath = ""; public string WebVPath = ""; public string AshxReturnStr = ""; public String PageName = ""; public String ParasID = ""; public String CurrentPageNO = "0"; public String PageFileXMLPath = ""; public String Lblprefix = ""; public String PageFlag = "0"; public String TableName = ""; public String Keywords = ""; public String PageInfo = ""; protected override void OnLoad(EventArgs e) { /***************************************** * * WEB配置文件信息 * * ***************************************/
WEBFileName = ""; WEBURL = GetUrl(); WEBServerMapPath = Server.MapPath("~/"); WebVPath = Request.ServerVariables["URL"].ToString().Trim();
String Str_Keywords = ""; /***************************************************************************************************************** * * 所有页面只传入一个ID参数;所有我多个参数以,号分割; * * 分割后数组中: * * 第一个参数内容:参数中包括数据库中的表名称,页面控件lang属性前缀信息,默认表为WKSZPK;页面控件默认前缀为Y;刚页面多语言中lang属性的值为Y+字段名称; * * 第二个参数内容:编辑页面及其他需要关键字页面传入的KEYWORDS值;传入关键值默认为空; * * 第三个参数内容:判断分页信息参数,当前为分页页面的第几页;当前页码默认为0; * * 第四个参数内容:判断页面信息及页面的隐藏参数信息;是确定要执行哪个页面;页面中需要的关键字是什么;页面默认关键字为ID * * * 参数处理信息开始 * * ****************************************************************************************************************/
//所有页面只传入一个ID参数;所有我多个参数以,号分割;
if (Request.QueryString["ID"] != null) { Str_Keywords = Request.QueryString["ID"].ToString().Trim(); Lblprefix = "Y"; } else { Str_Keywords = "WKSZPK"; Lblprefix = "Y"; } String[] myarr; myarr = Str_Keywords.Split(','); //判断第一个传入的参数(参数中包括数据库中的表名称,页面控件前缀信息,默认表为WKSZPK) if (myarr.Length > 0) { PageName = myarr[0].ToString().ToUpper(); if (PageName.ToString().Trim().Length < 3) { Str_Keywords = "WKSZPK"; Lblprefix = ""; } string pagenamestr = PageName; if (pagenamestr.ToString().Split('-').Length > 1) { Lblprefix = pagenamestr.ToString().Split('-')[0].ToString(); TableName = pagenamestr.ToString().Split('-')[1].ToString(); PageName = TableName.ToString(); } } //编辑页面传入的KEYWORDS值 if (myarr.Length > 1) { if (myarr[1].ToString().ToUpper().Length > 0) { ParasID = myarr[1].ToString().ToUpper(); } else { ParasID = ""; } } else { ParasID = ""; } //判断分页信息参数 if (myarr.Length > 2) { if (myarr[2].ToString().ToUpper().Length > 0) { CurrentPageNO = myarr[2].ToString().ToUpper(); } else { CurrentPageNO = "0"; } } else { CurrentPageNO = "0"; } //判断页面参数是否输入 if (myarr.Length > 3) { if (myarr[3].ToString().ToUpper().Length > 0) { PageInfo = myarr[3].ToString().ToUpper(); } else { PageInfo = "0"; } } else { PageInfo = "0"; } //判断页面信息及页面的隐藏参数信息 if (PageInfo.Length > 4) { string[] keywordsarr = PageInfo.Split(':');
if (keywordsarr.Length > 1) { if (keywordsarr[0].ToString().Length > 1) { PageFlag = keywordsarr[0].ToString(); } else { PageFlag = "0"; } if (keywordsarr[1].ToString().Length > 1) { Keywords = keywordsarr[1].ToString(); } else { Keywords = "SZODNR"; } } else { if (keywordsarr.Length > 0) { if (keywordsarr[0].ToString().Length > 1) { PageFlag = keywordsarr[0].ToString(); Keywords = "SZODNR"; } else { PageFlag = "0"; Keywords = "SZODNR"; } } else { PageFlag = "0"; Keywords = "SZODNR"; } } } else { PageFlag = "0"; Keywords = "SZODNR"; } /***************************************************************************************************************** * * 所有页面只传入一个ID参数;所有我多个参数以,号分割; * * 分割后数组中: * * 第一个参数内容:参数中包括数据库中的表名称,页面控件前缀信息,默认表为WKSZPK; * * 第二个参数内容:编辑页面及其他需要关键字页面传入的KEYWORDS值; * * 第三个参数内容:判断分页信息参数,当前为分页页面的第几页; * * 第四个参数内容:判断页面信息及页面的隐藏参数信息;是确定要执行哪个页面;页面中需要的关键字是什么; * * * 参数处理信息开始 * * ****************************************************************************************************************/
if (PageName.ToString().Trim().Length > 0) { PageFileXMLPath = Server.MapPath("~/dl_mts/" + PageName.ToString().Trim() + ".xml"); } //添加隐藏配置信息 HiddenField hfctrl = new HiddenField(); hfctrl.ID = "TABLE_NAME"; hfctrl.Value = PageName.ToUpper(); this.Page.Form.Controls.Add(hfctrl); //添加执行脚本代码控件 Literal ltlctrl = new Literal(); ltlctrl.ID = "ltlScript"; ltlctrl.Text = ""; this.Page.Form.Controls.Add(ltlctrl); //添加动态生成的WEB页面
//添加包含CSS文件 AddIncludeCssFile2Page("../Resource/calendar/calendar.css"); //添加包含JS文件
AddJs2Web("../Resource/calendar/calendar.js"); AddJs2Web("../Resource/js/common.js"); AddJs2Web("../Resource/js/curvycorners.js"); AddJs2Web("../Resource/js/jquery-1.7.2.js"); AddJs2Web("../Resource/js/autoComplete.js"); /****************************************** * * 配置文件信息 * * *****************************************/
base.OnLoad(e);
} //重写Page OnPreInit事件 protected override void OnPreInit(EventArgs e) { base.OnPreInit(e);
// //如果是登陆页面,取消登陆验证 }
///当前Request Url的文件名称 /// </summary> /// <returns>返回当前Request Url的文件名称</returns> public string GetRequestFilename() { return System.IO.Path.GetFileName(Request.Path); }
public void MsgShow(String messageString) { base.RegisterStartupScript("", "<script>alert('" + messageString + "');</script>"); } /// <summary> /// 打开新的窗口 可以是模态可非模态 /// </summary> /// <param name="url">打开窗口URL地址</param> /// <param name="Wwidth">打开窗口宽度</param> /// <param name="Wheight">打开窗口高度</param> /// <param name="Wresizable">是否有滚动条 1为有滚动条,默认没有</param> /// <returns></returns> public string GetOpenWindowString(string url, string Wwidth, string Wheight, string Wresizable) { if (Wwidth.ToString().Trim().Length < 1) { Wwidth = "500"; } if (Wheight.ToString().Trim().Length < 1) { Wheight = "400"; } if (Wresizable.ToString().Trim().Length < 1) { Wresizable = "2"; } else { Wresizable = "1"; } string openstr = ""; openstr = "<script language='javascript'> window.showModalDialog('" + url.ToString() + "','dialogWidth:" + Wwidth.ToString() + "px;dialogHeight:" + Wheight.ToString() + "px;resizable=" + Wresizable.ToString() + ";');</script>";
return openstr; }
public string GetUrl() { return HttpContext.Current.Request.Url.ToString(); } /// <summary> /// 获得当前页面的名称 /// </summary> /// <returns>当前页面的名称</returns> public string GetPageName() { string[] urlArr = HttpContext.Current.Request.Url.AbsolutePath.Split('/'); return urlArr[urlArr.Length - 1].ToLower(); }
/// <summary> /// 弹出新的窗口 可以是模态可非模态 /// </summary> /// <param name="url">窗口URL</param> /// <param name="Wwidth">窗口宽度</param> /// <param name="Wheight">窗口高度</param> /// <param name="Wresizable">是否有滚动条 1为有滚动条,默认没有</param> public void PopUpNewWindow(string url, string Wwidth, string Wheight, string Wresizable) { if (Wwidth.ToString().Trim().Length < 1) { Wwidth = "500"; } if (Wheight.ToString().Trim().Length < 1) { Wheight = "400"; } if (Wresizable.ToString().Trim().Length < 1) { Wresizable = "2"; } else { Wresizable = "1"; } string openstr = "";
openstr = "<script language='javascript'> window.showModalDialog('" + url.ToString() + "','dialogWidth:" + Wwidth.ToString() + "px;dialogHeight:" + Wheight.ToString() + "px;resizable=" + Wresizable.ToString() + ";');</script>"; ((Literal)(this.Page.Form.FindControl("ltlScript"))).Text = openstr; } /// <summary> /// 加载css样式表 /// </summary> /// <param name="cssFilePath">样式文件地址参数</param> public void AddIncludeCssFile2Page(string cssFilePath) { HtmlGenericControl child = new HtmlGenericControl("link"); child.Attributes.Add("href", cssFilePath); child.Attributes.Add("rel", "stylesheet"); child.Attributes.Add("type", "text/css"); Page handler = (Page)HttpContext.Current.Handler; handler.Header.Controls.Add(child); } /// <summary> /// 向页面添加页面标题、关键字、描述 /// </summary> /// <param name="Title">标题参数</param> /// <param name="Keywords">关键字参数</param> /// <param name="Webdesc">描述参数</param> public void AddKeyWordsWebdescMeta(String Title, String Keywords, String Webdesc) { HtmlMeta keywords = new HtmlMeta(); HtmlMeta desription = new HtmlMeta(); keywords.Name = "keywords"; keywords.Content = Keywords.ToString().Trim(); desription.Name = "description"; desription.Content = Webdesc.ToString().Trim(); Page handler = (Page)HttpContext.Current.Handler;
handler.Header.Controls.Add(keywords); handler.Header.Controls.Add(desription); handler.Title = Title.Trim();
} /// <summary> /// 通过JS文件地址,动态加载JS文件 /// </summary> /// <param name="JS_SRC">JS文件地址参数</param> public void AddJs2Web(String Js_Src) { HtmlGenericControl JSControl = new HtmlGenericControl("script"); JSControl.Attributes.Add("type", "text/javascript"); JSControl.Attributes.Add("src", Js_Src); Page handler = (Page)HttpContext.Current.Handler;
handler.Header.Controls.Add(JSControl); } } }