using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using SuperMap.RealEstate.Web.Utility; using SuperMap.RealEstate.Web.UI.WebControls; using SuperMap.RealEstate.CoreFrameWork; using SuperMap.RealEstate.CoreFrameWork.Dictionary.Business; using HWSB = SuperMap.RealEstate.HighWay.Storage.Business; using MSPB = SuperMap.RealEstate.MobileServicePlatform.Business; namespace SuperMap.RealEstate.ExchangeData.Modules.ControlVersion { public partial class ControlVersionTree : BasePage { protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) return; BindingTreeView(true); } #region 方法 -> 绑定服务区 protected void BindingTreeView(bool withChildNodes) { MyTreeView.Nodes.Clear(); TreeNode _TreeNodeAll = new TreeNode(); //_TreeNodeAll.NavigateUrl = UriHelper.AddRequestToUrl("SERVERPARTSHOPList.aspx", null); _TreeNodeAll.Text = "所有省份"; _TreeNodeAll.Value = "1=1"; _TreeNodeAll.Expanded = true; MyTreeView.Nodes.Add(_TreeNodeAll); MSPB.SERVERPART _SERVERPART = new MSPB.SERVERPART(Transaction); FieldExplain _FieldExplain = DictionaryHelper.GetFieldExplain("DIVISION_CODE", Transaction); DataTable SERVERPART = _SERVERPART.ExecuteDataTable( @"SELECT SERVERPARTCODE,SERVERPART_NAME,PROVINCE_CODE FROM HIGHWAY_EXCHANGE.V_SOFTUPDATE_MAC GROUP BY SERVERPARTCODE,SERVERPART_NAME,PROVINCE_CODE ORDER BY SERVERPARTCODE"); DataTable SERVERPARTSHOP = _SERVERPART.ExecuteDataTable( $@"SELECT SHOPCODE,SHOPNAME,PROVINCE_CODE,SERVERPARTCODE FROM HIGHWAY_EXCHANGE.V_SOFTUPDATE_MAC {(string.IsNullOrEmpty(TextBoxSearch.Text) ? "" : " WHERE SHOPNAME LIKE '%" + TextBoxSearch.Text + "%'")} GROUP BY SHOPCODE,SHOPNAME,PROVINCE_CODE,SERVERPARTCODE ORDER BY SHOPNAME,SHOPCODE"); foreach (FieldEnum _FieldEnum in new FieldEnum(Transaction).FillCollection( $@"WHERE FieldEnum_PID = -1 AND FieldExplain_ID = {_FieldExplain.FieldExplain_ID} AND FieldEnum_Value IN (SELECT PROVINCE_CODE FROM MOBILESERVICE_PLATFORM.T_SERVERPART@MSPB) ORDER BY FIELDENUM_INDEX")) { TreeNode _TreeNodeFirst = new TreeNode(); _TreeNodeFirst.Text = $"【{_FieldEnum.FieldEnum_Value}】{_FieldEnum.FieldEnum_Name}"; _TreeNodeFirst.Value = _FieldEnum.FieldEnum_Value; _TreeNodeFirst.NavigateUrl = "ControlVersionList.aspx?ALLCODE=" + (_FieldEnum.FieldEnum_Value + ",,").ToEncrypt(); _TreeNodeAll.ChildNodes.Add(_TreeNodeFirst); foreach (DataRow _DataRow in SERVERPART.Select("PROVINCE_CODE = " + _FieldEnum.FieldEnum_Value)) { string _ALLCODE = (_FieldEnum.FieldEnum_Value + "," + _DataRow["SERVERPARTCODE"].ToString() + ",").ToEncrypt(); TreeNode _TreeNodeServerPart = new TreeNode(); _TreeNodeServerPart.NavigateUrl = "ControlVersionList.aspx?ALLCODE=" + _ALLCODE; _TreeNodeServerPart.Text = $"【{_DataRow["SERVERPARTCODE"].ToString()}】{_DataRow["SERVERPART_NAME"].ToString()}"; _TreeNodeServerPart.Value = _DataRow["SERVERPARTCODE"].ToString(); _TreeNodeFirst.ChildNodes.Add(_TreeNodeServerPart); foreach (DataRow _DataRowShop in SERVERPARTSHOP.Select("PROVINCE_CODE = " + _FieldEnum.FieldEnum_Value + " AND SERVERPARTCODE = '" + _DataRow["SERVERPARTCODE"].ToString() + "'")) { _ALLCODE = (_FieldEnum.FieldEnum_Value + "," + _DataRow["SERVERPARTCODE"].ToString() + "," + _DataRowShop["SHOPCODE"].ToString()).ToEncrypt(); TreeNode _TreeNodeShop = new TreeNode(); _TreeNodeShop.NavigateUrl = "ControlVersionList.aspx?ALLCODE=" + _ALLCODE; _TreeNodeShop.Text = $"【{_DataRowShop["SHOPCODE"].ToString()}】{_DataRowShop["SHOPNAME"].ToString()}"; _TreeNodeShop.Value = _DataRowShop["SHOPCODE"].ToString(); _TreeNodeServerPart.ChildNodes.Add(_TreeNodeShop); } if (_TreeNodeServerPart.ChildNodes.Count == 0) _TreeNodeFirst.ChildNodes.Remove(_TreeNodeServerPart); } if (_TreeNodeFirst.ChildNodes.Count == 0) _TreeNodeAll.ChildNodes.Remove(_TreeNodeFirst); } if (_TreeNodeAll.ChildNodes.Count == 0) MyTreeView.Nodes.Remove(_TreeNodeAll); //MyTreeView.ExpandAll(); } #endregion #region 方法 -> 查询TreeView数据事件 protected void ButtonSearch_Click(object sender, EventArgs e) { BindingTreeView(false); } #endregion #region 方法 -> 展开收起按钮 protected void Expand_Click(object sender, EventArgs e) { if (Expand.Text == "收起↑") { foreach (TreeNode _TreeNode in MyTreeView.Nodes) { _TreeNode.Expanded = false; } Expand.Text = "展开↓"; } else if (Expand.Text == "展开↓") { MyTreeView.ExpandAll(); Expand.Text = "收起↑"; } } #endregion } }