45ed176c139ba4ae2e4a6a7358ef8432ba3f75ad.svn-base 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. using System;
  2. using System.Data;
  3. using System.Collections;
  4. using Core.Mes.ServerFrameWork;
  5. using Core.Mes.IBaseInterface;
  6. namespace Core.Mes.PurviewManager
  7. {
  8. public class UAM_DEPARTMENT : IComponent
  9. {
  10. public UAM_DEPARTMENT() { }
  11. private System.String _DEPARTMENTID;
  12. private System.String _DEPARTMENTNAME;
  13. private System.String _DESCRIPTION;
  14. private string AChildDpt = "";
  15. public System.String DEPARTMENTID
  16. {
  17. get { return _DEPARTMENTID; }
  18. set { _DEPARTMENTID = value; }
  19. }
  20. public System.String DEPARTMENTNAME
  21. {
  22. get { return _DEPARTMENTNAME; }
  23. set { _DEPARTMENTNAME = value; }
  24. }
  25. public System.String DESCRIPTION
  26. {
  27. get { return _DESCRIPTION; }
  28. set { _DESCRIPTION = value; }
  29. }
  30. public ReturnObject SelectUAM_DEPARTMENT(string strWhere)
  31. {
  32. string sqlstr = "SELECT DEPARTMENTID"
  33. + ", DEPARTMENTNAME"
  34. + ", DESCRIPTION, DEPARTMENTPID"
  35. + " FROM CXUSER.UAM_DEPARTMENT " + strWhere;
  36. string err = "";
  37. DataSet ds = null;
  38. try
  39. {
  40. ds = DBManager.ExecuteQuery(sqlstr, out err);
  41. }
  42. catch (Exception ex)
  43. {
  44. Console.Write(ex.Message);
  45. }
  46. if (err == "") err = sqlstr;
  47. return new ReturnObject(ds, err);
  48. }
  49. public ReturnObject SelectAndCopy(string strWhere)
  50. {
  51. string sqlstr = "SELECT DEPARTMENTID"
  52. + ", DEPARTMENTNAME"
  53. + ", DESCRIPTION"
  54. + " FROM CXUSER.UAM_DEPARTMENT " + strWhere;
  55. string err = "";
  56. DataSet ds = DBManager.ExecuteQuery(sqlstr, out err);
  57. if (err == "" && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
  58. {
  59. DataRow dr = ds.Tables[0].Rows[0];
  60. Type type = this.GetType();
  61. foreach (System.Reflection.PropertyInfo pro in type.GetProperties())
  62. {
  63. if (pro.GetType().ToString() == "System.Single")
  64. {
  65. pro.SetValue(this, (Single)dr[pro.Name], null);
  66. continue;
  67. }
  68. pro.SetValue(this, dr[pro.Name], null);
  69. }
  70. }
  71. if (err == "") err = sqlstr;
  72. return new ReturnObject(ds, err);
  73. }
  74. public ReturnObject InsertUAM_DEPARTMENT(ArrayList ar)
  75. {
  76. string sqlstr = "INSERT INTO CXUSER.UAM_DEPARTMENT"
  77. + " (DEPARTMENTID"
  78. + ", DEPARTMENTNAME"
  79. + ", DESCRIPTION"
  80. + ", DEPARTMENTPID"
  81. + ") VALUES ('" + ar[0]
  82. + "', '" + ar[1]
  83. + "', '" + ar[2]
  84. + "', '" + ar[3] + "')";
  85. string err = "";
  86. int i = DBManager.ExecuteNonQuery(sqlstr, out err);
  87. return new ReturnObject(i, err);
  88. }
  89. public ReturnObject UpdateUAM_DEPARTMENT(ArrayList ar)
  90. {
  91. string sqlstr = "UPDATE CXUSER.UAM_DEPARTMENT SET "
  92. + "DEPARTMENTPID = '" + ar[3]
  93. + "', DEPARTMENTNAME = '" + ar[1]
  94. + "', DESCRIPTION = '" + ar[2]
  95. + "' WHERE DEPARTMENTID = '" + ar[0] + "'";
  96. string err = "";
  97. int i = DBManager.ExecuteNonQuery(sqlstr, out err);
  98. return new ReturnObject(i, err);
  99. }
  100. public ReturnObject DeleteUAM_DEPARTMENT(string DID)
  101. {
  102. string sqlstr = "SELECT COUNT(1) FROM CXUSER.UAM_DEPARTMENT WHERe DEPARTMENTPID='" + DID + "'";
  103. DataSet dset = DBManager.ExecuteQuery(sqlstr);
  104. if (int.Parse(dset.Tables[0].Rows[0][0].ToString()) > 0)
  105. {
  106. return new ReturnObject(0, "所选部门其下还有子部门,不允许直接删除!");
  107. }
  108. sqlstr = "SELECT COUNT(1) FROM CXUSER.UAM_USER where DEPARTMENTID='" + DID + "'";
  109. dset = DBManager.ExecuteQuery(sqlstr);
  110. if (int.Parse(dset.Tables[0].Rows[0][0].ToString()) > 0)
  111. {
  112. return new ReturnObject(0, "该部门其下还有用户,不允许直接删除!");
  113. }
  114. sqlstr = "SELECT COUNT(1) FROM CXUSER.UAM_ROLE where DEPARTMENTID='" + DID + "'";
  115. dset = DBManager.ExecuteQuery(sqlstr);
  116. if (int.Parse(dset.Tables[0].Rows[0][0].ToString()) > 0)
  117. {
  118. return new ReturnObject(0, "该部门其下还有角色,不允许直接删除!");
  119. }
  120. sqlstr = "DELETE FROM CXUSER.UAM_DEPARTMENT where DEPARTMENTID='" + DID + "'";
  121. string err = "";
  122. int i = DBManager.ExecuteNonQuery(sqlstr, out err);
  123. return new ReturnObject(i, err);
  124. }
  125. public ReturnObject UpdateDataSet(DataSet ds, string sqlstr)
  126. {
  127. string err = "";
  128. bool flag = DBManager.UpdateTable(ds.Tables[0], sqlstr, out err);
  129. return new ReturnObject(flag, err);
  130. }
  131. public void Copy(UAM_DEPARTMENT par)
  132. {
  133. DEPARTMENTID = par.DEPARTMENTID;
  134. DEPARTMENTNAME = par.DEPARTMENTNAME;
  135. DESCRIPTION = par.DESCRIPTION;
  136. }
  137. public ReturnObject GetAllChildDpt(string DptID)
  138. {
  139. try
  140. {
  141. AChildDpt = "'" + DptID + "'";
  142. string Dpt = "'" + DptID + "'";
  143. string err = "";
  144. string sql = "SELECT * FROM CXUSER.UAM_DEPARTMENT";
  145. System.Data.DataSet dst = this.DBManager.ExecuteQuery(sql, out err);
  146. if (dst != null && dst.Tables[0].Rows.Count > 0)
  147. {
  148. GetChildDpt(dst.Tables[0], Dpt);
  149. }
  150. return new ReturnObject(AChildDpt);
  151. }
  152. catch (System.Exception ex)
  153. {
  154. System.Diagnostics.Debug.WriteLine(ex.ToString());
  155. return new ReturnObject(null);
  156. }
  157. }
  158. private void GetChildDpt(System.Data.DataTable tab, string Dpt)
  159. {
  160. string RowFilter = "DEPARTMENTPID IN(" + Dpt + ")";
  161. tab.DefaultView.RowFilter = RowFilter;
  162. if (tab.DefaultView.Count > 0)
  163. {
  164. Dpt = "";
  165. for (int i = 0; i < tab.DefaultView.Count; i++)
  166. {
  167. AChildDpt = AChildDpt + ",'" + tab.DefaultView[i]["DEPARTMENTID"].ToString() + "'";
  168. Dpt = Dpt + ",'" + tab.DefaultView[i]["DEPARTMENTID"].ToString() + "'";
  169. }
  170. Dpt = Dpt.Substring(1, Dpt.Length - 1);
  171. GetChildDpt(tab, Dpt);
  172. }
  173. else
  174. {
  175. return;
  176. }
  177. }
  178. }
  179. }