/// <summary> /// 获取所有角色及该用户拥有的角色 /// </summary> /// <param name="sw">参见模型</param> /// <returns>参见模型</returns> public static IEnumerable <T_SYSSEC_ROLE_USER_Model> getRoleAndUidModel(T_SYSSEC_ROLE_SW sw) { var result = new List <T_SYSSEC_ROLE_USER_Model>(); DataTable dtRole = BaseDT.T_SYSSEC_ROLE.getDT(new T_SYSSEC_ROLE_SW { SYSFLAG = ConfigCls.getSystemFlag() }); DataTable dtUR = BaseDT.T_SYSSEC_USER_ROLE.getDT(new T_SYSSEC_USER_ROLE_SW { USERID = sw.USERID }); for (int i = 0; i < dtRole.Rows.Count; i++) { T_SYSSEC_ROLE_USER_Model m = new T_SYSSEC_ROLE_USER_Model(); m.isCheck = "0";//默认不拥有 if (dtUR != null) { DataRow[] dr = dtUR.Select("ROLEID=" + dtRole.Rows[i]["ROLEID"].ToString()); if (dr.Length == 1) { m.isCheck = "1";//拥有角色 } } m.ROLEID = dtRole.Rows[i]["ROLEID"].ToString(); m.ROLENAME = dtRole.Rows[i]["ROLENAME"].ToString(); result.Add(m); } dtRole.Clear(); dtRole.Dispose(); dtUR.Clear(); dtUR.Dispose(); return(result); }
/// <summary> /// 根据查询条件获取某一条用户信息记录,用于修改、删除、用户登录验证 /// </summary> /// <param name="sw">参见模型</param> /// <returns>参见模型</returns> public static T_SYSSEC_ROLE_Model getModel(T_SYSSEC_ROLE_SW sw) { DataTable dt = BaseDT.T_SYSSEC_ROLE.getDT(sw); T_SYSSEC_ROLE_Model m = new T_SYSSEC_ROLE_Model(); if (dt.Rows.Count > 0) { int i = 0; //数据库表字段 m.ROLEID = dt.Rows[i]["ROLEID"].ToString(); m.ROLENAME = dt.Rows[i]["ROLENAME"].ToString(); m.ROLENOTE = dt.Rows[i]["ROLENOTE"].ToString(); m.ORDERBY = dt.Rows[i]["ORDERBY"].ToString(); m.ROLELEVEL = dt.Rows[i]["ROLELEVEL"].ToString(); //扩充字段 } return(m); }
/// <summary> /// 获取数据,获取所有角色 /// </summary> /// <returns>参见模型</returns> public static DataTable getDT(T_SYSSEC_ROLE_SW sw) { StringBuilder sb = new StringBuilder(); sb.AppendFormat("SELECT ROLEID, ROLENAME, ROLENOTE, SYSFLAG,ROLELEVEL, ORDERBY"); sb.AppendFormat(" FROM T_SYSSEC_ROLE"); sb.AppendFormat(" WHERE 1=1"); if (string.IsNullOrEmpty(sw.ROLEID) == false) { sb.AppendFormat(" AND ROLEID = '{0}'", ClsSql.EncodeSql(sw.ROLEID)); } if (string.IsNullOrEmpty(sw.SYSFLAG) == false) { sb.AppendFormat(" AND SYSFLAG = '{0}'", ClsSql.EncodeSql(sw.SYSFLAG)); } //if (string.IsNullOrEmpty(sw.USERID) == false) // sb.AppendFormat(" AND USERID = '{0}'", ClsSql.EncodeSql(sw.USERID)); string curOrg = SystemCls.getCurUserOrgNo(); if (PublicCls.OrgIsShi(curOrg)) { sb.AppendFormat(" AND ROLELEVEL>=1"); } else if (PublicCls.OrgIsXian(curOrg)) { sb.AppendFormat(" AND ROLELEVEL>=2"); } else { sb.AppendFormat(" AND ROLELEVEL>=3"); } sb.AppendFormat(" ORDER BY ORDERBY "); DataSet ds = DataBaseClass.FullDataSet(sb.ToString()); return(ds.Tables[0]); }