| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Linq;
- using System.Text;
- using System.Web;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using Utils;
- using SiteCore;
- public partial class MasterPage_Tree : System.Web.UI.MasterPage
- {
- TreeBasePage _bp = null;
- ITreePage _it = null;
- protected override void OnInit(EventArgs e)
- {
- _bp = this.Page as TreeBasePage;
- _it = this.Page as ITreePage;
- //时间
- _bp._searchDate = _bp.GetString("dt");
- if (_bp._searchDate == "")
- {
- _bp._filterDate = DateTime.Now;
- _bp._searchDate = _bp._filterDate.ToString("yyyy-MM-dd");
- }
- else _bp._filterDate = Convert.ToDateTime(_bp._searchDate);
- if (!IsPostBack)
- {
- if (!_bp.CheckRights()) return;
- if (!_bp._selfCheckPermission)
- {
- //权限
- if (!InitPermission()) return;
- }
- //_bp.leftWidth
- m_tree_div.Attributes.Add("Width", _bp.leftWidth.ToString());
- m_tree_div.Attributes.Add("MaxWidth", (_bp.leftWidth+100).ToString());
- //加载树形数据
- InitTree(_it.GetTreeData());
- }
- string path = CommonHelper.GetPrePath();
- StringBuilder str = new StringBuilder();
- str.AppendFormat("<script src=\"{0}/js/boot.js?v={1}\" type=\"text/javascript\"></script>", path, BasePage.SiteVer);
- str.AppendFormat("<script src=\"{0}/js/tree_view.js?v={1}\" type=\"text/javascript\"></script>", path, BasePage.SiteVer);
- str.AppendFormat("<link href=\"{0}/css/tree.css?v={1}\" rel=\"stylesheet\" />", path, BasePage.SiteVer);
- Literal lt = new Literal();
- lt.Text = str.ToString();
- Page.Header.Controls.AddAt(1, lt);
-
- base.OnInit(e);
- }
- protected void Page_Load(object sender, EventArgs e)
- {
- m_tree_div.Attributes.Add("title", _bp.TreeTitle);
- filterPanel.Visible = _bp._showFilter;
- if (!IsPostBack)
- {
- hDate.Value = _bp._searchDate;
- initSearch(_bp._searchFilter);
- //keyPlace.Visible = _bp._keyFilterVisible;
- if (_bp.TreeSelValue != null) _bp._script.AppendFormat("treeSel=\"{0}\";", _bp.TreeSelValue);
- if(_bp._script.Length>0)
- litScript.Text = "<script type=\"text/javascript\">"+_bp._script.ToString()+"</script>";
- }
- }
- private void initSearch(string filter)
- {
- if (filter == "") return;
- string[] sArr = filter.Split(',');
- StringBuilder str = new StringBuilder();
- switch (_bp._searchDateEnum)
- {
- case SearchDateEnum.OneDay:
- {
- str.AppendLine("日期:<input id=\"txtEdate\" class=\"mini-datepicker\" style=\"width:100px;\" onvaluechanged=\"dateChangeFn\" format=\"yyyy-MM-dd\" />");
- break;
- }
- case SearchDateEnum.OneMonth:
- {
- str.AppendLine("日期:<input id=\"txtEdate\" class=\"mini-datepicker\" style=\"width:100px;\" onvaluechanged=\"dateChangeFn\" format=\"yyyy-M\"/>");
- break;
- }
- default:
- {
- str.AppendLine("日期:<input id=\"txtSdate\" class=\"mini-datepicker\" style=\"width:100px;\" onvaluechanged=\"dateChangeFn\" format=\"yyyy-MM-dd\" />");
- str.AppendLine("- <input id=\"txtEdate\" class=\"mini-datepicker\" style=\"width:100px;\" onvaluechanged=\"dateChangeFn\" format=\"yyyy-MM-dd\" />");
- break;
- }
- }
- str.AppendLine("<span id=\"sp_date_filter\">");
- for (int i = 0; i < sArr.Length; i++)
- {
- str.AppendLine(" <a href=\"###\">" + sArr[i] + "</a>");
- }
- str.AppendLine("</span>");
- litSearch.Text = str.ToString();
- }
- // 初始化树
- private void InitTree(object tree)
- {
- if (tree == null)
- {
- m_tree_div.Visible = false;
- return;
- }
- StringBuilder str = new StringBuilder();
- string tId = Request.QueryString["tId"];
- if (!string.IsNullOrEmpty(tId)) _bp.TreeSelValue = tId;
- if (tree.ToString()!="")str.AppendFormat("treeData={0};", tree);
- _bp.AppendScript(str.ToString());
- }
- #region 初始化权限
- private bool InitPermission()
- {
- if (_bp.PmTag == "")
- {
- _bp.ShowError("您当前没有权限查看该页面");
- return false;
- }
- DataTable dt = WebUser.GetPermission(_bp.PKey);
- System.Data.DataView dv = new System.Data.DataView(dt);
- dv.RowFilter = string.Format("tag='{0}' or tag like '{0}_%'", _bp.PmTag);
- if (dv.Count < 1)
- {
- _bp.ShowError("您当前没有权限查看该页面");
- return false;
- }
- string tag;
- StringBuilder str = new StringBuilder();
- int i = 0;
- foreach (DataRowView drv in dv)
- {
- tag = drv["Tag"].ToString();
- if (tag.IndexOf("_") == -1) continue;
- tag = tag.Replace(_bp.PmTag + "_", "");
- _bp._permissions.Add(tag);//加入权限
- if (tag == "view") continue;
- str.Append((i > 0 ? "|" : "") + tag + "," + drv["Name"]);
- i++;
- }
- if (str.Length > 0)
- _bp.AppendScript("actionData=\"" + str.ToString() + "\";");
- return true;
- }
- #endregion
- }
|