温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:通用OA系统源代码
当前文件:
OAdemo/Components/AssignRights.cs[5K,2009-6-12 11:50:41],打开代码结构图
OAdemo/Components/AssignRights.cs[5K,2009-6-12 11:50:41],打开代码结构图1using System; 2
using System.Data; 3
using System.Data.SqlClient; 4
5
namespace UDS.Components 6
...{ 7
enum AssignRightsAction 8
...{ 9
RULE_ADD =1, 10
RULE_DELETE =2, 11
ACTIVITY_ADD =3, 12
ACTIVITY_DELETE =4, 13
ACTIVITY_UPDATE =5 14
}; 15
/**//// <summary> 16
/// 对权限的操作 17
/// </summary> 18
public class AssignRights 19
...{ 20
添加权限#region 添加权限 21
/**//// <summary> 22
/// 添加权限 23
/// </summary> 24
/// <param name="SrcID"></param> 25
/// <param name="ObjID"></param> 26
/// <param name="BaseOn"></param> 27
/// <param name="ProcID"></param> 28
/// <returns></returns> 29
public int AddRight(long SrcID,long ObjID,int BaseOn,int ProcID) 30
...{ 31
int iReturn=1; 32
UDS.Components.Database mySQL = new UDS.Components.Database(); 33
try 34
...{ 35
36
SqlParameter[] parameters = ...{ 37
mySQL.MakeInParam("@Act_ID", SqlDbType.Int, 4,ProcID), 38
mySQL.MakeInParam("@Based_On", SqlDbType.Int, 4,BaseOn), 39
mySQL.MakeInParam("@Src_ID", SqlDbType.Int, 4,SrcID), 40
mySQL.MakeInParam("@Obj_ID", SqlDbType.Int, 4,ObjID) 41
42
}; 43
mySQL.RunProc("sp_AddAssignRule",parameters); 44
} 45
catch(Exception e) 46
...{ 47
Error.Log(e.ToString()); 48
} 49
finally 50
...{ 51
mySQL.Close(); 52
mySQL = null; 53
} 54
return iReturn; 55
56
57
} 58
#endregion 59
60
删除权限#region 删除权限 61
/**//// <summary> 62
/// 删除权限 63
/// </summary> 64
/// <param name="RuleIDs">权限记录号</param> 65
public int DeleteRight(string RuleIDs) 66
...{ 67
int iReturn=1; 68
UDS.Components.Database mySQL = new UDS.Components.Database(); 69
try 70
...{ 71
72
SqlParameter[] parameters = ...{ 73
mySQL.MakeInParam("@Rule_IDS",SqlDbType.VarChar ,300,RuleIDs) 74
75
}; 76
mySQL.RunProc("sp_DeleteAssignRule",parameters); 77
} 78
catch(Exception e) 79
...{ 80
Error.Log(e.ToString()); 81
} 82
finally 83
...{ 84
//mySQL.Close(); 85
//mySQL = null; 86
} 87
return iReturn; 88
89
90
} 91
#endregion 92
93
获得权限列表#region 获得权限列表 94
/**//// <summary> 95
/// 获得权限列表 96
/// </summary> 97
/// <param name="UserName">用户名</param> 98
/// <param name="ClassID">权限对象</param> 99
/// <param name="dr">返回DataReader</param> 100
/// <returns>整形是否成功</returns> 101
public int GetProcessList(string UserName,long ClassID,out SqlDataReader dr) 102
...{ 103
int iReturn=1; 104
UDS.Components.Database mySQL = new UDS.Components.Database(); 105
SqlParameter[] parameters = ...{ 106
mySQL.MakeInParam("@UserName",SqlDbType.VarChar ,300,UserName), 107
mySQL.MakeInParam("@ClassID",SqlDbType.Int,4,ClassID) 108
}; 109
dr = null; 110
try 111
...{ 112
mySQL.RunProc("sp_GetRightListToClass",parameters,out dr); 113
} 114
catch(Exception e) 115
...{ 116
Error.Log(e.ToString()); 117
} 118
finally 119
...{ 120
//mySQL.Close(); 121
//mySQL = null; 122
} 123
return iReturn; 124
125
126
} 127
#endregion 128
129
获得权限列表#region 获得权限列表 130
/**//// <summary> 131
/// 获得权限列表 132
/// </summary> 133
/// <param name="UserName">用户名</param> 134
/// <param name="ClassID">权限对象</param> 135
/// <param name="dr">返回DataTable</param> 136
/// <returns>整形是否成功</returns> 137
public int GetProcessList(string UserName,long ClassID,out DataTable dt) 138
...{ 139
int iReturn=1; 140
SqlDataReader dr; 141
UDS.Components.Database mySQL = new UDS.Components.Database(); 142
SqlParameter[] parameters = ...{ 143
mySQL.MakeInParam("@UserName",SqlDbType.VarChar ,300,UserName), 144
mySQL.MakeInParam("@ClassID",SqlDbType.Int,4,ClassID) 145
}; 146
dt = null; 147
try 148
...{ 149
mySQL.RunProc("sp_GetRightListToClass",parameters,out dr); 150
dt = UDS.Components.Tools.ConvertDataReaderToDataTable(dr); 151
152
} 153
catch(Exception e) 154
...{ 155
Error.Log(e.ToString()); 156
} 157
finally 158
...{ 159
//mySQL.Close(); 160
//mySQL = null; 161
} 162
return iReturn; 163
164
165
} 166
#endregion 167
168
判断用户对对象是否有某个权限#region 判断用户对对象是否有某个权限 169
/**//// <summary> 170
/// 判断用户对对象是否有某个权限 171
/// </summary> 172
/// <param name="UserName">用户名</param> 173
/// <param name="classID">被检查的对象</param> 174
/// <param name="actID">权限ID</param> 175
/// <returns>是否有权限</returns> 176
public bool GetAccessPermission(string UserName,int classID,int actID) 177
...{ 178
int flag = 0; 179
// 定义数据库操作类及DataReader 180
Database data = new Database(); 181
182
// 执行存储过程,并返回SqlDataReader对象 183
SqlParameter[] prams = ...{ 184
data.MakeInParam("@Class_ID" , SqlDbType.Int, 20, classID), 185
data.MakeInParam("@UserName" , SqlDbType.NVarChar, 20, UserName), 186
data.MakeInParam("@Act_ID" , SqlDbType.Int, 20, actID), 187
// data.MakeInParam("@Inheit" , SqlDbType.Bit, 1, 1), 188
data.MakeOutParam("@ReturnValue",SqlDbType.Int,20) 189
}; 190
191
try 192
...{ 193
data.RunProc("sp_GetAccessPermission",prams); 194
flag = Int32.Parse(prams[3].Value.ToString()); 195
return (flag==1)?true:false; 196
} 197
catch(Exception ex) 198
...{ 199
Error.Log(ex.ToString()); 200
throw new Exception("获取访问权出错",ex); 201
} 202
finally 203
...{ 204
data = null; 205
} 206
207
} 208
#endregion 209
210
} 211
} 212






}
}