AIMS/AIMSEntity/DAL/Extension/DFactDrug.cs
2023-04-14 15:06:58 +08:00

162 lines
8.0 KiB
C#

using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
using System.Collections.Generic;
using AIMSModel;
using AIMSObjectQuery;
using System.Text;
using DrawGraph;
using HelperDB;
namespace AIMSDAL
{
internal partial class DFactDrug
{
public static int Add(FactDrug FactDrugObj)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into [FactDrug](");
strSql.Append("PatientId,DrugTypeId,DrugId,DrugBeginTime,DrugEndTime,Dosage,DosageUnit,DrugChannel,GiveDrugType,IsContinue,Remark,OperatorNo,OperatorName,OperateDate, Density, DensityUnit, Velocity, VelocityUnit,ParentId,DrugName,Access");
strSql.Append(")");
strSql.Append(" values (");
strSql.Append("" + FactDrugObj.PatientId + ",");
strSql.Append("" + FactDrugObj.DrugTypeId + ",");
strSql.Append("" + FactDrugObj.DrugId + ",");
strSql.Append("'" + FactDrugObj.DrugBeginTime + "',");
strSql.Append("'" + FactDrugObj.DrugEndTime + "',");
strSql.Append("" + FactDrugObj.Dosage + ",");
strSql.Append("'" + FactDrugObj.DosageUnit + "',");
strSql.Append("'" + FactDrugObj.DrugChannel + "',");
strSql.Append("'" + FactDrugObj.GiveDrugType + "',");
strSql.Append("" + FactDrugObj.IsContinue + ",");
strSql.Append("'" + FactDrugObj.Remark + "',");
strSql.Append("'" + FactDrugObj.OperatorNo + "',");
strSql.Append("'" + FactDrugObj.OperatorName + "',");
strSql.Append("'" + FactDrugObj.OperateDate + "',");
strSql.Append("'" + FactDrugObj.Density + "',");
strSql.Append("'" + FactDrugObj.DensityUnit + "',");
strSql.Append("'" + FactDrugObj.Velocity + "',");
strSql.Append("'" + FactDrugObj.VelocityUnit + "',");
strSql.Append("'" + FactDrugObj.ParentId + "',");
strSql.Append("'" + FactDrugObj.DrugName + "',");
strSql.Append("'" + FactDrugObj.Access + "'");
strSql.Append(");select @@identity");
//HelperDB.DbHelperSQL.ExecNonQuery(strSql.ToString());
return Convert.ToInt32(DBHelper.ExecuteScalar(strSql.ToString()));
}
public static bool IsValid(int DrugId)
{
bool Temp = false;
string strSql = " SELECT * FROM Drugs WHERE Id =" + DrugId + " and IsValid=1";
DataTable dt = HelperDB.DbHelperSQL.GetDataTable(strSql.ToString());
if (dt.Rows.Count > 0)
{
Temp = true;
}
else
{
Temp = false;
}
return Temp;
}
//public void Update(FactDrug FactDrugObj)
//{
// StringBuilder strSql = new StringBuilder();
// strSql.Append("update FactDrug set ");
// strSql.Append("PatientId=" + FactDrugObj.PatientId + ",");
// strSql.Append("DrugTypeId=" + FactDrugObj.DrugTypeId + ",");
// strSql.Append("DrugId=" + FactDrugObj.DrugId + ",");
// strSql.Append("DrugBeginTime='" + FactDrugObj.DrugBeginTime + "',");
// strSql.Append("DrugEndTime='" + FactDrugObj.DrugEndTime + "',");
// strSql.Append("Dosage=" + FactDrugObj.Dosage + ",");
// strSql.Append("DosageUnit='" + FactDrugObj.DosageUnit + "',");
// strSql.Append("DrugChannel='" + FactDrugObj.DrugChannel + "',");
// strSql.Append("GiveDrugType='" + FactDrugObj.GiveDrugType + "',");
// strSql.Append("IsContinue=" + FactDrugObj.IsContinue + ",");
// strSql.Append("Remark='" + FactDrugObj.Remark + "',");
// strSql.Append("OperatorNo='" + FactDrugObj.OperatorNo + "',");
// strSql.Append("OperatorName='" + FactDrugObj.OperatorName + "',");
// strSql.Append("OperateDate='" + FactDrugObj.OperateDate + "'");
// strSql.Append(" where Id=" + FactDrugObj.Id + " ");
// HelperDB.DbHelperSQL.ExecNonQuery(strSql.ToString());
//}
public static void Delete(int Id)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("delete FactDrug ");
strSql.Append(" where Id=" + Id + "");
HelperDB.DbHelperSQL.ExecNonQuery(strSql.ToString());
}
public static FactDrug GetModel(int Id)
{
FactDrug FactDrugObj = new FactDrug();
StringBuilder strSql = new StringBuilder();
strSql.Append("select ");
strSql.Append("Id,PatientId,DrugTypeId,DrugId,DrugBeginTime,DrugEndTime,Dosage,DosageUnit,DrugChannel,GiveDrugType,IsContinue,Remark,OperatorNo,OperatorName,OperateDate ");
strSql.Append(" from FactDrug ");
strSql.Append(" where Id=" + Id + "");
DataSet ds = HelperDB.DbHelperSQL.GetDataSet(strSql.ToString());
if (ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["Id"].ToString() != "")
{
FactDrugObj.Id = int.Parse(ds.Tables[0].Rows[0]["Id"].ToString());
}
if (ds.Tables[0].Rows[0]["PatientId"].ToString() != "")
{
FactDrugObj.PatientId = int.Parse(ds.Tables[0].Rows[0]["PatientId"].ToString());
}
if (ds.Tables[0].Rows[0]["DrugTypeId"].ToString() != "")
{
FactDrugObj.DrugTypeId = int.Parse(ds.Tables[0].Rows[0]["DrugTypeId"].ToString());
}
if (ds.Tables[0].Rows[0]["DrugId"].ToString() != "")
{
FactDrugObj.DrugId = int.Parse(ds.Tables[0].Rows[0]["DrugId"].ToString());
}
if (ds.Tables[0].Rows[0]["DrugBeginTime"].ToString() != "")
{
FactDrugObj.DrugBeginTime = DateTime.Parse(ds.Tables[0].Rows[0]["DrugBeginTime"].ToString());
}
if (ds.Tables[0].Rows[0]["DrugEndTime"].ToString() != "")
{
FactDrugObj.DrugEndTime = DateTime.Parse(ds.Tables[0].Rows[0]["DrugEndTime"].ToString());
}
if (ds.Tables[0].Rows[0]["Dosage"].ToString() != "")
{
FactDrugObj.Dosage = decimal.Parse(ds.Tables[0].Rows[0]["Dosage"].ToString());
}
FactDrugObj.DosageUnit = ds.Tables[0].Rows[0]["DosageUnit"].ToString();
FactDrugObj.DrugChannel = ds.Tables[0].Rows[0]["DrugChannel"].ToString();
FactDrugObj.GiveDrugType = ds.Tables[0].Rows[0]["GiveDrugType"].ToString();
if (ds.Tables[0].Rows[0]["IsContinue"].ToString() != "")
{
FactDrugObj.IsContinue = int.Parse(ds.Tables[0].Rows[0]["IsContinue"].ToString());
}
FactDrugObj.Remark = ds.Tables[0].Rows[0]["Remark"].ToString();
FactDrugObj.OperatorNo = ds.Tables[0].Rows[0]["OperatorNo"].ToString();
FactDrugObj.OperatorName = ds.Tables[0].Rows[0]["OperatorName"].ToString();
if (ds.Tables[0].Rows[0]["OperateDate"].ToString() != "")
{
FactDrugObj.OperateDate = DateTime.Parse(ds.Tables[0].Rows[0]["OperateDate"].ToString());
}
}
return FactDrugObj;
}
public static DataTable GetDataTable(int PatientId, int DrugTypeId)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT fd.Id, d.Id as DrugId, d.Name AS DrugName,fd.Dosage,fd.DosageUnit,fd.DrugChannel, fd.GiveDrugType,fd.DrugBeginTime, Density, DensityUnit, Velocity, VelocityUnit,fd.DrugEndTime,fd.Remark,fd.ParentId,fd.DrugName,fd.Access FROM FactDrug fd ");
strSql.Append("LEFT JOIN Drugs d ON d.Id = fd.DrugId WHERE fd.PatientId=" + PatientId + " AND fd.DrugTypeId=" + DrugTypeId + " order by fd.DrugBeginTime");
return HelperDB.DbHelperSQL.GetDataTable(strSql.ToString());
}
}
}