Project.cs
上传用户:xgw_05
上传日期:2009-12-11
资源大小:20208k
文件大小:13k
源码类别:

OA系统

开发平台:

C#

  1. using System;
  2. using System.Data;
  3. using System.Data.SqlClient;
  4. using System.IO;
  5. using System.Collections ;
  6. using System.Configuration;
  7. namespace UDS.Components
  8. {
  9. /// <summary>
  10. /// Project 类
  11. /// </summary>
  12. public class ProjectClass
  13. {
  14. #region 返回项目相关信息
  15. /// <summary>
  16. /// 返回项目相关信息
  17. /// </summary>
  18. public SqlDataReader GetClassInfo(int classID)
  19. {
  20. // 定义数据库操作类及DataReader
  21. Database data = new Database();
  22. SqlDataReader dataReader = null;
  23. // 执行存储过程,并返回SqlDataReader对象
  24. SqlParameter[] prams = {
  25.    data.MakeInParam("@TeamID" , SqlDbType.Int, 20, classID)
  26.    };
  27. try 
  28. {
  29. data.RunProc("sp_GetTeamInfo",prams,out dataReader);
  30. return dataReader;
  31. }
  32. catch(Exception ex)
  33. {
  34. Error.Log(ex.ToString());
  35. throw new Exception("项目信息读取出错!",ex);
  36. }
  37. finally
  38. {
  39. data    = null;
  40. dataReader = null;
  41. }
  42. }
  43. #endregion
  44. #region 返回子项目相关信息
  45. /// <summary>
  46. /// 返回子项目相关信息
  47. /// </summary>
  48. public SqlDataReader GetSubClassInfo(int classID)
  49. {
  50. // 定义数据库操作类及DataReader
  51. Database data = new Database();
  52. SqlDataReader dataReader = null;
  53. // 执行存储过程,并返回SqlDataReader对象
  54. SqlParameter[] prams = {
  55.    data.MakeInParam("@ClassID" , SqlDbType.Int, 20, classID)
  56.    };
  57. try 
  58. {
  59. data.RunProc("sp_GetSubClass",prams,out dataReader);
  60. return dataReader;
  61. }
  62. catch(Exception ex)
  63. {
  64. Error.Log(ex.ToString());
  65. throw new Exception("子项目信息读取出错!",ex);
  66. }
  67. finally
  68. {
  69. data    = null;
  70. dataReader = null;
  71. }
  72. }
  73. #endregion
  74. #region 返回某项目下是否存在子项目
  75. /// <summary>
  76. /// 返回某项目下是否存在子项目
  77. /// </summary>
  78. public bool IsExistSubClass(int classID)
  79. {
  80. // 定义数据库操作类及DataReader
  81. Database data = new Database();
  82. SqlDataReader dataReader = null;
  83. // 执行存储过程,并返回SqlDataReader对象
  84. SqlParameter[] prams = {
  85.    data.MakeInParam("@Class_id" , SqlDbType.Int, 20, classID)
  86.    };
  87. try 
  88. {
  89. data.RunProc("sp_GetAllChildClassID",prams,out dataReader);
  90. if(dataReader.Read())
  91. return true;
  92. else
  93. return false;
  94. }
  95. catch(Exception ex)
  96. {
  97. Error.Log(ex.ToString());
  98. throw new Exception("子项目信息读取出错!",ex);
  99. }
  100. finally
  101. {
  102. data    = null;
  103. dataReader = null;
  104. }
  105. }
  106. #endregion
  107. #region 返回项目成员相关信息
  108. /// <summary>
  109. /// 返回项目成员相关信息
  110. /// </summary>
  111. public SqlDataReader GetMemberInClass(int classID)
  112. {
  113. // 定义数据库操作类及DataReader
  114. Database data = new Database();
  115. SqlDataReader dataReader = null;
  116. // 执行存储过程,并返回SqlDataReader对象
  117. SqlParameter[] prams = {
  118.    data.MakeInParam("@ClassID" , SqlDbType.Int, 20, classID)
  119.    };
  120. try 
  121. {
  122. data.RunProc("sp_GetMemberInClass",prams,out dataReader);
  123. return dataReader;
  124. }
  125. catch(Exception ex)
  126. {
  127. Error.Log(ex.ToString());
  128. throw new Exception("项目成员信息读取出错!",ex);
  129. }
  130. finally
  131. {
  132. data    = null;
  133. dataReader = null;
  134. }
  135. }
  136. #endregion
  137. #region 返回上级项目负责人相关信息
  138. /// <summary>
  139. /// 返回上级项目负责人相关信息
  140. /// </summary>
  141. public SqlDataReader GetParentLeader(int classID)
  142. {
  143. // 定义数据库操作类及DataReader
  144. Database data = new Database();
  145. SqlDataReader dataReader = null;
  146. int RightCode = 10; //缺省值
  147. // 执行存储过程,并返回SqlDataReader对象
  148. SqlParameter[] prams = {
  149.    data.MakeInParam("@TeamID" , SqlDbType.Int, 20, classID),
  150.    data.MakeInParam("@RightCode" , SqlDbType.Int, 20, RightCode)
  151.    };
  152. try 
  153. {
  154. data.RunProc("sp_GetParentLeader",prams,out dataReader);
  155. return dataReader;
  156. }
  157. catch(Exception ex)
  158. {
  159. Error.Log(ex.ToString());
  160. throw new Exception("项目上级负责人信息读取出错!",ex);
  161. }
  162. finally
  163. {
  164. data    = null;
  165. dataReader = null;
  166. }
  167. }
  168. #endregion
  169. #region 返回项目负责人相关信息
  170. /// <summary>
  171. /// 返回项目负责人相关信息
  172. /// </summary>
  173. public SqlDataReader GetLeader(int classID)
  174. {
  175. // 定义数据库操作类及DataReader
  176. Database data = new Database();
  177. SqlDataReader dataReader = null;
  178. // 执行存储过程,并返回SqlDataReader对象
  179. SqlParameter[] prams = {
  180.    data.MakeInParam("@TeamID" , SqlDbType.Int, 20, classID)
  181. };
  182. try 
  183. {
  184. data.RunProc("sp_GetLeader",prams,out dataReader);
  185. return dataReader;
  186. }
  187. catch(Exception ex)
  188. {
  189. Error.Log(ex.ToString());
  190. throw new Exception("项目负责人信息读取出错!",ex);
  191. }
  192. finally
  193. {
  194. data    = null;
  195. dataReader = null;
  196. }
  197. }
  198. #endregion
  199. #region 检测是否有权限访问
  200. /// <summary>
  201. /// 检测是否有权限访问
  202. /// </summary>
  203. public bool GetAccessPermission(int classID,string UserName,int actID)
  204. {
  205. int flag = 0;
  206. // 定义数据库操作类及DataReader
  207. Database data = new Database();
  208. // 执行存储过程,并返回SqlDataReader对象
  209. SqlParameter[] prams = {
  210.    data.MakeInParam("@Class_ID" , SqlDbType.Int, 20, classID),
  211.    data.MakeInParam("@UserName" , SqlDbType.NVarChar, 20, UserName),
  212.    data.MakeInParam("@Act_ID" , SqlDbType.Int, 20, actID),
  213.   // data.MakeInParam("@Inheit" , SqlDbType.Bit, 1, 1),
  214.    data.MakeOutParam("@ReturnValue",SqlDbType.Int,20)
  215.  };
  216. try 
  217. {
  218. data.RunProc("sp_GetAccessPermission",prams);
  219. flag = Int32.Parse(prams[3].Value.ToString());
  220. return (flag==1)?true:false;
  221. }
  222. catch(Exception ex)
  223. {
  224. Error.Log(ex.ToString());
  225. throw new Exception("获取访问权出错",ex);
  226. }
  227. finally
  228. {
  229. data    = null;
  230. }
  231. }
  232. #endregion
  233. #region 项目移动
  234. /// <summary>
  235. /// 项目移动
  236. /// </summary>
  237. public  void Remove(int souID,int desID)
  238. {
  239. // 定义数据库操作类及DataReader
  240. Database data = new Database();
  241. // 执行存储过程,并返回SqlDataReader对象
  242. SqlParameter[] prams = {
  243.    data.MakeInParam("@FromTeamID" , SqlDbType.Int, 20, souID),
  244.    data.MakeInParam("@ToTeamID" , SqlDbType.NVarChar, 20, desID)
  245.   
  246.    };
  247. try 
  248. {
  249. data.RunProc("sp_MoveTeam",prams);
  250. }
  251. catch(Exception ex)
  252. {
  253. Error.Log(ex.ToString());
  254. throw new Exception("项目移动出错",ex);
  255. }
  256. finally
  257. {
  258. data    = null;
  259. }
  260. }
  261. #endregion
  262. #region 项目复制
  263. /// <summary>
  264. /// 项目复制
  265. /// </summary>
  266. /// <param name="souID">源项目id</param>
  267. /// <param name="desID">目标项目id</param>
  268. /// <param name="operatorman">操作者</param>
  269. public  void Copy(int souID,int desID,string operatorman)
  270. {
  271. // 定义数据库操作类及DataReader
  272. Database data = new Database();
  273. // 执行存储过程,并返回SqlDataReader对象
  274. SqlParameter[] prams = {
  275.    data.MakeInParam("@FromTeamID" , SqlDbType.Int, 20, souID),
  276.    data.MakeInParam("@ToTeamID" , SqlDbType.NVarChar, 20, desID),
  277.    data.MakeInParam("@operator" , SqlDbType.VarChar, 50, operatorman)
  278.   
  279.    };
  280. try 
  281. {
  282. data.RunProc("sp_CopyTeam",prams);
  283. }
  284. catch(Exception ex)
  285. {
  286. Error.Log(ex.ToString());
  287. throw new Exception("项目移动出错",ex);
  288. }
  289. finally
  290. {
  291. data    = null;
  292. }
  293. }
  294. #endregion
  295. #region 项目添加
  296. /// <summary>
  297. /// 项目添加
  298. /// </summary>
  299. public  void Add(int ParentID,string ProjectName,string ProjectRemark,string Wright,int Status,int Scale,DateTime StartDate,DateTime EndDate)
  300. {
  301. // 定义数据库操作类及DataReader
  302. Database data = new Database();
  303. // 执行存储过程,并返回SqlDataReader对象
  304. SqlParameter[] prams = {
  305.    data.MakeInParam("@ParentID" , SqlDbType.Int, 20, ParentID),
  306.    data.MakeInParam("@ProjectName" , SqlDbType.NVarChar, 20, ProjectName.Trim()),
  307.    data.MakeInParam("@ProjectRemark" , SqlDbType.NVarChar, 400, ProjectRemark.Trim()),
  308.    data.MakeInParam("@Wright" , SqlDbType.NVarChar, 40, Wright),
  309.    data.MakeInParam("@Status" , SqlDbType.Int, 40, Status),
  310.    data.MakeInParam("@Scale" , SqlDbType.Int, 20, Scale),
  311.    data.MakeInParam("@StartDate" , SqlDbType.DateTime, 30, StartDate),
  312.    data.MakeInParam("@EndDate" , SqlDbType.DateTime, 30, EndDate)
  313.    };
  314. try 
  315. {
  316. data.RunProc("sp_AddProject",prams);
  317. }
  318. catch(Exception ex)
  319. {
  320. Error.Log(ex.ToString());
  321. throw new Exception("项目添加出错",ex);
  322. }
  323. finally
  324. {
  325. data    = null;
  326. }
  327. }
  328. #endregion
  329. #region 项目订阅
  330. /// <summary>
  331. /// 项目订阅
  332. /// </summary>
  333. public  void Subscribe(string Username,int ClassID)
  334. {
  335. // 定义数据库操作类及DataReader
  336. Database data = new Database();
  337. // 执行存储过程,并返回SqlDataReader对象
  338. SqlParameter[] prams = {
  339.    data.MakeInParam("@StaffName" , SqlDbType.NVarChar, 50, Username),
  340.    data.MakeInParam("@ClassID" , SqlDbType.Int, 10, ClassID)
  341. };
  342. try 
  343. {
  344. data.RunProc("sp_SubscibeProject",prams);
  345. }
  346. catch(Exception ex)
  347. {
  348. Error.Log(ex.ToString());
  349. throw new Exception("项目订阅出错",ex);
  350. }
  351. finally
  352. {
  353. data    = null;
  354. }
  355. }
  356. #endregion
  357. #region 获取某项目名称
  358. /// <summary>
  359. /// 获取某项目名称
  360. /// </summary>
  361. /// <param name="ClassID">项目ID</param>
  362. public static string GetProjectName(int ClassID)
  363. {
  364. string ProjectName="";
  365. SqlDataReader dataReader = null;
  366. Database data = new Database();
  367. SqlParameter[] prams = 
  368. {
  369. data.MakeInParam("@projectid", SqlDbType.Int, 20 ,ClassID)
  370. };
  371. try
  372. {
  373. data.RunProc("sp_GetProjectName",prams, out dataReader);
  374. if(dataReader.Read())
  375. ProjectName = dataReader[0].ToString();
  376. return ProjectName;
  377. }
  378. catch(Exception ex)
  379. {
  380. Error.Log(ex.ToString());
  381. return "";
  382. }
  383. }
  384. #endregion
  385. #region 获取某项目详细信息
  386. /// <summary>
  387. /// 获取某项目详细信息
  388. /// </summary>
  389. /// <param name="ClassID">项目ID</param>
  390. public SqlDataReader GetProjectDetail(int ClassID)
  391. {
  392. SqlDataReader dataReader = null;
  393. Database data = new Database();
  394. SqlParameter[] prams = 
  395. {
  396. data.MakeInParam("@TeamID", SqlDbType.Int, 20 ,ClassID)
  397. };
  398. try
  399. {
  400. data.RunProc("sp_GetTeamInfo",prams, out dataReader);
  401. return dataReader;
  402. }
  403. catch(Exception ex)
  404. {
  405. Error.Log(ex.ToString());
  406. return null;
  407. }
  408. }
  409. #endregion
  410. #region 修改某项目信息
  411. /// <summary>
  412. /// 修改某项目详细信息
  413. /// </summary>
  414. /// <param name="ClassID">项目ID</param>
  415. public void Revise(int ClassID,string ProjectName,string ProjectRemark,int Status,int Scale,DateTime StartDate,DateTime EndDate)
  416. {
  417. Database data = new Database();
  418. SqlParameter[] prams = {
  419.    data.MakeInParam("@ProjectID" , SqlDbType.Int, 20, ClassID),
  420.    data.MakeInParam("@ProjectName" , SqlDbType.NVarChar, 20, ProjectName.Trim()),
  421.    data.MakeInParam("@ProjectRemark" , SqlDbType.NVarChar, 400, ProjectRemark.Trim()),
  422.    data.MakeInParam("@Status" , SqlDbType.Int, 40, Status),
  423.    data.MakeInParam("@Scale" , SqlDbType.Int, 20, Scale),
  424.    data.MakeInParam("@StartDate" , SqlDbType.DateTime, 30, StartDate),
  425.    data.MakeInParam("@EndDate" , SqlDbType.DateTime, 30, EndDate)
  426.    };
  427. try
  428. {
  429. data.RunProc("sp_UpdateProject",prams);
  430. }
  431. catch(Exception ex)
  432. {
  433. Error.Log(ex.ToString());
  434. }
  435. }
  436. #endregion
  437. #region 删除某项目
  438. /// <summary>
  439. /// 删除某项目
  440. /// </summary>
  441. /// <param name="ClassID">项目ID</param>
  442. public void Delete(int ClassID)
  443. {
  444. Database data = new Database();
  445. SqlParameter[] prams = {
  446.    data.MakeInParam("@TeamID" , SqlDbType.Int, 20, ClassID),
  447.    };
  448. try
  449. {
  450. data.RunProc("sp_DeleteTeam",prams);
  451. }
  452. catch(Exception ex)
  453. {
  454. Error.Log(ex.ToString());
  455. }
  456. }
  457. #endregion
  458. #region 把字符串年月日后面的时间去除
  459. /// <summary>
  460. /// 把字符串年月日后面的时间去除
  461. /// </summary>
  462. public static string changeString(string ss)
  463. {
  464. string lkk="";
  465. for(int i=ss.Length;i>0;i--)
  466. {
  467. char lk=ss[i-1];
  468. if(lk==' ')
  469. {
  470. lkk=ss.Substring(0,i);
  471. break;
  472. }
  473. }
  474. return lkk;
  475. }
  476. #endregion
  477. }
  478. }