RoadFlow2.1 临时演示

WorkFlowData.cs 5.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Data;
  5. using System.Data.SqlClient;
  6. namespace RoadFlow.Data.MSSQL
  7. {
  8. public class WorkFlowData : RoadFlow.Data.Interface.IWorkFlowData
  9. {
  10. private DBHelper dbHelper = new DBHelper();
  11. /// <summary>
  12. /// 构造函数
  13. /// </summary>
  14. public WorkFlowData()
  15. {
  16. }
  17. /// <summary>
  18. /// 添加记录
  19. /// </summary>
  20. /// <param name="model">RoadFlow.Data.Model.WorkFlowData实体类</param>
  21. /// <returns>操作所影响的行数</returns>
  22. public int Add(RoadFlow.Data.Model.WorkFlowData model)
  23. {
  24. string sql = @"INSERT INTO WorkFlowData
  25. (ID,InstanceID,LinkID,TableName,FieldName,Value)
  26. VALUES(@ID,@InstanceID,@LinkID,@TableName,@FieldName,@Value)";
  27. SqlParameter[] parameters = new SqlParameter[]{
  28. new SqlParameter("@ID", SqlDbType.UniqueIdentifier, -1){ Value = model.ID },
  29. new SqlParameter("@InstanceID", SqlDbType.UniqueIdentifier, -1){ Value = model.InstanceID },
  30. new SqlParameter("@LinkID", SqlDbType.UniqueIdentifier, -1){ Value = model.LinkID },
  31. new SqlParameter("@TableName", SqlDbType.VarChar, 500){ Value = model.TableName },
  32. new SqlParameter("@FieldName", SqlDbType.VarChar, 500){ Value = model.FieldName },
  33. new SqlParameter("@Value", SqlDbType.VarChar, 8000){ Value = model.Value }
  34. };
  35. return dbHelper.Execute(sql, parameters);
  36. }
  37. /// <summary>
  38. /// 更新记录
  39. /// </summary>
  40. /// <param name="model">RoadFlow.Data.Model.WorkFlowData实体类</param>
  41. public int Update(RoadFlow.Data.Model.WorkFlowData model)
  42. {
  43. string sql = @"UPDATE WorkFlowData SET
  44. InstanceID=@InstanceID,LinkID=@LinkID,TableName=@TableName,FieldName=@FieldName,Value=@Value
  45. WHERE ID=@ID";
  46. SqlParameter[] parameters = new SqlParameter[]{
  47. new SqlParameter("@InstanceID", SqlDbType.UniqueIdentifier, -1){ Value = model.InstanceID },
  48. new SqlParameter("@LinkID", SqlDbType.UniqueIdentifier, -1){ Value = model.LinkID },
  49. new SqlParameter("@TableName", SqlDbType.VarChar, 500){ Value = model.TableName },
  50. new SqlParameter("@FieldName", SqlDbType.VarChar, 500){ Value = model.FieldName },
  51. new SqlParameter("@Value", SqlDbType.VarChar, 8000){ Value = model.Value },
  52. new SqlParameter("@ID", SqlDbType.UniqueIdentifier, -1){ Value = model.ID }
  53. };
  54. return dbHelper.Execute(sql, parameters);
  55. }
  56. /// <summary>
  57. /// 删除记录
  58. /// </summary>
  59. public int Delete(Guid id)
  60. {
  61. string sql = "DELETE FROM WorkFlowData WHERE ID=@ID";
  62. SqlParameter[] parameters = new SqlParameter[]{
  63. new SqlParameter("@ID", SqlDbType.UniqueIdentifier){ Value = id }
  64. };
  65. return dbHelper.Execute(sql, parameters);
  66. }
  67. /// <summary>
  68. /// 将DataRedar转换为List
  69. /// </summary>
  70. private List<RoadFlow.Data.Model.WorkFlowData> DataReaderToList(SqlDataReader dataReader)
  71. {
  72. List<RoadFlow.Data.Model.WorkFlowData> List = new List<RoadFlow.Data.Model.WorkFlowData>();
  73. RoadFlow.Data.Model.WorkFlowData model = null;
  74. while (dataReader.Read())
  75. {
  76. model = new RoadFlow.Data.Model.WorkFlowData();
  77. model.ID = dataReader.GetGuid(0);
  78. model.InstanceID = dataReader.GetGuid(1);
  79. model.LinkID = dataReader.GetGuid(2);
  80. model.TableName = dataReader.GetString(3);
  81. model.FieldName = dataReader.GetString(4);
  82. model.Value = dataReader.GetString(5);
  83. List.Add(model);
  84. }
  85. return List;
  86. }
  87. /// <summary>
  88. /// 查询所有记录
  89. /// </summary>
  90. public List<RoadFlow.Data.Model.WorkFlowData> GetAll()
  91. {
  92. string sql = "SELECT * FROM WorkFlowData";
  93. SqlDataReader dataReader = dbHelper.GetDataReader(sql);
  94. List<RoadFlow.Data.Model.WorkFlowData> List = DataReaderToList(dataReader);
  95. dataReader.Close();
  96. return List;
  97. }
  98. /// <summary>
  99. /// 查询记录数
  100. /// </summary>
  101. public long GetCount()
  102. {
  103. string sql = "SELECT COUNT(*) FROM WorkFlowData";
  104. long count;
  105. return long.TryParse(dbHelper.GetFieldValue(sql), out count) ? count : 0;
  106. }
  107. /// <summary>
  108. /// 根据主键查询一条记录
  109. /// </summary>
  110. public RoadFlow.Data.Model.WorkFlowData Get(Guid id)
  111. {
  112. string sql = "SELECT * FROM WorkFlowData WHERE ID=@ID";
  113. SqlParameter[] parameters = new SqlParameter[]{
  114. new SqlParameter("@ID", SqlDbType.UniqueIdentifier){ Value = id }
  115. };
  116. SqlDataReader dataReader = dbHelper.GetDataReader(sql, parameters);
  117. List<RoadFlow.Data.Model.WorkFlowData> List = DataReaderToList(dataReader);
  118. dataReader.Close();
  119. return List.Count > 0 ? List[0] : null;
  120. }
  121. /// <summary>
  122. /// 查询一个实例ID所有记录
  123. /// </summary>
  124. public List<RoadFlow.Data.Model.WorkFlowData> GetAll(Guid instanceID)
  125. {
  126. string sql = "SELECT * FROM WorkFlowData WHERE InstanceID=@InstanceID";
  127. SqlParameter[] parameters = new SqlParameter[]{
  128. new SqlParameter("@InstanceID", SqlDbType.UniqueIdentifier){ Value = instanceID }
  129. };
  130. SqlDataReader dataReader = dbHelper.GetDataReader(sql, parameters);
  131. List<RoadFlow.Data.Model.WorkFlowData> List = DataReaderToList(dataReader);
  132. dataReader.Close();
  133. return List;
  134. }
  135. }
  136. }