/// <summary> /// 得到一个对象实体 /// </summary> public Model.manager_role GetModel(int id) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 id,role_name,role_type,is_sys from " + databaseprefix + "manager_role "); strSql.Append(" where id=@id"); OleDbParameter[] parameters = { new OleDbParameter("@id", OleDbType.Integer, 4) }; parameters[0].Value = id; Model.manager_role model = new Model.manager_role(); DataSet ds = DbHelperOleDb.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { #region 父表信息 if (ds.Tables[0].Rows[0]["id"].ToString() != "") { model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString()); } model.role_name = ds.Tables[0].Rows[0]["role_name"].ToString(); if (ds.Tables[0].Rows[0]["role_type"].ToString() != "") { model.role_type = int.Parse(ds.Tables[0].Rows[0]["role_type"].ToString()); } if (ds.Tables[0].Rows[0]["is_sys"].ToString() != "") { model.is_sys = int.Parse(ds.Tables[0].Rows[0]["is_sys"].ToString()); } #endregion #region 子表信息 StringBuilder strSql2 = new StringBuilder(); strSql2.Append("select id,role_id,nav_name,action_type from " + databaseprefix + "manager_role_value "); strSql2.Append(" where role_id=@role_id"); OleDbParameter[] parameters2 = { new OleDbParameter("@role_id", OleDbType.Integer, 4) }; parameters2[0].Value = id; DataSet ds2 = DbHelperOleDb.Query(strSql2.ToString(), parameters2); if (ds2.Tables[0].Rows.Count > 0) { List <Model.manager_role_value> models = new List <Model.manager_role_value>(); Model.manager_role_value modelt; foreach (DataRow dr in ds2.Tables[0].Rows) { modelt = new Model.manager_role_value(); if (dr["id"].ToString() != "") { modelt.id = int.Parse(dr["id"].ToString()); } if (dr["role_id"].ToString() != "") { modelt.role_id = int.Parse(dr["role_id"].ToString()); } modelt.nav_name = dr["nav_name"].ToString(); modelt.action_type = dr["action_type"].ToString(); models.Add(modelt); } model.manager_role_values = models; } #endregion return(model); } else { return(null); } }
/// <summary> /// �õ�һ������ʵ�� /// </summary> public Model.manager_role GetModel(int id) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 id,role_name,role_type,is_sys from " + databaseprefix + "manager_role "); strSql.Append(" where id=@id"); SqlParameter[] parameters = { new SqlParameter("@id", SqlDbType.Int,4)}; parameters[0].Value = id; Model.manager_role model = new Model.manager_role(); DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { #region ������Ϣ if (ds.Tables[0].Rows[0]["id"].ToString() != "") { model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString()); } model.role_name = ds.Tables[0].Rows[0]["role_name"].ToString(); if (ds.Tables[0].Rows[0]["role_type"].ToString() != "") { model.role_type = int.Parse(ds.Tables[0].Rows[0]["role_type"].ToString()); } if (ds.Tables[0].Rows[0]["is_sys"].ToString() != "") { model.is_sys = int.Parse(ds.Tables[0].Rows[0]["is_sys"].ToString()); } #endregion #region �ӱ���Ϣ StringBuilder strSql2 = new StringBuilder(); strSql2.Append("select id,role_id,nav_name,action_type from dt_manager_role_value "); strSql2.Append(" where role_id=@role_id"); SqlParameter[] parameters2 = { new SqlParameter("@role_id", SqlDbType.Int,4)}; parameters2[0].Value = id; DataSet ds2 = DbHelperSQL.Query(strSql2.ToString(), parameters2); if (ds2.Tables[0].Rows.Count > 0) { List<Model.manager_role_value> models = new List<Model.manager_role_value>(); Model.manager_role_value modelt; foreach (DataRow dr in ds2.Tables[0].Rows) { modelt = new Model.manager_role_value(); if (dr["id"].ToString() != "") { modelt.id = int.Parse(dr["id"].ToString()); } if (dr["role_id"].ToString() != "") { modelt.role_id = int.Parse(dr["role_id"].ToString()); } modelt.nav_name = dr["nav_name"].ToString(); modelt.action_type = dr["action_type"].ToString(); models.Add(modelt); } model.manager_role_values = models; } #endregion return model; } else { return null; } }
private void get_navigation_childs(HttpContext context, DataTable oldData, int parent_id, int role_type, List <Model.manager_role_value> ls) { DataRow[] dr = oldData.Select("parent_id=" + parent_id); bool isWrite = false; //是否输出开始标签 for (int i = 0; i < dr.Length; i++) { //检查是否显示在界面上==================== bool isActionPass = true; if (int.Parse(dr[i]["is_lock"].ToString()) == 1) { isActionPass = false; } //检查管理员权限========================== if (isActionPass && role_type > 1) { string[] actionTypeArr = dr[i]["action_type"].ToString().Split(','); foreach (string action_type_str in actionTypeArr) { //如果存在显示权限资源,则检查是否拥有该权限 if (action_type_str == "Show") { Model.manager_role_value modelt = ls.Find(p => p.nav_name == dr[i]["name"].ToString() && p.action_type == "Show"); if (modelt == null) { isActionPass = false; } } } } //如果没有该权限则不显示 if (!isActionPass) { if (isWrite && i == (dr.Length - 1) && parent_id > 0) { context.Response.Write("</ul>\n"); } continue; } //如果是顶级导航 if (parent_id == 0) { context.Response.Write("<div class=\"list-group\">\n"); context.Response.Write("<h1 title=\"" + dr[i]["sub_title"].ToString() + "\">"); if (!string.IsNullOrEmpty(dr[i]["icon_url"].ToString().Trim())) { context.Response.Write("<img src=\"" + dr[i]["icon_url"].ToString() + "\" />"); } context.Response.Write("</h1>\n"); context.Response.Write("<div class=\"list-wrap\">\n"); context.Response.Write("<h2>" + dr[i]["title"].ToString() + "<i></i></h2>\n"); //调用自身迭代 this.get_navigation_childs(context, oldData, int.Parse(dr[i]["id"].ToString()), role_type, ls); context.Response.Write("</div>\n"); context.Response.Write("</div>\n"); } else //下级导航 { if (!isWrite) { isWrite = true; context.Response.Write("<ul>\n"); } context.Response.Write("<li>\n"); context.Response.Write("<a navid=\"" + dr[i]["name"].ToString() + "\""); if (!string.IsNullOrEmpty(dr[i]["link_url"].ToString())) { if (int.Parse(dr[i]["channel_id"].ToString()) > 0) { context.Response.Write(" href=\"" + dr[i]["link_url"].ToString() + "?channel_id=" + dr[i]["channel_id"].ToString() + "\" target=\"mainframe\""); } else { context.Response.Write(" href=\"" + dr[i]["link_url"].ToString() + "\" target=\"mainframe\""); } } if (!string.IsNullOrEmpty(dr[i]["icon_url"].ToString())) { context.Response.Write(" icon=\"" + dr[i]["icon_url"].ToString() + "\""); } context.Response.Write(" target=\"mainframe\">\n"); context.Response.Write("<span>" + dr[i]["title"].ToString() + "</span>\n"); context.Response.Write("</a>\n"); //调用自身迭代 this.get_navigation_childs(context, oldData, int.Parse(dr[i]["id"].ToString()), role_type, ls); context.Response.Write("</li>\n"); if (i == (dr.Length - 1)) { context.Response.Write("</ul>\n"); } } } }