/// <summary> /// 获取所有权限及对应角色是否具有该权限 /// </summary> /// <param name="sw">参见模型</param> /// <returns>参见模型</returns> public static IEnumerable <T_SYSSEC_RIGHT_ByRole_Model> getRightByRoleModel(T_SYSSEC_ROLE_RIGHT_SW sw) { DataTable dtRight = BaseDT.T_SYSSEC_RIGHT.getDT(new T_SYSSEC_RIGHT_SW { SYSFLAG = ConfigCls.getSystemFlag() }); DataTable dtRoleRight = BaseDT.T_SYSSEC_ROLE_RIGHT.getDT(new T_SYSSEC_ROLE_RIGHT_SW { ROLEID = sw.ROLEID }); return(getRightByRoleTmpModel(dtRight, dtRoleRight, "")); }
/// <summary> /// 根据权限编号判断是否存在 /// </summary> /// <param name="dt">角色DataTable</param> /// <param name="sw">参见模型</param> /// <returns>true存在false不存在 </returns> public static bool isDTExists(DataTable dt, T_SYSSEC_ROLE_RIGHT_SW sw) { DataRow[] dr = dt.Select("RIGHTID='" + sw.RIGHTID + "'"); if (dr.Length == 0) { return(false); } else { return(true); } }
/// <summary> /// 获取角色所拥有的权限信息,多个用户以逗号分隔 /// </summary> /// <returns>参见模型</returns> public static DataTable getDT(T_SYSSEC_ROLE_RIGHT_SW sw) { if (string.IsNullOrEmpty(sw.ROLEID)) { sw.ROLEID = "0"; } StringBuilder sb = new StringBuilder(); sb.AppendFormat("SELECT ROLEID, RIGHTID"); sb.AppendFormat(" FROM T_SYSSEC_ROLE_RIGHT"); sb.AppendFormat(" WHERE 1=1"); if (string.IsNullOrEmpty(sw.ROLEID) == false) { sb.AppendFormat(" AND ROLEID in({0})", ClsSql.EncodeSql(sw.ROLEID)); } sb.AppendFormat(" ORDER BY RIGHTID "); DataSet ds = DataBaseClass.FullDataSet(sb.ToString()); return(ds.Tables[0]); }