You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
137 lines
5.9 KiB
137 lines
5.9 KiB
9 months ago
|
using System;
|
||
|
using System.Collections.Generic;
|
||
|
using System.Text;
|
||
|
using System.Data;
|
||
|
using System.Data.SqlClient;
|
||
|
using MySql.Data.MySqlClient;
|
||
|
|
||
|
namespace RoadFlow.Data.ORACLE
|
||
|
{
|
||
|
public class WorkFlowData : RoadFlow.Data.Interface.IWorkFlowData
|
||
|
{
|
||
|
private DBHelper dbHelper = new DBHelper();
|
||
|
/// <summary>
|
||
|
/// 构造函数
|
||
|
/// </summary>
|
||
|
public WorkFlowData()
|
||
|
{
|
||
|
}
|
||
|
/// <summary>
|
||
|
/// 添加记录
|
||
|
/// </summary>
|
||
|
/// <param name="model">RoadFlow.Data.Model.WorkFlowData实体类</param>
|
||
|
/// <returns>操作所影响的行数</returns>
|
||
|
public int Add(RoadFlow.Data.Model.WorkFlowData model)
|
||
|
{
|
||
|
string sql = @"INSERT INTO WorkFlowData
|
||
|
(ID,InstanceID,LinkID,TableName,FieldName,Value)
|
||
|
VALUES(@ID,@InstanceID,@LinkID,@TableName,@FieldName,@Value)";
|
||
|
MySqlParameter[] parameters = new MySqlParameter[]{
|
||
|
new MySqlParameter("@ID", MySqlDbType.VarChar, 50){ Value = model.ID },
|
||
|
new MySqlParameter("@InstanceID", MySqlDbType.VarChar, 50){ Value = model.InstanceID },
|
||
|
new MySqlParameter("@LinkID", MySqlDbType.VarChar, 50){ Value = model.LinkID },
|
||
|
new MySqlParameter("@TableName", MySqlDbType.VarChar, 500){ Value = model.TableName },
|
||
|
new MySqlParameter("@FieldName", MySqlDbType.VarChar, 500){ Value = model.FieldName },
|
||
|
new MySqlParameter("@Value", MySqlDbType.VarChar, 8000){ Value = model.Value }
|
||
|
};
|
||
|
return dbHelper.Execute(sql, parameters);
|
||
|
}
|
||
|
/// <summary>
|
||
|
/// 更新记录
|
||
|
/// </summary>
|
||
|
/// <param name="model">RoadFlow.Data.Model.WorkFlowData实体类</param>
|
||
|
public int Update(RoadFlow.Data.Model.WorkFlowData model)
|
||
|
{
|
||
|
string sql = @"UPDATE WorkFlowData SET
|
||
|
InstanceID=@InstanceID,LinkID=@LinkID,TableName=@TableName,FieldName=@FieldName,Value=@Value
|
||
|
WHERE ID=@ID";
|
||
|
MySqlParameter[] parameters = new MySqlParameter[]{
|
||
|
new MySqlParameter("@InstanceID", MySqlDbType.VarChar, 50){ Value = model.InstanceID },
|
||
|
new MySqlParameter("@LinkID", MySqlDbType.VarChar, 50){ Value = model.LinkID },
|
||
|
new MySqlParameter("@TableName", MySqlDbType.VarChar, 500){ Value = model.TableName },
|
||
|
new MySqlParameter("@FieldName", MySqlDbType.VarChar, 500){ Value = model.FieldName },
|
||
|
new MySqlParameter("@Value", MySqlDbType.VarChar, 8000){ Value = model.Value },
|
||
|
new MySqlParameter("@ID", MySqlDbType.VarChar, 50){ Value = model.ID }
|
||
|
};
|
||
|
return dbHelper.Execute(sql, parameters);
|
||
|
}
|
||
|
/// <summary>
|
||
|
/// 删除记录
|
||
|
/// </summary>
|
||
|
public int Delete(Guid id)
|
||
|
{
|
||
|
string sql = "DELETE FROM WorkFlowData WHERE ID=@ID";
|
||
|
MySqlParameter[] parameters = new MySqlParameter[]{
|
||
|
new MySqlParameter("@ID", MySqlDbType.VarChar, 50){ Value = id }
|
||
|
};
|
||
|
return dbHelper.Execute(sql, parameters);
|
||
|
}
|
||
|
/// <summary>
|
||
|
/// 将DataRedar转换为List
|
||
|
/// </summary>
|
||
|
private List<RoadFlow.Data.Model.WorkFlowData> DataReaderToList(DataTable dataReader)
|
||
|
{
|
||
|
List<RoadFlow.Data.Model.WorkFlowData> List = new List<RoadFlow.Data.Model.WorkFlowData>();
|
||
|
RoadFlow.Data.Model.WorkFlowData model = null;
|
||
|
for (int i = 0; i < dataReader.Rows.Count; i++)
|
||
|
{
|
||
|
model = new RoadFlow.Data.Model.WorkFlowData();
|
||
|
model.ID = new Guid(dataReader.Rows[i][0] + "");
|
||
|
model.InstanceID = new Guid(dataReader.Rows[i][1] + "");
|
||
|
model.LinkID = new Guid(dataReader.Rows[i][2] + "");
|
||
|
model.TableName = dataReader.Rows[i][3] + "";
|
||
|
model.FieldName = dataReader.Rows[i][4] + "";
|
||
|
model.Value = dataReader.Rows[i][5] + "";
|
||
|
List.Add(model);
|
||
|
}
|
||
|
return List;
|
||
|
}
|
||
|
/// <summary>
|
||
|
/// 查询所有记录
|
||
|
/// </summary>
|
||
|
public List<RoadFlow.Data.Model.WorkFlowData> GetAll()
|
||
|
{
|
||
|
string sql = "SELECT * FROM WorkFlowData";
|
||
|
var dataReader = dbHelper.GetDataReader(sql);
|
||
|
List<RoadFlow.Data.Model.WorkFlowData> List = DataReaderToList(dataReader);
|
||
|
return List;
|
||
|
}
|
||
|
/// <summary>
|
||
|
/// 查询记录数
|
||
|
/// </summary>
|
||
|
public long GetCount()
|
||
|
{
|
||
|
string sql = "SELECT COUNT(*) FROM WorkFlowData";
|
||
|
long count;
|
||
|
return long.TryParse(dbHelper.GetFieldValue(sql), out count) ? count : 0;
|
||
|
}
|
||
|
/// <summary>
|
||
|
/// 根据主键查询一条记录
|
||
|
/// </summary>
|
||
|
public RoadFlow.Data.Model.WorkFlowData Get(Guid id)
|
||
|
{
|
||
|
string sql = "SELECT * FROM WorkFlowData WHERE ID=@ID";
|
||
|
MySqlParameter[] parameters = new MySqlParameter[]{
|
||
|
new MySqlParameter("@ID", MySqlDbType.VarChar, 50){ Value = id }
|
||
|
};
|
||
|
var dataReader = dbHelper.GetDataReader(sql, parameters);
|
||
|
List<RoadFlow.Data.Model.WorkFlowData> List = DataReaderToList(dataReader);
|
||
|
return List.Count > 0 ? List[0] : null;
|
||
|
}
|
||
|
|
||
|
|
||
|
/// <summary>
|
||
|
/// 查询一个实例ID所有记录
|
||
|
/// </summary>
|
||
|
public List<RoadFlow.Data.Model.WorkFlowData> GetAll(Guid instanceID)
|
||
|
{
|
||
|
string sql = "SELECT * FROM WorkFlowData WHERE InstanceID=@InstanceID";
|
||
|
MySqlParameter[] parameters = new MySqlParameter[]{
|
||
|
new MySqlParameter("@InstanceID", MySqlDbType.VarChar, 50){ Value = instanceID }
|
||
|
};
|
||
|
var dataReader = dbHelper.GetDataReader(sql, parameters);
|
||
|
List<RoadFlow.Data.Model.WorkFlowData> List = DataReaderToList(dataReader);
|
||
|
return List;
|
||
|
}
|
||
|
}
|
||
|
}
|