2025-03-27 15:05:14 +08:00

120 lines
5.7 KiB
C#

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
}
}