using BLL;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
using System.Net;
using System.Text;
using System.Web;
using System.Web.UI.WebControls;
using System.Xml;
using System.Linq;
using FineUIPro.Web.ZHDD;
namespace FineUIPro.Web
{
    public partial class indexProject : PageBase
    {
        #region Page_Init
        private string _menuType = "menu";
        //   private bool _compactMode = false;
        private int _examplesCount = 0;
        private string _searchText = "";
        #region Page_Init
        /// 
        /// 
        /// 
        /// 
        /// 
        protected void Page_Init(object sender, EventArgs e)
        {
            ////////////////////////////////////////////////////////////////
            string themeStr = Request.QueryString["theme"];
            string menuStr = Request.QueryString["menu"];
            string https = ConfigurationManager.AppSettings["Https"];
            if (!String.IsNullOrEmpty(themeStr) || !String.IsNullOrEmpty(menuStr))
            {
                if (!String.IsNullOrEmpty(themeStr))
                {
                    HttpCookie cookie = new HttpCookie("Theme_Pro", "Cupertino")
                    {
                        Expires = DateTime.Now.AddYears(1)
                    };
                    Response.Cookies.Add(cookie);
                }
                if (!String.IsNullOrEmpty(menuStr))
                {
                    HttpCookie cookie = new HttpCookie("MenuStyle_Pro", menuStr)
                    {
                        Expires = DateTime.Now.AddYears(1)
                    };
                    if (https == "true")
                    {
                        cookie.Secure = true;
                    }
                    Response.Cookies.Add(cookie);
                }
                PageContext.Redirect("~/default.aspx");
                return;
            }
            ////////////////////////////////////////////////////////////////
            if (!IsPostBack)
            {
            }
        }
        #endregion
        #region InitTreeMenu
        /// 
        /// 
        /// 
        /// 
        private Tree InitTreeMenu()
        {
            Tree treeMenu = new Tree
            {
                ID = "treeMenu",
                ShowBorder = false,
                ShowHeader = false,
                EnableIcons = true,
                AutoScroll = true,
                EnableSingleClickExpand = true
            };
            if (_menuType == "tree" || _menuType == "tree_minimode")
            {
                treeMenu.HideHScrollbar = true;
                treeMenu.ExpanderToRight = true;
                treeMenu.HeaderStyle = true;
                if (_menuType == "tree_minimode")
                {
                    treeMenu.MiniMode = true;
                    treeMenu.MiniModePopWidth = Unit.Pixel(300);
                    leftPanelToolGear.Hidden = true;
                    leftPanelToolCollapse.IconFont = IconFont.ChevronCircleRight;
                    leftPanel.Width = Unit.Pixel(50);
                    leftPanel.CssClass = "minimodeinside";
                }
            }
            leftPanel.Items.Add(treeMenu);
            XmlDocument doc = XmlDataSource1.GetXmlDocument();
            ResolveXmlDocument(doc);
            // 绑定 XML 数据源到树控件
            treeMenu.NodeDataBound += treeMenu_NodeDataBound;
            treeMenu.PreNodeDataBound += treeMenu_PreNodeDataBound;
            treeMenu.DataSource = doc;
            treeMenu.DataBind();
            return treeMenu;
        }
        #endregion
        #region ResolveXmlDocument
        private void ResolveXmlDocument(XmlDocument doc)
        {
            ResolveXmlDocument(doc, doc.DocumentElement.ChildNodes);
        }
        private int ResolveXmlDocument(XmlDocument doc, XmlNodeList nodes)
        {
            // nodes 中渲染到页面上的节点个数
            int nodeVisibleCount = 0;
            foreach (XmlNode node in nodes)
            {
                // Only process Xml elements (ignore comments, etc)
                if (node.NodeType == XmlNodeType.Element)
                {
                    XmlAttribute removedAttr;
                    // 是否叶子节点
                    bool isLeaf = node.ChildNodes.Count == 0;
                    // 所有过滤条件均是对叶子节点而言,而是否显示目录,要看是否存在叶子节点
                    if (isLeaf)
                    {
                        // 存在搜索关键字
                        if (!String.IsNullOrEmpty(_searchText))
                        {
                            XmlAttribute textAttr = node.Attributes["Text"];
                            if (textAttr != null)
                            {
                                if (!textAttr.Value.Contains(_searchText) && isLeaf)
                                {
                                    removedAttr = doc.CreateAttribute("Removed");
                                    removedAttr.Value = "true";
                                    node.Attributes.Append(removedAttr);
                                }
                            }
                        }
                    }
                    // 存在子节点
                    if (!isLeaf)
                    {
                        // 递归
                        int childVisibleCount = ResolveXmlDocument(doc, node.ChildNodes);
                        if (childVisibleCount == 0)
                        {
                            removedAttr = doc.CreateAttribute("Removed");
                            removedAttr.Value = "true";
                            node.Attributes.Append(removedAttr);
                        }
                    }
                    removedAttr = node.Attributes["Removed"];
                    if (removedAttr == null)
                    {
                        nodeVisibleCount++;
                    }
                }
            }
            return nodeVisibleCount;
        }
        #endregion
        #region treeMenu_NodeDataBound treeMenu_PreNodeDataBound
        /// 
        /// 树节点的绑定后事件
        /// 
        /// 
        /// 
        private void treeMenu_NodeDataBound(object sender, TreeNodeEventArgs e)
        {
            // 是否叶子节点
            bool isLeaf = e.XmlNode.ChildNodes.Count == 0;
            if (!String.IsNullOrEmpty(e.Node.Text))
            {
                if (GetIsNewHtml(e.XmlNode))
                {
                    e.Node.Text = "" + e.Node.Text + "";
                    if (e.Node.ParentNode != null)
                    {
                        e.Node.ParentNode.Text = "" + e.Node.ParentNode.Text + "";
                    }
                }
            }
            if (isLeaf)
            {
                // 设置节点的提示信息
                e.Node.ToolTip = e.Node.Text;
            }
            // 如果仅显示最新示例,或者存在搜索文本
            if (!String.IsNullOrEmpty(_searchText))
            {
                e.Node.Expanded = true;
            }
        }
        /// 
        /// 树节点的预绑定事件
        /// 
        /// 
        /// 
        private void treeMenu_PreNodeDataBound(object sender, TreePreNodeEventArgs e)
        {
            // 是否叶子节点
            bool isLeaf = e.XmlNode.ChildNodes.Count == 0;
            XmlAttribute removedAttr = e.XmlNode.Attributes["Removed"];
            if (removedAttr != null)
            {
                e.Cancelled = true;
            }
            bool isShow = GetIsPowerMenu(e.XmlNode);
            if (!isShow)
            {
                e.Cancelled = true;
            }
            if (isLeaf && !e.Cancelled)
            {
                _examplesCount++;
            }
        }
        #endregion
        #region 该节点是否显示
        /// 
        /// 该节点是否显示
        /// 
        /// 
        /// 
        private bool GetIsPowerMenu(XmlNode node)
        {
            bool result = true;
            XmlAttribute isNewAttr = node.Attributes["id"];
            if (isNewAttr != null)
            {
                result = BLL.CommonService.ReturnMenuByUserIdMenuId(this.CurrUser.UserId, isNewAttr.Value.ToString(), this.CurrUser.LoginProjectId);
            }
            return result;
        }
        #endregion
        #region GetIsNewHtml 是否必填项
        /// 
        /// 是否必填项
        /// 
        /// 
        /// 
        private bool GetIsNewHtml(XmlNode xmlNode)
        {
            bool isShow = false;
            if (xmlNode.Attributes["Text"].Value.Contains("*"))
            {
                isShow = true;
            }
            else
            {
            }
            return isShow;
        }
        #endregion
        #endregion
        #region Page_Load
        /// 
        /// 加载页面
        /// 
        /// 
        /// 
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Response.Expires = 0;               //设置过期时间
                Response.Cache.SetNoStore();			//在服务器端不缓存该页面
                Response.AppendHeader("Pragma", "no-cache");	//在客户端不缓存
                if (!string.IsNullOrEmpty(Request.Params["projectId"]))
                {
                    var pro = BLL.ProjectService.GetProjectByProjectId(Request.Params["projectId"]);
                    if (pro != null)
                    {
                        if (pro.ProjectState != "1")
                        {
                            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, pro.ProjectState, false, "1");
                        }
                        else
                        {
                            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, BLL.Const.ProjectState_1, false, "1");
                        }
                    }
                    this.drpProject.SelectedValue = Request.Params["projectId"];
                }
                else if (!string.IsNullOrEmpty(Request.Params["projectName"]))
                {
                    var getproject = ProjectService.GetProjectByProjectName(Request.Params["projectName"]);
                    if (getproject != null)
                    {
                        if (getproject.ProjectState != "1")
                        {
                            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, getproject.ProjectState, false, "1");
                        }
                        else
                        {
                            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, BLL.Const.ProjectState_1, false, "1");
                        }
                        this.drpProject.SelectedValue = getproject.ProjectId;
                    }
                }
                else if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
                {
                    var pro = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
                    if (pro != null)
                    {
                        if (pro.ProjectState != "1")
                        {
                            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, pro.ProjectState, false, "1");
                        }
                        else
                        {
                            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, BLL.Const.ProjectState_1, false, "1");
                        }
                    }
                    this.drpProject.SelectedValue = this.CurrUser.LoginProjectId;
                }
                this.CurrUser.LoginProjectId = this.drpProject.SelectedValue;
                this.btnPersonal.Text = BLL.UserService.GetUserNameByUserId(this.CurrUser.UserId);
                this.MenuSwitchMethod(Request.Params["menuType"]);
                this.InitMenuStyleButton();
                this.InitMenuModeButton();
                this.InitLangMenuButton();
                var project = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectId == this.drpProject.SelectedValue);
                if (project != null && !string.IsNullOrEmpty(project.ProjectCode))
                {
                    this.lblProjectName.Text = project.ProjectName;
                    this.hfProjectCode.Text = project.ProjectCode;
                }
                if (project != null && !string.IsNullOrEmpty(project.MonitorPW))
                {
                    this.hfMonitorPW.Text = Funs.EncryptionPassword(project.MonitorPW);
                }
                else
                {
                    this.hfMonitorPW.Text = "";
                }
                if (CurrUser.UserId == Const.hfnbdId)
                {
                    var sysSet17 = (from x in Funs.DB.Sys_Set where x.SetName == "视频监控密码" select x).ToList().FirstOrDefault();
                    if (sysSet17 != null)
                    {
                        this.hfProjectCode.Text = "admin";
                        this.hfMonitorPW.Text = Funs.EncryptionPassword(sysSet17.SetValue);
                    }
                }
                //GetWeather();
                if (Request.Cookies["SelectLan"] != null)
                {
                    HttpCookie lanCookie = Request.Cookies["SelectLan"];
                    if (lanCookie["lan"] != null)
                    {
                        drpSelectLan.SelectedValue = lanCookie["lan"];
                    }
                }
            }
        }
        private void GetWeather()
        {
            //try
            //{
            //    string appkey = "cc220b45380a453a08cb79fd2d40ea3e"; //配置您申请的appkey
            //                                                        //1.根据城市查询天气
            //                                                        //string url1 = "http://op.juhe.cn/onebox/weather/query";
            //                                                        //var parameters1 = new Dictionary();
            //    Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.drpProject.SelectedValue);
            //    string city = "武汉";
            //    if (project != null && !string.IsNullOrEmpty(project.City))
            //    {
            //        city = project.City;
            //    }
            //    if (!string.IsNullOrEmpty(city))
            //    {
            //        //parameters1.Add("cityname", city); //要查询的城市,如:温州、上海、北京
            //        //parameters1.Add("key", appkey);//你申请的key
            //        //parameters1.Add("dtype", ""); //返回数据的格式,xml或json,默认json
            //        //string result1 = sendPost(url1, parameters1, "get");
            //        Model.Weather oldWeather = BLL.WeatherService.GetWeatherByDateAndCity(DateTime.Now.Date, city);
            //        if (oldWeather == null)   //未生成天气记录
            //        {
            //            string result = BLL.CommonService.CreateGetHttpResponse("http://apis.juhe.cn/simpleWeather/query?city=" + city + "&key=" + appkey);
            //            var j2 = JsonConvert.DeserializeObject(result);
            //            if (j2.reason == "查询成功!")
            //            {
            //                string tem = j2.result.realtime.temperature;
            //                string weather = j2.result.realtime.info;
            //                if (weather == "多云")
            //                {
            //                    this.btnWeather.IconFont = IconFont.Cloud;
            //                }
            //                else if (weather == "晴")
            //                {
            //                    this.btnWeather.IconFont = IconFont.SunO;
            //                }
            //                else if (weather == "阴")
            //                {
            //                    this.btnWeather.IconFont = IconFont.Cloud;
            //                }
            //                else if (weather.Contains("雪"))
            //                {
            //                    this.btnWeather.IconFont = IconFont.SnowflakeO;
            //                }
            //                string alltem = j2.result.future[0].temperature;
            //                this.btnWeather.Text = tem;
            //                string date = DateTime.Now.Year + "年" + DateTime.Now.Month + "月" + DateTime.Now.Day + "日";
            //                this.btnWeather.ToolTip = date + " " + city + " " + weather + " " + alltem;
            //                Model.Weather newWeather = new Model.Weather();
            //                newWeather.WeatherId = SQLHelper.GetNewID();
            //                newWeather.City = city;
            //                newWeather.Date = DateTime.Now.Date;
            //                newWeather.WeatherRef = weather;
            //                newWeather.CurrTem = tem;
            //                newWeather.AllTem = alltem;
            //                BLL.WeatherService.AddWeather(newWeather);
            //            }
            //        }
            //        else
            //        {
            //            this.btnWeather.Text = oldWeather.CurrTem;
            //            string date = DateTime.Now.Year + "年" + DateTime.Now.Month + "月" + DateTime.Now.Day + "日";
            //            this.btnWeather.ToolTip = date + " " + city + " " + oldWeather.WeatherRef + " " + oldWeather.AllTem;
            //        }
            //    }
            //}
            //catch (Exception ex)
            //{
            //}
        }
        /// 
        /// Http (GET/POST)
        /// 
        /// 请求URL
        /// 请求参数
        /// 请求方法
        /// 响应内容
        static string sendPost(string url, IDictionary parameters, string method)
        {
            if (method.ToLower() == "post")
            {
                HttpWebRequest req = null;
                HttpWebResponse rsp = null;
                System.IO.Stream reqStream = null;
                try
                {
                    req = (HttpWebRequest)WebRequest.Create(url);
                    req.Method = method;
                    req.KeepAlive = false;
                    req.ProtocolVersion = HttpVersion.Version10;
                    req.Timeout = 5000;
                    req.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
                    byte[] postData = Encoding.UTF8.GetBytes(BuildQuery(parameters, "utf8"));
                    reqStream = req.GetRequestStream();
                    reqStream.Write(postData, 0, postData.Length);
                    rsp = (HttpWebResponse)req.GetResponse();
                    Encoding encoding = Encoding.GetEncoding(rsp.CharacterSet);
                    return GetResponseAsString(rsp, encoding);
                }
                catch (Exception ex)
                {
                    return ex.Message;
                }
                finally
                {
                    if (reqStream != null) reqStream.Close();
                    if (rsp != null) rsp.Close();
                }
            }
            else
            {
                //创建请求
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url + "?" + BuildQuery(parameters, "utf8"));
                //GET请求
                request.Method = "GET";
                request.ReadWriteTimeout = 5000;
                request.ContentType = "text/html;charset=UTF-8";
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream myResponseStream = response.GetResponseStream();
                StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
                //返回内容
                string retString = myStreamReader.ReadToEnd();
                return retString;
            }
        }
        /// 
        /// 组装普通文本请求参数。
        /// 
        /// Key-Value形式请求参数字典
        /// URL编码后的请求数据
        static string BuildQuery(IDictionary parameters, string encode)
        {
            StringBuilder postData = new StringBuilder();
            bool hasParam = false;
            IEnumerator> dem = parameters.GetEnumerator();
            while (dem.MoveNext())
            {
                string name = dem.Current.Key;
                string value = dem.Current.Value;
                // 忽略参数名或参数值为空的参数
                if (!string.IsNullOrEmpty(name))//&& !string.IsNullOrEmpty(value)
                {
                    if (hasParam)
                    {
                        postData.Append("&");
                    }
                    postData.Append(name);
                    postData.Append("=");
                    if (encode == "gb2312")
                    {
                        postData.Append(HttpUtility.UrlEncode(value, Encoding.GetEncoding("gb2312")));
                    }
                    else if (encode == "utf8")
                    {
                        postData.Append(HttpUtility.UrlEncode(value, Encoding.UTF8));
                    }
                    else
                    {
                        postData.Append(value);
                    }
                    hasParam = true;
                }
            }
            return postData.ToString();
        }
        /// 
        /// 把响应流转换为文本。
        /// 
        /// 响应流对象
        /// 编码方式
        /// 响应文本
        static string GetResponseAsString(HttpWebResponse rsp, Encoding encoding)
        {
            System.IO.Stream stream = null;
            StreamReader reader = null;
            try
            {
                // 以字符流的方式读取HTTP响应
                stream = rsp.GetResponseStream();
                reader = new StreamReader(stream, encoding);
                return reader.ReadToEnd();
            }
            finally
            {
                // 释放资源
                if (reader != null) reader.Close();
                if (stream != null) stream.Close();
                if (rsp != null) rsp.Close();
            }
        }
        /// 
        /// 菜单树样式
        /// 
        private void InitMenuStyleButton()
        {
            string menuStyle = "tree";
            HttpCookie menuStyleCookie = Request.Cookies["MenuStyle_Pro"];
            if (menuStyleCookie != null)
            {
                menuStyle = menuStyleCookie.Value;
            }
            SetSelectedMenuItem(MenuStyle, menuStyle);
        }
        /// 
        /// 
        /// 
        private void InitMenuModeButton()
        {
            string menuMode = "normal";
            HttpCookie menuModeCookie = Request.Cookies["MenuMode_Pro"];
            if (menuModeCookie != null)
            {
                menuMode = menuModeCookie.Value;
            }
            SetSelectedMenuItem(MenuMode, menuMode);
        }
        /// 
        /// 加载菜单语言
        /// 
        private void InitLangMenuButton()
        {
            string language = "zh_CN";
            HttpCookie languageCookie = Request.Cookies["Language_Pro"];
            if (languageCookie != null)
            {
                language = languageCookie.Value;
            }
            SetSelectedMenuItem(MenuLang, language);
        }
        /// 
        /// 过滤菜单
        /// 
        /// 
        /// 
        private void SetSelectedMenuItem(MenuButton menuButton, string selectedDataTag)
        {
            foreach (MenuItem item in menuButton.Menu.Items)
            {
                MenuCheckBox checkBox = (item as MenuCheckBox);
                if (checkBox != null)
                {
                    checkBox.Checked = checkBox.AttributeDataTag == selectedDataTag;
                }
            }
        }
        #endregion
        protected void drpProject_SelectedIndexChanged(object sender, EventArgs e)
        {
            this.CurrUser.LoginProjectId = this.drpProject.SelectedValue;
            this.Tab1.RefreshIFrame();
            PageContext.RegisterStartupScript("parent.removeActiveTab();");
            MenuSwitchMethod(this.CurrUser.LastMenuType);
            GetWeather();
        }
        /// 
        ///  功能模块切换方法
        /// 
        /// 
        protected void MenuSwitchMethod(string type)
        {
            this.XmlDataSource1.DataFile = "common/Menu_Personal.xml";
            this.leftPanel.Hidden = true;
            var projectUser = BLL.ProjectUserService.GetProjectUserByUserIdProjectId(this.CurrUser.LoginProjectId, this.CurrUser.UserId);
            if (projectUser != null && type != BLL.Const.Menu_Opinion)
            {
                string roleTypes = string.Empty;
                string roleCNs = string.Empty;
                if (projectUser.RoleId != null && projectUser.RoleId.Length > 0)
                {
                    string[] roles = projectUser.RoleId.Split(',');
                    foreach (var item in roles)
                    {
                        var role = BLL.RoleService.GetRoleByRoleId(item);
                        if (role != null && !string.IsNullOrEmpty(role.RoleType))
                        {
                            roleTypes = role.RoleType + ",";
                        }
                        if (role != null && !string.IsNullOrEmpty(role.CNProfessionalIds))
                        {
                            roleCNs = role.CNProfessionalIds + ",";
                        }
                    }
                }
                this.Tab1.IFrameUrl = "~/common/mainProject2.aspx";
            }
            else
            {
                this.Tab1.IFrameUrl = "~/common/mainProject2.aspx";
            }
            this.CurrUser.LastProjectId = null;
            if (!string.IsNullOrEmpty(type))
            {
                this.CurrUser.LastProjectId = this.CurrUser.LoginProjectId;
                if (CommonService.IsHaveSystemPower(this.CurrUser.UserId, type, this.CurrUser.LoginProjectId) || type == Const.Menu_Personal || type == Const.Menu_ToDo)
                {
                    this.XmlDataSource1.DataFile = "common/" + type + ".xml";
                    this.leftPanel.Hidden = false;
                    this.Tab1.IFrameUrl = "~/common/main" + type + ".aspx";
                    if (type == Const.Menu_Personal)
                    {
                        this.Tab1.IFrameUrl = "~/Personal/PersonalInfo.aspx";
                    }
                    else if (type == Const.Menu_ProjectSet)
                    {
                        this.Tab1.IFrameUrl = "~/ProjectData/ProjectSetView.aspx";
                    }
                    if (type == Const.Menu_PZHGL)
                    {
                        //this.Tab1.IFrameUrl = "~/PZHGL/InformationProject/ConstructionPlan.aspx";
                        this.Tab1.IFrameUrl = "~/HSSE/Manager/HSSELog.aspx";
                        this.Tab1.Title = "施工日志";
                    }
                    //else if (type == Const.Menu_PGJSX)
                    //{
                    //    this.Tab1.IFrameUrl = "~/PZHGL/GJSX/GJSXList.aspx";
                    //    this.Tab1.Title = "关键事项";
                    //}
                    else if (type == Const.Menu_CLGL)
                    {
                        this.Tab1.IFrameUrl = "~/CLGL/PipelineMaterialSumList.aspx";
                        this.Tab1.Title = "管道材料汇总表";
                    }
                    else if (type == Const.Menu_Opinion)
                    {
                        this.leftPanel.Hidden = true;
                        this.Tab1.IFrameUrl = "~/Opinion/OpinionCollection.aspx";
                        this.Tab1.Title = "意见收集";
                    }
                    else if (type == Const.Menu_CommandDispatchCenter)
                    {
                        this.leftPanel.Hidden = true;
                        this.Tab1.IFrameUrl = "~/ZHDD/ZHDD.aspx";
                        this.Tab1.Title = "指挥调度中心";
                    }
                    else if (type == Const.Menu_Doc)
                    {
                        this.Tab1.IFrameUrl = "~/DocManage/DocManage.aspx";
                        this.Tab1.Title = "协调与沟通";
                    }
                    else if (type == Const.Menu_ToDo)
                    {
                        this.Tab1.IFrameUrl = "~/SysManage/ProjectToDo.aspx";
                    }
                    else
                    {
                        this.Tab1.Title = "首页";
                    }
                }
                else
                {
                    Alert.ShowInParent("您没有此模块操作权限,请联系管理员授权!", MessageBoxIcon.Warning);
                    return;
                }
            }
            this.CurrUser.LastMenuType = type;
            UserService.UpdateLastUserInfo(this.CurrUser.UserId, type, false, this.CurrUser.LoginProjectId);
            InitTreeMenu();
        }
        protected void btnHome_Click(object sender, EventArgs e)
        {
            //修改本部用户都能进
            //this.CurrUser.UnitId == Const.drpProject &&
            //if (string.IsNullOrEmpty(this.CurrUser.LastProjectId)
            //    && ((this.CurrUser.IsOffice == true) || this.CurrUser.UserId == Const.sysglyId || this.CurrUser.UserId == Const.hfnbdId))
            //{
            //    UserService.UpdateLastUserInfo(this.CurrUser.UserId, this.CurrUser.LastMenuType, false, this.CurrUser.LoginProjectId);
            //    this.CurrUser.LastProjectId = this.CurrUser.LoginProjectId;
            //    PageContext.Redirect("~/index.aspx", "_top");
            //}
            //else
            //{
            //    this.MenuSwitchMethod(string.Empty);
            //}
            PageContext.Redirect("~/indexProject.aspx", "_top");
        }
        protected void btnCQMS_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_CQMS);
        }
        protected void btnPersonal_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_Personal);
        }
        protected void btnProjectSet_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_ProjectSet);
        }
        protected void btnHSSE_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_HSSE);
        }
        protected void btnHJGL_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_HJGL);
        }
        protected void btnCLGL_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_CLGL);
        }
        protected void btnPHTGL_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_PHTGL);
        }
        protected void btnTestRun_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_TestRun);
        }
        protected void btnTransfer_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_Transfer);
        }
        protected void btnPGJSX_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_PGJSX);
        }
        protected void btnPZHGL_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_PZHGL);
        }
        protected void btnDigitalSite_Click(object sender, EventArgs e)
        {
            string url = ConfigurationManager.AppSettings["Video_URL"] + "#/screen";
            Response.Write("");
            //  this.MenuSwitchMethod(Const.Menu_DigitalSite);
        }
        protected void btnDoc_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_Doc);
        }
        protected string VideoURL
        {
            get
            {
                return ConfigurationManager.AppSettings["Video_URL"] + "#/screen";
            }
        }
        //protected string CommandDispatchCenterURL
        //{
        //    get
        //    {
        //        //string username = "rdys_test";
        //        //string password = "Runde.2024";
        //        string username = "合肥诺必达";
        //        string password = "Hf123456@";
        //        var res1 = APIGetHttpService.Http("https://caps.runde.pro/api/index.php?ctl=tool&act=get_pkey&user_name=" + username + "&pwd=" + password, "POST");
        //        var j1 = JsonConvert.DeserializeObject(res1);
        //        string data = j1.data;
        //        var res2 = APIGetHttpService.Http("https://caps.runde.pro/api/index.php?ctl=tool&act=get_token&user_name=" + username + "&pkey=" + j1.data, "POST");
        //        var j2 = JsonConvert.DeserializeObject(res2);
        //        string session_id = j2.session_id;
        //        string token = j2.token;
        //        string url = "https://caps.runde.pro/login/#token=" + session_id + "&user_name=" + username + "target=home";
        //        return url;
        //    }
        //}
        protected void btnPDigData_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_PDigData);
        }
        protected void btnJDGL_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_JDGL);
        }
        protected void btnOpinion_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_Opinion);
        }
        protected void btnCommandDispatch_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_CommandDispatchCenter);
        }
        //protected void btnCommandDispatch_Click(object sender, EventArgs e)
        //{
        //    string url = "ZHDD/ZHDD.aspx";
        //    Response.Write("");
        //}
        protected void btnTodo_Click(object sender, EventArgs e)
        {
            this.MenuSwitchMethod(Const.Menu_ToDo);
        }
        protected void ProjectZJ_Click(object sender, EventArgs e)
        {
            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, BLL.Const.ProjectState_1, false);
            if (this.drpProject.Items.Count > 0)
            {
                this.drpProject.SelectedIndex = 0;
                this.CurrUser.LoginProjectId = this.drpProject.SelectedValue;
            }
        }
        protected void ProjectTG_Click(object sender, EventArgs e)
        {
            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, BLL.Const.ProjectState_2, false);
            if (this.drpProject.Items.Count > 0)
            {
                this.drpProject.SelectedIndex = 0;
                this.CurrUser.LoginProjectId = this.drpProject.SelectedValue;
            }
        }
        protected void ProjectJG_Click(object sender, EventArgs e)
        {
            ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, BLL.Const.ProjectState_3, false);
            if (this.drpProject.Items.Count > 0)
            {
                this.drpProject.SelectedIndex = 0;
                this.CurrUser.LoginProjectId = this.drpProject.SelectedValue;
            }
        }
        protected void btnHelp_Click(object sender, EventArgs e)
        {
            if (this.CurrUser.UserId == Const.hfnbdId)
            {
                PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/Help&menuId={1}", Const.UnitId_CWCEC, BLL.Const.SysConstSetMenuId)));
            }
            else
            {
                PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/Help&menuId={1}&type=-1", Const.UnitId_CWCEC, BLL.Const.SysConstSetMenuId)));
            }
        }
        /// 
        /// 呼叫
        /// 
        /// 
        /// 
        protected void btnPhoneClick(object sender, EventArgs e)
        {
            PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("~/ProjectData/ProjectUserContact.aspx")));
        }
        /// 
        /// 待办
        /// 
        /// 
        /// 
        protected void btnTodo_OnClick(object sender, EventArgs e)
        {
            PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("~/Work/ToDoList.aspx")));
        }
        protected void drpSelectLan_SelectedIndexChanged(object sender, EventArgs e)
        {
            string https = ConfigurationManager.AppSettings["Https"];
            HttpCookie lanCookie = Request.Cookies["SelectLan"];
            lanCookie["lan"] = drpSelectLan.SelectedValue;
            lanCookie.Expires = DateTime.Now.AddDays(1);
            if (https == "true")
            {
                lanCookie.Secure = true;
            }
            Response.Cookies.Add(lanCookie);
            Response.Redirect(Request.UrlReferrer.ToString());//刷新当前页面
        }
        /// 
        /// 工作台
        /// 
        /// 
        /// 
        protected void btnWorkBench_Click(object sender, EventArgs e)
        {
            PageContext.Redirect("~/WorkBench.aspx", "_top");
        }
        /// 
        /// 进入项目级
        /// 
        /// 
        /// 
        protected void btnProjectLists_Click(object sender, EventArgs e)
        {
            PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("~/SelectProject.aspx", "查看 - ")));
        }
        /// 
        /// 公司级看板
        /// 
        /// 
        /// 
        //protected void btnCommpany_Click(object sender, EventArgs e)
        //{
        //    if (string.IsNullOrEmpty(this.CurrUser.LastProjectId)
        //       && ((this.CurrUser.IsOffice == true) || this.CurrUser.UserId == Const.sysglyId || this.CurrUser.UserId == Const.hfnbdId))
        //    {
        //        UserService.UpdateLastUserInfo(this.CurrUser.UserId, this.CurrUser.LastMenuType, false, this.CurrUser.LoginProjectId);
        //        this.CurrUser.LastProjectId = this.CurrUser.LoginProjectId;
        //        PageContext.Redirect("~/index.aspx", "_top");
        //    }
        //}
    }
}