1031 lines
59 KiB
C#
1031 lines
59 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Data.SqlClient;
|
|
using System.Collections;
|
|
using AIMSModel;
|
|
using AIMSObjectQuery;
|
|
using System.Collections.Generic;
|
|
using DrawGraph;
|
|
|
|
namespace AIMSDAL
|
|
{
|
|
internal partial class DOperationRecord
|
|
{
|
|
#region 插入实体操作部份
|
|
/// <summary>
|
|
/// 插入
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>标识列值或影响的记录行数</returns>
|
|
internal static int Insert(SqlCommand cmd, OperationRecord operationRecord)
|
|
{
|
|
cmd.Parameters.Clear();
|
|
cmd.CommandText = "insert into OperationRecord (PatientId,OperationApplyId,InRoomTime,OutRoomTime,OperationBeginTime,OperationEndTime,AnesthesiaBeginTime,AnesthesiaEndTime,ASALevel,SpecialCase,Fasting,BloodType,OperationDate,OpeSpecialCondition,BMI,BeforeDrugs,AnaesthesiaMethodName,AnaesthesiaTechnology,AnaesthesiaComplication,SpecialEvent,SuddenSituation,ConditionChage,RescueMeasures,RescueTime,RescuePerson,RescueTechnology,SpileInTime,SpileOutTime,SpileSituation,SpileWard,SpileBeforCondition,SpileAffterCondition,RefluxFlag,MuscleStrengthRecovery,CoughReflex,InOperaRoomState,BloodPressure,Tempeture,Pulse,Breath,IsolationIndicator,AnesMachine,ControlledAnalgesia,AnalgesiaModel,AnalgesiaRate,AnalgesiaDrug,AldreteScore,RouteMonitoring,Entourage,Remark1,Remark2,Remark3,Crystal,Colloid,InAmount,OutAmount,OperationTimeSpan,AnaesthesiaTimeSpan,RoomTimeSpan,AnesthesiaDoctorTimeMinute,anesthesiaDoctorSucceedTimeMinute,instrumentNurseTimeMinute,instrumentNurseSucceedTimeMinute,tourNurseTimeMinute,tourNurseSucceedTimeMinute,RecordPageCount,SignName,SignTime,RoomId,State,RecoverId,OperatorNo,OperatorName,OperateDate,Remarks) values (@PatientId,@OperationApplyId,@InRoomTime,@OutRoomTime,@OperationBeginTime,@OperationEndTime,@AnesthesiaBeginTime,@AnesthesiaEndTime,@ASALevel,@SpecialCase,@Fasting,@BloodType,@OperationDate,@OpeSpecialCondition,@BMI,@BeforeDrugs,@AnaesthesiaMethodName,@AnaesthesiaTechnology,@AnaesthesiaComplication,@SpecialEvent,@SuddenSituation,@ConditionChage,@RescueMeasures,@RescueTime,@RescuePerson,@RescueTechnology,@SpileInTime,@SpileOutTime,@SpileSituation,@SpileWard,@SpileBeforCondition,@SpileAffterCondition,@RefluxFlag,@MuscleStrengthRecovery,@CoughReflex,@InOperaRoomState,@BloodPressure,@Tempeture,@Pulse,@Breath,@IsolationIndicator,@AnesMachine,@ControlledAnalgesia,@AnalgesiaModel,@AnalgesiaRate,@AnalgesiaDrug,@AldreteScore,@RouteMonitoring,@Entourage,@Remark1,@Remark2,@Remark3,@Crystal,@Colloid,@InAmount,@OutAmount,@OperationTimeSpan,@AnaesthesiaTimeSpan,@RoomTimeSpan,@AnesthesiaDoctorTimeMinute,@anesthesiaDoctorSucceedTimeMinute,@instrumentNurseTimeMinute,@instrumentNurseSucceedTimeMinute,@tourNurseTimeMinute,@tourNurseSucceedTimeMinute,@RecordPageCount,@SignName,@SignTime,@RoomId,@State,@RecoverId,@OperatorNo,@OperatorName,@OperateDate,@Remarks);select @@identity";
|
|
//从实体中取出值放入Command的参数列表
|
|
cmd.Parameters.Add(new SqlParameter("@PatientId",operationRecord.PatientId.HasValue?(object)operationRecord.PatientId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationApplyId",operationRecord.OperationApplyId.HasValue?(object)operationRecord.OperationApplyId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@InRoomTime",operationRecord.InRoomTime.HasValue?(object)operationRecord.InRoomTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OutRoomTime",operationRecord.OutRoomTime.HasValue?(object)operationRecord.OutRoomTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationBeginTime",operationRecord.OperationBeginTime.HasValue?(object)operationRecord.OperationBeginTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationEndTime",operationRecord.OperationEndTime.HasValue?(object)operationRecord.OperationEndTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesthesiaBeginTime",operationRecord.AnesthesiaBeginTime.HasValue?(object)operationRecord.AnesthesiaBeginTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesthesiaEndTime",operationRecord.AnesthesiaEndTime.HasValue?(object)operationRecord.AnesthesiaEndTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@ASALevel",operationRecord.ASALevel.HasValue?(object)operationRecord.ASALevel.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@SpecialCase",operationRecord.SpecialCase==null?(object)DBNull.Value:(object)operationRecord.SpecialCase));
|
|
cmd.Parameters.Add(new SqlParameter("@Fasting",operationRecord.Fasting.HasValue?(object)operationRecord.Fasting.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@BloodType",operationRecord.BloodType==null?(object)DBNull.Value:(object)operationRecord.BloodType));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationDate",operationRecord.OperationDate==null?(object)DBNull.Value:(object)operationRecord.OperationDate));
|
|
cmd.Parameters.Add(new SqlParameter("@OpeSpecialCondition",operationRecord.OpeSpecialCondition==null?(object)DBNull.Value:(object)operationRecord.OpeSpecialCondition));
|
|
cmd.Parameters.Add(new SqlParameter("@BMI",operationRecord.BMI==null?(object)DBNull.Value:(object)operationRecord.BMI));
|
|
cmd.Parameters.Add(new SqlParameter("@BeforeDrugs",operationRecord.BeforeDrugs==null?(object)DBNull.Value:(object)operationRecord.BeforeDrugs));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaMethodName",operationRecord.AnaesthesiaMethodName==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaMethodName));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaTechnology",operationRecord.AnaesthesiaTechnology==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaTechnology));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaComplication",operationRecord.AnaesthesiaComplication==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaComplication));
|
|
cmd.Parameters.Add(new SqlParameter("@SpecialEvent",operationRecord.SpecialEvent==null?(object)DBNull.Value:(object)operationRecord.SpecialEvent));
|
|
cmd.Parameters.Add(new SqlParameter("@SuddenSituation",operationRecord.SuddenSituation==null?(object)DBNull.Value:(object)operationRecord.SuddenSituation));
|
|
cmd.Parameters.Add(new SqlParameter("@ConditionChage",operationRecord.ConditionChage==null?(object)DBNull.Value:(object)operationRecord.ConditionChage));
|
|
cmd.Parameters.Add(new SqlParameter("@RescueMeasures",operationRecord.RescueMeasures==null?(object)DBNull.Value:(object)operationRecord.RescueMeasures));
|
|
cmd.Parameters.Add(new SqlParameter("@RescueTime",operationRecord.RescueTime==null?(object)DBNull.Value:(object)operationRecord.RescueTime));
|
|
cmd.Parameters.Add(new SqlParameter("@RescuePerson",operationRecord.RescuePerson==null?(object)DBNull.Value:(object)operationRecord.RescuePerson));
|
|
cmd.Parameters.Add(new SqlParameter("@RescueTechnology",operationRecord.RescueTechnology==null?(object)DBNull.Value:(object)operationRecord.RescueTechnology));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileInTime", operationRecord.SpileInTime.HasValue ? (object)operationRecord.SpileInTime.Value : (object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileOutTime", operationRecord.SpileOutTime.HasValue ? (object)operationRecord.SpileOutTime.Value : (object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileSituation",operationRecord.SpileSituation==null?(object)DBNull.Value:(object)operationRecord.SpileSituation));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileWard",operationRecord.SpileWard==null?(object)DBNull.Value:(object)operationRecord.SpileWard));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileBeforCondition",operationRecord.SpileBeforCondition==null?(object)DBNull.Value:(object)operationRecord.SpileBeforCondition));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileAffterCondition",operationRecord.SpileAffterCondition==null?(object)DBNull.Value:(object)operationRecord.SpileAffterCondition));
|
|
cmd.Parameters.Add(new SqlParameter("@RefluxFlag",operationRecord.RefluxFlag==null?(object)DBNull.Value:(object)operationRecord.RefluxFlag));
|
|
cmd.Parameters.Add(new SqlParameter("@MuscleStrengthRecovery",operationRecord.MuscleStrengthRecovery==null?(object)DBNull.Value:(object)operationRecord.MuscleStrengthRecovery));
|
|
cmd.Parameters.Add(new SqlParameter("@CoughReflex",operationRecord.CoughReflex==null?(object)DBNull.Value:(object)operationRecord.CoughReflex));
|
|
cmd.Parameters.Add(new SqlParameter("@InOperaRoomState",operationRecord.InOperaRoomState==null?(object)DBNull.Value:(object)operationRecord.InOperaRoomState));
|
|
cmd.Parameters.Add(new SqlParameter("@BloodPressure",operationRecord.BloodPressure==null?(object)DBNull.Value:(object)operationRecord.BloodPressure));
|
|
cmd.Parameters.Add(new SqlParameter("@Tempeture",operationRecord.Tempeture==null?(object)DBNull.Value:(object)operationRecord.Tempeture));
|
|
cmd.Parameters.Add(new SqlParameter("@Pulse",operationRecord.Pulse==null?(object)DBNull.Value:(object)operationRecord.Pulse));
|
|
cmd.Parameters.Add(new SqlParameter("@Breath",operationRecord.Breath==null?(object)DBNull.Value:(object)operationRecord.Breath));
|
|
cmd.Parameters.Add(new SqlParameter("@IsolationIndicator",operationRecord.IsolationIndicator==null?(object)DBNull.Value:(object)operationRecord.IsolationIndicator));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesMachine",operationRecord.AnesMachine==null?(object)DBNull.Value:(object)operationRecord.AnesMachine));
|
|
cmd.Parameters.Add(new SqlParameter("@ControlledAnalgesia",operationRecord.ControlledAnalgesia==null?(object)DBNull.Value:(object)operationRecord.ControlledAnalgesia));
|
|
cmd.Parameters.Add(new SqlParameter("@AnalgesiaModel",operationRecord.AnalgesiaModel==null?(object)DBNull.Value:(object)operationRecord.AnalgesiaModel));
|
|
cmd.Parameters.Add(new SqlParameter("@AnalgesiaRate",operationRecord.AnalgesiaRate==null?(object)DBNull.Value:(object)operationRecord.AnalgesiaRate));
|
|
cmd.Parameters.Add(new SqlParameter("@AnalgesiaDrug",operationRecord.AnalgesiaDrug==null?(object)DBNull.Value:(object)operationRecord.AnalgesiaDrug));
|
|
cmd.Parameters.Add(new SqlParameter("@AldreteScore",operationRecord.AldreteScore==null?(object)DBNull.Value:(object)operationRecord.AldreteScore));
|
|
cmd.Parameters.Add(new SqlParameter("@RouteMonitoring",operationRecord.RouteMonitoring==null?(object)DBNull.Value:(object)operationRecord.RouteMonitoring));
|
|
cmd.Parameters.Add(new SqlParameter("@Entourage",operationRecord.Entourage==null?(object)DBNull.Value:(object)operationRecord.Entourage));
|
|
cmd.Parameters.Add(new SqlParameter("@Remark1",operationRecord.Remark1==null?(object)DBNull.Value:(object)operationRecord.Remark1));
|
|
cmd.Parameters.Add(new SqlParameter("@Remark2",operationRecord.Remark2==null?(object)DBNull.Value:(object)operationRecord.Remark2));
|
|
cmd.Parameters.Add(new SqlParameter("@Remark3",operationRecord.Remark3==null?(object)DBNull.Value:(object)operationRecord.Remark3));
|
|
cmd.Parameters.Add(new SqlParameter("@Crystal",operationRecord.Crystal==null?(object)DBNull.Value:(object)operationRecord.Crystal));
|
|
cmd.Parameters.Add(new SqlParameter("@Colloid",operationRecord.Colloid==null?(object)DBNull.Value:(object)operationRecord.Colloid));
|
|
cmd.Parameters.Add(new SqlParameter("@InAmount",operationRecord.InAmount==null?(object)DBNull.Value:(object)operationRecord.InAmount));
|
|
cmd.Parameters.Add(new SqlParameter("@OutAmount",operationRecord.OutAmount==null?(object)DBNull.Value:(object)operationRecord.OutAmount));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationTimeSpan",operationRecord.OperationTimeSpan==null?(object)DBNull.Value:(object)operationRecord.OperationTimeSpan));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaTimeSpan",operationRecord.AnaesthesiaTimeSpan==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaTimeSpan));
|
|
cmd.Parameters.Add(new SqlParameter("@RoomTimeSpan",operationRecord.RoomTimeSpan==null?(object)DBNull.Value:(object)operationRecord.RoomTimeSpan));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesthesiaDoctorTimeMinute",operationRecord.AnesthesiaDoctorTimeMinute==null?(object)DBNull.Value:(object)operationRecord.AnesthesiaDoctorTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@anesthesiaDoctorSucceedTimeMinute",operationRecord.AnesthesiaDoctorSucceedTimeMinute==null?(object)DBNull.Value:(object)operationRecord.AnesthesiaDoctorSucceedTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@instrumentNurseTimeMinute",operationRecord.InstrumentNurseTimeMinute==null?(object)DBNull.Value:(object)operationRecord.InstrumentNurseTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@instrumentNurseSucceedTimeMinute",operationRecord.InstrumentNurseSucceedTimeMinute==null?(object)DBNull.Value:(object)operationRecord.InstrumentNurseSucceedTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@tourNurseTimeMinute",operationRecord.TourNurseTimeMinute==null?(object)DBNull.Value:(object)operationRecord.TourNurseTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@tourNurseSucceedTimeMinute",operationRecord.TourNurseSucceedTimeMinute==null?(object)DBNull.Value:(object)operationRecord.TourNurseSucceedTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@RecordPageCount",operationRecord.RecordPageCount==null?(object)DBNull.Value:(object)operationRecord.RecordPageCount));
|
|
cmd.Parameters.Add(new SqlParameter("@SignName",operationRecord.SignName==null?(object)DBNull.Value:(object)operationRecord.SignName));
|
|
cmd.Parameters.Add(new SqlParameter("@SignTime",operationRecord.SignTime==null?(object)DBNull.Value:(object)operationRecord.SignTime));
|
|
cmd.Parameters.Add(new SqlParameter("@RoomId",operationRecord.RoomId.HasValue?(object)operationRecord.RoomId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@State",operationRecord.State.HasValue?(object)operationRecord.State.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@RecoverId",operationRecord.RecoverId.HasValue?(object)operationRecord.RecoverId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperatorNo",operationRecord.OperatorNo==null?(object)DBNull.Value:(object)operationRecord.OperatorNo));
|
|
cmd.Parameters.Add(new SqlParameter("@OperatorName",operationRecord.OperatorName==null?(object)DBNull.Value:(object)operationRecord.OperatorName));
|
|
cmd.Parameters.Add(new SqlParameter("@OperateDate",operationRecord.OperateDate.HasValue?(object)operationRecord.OperateDate.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@Remarks",operationRecord.Remarks==null?(object)DBNull.Value:(object)operationRecord.Remarks));
|
|
return Convert.ToInt32(cmd.ExecuteScalar());
|
|
}
|
|
/// <summary>
|
|
/// 不使用事务的插入方法
|
|
/// </summary>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>标识列值或影响的记录行数</returns>
|
|
internal static int Insert(OperationRecord operationRecord)
|
|
{
|
|
using(SqlConnection conn=new SqlConnection(Connection.ConnectionString))
|
|
{
|
|
conn.Open();
|
|
using (SqlCommand cmd = conn.CreateCommand())
|
|
{
|
|
return Insert(cmd, operationRecord);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 使用事务的插入方法
|
|
/// </summary>
|
|
/// <param name="connection">实现共享Connection的对象</param>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>标识列值或影响的记录行数</returns>
|
|
internal static int Insert(Connection connection,OperationRecord operationRecord)
|
|
{
|
|
return Insert(connection.Command, operationRecord);
|
|
}
|
|
#endregion
|
|
|
|
#region 删除实体操作
|
|
|
|
/// <summary>
|
|
/// 删除
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int ExcuteDeleteCommand(SqlCommand cmd, OperationRecord operationRecord)
|
|
{
|
|
cmd.Parameters.Clear();
|
|
cmd.CommandText = "delete from OperationRecord where Id=@Id";
|
|
//从实体中取出值放入Command的参数列表
|
|
cmd.Parameters.Add(new SqlParameter("@Id", operationRecord.Id));
|
|
return cmd.ExecuteNonQuery();
|
|
}
|
|
/// <summary>
|
|
/// 不使用事务的删除方法
|
|
/// </summary>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int Delete(OperationRecord operationRecord)
|
|
{
|
|
using (SqlConnection conn = new SqlConnection(Connection.ConnectionString))
|
|
{
|
|
conn.Open();
|
|
using (SqlCommand cmd = conn.CreateCommand())
|
|
{
|
|
return ExcuteDeleteCommand(cmd, operationRecord);
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 使用事务的删除方法
|
|
/// </summary>
|
|
/// <param name="connection">实现共享Connection的对象</param>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int Delete(Connection connection,OperationRecord operationRecord)
|
|
{
|
|
return ExcuteDeleteCommand(connection.Command, operationRecord);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 执行删除命令
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int ExcuteDeleteCommand(SqlCommand cmd, string oql, ParameterList parameters)
|
|
{
|
|
//解析过滤部份Sql语句
|
|
string filterString = SyntaxAnalyzer.ParseSql(oql, new OperationRecordMap());
|
|
if (filterString != string.Empty)
|
|
{
|
|
filterString = " where " + filterString;
|
|
}
|
|
cmd.Parameters.Clear();
|
|
cmd.CommandText = "delete from OperationRecord " + filterString;
|
|
//添加参数
|
|
if (parameters != null)
|
|
{
|
|
foreach (string key in parameters.Keys)
|
|
{
|
|
cmd.Parameters.Add(new SqlParameter(key, parameters[key]));
|
|
}
|
|
}
|
|
return cmd.ExecuteNonQuery();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 不使用事务的删除方法
|
|
/// </summary>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal 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);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 使用事务的删除方法
|
|
/// </summary>
|
|
/// <param name="connection">实现共享Connection的对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int Delete(Connection connection, string oql, ParameterList parameters)
|
|
{
|
|
return ExcuteDeleteCommand(connection.Command, oql, parameters);
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region 更新实体操作
|
|
|
|
/// <summary>
|
|
/// 更新
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int ExcuteUpdateCommand(SqlCommand cmd, OperationRecord operationRecord)
|
|
{
|
|
cmd.CommandText = "update OperationRecord set PatientId=@PatientId,OperationApplyId=@OperationApplyId,InRoomTime=@InRoomTime,OutRoomTime=@OutRoomTime,OperationBeginTime=@OperationBeginTime,OperationEndTime=@OperationEndTime,AnesthesiaBeginTime=@AnesthesiaBeginTime,AnesthesiaEndTime=@AnesthesiaEndTime,ASALevel=@ASALevel,SpecialCase=@SpecialCase,Fasting=@Fasting,BloodType=@BloodType,OperationDate=@OperationDate,OpeSpecialCondition=@OpeSpecialCondition,BMI=@BMI,BeforeDrugs=@BeforeDrugs,AnaesthesiaMethodName=@AnaesthesiaMethodName,AnaesthesiaTechnology=@AnaesthesiaTechnology,AnaesthesiaComplication=@AnaesthesiaComplication,SpecialEvent=@SpecialEvent,SuddenSituation=@SuddenSituation,ConditionChage=@ConditionChage,RescueMeasures=@RescueMeasures,RescueTime=@RescueTime,RescuePerson=@RescuePerson,RescueTechnology=@RescueTechnology,SpileInTime=@SpileInTime,SpileOutTime=@SpileOutTime,SpileSituation=@SpileSituation,SpileWard=@SpileWard,SpileBeforCondition=@SpileBeforCondition,SpileAffterCondition=@SpileAffterCondition,RefluxFlag=@RefluxFlag,MuscleStrengthRecovery=@MuscleStrengthRecovery,CoughReflex=@CoughReflex,InOperaRoomState=@InOperaRoomState,BloodPressure=@BloodPressure,Tempeture=@Tempeture,Pulse=@Pulse,Breath=@Breath,IsolationIndicator=@IsolationIndicator,AnesMachine=@AnesMachine,ControlledAnalgesia=@ControlledAnalgesia,AnalgesiaModel=@AnalgesiaModel,AnalgesiaRate=@AnalgesiaRate,AnalgesiaDrug=@AnalgesiaDrug,AldreteScore=@AldreteScore,RouteMonitoring=@RouteMonitoring,Entourage=@Entourage,Remark1=@Remark1,Remark2=@Remark2,Remark3=@Remark3,Crystal=@Crystal,Colloid=@Colloid,InAmount=@InAmount,OutAmount=@OutAmount,OperationTimeSpan=@OperationTimeSpan,AnaesthesiaTimeSpan=@AnaesthesiaTimeSpan,RoomTimeSpan=@RoomTimeSpan,AnesthesiaDoctorTimeMinute=@AnesthesiaDoctorTimeMinute,anesthesiaDoctorSucceedTimeMinute=@anesthesiaDoctorSucceedTimeMinute,instrumentNurseTimeMinute=@instrumentNurseTimeMinute,instrumentNurseSucceedTimeMinute=@instrumentNurseSucceedTimeMinute,tourNurseTimeMinute=@tourNurseTimeMinute,tourNurseSucceedTimeMinute=@tourNurseSucceedTimeMinute,RecordPageCount=@RecordPageCount,SignName=@SignName,SignTime=@SignTime,RoomId=@RoomId,State=@State,RecoverId=@RecoverId,OperatorNo=@OperatorNo,OperatorName=@OperatorName,OperateDate=@OperateDate,Remarks=@Remarks where Id=@Id";
|
|
//从实体中取出值放入Command的参数列表
|
|
cmd.Parameters.Add(new SqlParameter("@PatientId",operationRecord.PatientId.HasValue?(object)operationRecord.PatientId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationApplyId",operationRecord.OperationApplyId.HasValue?(object)operationRecord.OperationApplyId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@InRoomTime",operationRecord.InRoomTime.HasValue?(object)operationRecord.InRoomTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OutRoomTime",operationRecord.OutRoomTime.HasValue?(object)operationRecord.OutRoomTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationBeginTime",operationRecord.OperationBeginTime.HasValue?(object)operationRecord.OperationBeginTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationEndTime",operationRecord.OperationEndTime.HasValue?(object)operationRecord.OperationEndTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesthesiaBeginTime",operationRecord.AnesthesiaBeginTime.HasValue?(object)operationRecord.AnesthesiaBeginTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesthesiaEndTime",operationRecord.AnesthesiaEndTime.HasValue?(object)operationRecord.AnesthesiaEndTime.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@ASALevel",operationRecord.ASALevel.HasValue?(object)operationRecord.ASALevel.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@SpecialCase",operationRecord.SpecialCase==null?(object)DBNull.Value:(object)operationRecord.SpecialCase));
|
|
cmd.Parameters.Add(new SqlParameter("@Fasting",operationRecord.Fasting.HasValue?(object)operationRecord.Fasting.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@BloodType",operationRecord.BloodType==null?(object)DBNull.Value:(object)operationRecord.BloodType));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationDate",operationRecord.OperationDate==null?(object)DBNull.Value:(object)operationRecord.OperationDate));
|
|
cmd.Parameters.Add(new SqlParameter("@OpeSpecialCondition",operationRecord.OpeSpecialCondition==null?(object)DBNull.Value:(object)operationRecord.OpeSpecialCondition));
|
|
cmd.Parameters.Add(new SqlParameter("@BMI",operationRecord.BMI==null?(object)DBNull.Value:(object)operationRecord.BMI));
|
|
cmd.Parameters.Add(new SqlParameter("@BeforeDrugs",operationRecord.BeforeDrugs==null?(object)DBNull.Value:(object)operationRecord.BeforeDrugs));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaMethodName",operationRecord.AnaesthesiaMethodName==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaMethodName));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaTechnology",operationRecord.AnaesthesiaTechnology==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaTechnology));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaComplication",operationRecord.AnaesthesiaComplication==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaComplication));
|
|
cmd.Parameters.Add(new SqlParameter("@SpecialEvent",operationRecord.SpecialEvent==null?(object)DBNull.Value:(object)operationRecord.SpecialEvent));
|
|
cmd.Parameters.Add(new SqlParameter("@SuddenSituation",operationRecord.SuddenSituation==null?(object)DBNull.Value:(object)operationRecord.SuddenSituation));
|
|
cmd.Parameters.Add(new SqlParameter("@ConditionChage",operationRecord.ConditionChage==null?(object)DBNull.Value:(object)operationRecord.ConditionChage));
|
|
cmd.Parameters.Add(new SqlParameter("@RescueMeasures",operationRecord.RescueMeasures==null?(object)DBNull.Value:(object)operationRecord.RescueMeasures));
|
|
cmd.Parameters.Add(new SqlParameter("@RescueTime",operationRecord.RescueTime==null?(object)DBNull.Value:(object)operationRecord.RescueTime));
|
|
cmd.Parameters.Add(new SqlParameter("@RescuePerson",operationRecord.RescuePerson==null?(object)DBNull.Value:(object)operationRecord.RescuePerson));
|
|
cmd.Parameters.Add(new SqlParameter("@RescueTechnology",operationRecord.RescueTechnology==null?(object)DBNull.Value:(object)operationRecord.RescueTechnology));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileInTime", operationRecord.SpileInTime.HasValue ? (object)operationRecord.SpileInTime.Value : (object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileOutTime", operationRecord.SpileOutTime.HasValue ? (object)operationRecord.SpileOutTime.Value : (object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileSituation",operationRecord.SpileSituation==null?(object)DBNull.Value:(object)operationRecord.SpileSituation));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileWard",operationRecord.SpileWard==null?(object)DBNull.Value:(object)operationRecord.SpileWard));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileBeforCondition",operationRecord.SpileBeforCondition==null?(object)DBNull.Value:(object)operationRecord.SpileBeforCondition));
|
|
cmd.Parameters.Add(new SqlParameter("@SpileAffterCondition",operationRecord.SpileAffterCondition==null?(object)DBNull.Value:(object)operationRecord.SpileAffterCondition));
|
|
cmd.Parameters.Add(new SqlParameter("@RefluxFlag",operationRecord.RefluxFlag==null?(object)DBNull.Value:(object)operationRecord.RefluxFlag));
|
|
cmd.Parameters.Add(new SqlParameter("@MuscleStrengthRecovery",operationRecord.MuscleStrengthRecovery==null?(object)DBNull.Value:(object)operationRecord.MuscleStrengthRecovery));
|
|
cmd.Parameters.Add(new SqlParameter("@CoughReflex",operationRecord.CoughReflex==null?(object)DBNull.Value:(object)operationRecord.CoughReflex));
|
|
cmd.Parameters.Add(new SqlParameter("@InOperaRoomState",operationRecord.InOperaRoomState==null?(object)DBNull.Value:(object)operationRecord.InOperaRoomState));
|
|
cmd.Parameters.Add(new SqlParameter("@BloodPressure",operationRecord.BloodPressure==null?(object)DBNull.Value:(object)operationRecord.BloodPressure));
|
|
cmd.Parameters.Add(new SqlParameter("@Tempeture",operationRecord.Tempeture==null?(object)DBNull.Value:(object)operationRecord.Tempeture));
|
|
cmd.Parameters.Add(new SqlParameter("@Pulse",operationRecord.Pulse==null?(object)DBNull.Value:(object)operationRecord.Pulse));
|
|
cmd.Parameters.Add(new SqlParameter("@Breath",operationRecord.Breath==null?(object)DBNull.Value:(object)operationRecord.Breath));
|
|
cmd.Parameters.Add(new SqlParameter("@IsolationIndicator",operationRecord.IsolationIndicator==null?(object)DBNull.Value:(object)operationRecord.IsolationIndicator));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesMachine",operationRecord.AnesMachine==null?(object)DBNull.Value:(object)operationRecord.AnesMachine));
|
|
cmd.Parameters.Add(new SqlParameter("@ControlledAnalgesia",operationRecord.ControlledAnalgesia==null?(object)DBNull.Value:(object)operationRecord.ControlledAnalgesia));
|
|
cmd.Parameters.Add(new SqlParameter("@AnalgesiaModel",operationRecord.AnalgesiaModel==null?(object)DBNull.Value:(object)operationRecord.AnalgesiaModel));
|
|
cmd.Parameters.Add(new SqlParameter("@AnalgesiaRate",operationRecord.AnalgesiaRate==null?(object)DBNull.Value:(object)operationRecord.AnalgesiaRate));
|
|
cmd.Parameters.Add(new SqlParameter("@AnalgesiaDrug",operationRecord.AnalgesiaDrug==null?(object)DBNull.Value:(object)operationRecord.AnalgesiaDrug));
|
|
cmd.Parameters.Add(new SqlParameter("@AldreteScore",operationRecord.AldreteScore==null?(object)DBNull.Value:(object)operationRecord.AldreteScore));
|
|
cmd.Parameters.Add(new SqlParameter("@RouteMonitoring",operationRecord.RouteMonitoring==null?(object)DBNull.Value:(object)operationRecord.RouteMonitoring));
|
|
cmd.Parameters.Add(new SqlParameter("@Entourage",operationRecord.Entourage==null?(object)DBNull.Value:(object)operationRecord.Entourage));
|
|
cmd.Parameters.Add(new SqlParameter("@Remark1",operationRecord.Remark1==null?(object)DBNull.Value:(object)operationRecord.Remark1));
|
|
cmd.Parameters.Add(new SqlParameter("@Remark2",operationRecord.Remark2==null?(object)DBNull.Value:(object)operationRecord.Remark2));
|
|
cmd.Parameters.Add(new SqlParameter("@Remark3",operationRecord.Remark3==null?(object)DBNull.Value:(object)operationRecord.Remark3));
|
|
cmd.Parameters.Add(new SqlParameter("@Crystal",operationRecord.Crystal==null?(object)DBNull.Value:(object)operationRecord.Crystal));
|
|
cmd.Parameters.Add(new SqlParameter("@Colloid",operationRecord.Colloid==null?(object)DBNull.Value:(object)operationRecord.Colloid));
|
|
cmd.Parameters.Add(new SqlParameter("@InAmount",operationRecord.InAmount==null?(object)DBNull.Value:(object)operationRecord.InAmount));
|
|
cmd.Parameters.Add(new SqlParameter("@OutAmount",operationRecord.OutAmount==null?(object)DBNull.Value:(object)operationRecord.OutAmount));
|
|
cmd.Parameters.Add(new SqlParameter("@OperationTimeSpan",operationRecord.OperationTimeSpan==null?(object)DBNull.Value:(object)operationRecord.OperationTimeSpan));
|
|
cmd.Parameters.Add(new SqlParameter("@AnaesthesiaTimeSpan",operationRecord.AnaesthesiaTimeSpan==null?(object)DBNull.Value:(object)operationRecord.AnaesthesiaTimeSpan));
|
|
cmd.Parameters.Add(new SqlParameter("@RoomTimeSpan",operationRecord.RoomTimeSpan==null?(object)DBNull.Value:(object)operationRecord.RoomTimeSpan));
|
|
cmd.Parameters.Add(new SqlParameter("@AnesthesiaDoctorTimeMinute",operationRecord.AnesthesiaDoctorTimeMinute==null?(object)DBNull.Value:(object)operationRecord.AnesthesiaDoctorTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@anesthesiaDoctorSucceedTimeMinute",operationRecord.AnesthesiaDoctorSucceedTimeMinute==null?(object)DBNull.Value:(object)operationRecord.AnesthesiaDoctorSucceedTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@instrumentNurseTimeMinute",operationRecord.InstrumentNurseTimeMinute==null?(object)DBNull.Value:(object)operationRecord.InstrumentNurseTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@instrumentNurseSucceedTimeMinute",operationRecord.InstrumentNurseSucceedTimeMinute==null?(object)DBNull.Value:(object)operationRecord.InstrumentNurseSucceedTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@tourNurseTimeMinute",operationRecord.TourNurseTimeMinute==null?(object)DBNull.Value:(object)operationRecord.TourNurseTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@tourNurseSucceedTimeMinute",operationRecord.TourNurseSucceedTimeMinute==null?(object)DBNull.Value:(object)operationRecord.TourNurseSucceedTimeMinute));
|
|
cmd.Parameters.Add(new SqlParameter("@RecordPageCount",operationRecord.RecordPageCount==null?(object)DBNull.Value:(object)operationRecord.RecordPageCount));
|
|
cmd.Parameters.Add(new SqlParameter("@SignName",operationRecord.SignName==null?(object)DBNull.Value:(object)operationRecord.SignName));
|
|
cmd.Parameters.Add(new SqlParameter("@SignTime",operationRecord.SignTime==null?(object)DBNull.Value:(object)operationRecord.SignTime));
|
|
cmd.Parameters.Add(new SqlParameter("@RoomId",operationRecord.RoomId.HasValue?(object)operationRecord.RoomId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@State",operationRecord.State.HasValue?(object)operationRecord.State.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@RecoverId",operationRecord.RecoverId.HasValue?(object)operationRecord.RecoverId.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@OperatorNo",operationRecord.OperatorNo==null?(object)DBNull.Value:(object)operationRecord.OperatorNo));
|
|
cmd.Parameters.Add(new SqlParameter("@OperatorName",operationRecord.OperatorName==null?(object)DBNull.Value:(object)operationRecord.OperatorName));
|
|
cmd.Parameters.Add(new SqlParameter("@OperateDate",operationRecord.OperateDate.HasValue?(object)operationRecord.OperateDate.Value:(object)DBNull.Value));
|
|
cmd.Parameters.Add(new SqlParameter("@Remarks",operationRecord.Remarks==null?(object)DBNull.Value:(object)operationRecord.Remarks));
|
|
cmd.Parameters.Add(new SqlParameter("@Id", operationRecord.Id));
|
|
return cmd.ExecuteNonQuery();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 不使用事务的更新方法
|
|
/// </summary>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int Update(OperationRecord operationRecord)
|
|
{
|
|
using(SqlConnection conn=new SqlConnection(Connection.ConnectionString))
|
|
{
|
|
conn.Open();
|
|
using (SqlCommand cmd = conn.CreateCommand())
|
|
{
|
|
return ExcuteUpdateCommand(cmd, operationRecord);
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 使用事务的更新方法
|
|
/// </summary>
|
|
/// <param name="connection">实现共享Connection的对象</param>
|
|
/// <param name="operationRecord">实体类对象</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int Update(Connection connection,OperationRecord operationRecord)
|
|
{
|
|
return ExcuteUpdateCommand(connection.Command, operationRecord);
|
|
}
|
|
/// <summary>
|
|
/// 执行更新命令
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int ExcuteUpdateCommand(SqlCommand cmd, string oql, ParameterList parameters)
|
|
{
|
|
//解析过滤部份Sql语句
|
|
string updateString = oql;// SyntaxAnalyzer.ParseSql(oql, new OperationRecordMap());
|
|
cmd.CommandText = "update OperationRecord 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();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 不使用事务的更新方法
|
|
/// </summary>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal 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);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 使用事务的更新方法
|
|
/// </summary>
|
|
/// <param name="connection">实现共享Connection的对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>影响的记录行数</returns>
|
|
internal static int Update(Connection connection, string oql, ParameterList parameters)
|
|
{
|
|
return ExcuteUpdateCommand(connection.Command, oql, parameters);
|
|
}
|
|
#endregion
|
|
|
|
#region 查询实体集合
|
|
/// <summary>
|
|
/// 执行Command获取对象列表
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体类对象列表</returns>
|
|
internal static List<OperationRecord> ExcuteSelectCommand(SqlCommand cmd,RecursiveType recursiveType,int recursiveDepth)
|
|
{
|
|
List<OperationRecord> operationRecordList = new List<OperationRecord>();
|
|
using (SqlDataReader dr = cmd.ExecuteReader())
|
|
{
|
|
while (dr.Read())
|
|
{
|
|
OperationRecord operationRecord = DataReaderToEntity(dr);
|
|
operationRecordList.Add(operationRecord);
|
|
}
|
|
}
|
|
return operationRecordList;
|
|
}
|
|
/// <summary>
|
|
/// 执行查询命令
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体类对象集合</returns>
|
|
internal static List<OperationRecord> ExcuteSelectCommand(SqlCommand cmd, string oql, ParameterList parameters,RecursiveType recursiveType,int recursiveDepth)
|
|
{
|
|
//解析过滤部份Sql语句
|
|
string filterString = SyntaxAnalyzer.ParseSql(oql, new OperationRecordMap());
|
|
if (filterString != string.Empty)
|
|
{
|
|
if(filterString.Trim().ToLower().IndexOf("order ")!=0)
|
|
filterString = " where " + filterString;
|
|
}
|
|
cmd.Parameters.Clear();
|
|
cmd.CommandText = "select * from OperationRecord " + filterString;
|
|
//添加参数
|
|
if (parameters != null)
|
|
{
|
|
foreach (string key in parameters.Keys)
|
|
{
|
|
cmd.Parameters.Add(new SqlParameter(key, parameters[key]));
|
|
}
|
|
}
|
|
return ExcuteSelectCommand(cmd, recursiveType, recursiveDepth);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据对象查询语句查询实体集合
|
|
/// </summary>
|
|
/// <returns>实体类对象集合</returns>
|
|
internal static List<OperationRecord> Select()
|
|
{
|
|
using(SqlConnection conn=new SqlConnection(Connection.ConnectionString))
|
|
{
|
|
conn.Open();
|
|
using (SqlCommand cmd = conn.CreateCommand())
|
|
{
|
|
cmd.CommandText = "select * from OperationRecord";
|
|
return ExcuteSelectCommand(cmd, RecursiveType.Parent, 1);
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 根据对象查询语句查询实体集合
|
|
/// </summary>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体类对象集合</returns>
|
|
internal static List<OperationRecord> Select(RecursiveType recursiveType, int recursiveDepth)
|
|
{
|
|
using(SqlConnection conn=new SqlConnection(Connection.ConnectionString))
|
|
{
|
|
conn.Open();
|
|
using (SqlCommand cmd = conn.CreateCommand())
|
|
{
|
|
cmd.CommandText = "select * from OperationRecord";
|
|
return ExcuteSelectCommand(cmd, recursiveType, recursiveDepth);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据对象查询语句查询实体集合
|
|
/// </summary>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>实体类对象集合</returns>
|
|
internal static List<OperationRecord> 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);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据对象查询语句查询实体集合
|
|
/// </summary>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体类对象集合</returns>
|
|
internal static List<OperationRecord> 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);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据对象查询语句查询实体集合(启用事务)
|
|
/// </summary>
|
|
/// <param name="connection">连接对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体类对象集合</returns>
|
|
internal static List<OperationRecord> Select(Connection connection, string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
|
|
{
|
|
return ExcuteSelectCommand(connection.Command, oql, parameters,recursiveType, recursiveDepth);
|
|
}
|
|
#endregion
|
|
|
|
#region 查询单个实体
|
|
|
|
/// <summary>
|
|
/// 递归查询单个实体
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体对象</returns>
|
|
internal static OperationRecord ExcuteSelectSingleCommand(SqlCommand cmd,RecursiveType recursiveType,int recursiveDepth)
|
|
{
|
|
OperationRecord operationRecord=null;
|
|
using (SqlDataReader dr = cmd.ExecuteReader())
|
|
{
|
|
if(dr.Read())
|
|
operationRecord = DataReaderToEntity(dr);
|
|
}
|
|
if(operationRecord==null)
|
|
return operationRecord;
|
|
return operationRecord;
|
|
}
|
|
/// <summary>
|
|
/// 更据对象查询语句递归查询单个实体
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体对象</returns>
|
|
internal static OperationRecord ExcuteSelectSingleCommand(SqlCommand cmd, string oql, ParameterList parameters,RecursiveType recursiveType,int recursiveDepth)
|
|
{
|
|
//解析过滤部份Sql语句
|
|
string filterString = SyntaxAnalyzer.ParseSql(oql, new OperationRecordMap());
|
|
if(filterString!=string.Empty)
|
|
{
|
|
filterString=" where "+filterString;
|
|
}
|
|
cmd.CommandText = "select * from OperationRecord " + 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);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 更据对象查询语句递归查询单个实体
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体对象</returns>
|
|
internal static OperationRecord 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);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 更据对象查询语句查询单个实体
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>实体对象</returns>
|
|
internal static OperationRecord SelectSingle(string oql, ParameterList parameters)
|
|
{
|
|
return SelectSingle(oql,parameters,RecursiveType.Parent,1);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 更据对象查询语句并启用事务查询单个实体
|
|
/// </summary>
|
|
/// <param name="connection">连接对象</param>
|
|
/// <param name="oql">对象查询语句</param>
|
|
/// <param name="parameters">参数列表</param>
|
|
/// <returns>实体对象</returns>
|
|
internal static OperationRecord SelectSingle(Connection connection, string oql, ParameterList parameters, RecursiveType recursiveType, int recursiveDepth)
|
|
{
|
|
return ExcuteSelectSingleCommand(connection.Command, oql, parameters, recursiveType, recursiveDepth);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 更据主键值递归查询单个实体
|
|
/// </summary>
|
|
/// <param name="cmd">Command对象</param>
|
|
/// <param name="id">主键值</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体对象</returns>
|
|
internal static OperationRecord SelectSingle(SqlCommand cmd, int? id,RecursiveType recursiveType,int recursiveDepth)
|
|
{
|
|
cmd.Parameters.Clear();
|
|
if(id.HasValue)
|
|
{
|
|
cmd.CommandText = "select * from OperationRecord where Id=@pk";
|
|
cmd.Parameters.Add(new SqlParameter("@pk",id.Value));
|
|
}
|
|
else
|
|
{
|
|
cmd.CommandText = "select * from OperationRecord where Id is null";
|
|
}
|
|
return ExcuteSelectSingleCommand(cmd, recursiveType, recursiveDepth);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 按主键字段查询特定实体
|
|
/// </summary>
|
|
/// <param name="id">主键值</param>
|
|
/// <returns>实体类对象</returns>
|
|
internal static OperationRecord SelectSingle(int? id)
|
|
{
|
|
using(SqlConnection conn=new SqlConnection(Connection.ConnectionString))
|
|
{
|
|
conn.Open();
|
|
using (SqlCommand cmd = conn.CreateCommand())
|
|
{
|
|
return SelectSingle(cmd,id,RecursiveType.Parent,1);
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 按主键字段查询特定实体
|
|
/// </summary>
|
|
/// <param name="id">主键值</param>
|
|
/// <param name="recursiveType">递归类型</param>
|
|
/// <param name="recursiveDepth">递归深度</param>
|
|
/// <returns>实体类对象</returns>
|
|
internal static OperationRecord 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);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 使用事务并按主键字段查询特定实体
|
|
/// </summary>
|
|
/// <param name="connection">连接对象</param>
|
|
/// <param name="id">主键值</param>
|
|
/// <returns>实体类对象</returns>
|
|
internal static OperationRecord SelectSingle(Connection connection,int? id, RecursiveType recursiveType, int recursiveDepth)
|
|
{
|
|
return SelectSingle(connection.Command, id, recursiveType, recursiveDepth);
|
|
}
|
|
#endregion
|
|
|
|
|
|
/// <summary>
|
|
/// 从DataReader中取出值生成实体对象
|
|
/// </summary>
|
|
/// <param name="searcher">查询对象</param>
|
|
/// <returns>过滤条件字符串</returns>
|
|
private static OperationRecord DataReaderToEntity(SqlDataReader dr)
|
|
{
|
|
OperationRecord entity = new OperationRecord ();
|
|
if(dr["Id"]!=System.DBNull.Value)
|
|
{
|
|
entity.Id=Convert.ToInt32(dr["Id"]);
|
|
}
|
|
if(dr["PatientId"]!=System.DBNull.Value)
|
|
{
|
|
entity.PatientId=Convert.ToInt32(dr["PatientId"]);
|
|
}
|
|
if(dr["OperationApplyId"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperationApplyId=Convert.ToInt32(dr["OperationApplyId"]);
|
|
}
|
|
if(dr["InRoomTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.InRoomTime=Convert.ToDateTime(dr["InRoomTime"]);
|
|
}
|
|
if(dr["OutRoomTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.OutRoomTime=Convert.ToDateTime(dr["OutRoomTime"]);
|
|
}
|
|
if(dr["OperationBeginTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperationBeginTime=Convert.ToDateTime(dr["OperationBeginTime"]);
|
|
}
|
|
if(dr["OperationEndTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperationEndTime=Convert.ToDateTime(dr["OperationEndTime"]);
|
|
}
|
|
if(dr["AnesthesiaBeginTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnesthesiaBeginTime=Convert.ToDateTime(dr["AnesthesiaBeginTime"]);
|
|
}
|
|
if(dr["AnesthesiaEndTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnesthesiaEndTime=Convert.ToDateTime(dr["AnesthesiaEndTime"]);
|
|
}
|
|
if(dr["ASALevel"]!=System.DBNull.Value)
|
|
{
|
|
entity.ASALevel=Convert.ToInt32(dr["ASALevel"]);
|
|
}
|
|
if(dr["SpecialCase"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpecialCase=dr["SpecialCase"].ToString();
|
|
}
|
|
if(dr["Fasting"]!=System.DBNull.Value)
|
|
{
|
|
entity.Fasting=Convert.ToInt32(dr["Fasting"]);
|
|
}
|
|
if(dr["BloodType"]!=System.DBNull.Value)
|
|
{
|
|
entity.BloodType=dr["BloodType"].ToString();
|
|
}
|
|
if(dr["OperationDate"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperationDate=dr["OperationDate"].ToString();
|
|
}
|
|
if(dr["OpeSpecialCondition"]!=System.DBNull.Value)
|
|
{
|
|
entity.OpeSpecialCondition=dr["OpeSpecialCondition"].ToString();
|
|
}
|
|
if(dr["BMI"]!=System.DBNull.Value)
|
|
{
|
|
entity.BMI=dr["BMI"].ToString();
|
|
}
|
|
if(dr["BeforeDrugs"]!=System.DBNull.Value)
|
|
{
|
|
entity.BeforeDrugs=dr["BeforeDrugs"].ToString();
|
|
}
|
|
if(dr["AnaesthesiaMethodName"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnaesthesiaMethodName=dr["AnaesthesiaMethodName"].ToString();
|
|
}
|
|
if(dr["AnaesthesiaTechnology"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnaesthesiaTechnology=dr["AnaesthesiaTechnology"].ToString();
|
|
}
|
|
if(dr["AnaesthesiaComplication"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnaesthesiaComplication=dr["AnaesthesiaComplication"].ToString();
|
|
}
|
|
if(dr["SpecialEvent"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpecialEvent=dr["SpecialEvent"].ToString();
|
|
}
|
|
if(dr["SuddenSituation"]!=System.DBNull.Value)
|
|
{
|
|
entity.SuddenSituation=dr["SuddenSituation"].ToString();
|
|
}
|
|
if(dr["ConditionChage"]!=System.DBNull.Value)
|
|
{
|
|
entity.ConditionChage=dr["ConditionChage"].ToString();
|
|
}
|
|
if(dr["RescueMeasures"]!=System.DBNull.Value)
|
|
{
|
|
entity.RescueMeasures=dr["RescueMeasures"].ToString();
|
|
}
|
|
if(dr["RescueTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.RescueTime=dr["RescueTime"].ToString();
|
|
}
|
|
if(dr["RescuePerson"]!=System.DBNull.Value)
|
|
{
|
|
entity.RescuePerson=dr["RescuePerson"].ToString();
|
|
}
|
|
if(dr["RescueTechnology"]!=System.DBNull.Value)
|
|
{
|
|
entity.RescueTechnology=dr["RescueTechnology"].ToString();
|
|
}
|
|
if(dr["SpileInTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpileInTime= Convert.ToDateTime(dr["SpileInTime"]);
|
|
}
|
|
if(dr["SpileOutTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpileOutTime= Convert.ToDateTime(dr["SpileOutTime"]);
|
|
}
|
|
if(dr["SpileSituation"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpileSituation=dr["SpileSituation"].ToString();
|
|
}
|
|
if(dr["SpileWard"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpileWard=dr["SpileWard"].ToString();
|
|
}
|
|
if(dr["SpileBeforCondition"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpileBeforCondition=dr["SpileBeforCondition"].ToString();
|
|
}
|
|
if(dr["SpileAffterCondition"]!=System.DBNull.Value)
|
|
{
|
|
entity.SpileAffterCondition=dr["SpileAffterCondition"].ToString();
|
|
}
|
|
if(dr["RefluxFlag"]!=System.DBNull.Value)
|
|
{
|
|
entity.RefluxFlag=dr["RefluxFlag"].ToString();
|
|
}
|
|
if(dr["MuscleStrengthRecovery"]!=System.DBNull.Value)
|
|
{
|
|
entity.MuscleStrengthRecovery=dr["MuscleStrengthRecovery"].ToString();
|
|
}
|
|
if(dr["CoughReflex"]!=System.DBNull.Value)
|
|
{
|
|
entity.CoughReflex=dr["CoughReflex"].ToString();
|
|
}
|
|
if(dr["InOperaRoomState"]!=System.DBNull.Value)
|
|
{
|
|
entity.InOperaRoomState=dr["InOperaRoomState"].ToString();
|
|
}
|
|
if(dr["BloodPressure"]!=System.DBNull.Value)
|
|
{
|
|
entity.BloodPressure=dr["BloodPressure"].ToString();
|
|
}
|
|
if(dr["Tempeture"]!=System.DBNull.Value)
|
|
{
|
|
entity.Tempeture=dr["Tempeture"].ToString();
|
|
}
|
|
if(dr["Pulse"]!=System.DBNull.Value)
|
|
{
|
|
entity.Pulse=dr["Pulse"].ToString();
|
|
}
|
|
if(dr["Breath"]!=System.DBNull.Value)
|
|
{
|
|
entity.Breath=dr["Breath"].ToString();
|
|
}
|
|
if(dr["IsolationIndicator"]!=System.DBNull.Value)
|
|
{
|
|
entity.IsolationIndicator=dr["IsolationIndicator"].ToString();
|
|
}
|
|
if(dr["AnesMachine"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnesMachine=dr["AnesMachine"].ToString();
|
|
}
|
|
if(dr["ControlledAnalgesia"]!=System.DBNull.Value)
|
|
{
|
|
entity.ControlledAnalgesia=dr["ControlledAnalgesia"].ToString();
|
|
}
|
|
if(dr["AnalgesiaModel"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnalgesiaModel=dr["AnalgesiaModel"].ToString();
|
|
}
|
|
if(dr["AnalgesiaRate"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnalgesiaRate=dr["AnalgesiaRate"].ToString();
|
|
}
|
|
if(dr["AnalgesiaDrug"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnalgesiaDrug=dr["AnalgesiaDrug"].ToString();
|
|
}
|
|
if(dr["AldreteScore"]!=System.DBNull.Value)
|
|
{
|
|
entity.AldreteScore=dr["AldreteScore"].ToString();
|
|
}
|
|
if(dr["RouteMonitoring"]!=System.DBNull.Value)
|
|
{
|
|
entity.RouteMonitoring=dr["RouteMonitoring"].ToString();
|
|
}
|
|
if(dr["Entourage"]!=System.DBNull.Value)
|
|
{
|
|
entity.Entourage=dr["Entourage"].ToString();
|
|
}
|
|
if(dr["Remark1"]!=System.DBNull.Value)
|
|
{
|
|
entity.Remark1=dr["Remark1"].ToString();
|
|
}
|
|
if(dr["Remark2"]!=System.DBNull.Value)
|
|
{
|
|
entity.Remark2=dr["Remark2"].ToString();
|
|
}
|
|
if(dr["Remark3"]!=System.DBNull.Value)
|
|
{
|
|
entity.Remark3=dr["Remark3"].ToString();
|
|
}
|
|
if(dr["Crystal"]!=System.DBNull.Value)
|
|
{
|
|
entity.Crystal=dr["Crystal"].ToString();
|
|
}
|
|
if(dr["Colloid"]!=System.DBNull.Value)
|
|
{
|
|
entity.Colloid=dr["Colloid"].ToString();
|
|
}
|
|
if(dr["InAmount"]!=System.DBNull.Value)
|
|
{
|
|
entity.InAmount=dr["InAmount"].ToString();
|
|
}
|
|
if(dr["OutAmount"]!=System.DBNull.Value)
|
|
{
|
|
entity.OutAmount=dr["OutAmount"].ToString();
|
|
}
|
|
if(dr["OperationTimeSpan"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperationTimeSpan=dr["OperationTimeSpan"].ToString();
|
|
}
|
|
if(dr["AnaesthesiaTimeSpan"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnaesthesiaTimeSpan=dr["AnaesthesiaTimeSpan"].ToString();
|
|
}
|
|
if(dr["RoomTimeSpan"]!=System.DBNull.Value)
|
|
{
|
|
entity.RoomTimeSpan=dr["RoomTimeSpan"].ToString();
|
|
}
|
|
if(dr["AnesthesiaDoctorTimeMinute"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnesthesiaDoctorTimeMinute=dr["AnesthesiaDoctorTimeMinute"].ToString();
|
|
}
|
|
if(dr["anesthesiaDoctorSucceedTimeMinute"]!=System.DBNull.Value)
|
|
{
|
|
entity.AnesthesiaDoctorSucceedTimeMinute=dr["anesthesiaDoctorSucceedTimeMinute"].ToString();
|
|
}
|
|
if(dr["instrumentNurseTimeMinute"]!=System.DBNull.Value)
|
|
{
|
|
entity.InstrumentNurseTimeMinute=dr["instrumentNurseTimeMinute"].ToString();
|
|
}
|
|
if(dr["instrumentNurseSucceedTimeMinute"]!=System.DBNull.Value)
|
|
{
|
|
entity.InstrumentNurseSucceedTimeMinute=dr["instrumentNurseSucceedTimeMinute"].ToString();
|
|
}
|
|
if(dr["tourNurseTimeMinute"]!=System.DBNull.Value)
|
|
{
|
|
entity.TourNurseTimeMinute=dr["tourNurseTimeMinute"].ToString();
|
|
}
|
|
if(dr["tourNurseSucceedTimeMinute"]!=System.DBNull.Value)
|
|
{
|
|
entity.TourNurseSucceedTimeMinute=dr["tourNurseSucceedTimeMinute"].ToString();
|
|
}
|
|
if(dr["RecordPageCount"]!=System.DBNull.Value)
|
|
{
|
|
entity.RecordPageCount=dr["RecordPageCount"].ToString();
|
|
}
|
|
if(dr["SignName"]!=System.DBNull.Value)
|
|
{
|
|
entity.SignName=dr["SignName"].ToString();
|
|
}
|
|
if(dr["SignTime"]!=System.DBNull.Value)
|
|
{
|
|
entity.SignTime=dr["SignTime"].ToString();
|
|
}
|
|
if(dr["RoomId"]!=System.DBNull.Value)
|
|
{
|
|
entity.RoomId=Convert.ToInt32(dr["RoomId"]);
|
|
}
|
|
if(dr["State"]!=System.DBNull.Value)
|
|
{
|
|
entity.State=Convert.ToInt32(dr["State"]);
|
|
}
|
|
if(dr["RecoverId"]!=System.DBNull.Value)
|
|
{
|
|
entity.RecoverId=Convert.ToInt32(dr["RecoverId"]);
|
|
}
|
|
if(dr["OperatorNo"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperatorNo=dr["OperatorNo"].ToString();
|
|
}
|
|
if(dr["OperatorName"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperatorName=dr["OperatorName"].ToString();
|
|
}
|
|
if(dr["OperateDate"]!=System.DBNull.Value)
|
|
{
|
|
entity.OperateDate=Convert.ToDateTime(dr["OperateDate"]);
|
|
}
|
|
if(dr["Remarks"]!=System.DBNull.Value)
|
|
{
|
|
entity.Remarks=dr["Remarks"].ToString();
|
|
}
|
|
return entity;
|
|
}
|
|
}
|
|
}
|
|
|