using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
using AIMSModel;
using AIMSObjectQuery;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using HelperDB;
namespace AIMSDAL
{
public partial class DUseDrugsReport
{
#region 插入实体操作部份
///
/// 插入
///
/// Command对象
/// 实体类对象
/// 标识列值或影响的记录行数
public static int Insert(SqlCommand cmd, UseDrugsReport useDrugsReport)
{
cmd.Parameters.Clear();
cmd.CommandText = "insert into UseDrugsReport (用药Id,加药时间,使用日期,患者姓名,性别,年龄,住院号,病历号,身份证号码,疾病名称,药品名称,剩余药品弃取记录,批号,处方剂量,用量,残留剂量,残液处理方式,残液处理地点,处方医师,执行护士,复核人,核对护士,术间,医生签名,医生签名2,护士签名,PatientRecordId,State,Num,SpecUnit,Enter,镇痛泵使用量,镇痛泵余量) values (@用药Id,@加药时间,@使用日期,@患者姓名,@性别,@年龄,@住院号,@病历号,@身份证号码,@疾病名称,@药品名称,@剩余药品弃取记录,@批号,@处方剂量,@用量,@残留剂量,@残液处理方式,@残液处理地点,@处方医师,@执行护士,@复核人,@核对护士,@术间,@医生签名,@医生签名2,@护士签名,@PatientRecordId,@State,@Num,@SpecUnit,@Enter,@镇痛泵使用量,@镇痛泵余量);select @@identity";
//从实体中取出值放入Command的参数列表
cmd.Parameters.Add(new SqlParameter("@用药Id",useDrugsReport.用药Id.HasValue?(object)useDrugsReport.用药Id.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@加药时间",useDrugsReport.加药时间.HasValue?(object)useDrugsReport.加药时间.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@使用日期",useDrugsReport.使用日期==null?(object)DBNull.Value:(object)useDrugsReport.使用日期));
cmd.Parameters.Add(new SqlParameter("@患者姓名",useDrugsReport.患者姓名==null?(object)DBNull.Value:(object)useDrugsReport.患者姓名));
cmd.Parameters.Add(new SqlParameter("@性别",useDrugsReport.性别==null?(object)DBNull.Value:(object)useDrugsReport.性别));
cmd.Parameters.Add(new SqlParameter("@年龄",useDrugsReport.年龄==null?(object)DBNull.Value:(object)useDrugsReport.年龄));
cmd.Parameters.Add(new SqlParameter("@住院号",useDrugsReport.住院号==null?(object)DBNull.Value:(object)useDrugsReport.住院号));
cmd.Parameters.Add(new SqlParameter("@病历号",useDrugsReport.病历号==null?(object)DBNull.Value:(object)useDrugsReport.病历号));
cmd.Parameters.Add(new SqlParameter("@身份证号码",useDrugsReport.身份证号码==null?(object)DBNull.Value:(object)useDrugsReport.身份证号码));
cmd.Parameters.Add(new SqlParameter("@疾病名称", useDrugsReport.疾病名称 == null ? (object)DBNull.Value : (object)useDrugsReport.疾病名称));
cmd.Parameters.Add(new SqlParameter("@药品名称", useDrugsReport.药品名称 == null ? (object)DBNull.Value : (object)useDrugsReport.药品名称));
cmd.Parameters.Add(new SqlParameter("@剩余药品弃取记录", useDrugsReport.剩余药品弃取记录 == null ? (object)DBNull.Value : (object)useDrugsReport.剩余药品弃取记录));
cmd.Parameters.Add(new SqlParameter("@批号", useDrugsReport.批号 == null ? (object)DBNull.Value : (object)useDrugsReport.批号));
cmd.Parameters.Add(new SqlParameter("@处方剂量", useDrugsReport.处方剂量 == null ? (object)DBNull.Value : (object)useDrugsReport.处方剂量));
cmd.Parameters.Add(new SqlParameter("@用量", useDrugsReport.用量 == null ? (object)DBNull.Value : (object)useDrugsReport.用量));
cmd.Parameters.Add(new SqlParameter("@残留剂量", useDrugsReport.残留剂量 == null ? (object)DBNull.Value : (object)useDrugsReport.残留剂量));
cmd.Parameters.Add(new SqlParameter("@残液处理方式", useDrugsReport.残液处理方式 == null ? (object)DBNull.Value : (object)useDrugsReport.残液处理方式));
cmd.Parameters.Add(new SqlParameter("@残液处理地点", useDrugsReport.残液处理地点 == null ? (object)DBNull.Value : (object)useDrugsReport.残液处理地点));
cmd.Parameters.Add(new SqlParameter("@处方医师", useDrugsReport.处方医师 == null ? (object)DBNull.Value : (object)useDrugsReport.处方医师));
cmd.Parameters.Add(new SqlParameter("@执行护士", useDrugsReport.执行护士 == null ? (object)DBNull.Value : (object)useDrugsReport.执行护士));
cmd.Parameters.Add(new SqlParameter("@复核人", useDrugsReport.复核人 == null ? (object)DBNull.Value : (object)useDrugsReport.复核人));
cmd.Parameters.Add(new SqlParameter("@核对护士", useDrugsReport.核对护士 == null ? (object)DBNull.Value : (object)useDrugsReport.核对护士));
cmd.Parameters.Add(new SqlParameter("@术间", useDrugsReport.术间 == null ? (object)DBNull.Value : (object)useDrugsReport.术间));
cmd.Parameters.Add(new SqlParameter("@医生签名", useDrugsReport.医生签名 == null ? (object)DBNull.Value : (object)useDrugsReport.医生签名));
cmd.Parameters.Add(new SqlParameter("@医生签名2", useDrugsReport.医生签名2 == null ? (object)DBNull.Value : (object)useDrugsReport.医生签名2));
cmd.Parameters.Add(new SqlParameter("@护士签名",useDrugsReport.护士签名==null?(object)DBNull.Value:(object)useDrugsReport.护士签名));
cmd.Parameters.Add(new SqlParameter("@PatientRecordId",useDrugsReport.PatientRecordId.HasValue?(object)useDrugsReport.PatientRecordId.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@State",useDrugsReport.State.HasValue?(object)useDrugsReport.State.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@Num",useDrugsReport.Num.HasValue?(object)useDrugsReport.Num.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@SpecUnit",useDrugsReport.SpecUnit==null?(object)DBNull.Value:(object)useDrugsReport.SpecUnit));
cmd.Parameters.Add(new SqlParameter("@Enter",useDrugsReport.Enter.HasValue?(object)useDrugsReport.Enter.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@镇痛泵使用量",useDrugsReport.镇痛泵使用量==null?(object)DBNull.Value:(object)useDrugsReport.镇痛泵使用量));
cmd.Parameters.Add(new SqlParameter("@镇痛泵余量",useDrugsReport.镇痛泵余量==null?(object)DBNull.Value:(object)useDrugsReport.镇痛泵余量));
return Convert.ToInt32(cmd.ExecuteScalar());
}
///
/// 不使用事务的插入方法
///
/// 实体类对象
/// 标识列值或影响的记录行数
public static int Insert(UseDrugsReport useDrugsReport)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return Insert(cmd, useDrugsReport);
}
}
}
///
/// 使用事务的插入方法
///
/// 实现共享Connection的对象
/// 实体类对象
/// 标识列值或影响的记录行数
public static int Insert(Connection connection, UseDrugsReport useDrugsReport)
{
return Insert(connection.Command, useDrugsReport);
}
#endregion
#region 删除实体操作
///
/// 删除
///
/// Command对象
/// 实体类对象
/// 影响的记录行数
public static int ExcuteDeleteCommand(SqlCommand cmd, UseDrugsReport useDrugsReport)
{
cmd.Parameters.Clear();
cmd.CommandText = "delete from UseDrugsReport where Id=@Id";
//从实体中取出值放入Command的参数列表
cmd.Parameters.Add(new SqlParameter("@Id", useDrugsReport.Id));
return cmd.ExecuteNonQuery();
}
///
/// 不使用事务的删除方法
///
/// 实体类对象
/// 影响的记录行数
public static int Delete(UseDrugsReport useDrugsReport)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return ExcuteDeleteCommand(cmd, useDrugsReport);
}
}
}
///
/// 使用事务的删除方法
///
/// 实现共享Connection的对象
/// 实体类对象
/// 影响的记录行数
public static int Delete(Connection connection, UseDrugsReport useDrugsReport)
{
return ExcuteDeleteCommand(connection.Command, useDrugsReport);
}
///
/// 执行删除命令
///
/// Command对象
/// 对象查询语句
/// 参数列表
/// 影响的记录行数
public static int ExcuteDeleteCommand(SqlCommand cmd, string oql, ParameterList parameters)
{
//解析过滤部份Sql语句
string filterString = SyntaxAnalyzer.ParseSql(oql, new UseDrugsReportMap());
if (filterString != string.Empty)
{
filterString = " where " + filterString;
}
cmd.Parameters.Clear();
cmd.CommandText = "delete from UseDrugsReport " + filterString;
//添加参数
if (parameters != null)
{
foreach (string key in parameters.Keys)
{
cmd.Parameters.Add(new SqlParameter(key, parameters[key]));
}
}
return cmd.ExecuteNonQuery();
}
///
/// 不使用事务的删除方法
///
/// 对象查询语句
/// 参数列表
/// 影响的记录行数
public static int Delete(string oql, ParameterList parameters)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return ExcuteDeleteCommand(cmd, oql, parameters);
}
}
}
///
/// 使用事务的删除方法
///
/// 实现共享Connection的对象
/// 对象查询语句
/// 参数列表
/// 影响的记录行数
public static int Delete(Connection connection, string oql, ParameterList parameters)
{
return ExcuteDeleteCommand(connection.Command, oql, parameters);
}
#endregion
#region 更新实体操作
///
/// 更新
///
/// Command对象
/// 实体类对象
/// 影响的记录行数
public static int ExcuteUpdateCommand(SqlCommand cmd, UseDrugsReport useDrugsReport)
{
cmd.CommandText = "update UseDrugsReport set 用药Id=@用药Id,加药时间=@加药时间,使用日期=@使用日期,患者姓名=@患者姓名,性别=@性别,年龄=@年龄,住院号=@住院号,病历号=@病历号,身份证号码=@身份证号码,疾病名称=@疾病名称,药品名称=@药品名称,剩余药品弃取记录=@剩余药品弃取记录,批号=@批号,处方剂量=@处方剂量,用量=@用量,残留剂量=@残留剂量,残液处理方式=@残液处理方式,残液处理地点=@残液处理地点,处方医师=@处方医师,执行护士=@执行护士,复核人=@复核人,核对护士=@核对护士,术间=@术间,医生签名=@医生签名,医生签名2=@医生签名2,护士签名=@护士签名,PatientRecordId=@PatientRecordId,State=@State,Num=@Num,SpecUnit=@SpecUnit,Enter=@Enter,镇痛泵使用量=@镇痛泵使用量,镇痛泵余量=@镇痛泵余量 where Id=@Id";
//从实体中取出值放入Command的参数列表
cmd.Parameters.Add(new SqlParameter("@用药Id",useDrugsReport.用药Id.HasValue?(object)useDrugsReport.用药Id.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@加药时间",useDrugsReport.加药时间.HasValue?(object)useDrugsReport.加药时间.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@使用日期",useDrugsReport.使用日期==null?(object)DBNull.Value:(object)useDrugsReport.使用日期));
cmd.Parameters.Add(new SqlParameter("@患者姓名",useDrugsReport.患者姓名==null?(object)DBNull.Value:(object)useDrugsReport.患者姓名));
cmd.Parameters.Add(new SqlParameter("@性别",useDrugsReport.性别==null?(object)DBNull.Value:(object)useDrugsReport.性别));
cmd.Parameters.Add(new SqlParameter("@年龄",useDrugsReport.年龄==null?(object)DBNull.Value:(object)useDrugsReport.年龄));
cmd.Parameters.Add(new SqlParameter("@住院号",useDrugsReport.住院号==null?(object)DBNull.Value:(object)useDrugsReport.住院号));
cmd.Parameters.Add(new SqlParameter("@病历号",useDrugsReport.病历号==null?(object)DBNull.Value:(object)useDrugsReport.病历号));
cmd.Parameters.Add(new SqlParameter("@身份证号码",useDrugsReport.身份证号码==null?(object)DBNull.Value:(object)useDrugsReport.身份证号码));
cmd.Parameters.Add(new SqlParameter("@疾病名称",useDrugsReport.疾病名称==null?(object)DBNull.Value:(object)useDrugsReport.疾病名称));
cmd.Parameters.Add(new SqlParameter("@药品名称",useDrugsReport.药品名称==null?(object)DBNull.Value:(object)useDrugsReport.药品名称));
cmd.Parameters.Add(new SqlParameter("@剩余药品弃取记录",useDrugsReport.剩余药品弃取记录==null?(object)DBNull.Value:(object)useDrugsReport.剩余药品弃取记录));
cmd.Parameters.Add(new SqlParameter("@批号",useDrugsReport.批号==null?(object)DBNull.Value:(object)useDrugsReport.批号));
cmd.Parameters.Add(new SqlParameter("@处方剂量",useDrugsReport.处方剂量==null?(object)DBNull.Value:(object)useDrugsReport.处方剂量));
cmd.Parameters.Add(new SqlParameter("@用量",useDrugsReport.用量==null?(object)DBNull.Value:(object)useDrugsReport.用量));
cmd.Parameters.Add(new SqlParameter("@残留剂量",useDrugsReport.残留剂量==null?(object)DBNull.Value:(object)useDrugsReport.残留剂量));
cmd.Parameters.Add(new SqlParameter("@残液处理方式",useDrugsReport.残液处理方式==null?(object)DBNull.Value:(object)useDrugsReport.残液处理方式));
cmd.Parameters.Add(new SqlParameter("@残液处理地点",useDrugsReport.残液处理地点==null?(object)DBNull.Value:(object)useDrugsReport.残液处理地点));
cmd.Parameters.Add(new SqlParameter("@处方医师",useDrugsReport.处方医师==null?(object)DBNull.Value:(object)useDrugsReport.处方医师));
cmd.Parameters.Add(new SqlParameter("@执行护士",useDrugsReport.执行护士==null?(object)DBNull.Value:(object)useDrugsReport.执行护士));
cmd.Parameters.Add(new SqlParameter("@复核人",useDrugsReport.复核人==null?(object)DBNull.Value:(object)useDrugsReport.复核人));
cmd.Parameters.Add(new SqlParameter("@核对护士",useDrugsReport.核对护士==null?(object)DBNull.Value:(object)useDrugsReport.核对护士));
cmd.Parameters.Add(new SqlParameter("@术间",useDrugsReport.术间==null?(object)DBNull.Value:(object)useDrugsReport.术间));
cmd.Parameters.Add(new SqlParameter("@医生签名",useDrugsReport.医生签名==null?(object)DBNull.Value:(object)useDrugsReport.医生签名));
cmd.Parameters.Add(new SqlParameter("@医生签名2",useDrugsReport.医生签名2==null?(object)DBNull.Value:(object)useDrugsReport.医生签名2));
cmd.Parameters.Add(new SqlParameter("@护士签名",useDrugsReport.护士签名==null?(object)DBNull.Value:(object)useDrugsReport.护士签名));
cmd.Parameters.Add(new SqlParameter("@PatientRecordId",useDrugsReport.PatientRecordId.HasValue?(object)useDrugsReport.PatientRecordId.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@State",useDrugsReport.State.HasValue?(object)useDrugsReport.State.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@Num",useDrugsReport.Num.HasValue?(object)useDrugsReport.Num.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@SpecUnit",useDrugsReport.SpecUnit==null?(object)DBNull.Value:(object)useDrugsReport.SpecUnit));
cmd.Parameters.Add(new SqlParameter("@Enter",useDrugsReport.Enter.HasValue?(object)useDrugsReport.Enter.Value:(object)DBNull.Value));
cmd.Parameters.Add(new SqlParameter("@镇痛泵使用量",useDrugsReport.镇痛泵使用量==null?(object)DBNull.Value:(object)useDrugsReport.镇痛泵使用量));
cmd.Parameters.Add(new SqlParameter("@镇痛泵余量",useDrugsReport.镇痛泵余量==null?(object)DBNull.Value:(object)useDrugsReport.镇痛泵余量));
cmd.Parameters.Add(new SqlParameter("@Id", useDrugsReport.Id));
return cmd.ExecuteNonQuery();
}
///
/// 不使用事务的更新方法
///
/// 实体类对象
/// 影响的记录行数
public static int Update(UseDrugsReport useDrugsReport)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return ExcuteUpdateCommand(cmd, useDrugsReport);
}
}
}
///
/// 使用事务的更新方法
///
/// 实现共享Connection的对象
/// 实体类对象
/// 影响的记录行数
public static int Update(Connection connection, UseDrugsReport useDrugsReport)
{
return ExcuteUpdateCommand(connection.Command, useDrugsReport);
}
///
/// 执行更新命令
///
/// Command对象
/// 对象查询语句
/// 参数列表
/// 影响的记录行数
public static int ExcuteUpdateCommand(SqlCommand cmd, string oql, ParameterList parameters)
{
//解析过滤部份Sql语句
string updateString = SyntaxAnalyzer.ParseSql(oql, new UseDrugsReportMap());
cmd.CommandText = "update UseDrugsReport set " + updateString;
cmd.Parameters.Clear();
//添加参数
if (parameters != null)
{
foreach (string key in parameters.Keys)
{
cmd.Parameters.Add(new SqlParameter(key, parameters[key]));
}
}
return cmd.ExecuteNonQuery();
}
///
/// 不使用事务的更新方法
///
/// 对象查询语句
/// 参数列表
/// 影响的记录行数
public static int Update(string oql, ParameterList parameters)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return ExcuteUpdateCommand(cmd, oql, parameters);
}
}
}
///
/// 使用事务的更新方法
///
/// 实现共享Connection的对象
/// 对象查询语句
/// 参数列表
/// 影响的记录行数
public static int Update(Connection connection, string oql, ParameterList parameters)
{
return ExcuteUpdateCommand(connection.Command, oql, parameters);
}
#endregion
#region 查询实体集合
///
/// 执行Command获取对象列表
///
/// Command对象
/// 递归类型
/// 递归深度
/// 实体类对象列表
public static List ExcuteSelectCommand(SqlCommand cmd, RecursiveType recursiveType, int recursiveDepth)
{
List useDrugsReportList = new List();
using (SqlDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
UseDrugsReport useDrugsReport = DataReaderToEntity(dr);
useDrugsReportList.Add(useDrugsReport);
}
}
return useDrugsReportList;
}
///
/// 执行查询命令
///
/// Command对象
/// 对象查询语句
/// 参数列表
/// 递归类型
/// 递归深度
/// 实体类对象集合
public static List ExcuteSelectCommand(SqlCommand cmd, string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
{
//解析过滤部份Sql语句
string filterString = SyntaxAnalyzer.ParseSql(oql, new UseDrugsReportMap());
if (filterString != string.Empty)
{
if (filterString.Trim().ToLower().IndexOf("order ") != 0)
filterString = " where " + filterString;
}
cmd.Parameters.Clear();
cmd.CommandText = "select * from UseDrugsReport " + filterString;
//添加参数
if (parameters != null)
{
foreach (string key in parameters.Keys)
{
cmd.Parameters.Add(new SqlParameter(key, parameters[key]));
}
}
return ExcuteSelectCommand(cmd, recursiveType, recursiveDepth);
}
///
/// 根据对象查询语句查询实体集合
///
/// 实体类对象集合
public static List Select()
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from UseDrugsReport";
return ExcuteSelectCommand(cmd, RecursiveType.Parent, 1);
}
}
}
///
/// 根据对象查询语句查询实体集合
///
/// 递归类型
/// 递归深度
/// 实体类对象集合
public static List Select(RecursiveType recursiveType, int recursiveDepth)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from UseDrugsReport";
return ExcuteSelectCommand(cmd, recursiveType, recursiveDepth);
}
}
}
///
/// 根据对象查询语句查询实体集合
///
/// 对象查询语句
/// 参数列表
/// 实体类对象集合
public static List Select(string oql, ParameterList parameters)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return ExcuteSelectCommand(cmd, oql, parameters, RecursiveType.Parent, 1);
}
}
}
///
/// 根据对象查询语句查询实体集合
///
/// 对象查询语句
/// 参数列表
/// 递归类型
/// 递归深度
/// 实体类对象集合
public static List Select(string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return ExcuteSelectCommand(cmd, oql, parameters, recursiveType, recursiveDepth);
}
}
}
///
/// 根据对象查询语句查询实体集合(启用事务)
///
/// 连接对象
/// 对象查询语句
/// 参数列表
/// 递归类型
/// 递归深度
/// 实体类对象集合
public static List Select(Connection connection, string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
{
return ExcuteSelectCommand(connection.Command, oql, parameters, recursiveType, recursiveDepth);
}
#endregion
#region 查询单个实体
///
/// 递归查询单个实体
///
/// Command对象
/// 递归类型
/// 递归深度
/// 实体对象
public static UseDrugsReport ExcuteSelectSingleCommand(SqlCommand cmd, RecursiveType recursiveType, int recursiveDepth)
{
UseDrugsReport useDrugsReport = null;
using (SqlDataReader dr = cmd.ExecuteReader())
{
if (dr.Read())
useDrugsReport = DataReaderToEntity(dr);
}
if (useDrugsReport == null)
return useDrugsReport;
return useDrugsReport;
}
///
/// 更据对象查询语句递归查询单个实体
///
/// Command对象
/// 对象查询语句
/// 参数列表
/// 递归类型
/// 递归深度
/// 实体对象
public static UseDrugsReport ExcuteSelectSingleCommand(SqlCommand cmd, string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
{
//解析过滤部份Sql语句
string filterString = SyntaxAnalyzer.ParseSql(oql, new UseDrugsReportMap());
if (filterString != string.Empty)
{
filterString = " where " + filterString;
}
cmd.CommandText = "select * from UseDrugsReport " + filterString;
cmd.Parameters.Clear();
//添加参数
if (parameters != null)
{
foreach (string key in parameters.Keys)
{
cmd.Parameters.Add(new SqlParameter(key, parameters[key]));
}
}
return ExcuteSelectSingleCommand(cmd, recursiveType, recursiveDepth);
}
///
/// 更据对象查询语句递归查询单个实体
///
/// Command对象
/// 对象查询语句
/// 参数列表
/// 递归类型
/// 递归深度
/// 实体对象
public static UseDrugsReport SelectSingle(string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return ExcuteSelectSingleCommand(cmd, oql, parameters, recursiveType, recursiveDepth);
}
}
}
///
/// 更据对象查询语句查询单个实体
///
/// Command对象
/// 对象查询语句
/// 参数列表
/// 实体对象
public static UseDrugsReport SelectSingle(string oql, ParameterList parameters)
{
return SelectSingle(oql, parameters, RecursiveType.Parent, 1);
}
///
/// 更据对象查询语句并启用事务查询单个实体
///
/// 连接对象
/// 对象查询语句
/// 参数列表
/// 实体对象
public static UseDrugsReport SelectSingle(Connection connection, string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
{
return ExcuteSelectSingleCommand(connection.Command, oql, parameters, recursiveType, recursiveDepth);
}
///
/// 更据主键值递归查询单个实体
///
/// Command对象
/// 主键值
/// 递归类型
/// 递归深度
/// 实体对象
public static UseDrugsReport SelectSingle(SqlCommand cmd, int? id, RecursiveType recursiveType, int recursiveDepth)
{
cmd.Parameters.Clear();
if (id.HasValue)
{
cmd.CommandText = "select * from UseDrugsReport where Id=@pk";
cmd.Parameters.Add(new SqlParameter("@pk", id.Value));
}
else
{
cmd.CommandText = "select * from UseDrugsReport where Id is null";
}
return ExcuteSelectSingleCommand(cmd, recursiveType, recursiveDepth);
}
///
/// 按主键字段查询特定实体
///
/// 主键值
/// 实体类对象
public static UseDrugsReport SelectSingle(int? id)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return SelectSingle(cmd, id, RecursiveType.Parent, 1);
}
}
}
///
/// 按主键字段查询特定实体
///
/// 主键值
/// 递归类型
/// 递归深度
/// 实体类对象
public static UseDrugsReport SelectSingle(int? id, RecursiveType recursiveType, int recursiveDepth)
{
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
return SelectSingle(cmd, id, recursiveType, recursiveDepth);
}
}
}
///
/// 使用事务并按主键字段查询特定实体
///
/// 连接对象
/// 主键值
/// 实体类对象
public static UseDrugsReport SelectSingle(Connection connection, int? id, RecursiveType recursiveType, int recursiveDepth)
{
return SelectSingle(connection.Command, id, recursiveType, recursiveDepth);
}
#endregion
///
/// 从DataReader中取出值生成实体对象
///
/// 查询对象
/// 过滤条件字符串
private static UseDrugsReport DataReaderToEntity(SqlDataReader dr)
{
UseDrugsReport entity = new UseDrugsReport();
if (dr["Id"] != System.DBNull.Value)
{
entity.Id = Convert.ToInt32(dr["Id"]);
}
if (dr["用药Id"] != System.DBNull.Value)
{
entity.用药Id = Convert.ToInt32(dr["用药Id"]);
}
if (dr["加药时间"] != System.DBNull.Value)
{
entity.加药时间 = Convert.ToDateTime(dr["加药时间"]);
}
if (dr["使用日期"] != System.DBNull.Value)
{
entity.使用日期 = dr["使用日期"].ToString();
}
if (dr["患者姓名"] != System.DBNull.Value)
{
entity.患者姓名 = dr["患者姓名"].ToString();
}
if (dr["性别"] != System.DBNull.Value)
{
entity.性别 = dr["性别"].ToString();
}
if (dr["年龄"] != System.DBNull.Value)
{
entity.年龄 = dr["年龄"].ToString();
}
if (dr["住院号"] != System.DBNull.Value)
{
entity.住院号 = dr["住院号"].ToString();
}
if (dr["病历号"] != System.DBNull.Value)
{
entity.病历号 = dr["病历号"].ToString();
}
if (dr["身份证号码"] != System.DBNull.Value)
{
entity.身份证号码 = dr["身份证号码"].ToString();
}
if (dr["疾病名称"] != System.DBNull.Value)
{
entity.疾病名称 = dr["疾病名称"].ToString();
}
if (dr["药品名称"] != System.DBNull.Value)
{
entity.药品名称 = dr["药品名称"].ToString();
}
if (dr["剩余药品弃取记录"] != System.DBNull.Value)
{
entity.剩余药品弃取记录 = dr["剩余药品弃取记录"].ToString();
}
if (dr["批号"] != System.DBNull.Value)
{
entity.批号 = dr["批号"].ToString();
}
if (dr["处方剂量"] != System.DBNull.Value)
{
entity.处方剂量 = dr["处方剂量"].ToString();
}
if (dr["用量"] != System.DBNull.Value)
{
entity.用量 = dr["用量"].ToString();
}
if (dr["残留剂量"] != System.DBNull.Value)
{
entity.残留剂量 = dr["残留剂量"].ToString();
}
if (dr["残液处理方式"] != System.DBNull.Value)
{
entity.残液处理方式 = dr["残液处理方式"].ToString();
}
if (dr["残液处理地点"] != System.DBNull.Value)
{
entity.残液处理地点 = dr["残液处理地点"].ToString();
}
if (dr["处方医师"] != System.DBNull.Value)
{
entity.处方医师 = dr["处方医师"].ToString();
}
if (dr["执行护士"] != System.DBNull.Value)
{
entity.执行护士 = dr["执行护士"].ToString();
}
if (dr["复核人"] != System.DBNull.Value)
{
entity.复核人 = dr["复核人"].ToString();
}
if (dr["核对护士"] != System.DBNull.Value)
{
entity.核对护士 = dr["核对护士"].ToString();
}
if(dr["Enter"]!=System.DBNull.Value)
{
entity.Enter=Convert.ToInt32(dr["Enter"]);
}
if(dr["Num"]!=System.DBNull.Value)
{
entity.Num=Convert.ToInt32(dr["Num"]);
}
if(dr["SpecUnit"]!=System.DBNull.Value)
{
entity.SpecUnit=dr["SpecUnit"].ToString();
}
if (dr["术间"] != System.DBNull.Value)
{
entity.术间 = dr["术间"].ToString();
}
if (dr["医生签名"] != System.DBNull.Value)
{
entity.医生签名 = dr["医生签名"].ToString();
}
if (entity.医生签名 != null && entity.医生签名 != "")
{
entity.医生签名Img = BytesToImage(Convert.FromBase64String(entity.医生签名));
}
if (dr["医生签名2"] != System.DBNull.Value)
{
entity.医生签名2 = dr["医生签名2"].ToString();
}
if (entity.医生签名2 != null && entity.医生签名2 != "")
{
entity.医生签名2Img = BytesToImage(Convert.FromBase64String(entity.医生签名2));
}
if (dr["护士签名"] != System.DBNull.Value)
{
entity.护士签名 = dr["护士签名"].ToString();
}
if (entity.护士签名 != null && entity.护士签名 != "")
{
entity.护士签名Img = BytesToImage(Convert.FromBase64String(entity.护士签名));
}
if (dr["PatientRecordId"] != System.DBNull.Value)
{
entity.PatientRecordId = Convert.ToInt32(dr["PatientRecordId"]);
}
if (dr["State"] != System.DBNull.Value)
{
entity.State = Convert.ToInt32(dr["State"]);
}
if(dr["镇痛泵使用量"]!=System.DBNull.Value)
{
entity.镇痛泵使用量=dr["镇痛泵使用量"].ToString();
}
if(dr["镇痛泵余量"]!=System.DBNull.Value)
{
entity.镇痛泵余量=dr["镇痛泵余量"].ToString();
}
return entity;
}
///
/// Byte[]转Image
///
///
///
public static Image BytesToImage(byte[] buffer)
{
MemoryStream ms = new MemoryStream(buffer);
Image image = Image.FromStream(ms);
return image;
}
public static DataTable getUseDrugsReportNo(string Name)
{
string sql = string.Format("select top 5 批号 from UseDrugsReport where 批号 like '%{0}%' order by id desc", Name);
return DBHelper.GetDataTable(sql);
}
}
}