private ArrayList SecInfoOption(int id)//声明方法
{
ArrayList list = new ArrayList();
SqlParameter sp_Father_ID = new SqlParameter("@PurViewFatherID", SqlDbType.Int, 4);
sp_Father_ID.Value = id;
using (DataSet ds = SqlHelper.ExecuteDataSet(SqlHelper.MainConnectionString, CommandType.StoredProcedure, "P_PurView_GetAllRoot", "cPur", new SqlParameter[] { sp_Father_ID }))
{
string tempid = "0";
DataTable dt = ds.Tables["cPur"];
for (int i = 0; i < dt.Rows.Count; i++)
{
tempid = dt.Rows[i]["PurViewID"].ToString();
if (tempid == "13" || tempid == "15" || tempid == "20")
{
continue;
}
m_pv tree = new m_pv();
tree.PurViewID = Convert.ToInt32(dt.Rows[i]["PurViewID"].ToString());
tree.PurViewFatherID = Convert.ToInt32(dt.Rows[i]["PurViewFatherID"].ToString());
if (i == (dt.Rows.Count - 1))
{
tree.Name = this.strLine + "└" + dt.Rows[i]["Name"].ToString();
}
else
{
tree.Name = this.strLine + "├" + dt.Rows[i]["Name"].ToString();
}
tree.LinkAddress = dt.Rows[i]["LinkAddress"].ToString();
list.Add(tree);
this.strLine = this.strLine + " ";
ArrayList lsd = this.SecInfoOption(Convert.ToInt32(dt.Rows[i]["PurViewID"].ToString()));
foreach (m_pv tp in lsd)
{
m_pv tempP = new m_pv();
tempP.PurViewID = tp.PurViewID;
tempP.PurViewFatherID = tp.PurViewFatherID;
tempP.Name = tp.Name;
tempP.RoleID = tp.RoleID;
tempP.LinkAddress = tp.LinkAddress;
tempP.CityID = tp.CityID;
list.Add(tempP);
}
this.strLine = this.strLine.Substring(0, this.strLine.Length - 2);
}
dt.Dispose();
ds.Dispose();
}
return list;
}