Files
tj-tzhg/JJServer/SqlHelper.cs
2025-11-26 17:21:18 +08:00

97 lines
3.7 KiB
C#

using log4net;
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace JJServer
{
public class SqlHelper
{
private JJServer.SQLiteDBHelper _mgr;
public ILog logger = JJServer.MyServer.logger;
string file = "";
string CurDay = "";
public void initDB()
{
string path = System.IO.Directory.GetCurrentDirectory();
string Datastr = DateTime.Now.ToString("yyyy-MM-dd");
CurDay = Datastr;
file = string.Format("{0}\\DATA\\{1}.dict", path, Datastr);
//file = string.Format("{0}\\DATA\\History.dict", path);
logger.Info("初始化DB=>" + file);
bool exist = File.Exists(file);
if (exist != true)
{
System.IO.File.Create(file).Dispose();
JJServer.SQLiteDBHelper.CreateDB(file);
}
int Ret = OpenCon();
if (Ret == 0)
{
LoadData();
}
}
public int OpenCon()
{
this._mgr = new JJServer.SQLiteDBHelper(file);
this._mgr.SetDataSource(file, null);
return 0;
}
public void LoadData() //PrintType 1试管 2回执
{
DataTable dt = new DataTable();
dt = JJServer.SQLiteDBHelper.ExecQuery("Select ID, PatID, PatName ,PatAge, PatSex ,Barcode , Tuble, ItemName , DoDept,OprDept,OprTime,PrintTime,ItemStatus,ItemsDetails,PrinterDev from TranList");
if (dt == null)
{
string sql = string.Format("CREATE TABLE TranList(ID INTEGER PRIMARY KEY,PatID TEXT,PatName TEXT, PatAge TEXT,PatSex TEXT, Barcode TEXT , Tuble TEXT, ItemName TEXT , ItemCount TEXT , ItemType TEXT, DoDept TEXT, OprDept TEXT, OprTime TEXT, PrintTime TEXT, ItemStatus TEXT, ItemsDetails TEXT, PrinterDev TEXT)");
bool Ret = JJServer.SQLiteDBHelper.ExecuteCommand(sql);
// JJServer.SQLiteDBHelper.ExecuteCommand("CREATE UNIQUE INDEX idx_cardno_barcode ON TranList (PatID, Barcode)");
}
}
public void CheckDay()
{
string Datastr = DateTime.Now.ToString("yyyy-MM-dd");
if (!CurDay.Equals(Datastr))
{
initDB();
}
}
public void InsertARecord(string PatID, string PatName, string PatAge, string PatSex, string Barcode, string Tuble, string ItemName, string ItemCount, string ItemType, string DoDept, string OprDept, string OprTime, string PrintTime, string ItemStatus, string ItemsDetails, string PrinterDev)
{
CheckDay();
string sql = string.Format("INSERT OR REPLACE INTO Tranlist ( PatID, PatName ,PatAge, PatSex ,Barcode , Tuble, ItemName ,ItemCount,ItemType, DoDept,OprDept,OprTime,PrintTime,ItemStatus,ItemsDetails,PrinterDev ) Values (\'{0}\',\'{1}\',\'{2}\',\'{3}\',\'{4}\',\'{5}\',\'{6}\',\'{7}\',\'{8}\',\'{9}\',\'{10}\',\'{11}\',\'{12}\',\'{13}\',\'{14}\',\'{15}\')", PatID, PatName, PatAge, PatSex, Barcode, Tuble, ItemName, ItemCount, ItemType, DoDept, OprDept, OprTime, PrintTime, ItemStatus, ItemsDetails, PrinterDev);
logger.Info("==>插入打印数据");
logger.Info(sql);
bool Ret = JJServer.SQLiteDBHelper.ExecuteCommand(sql);
}
public DataTable GetRecord()
{
CheckDay();
string sql = "Select * from TranList where 1=1";
return JJServer.SQLiteDBHelper.ExecQuery(sql);
}
public DataTable ExecQuery(string sql)
{
CheckDay();
return JJServer.SQLiteDBHelper.ExecQuery(sql);
}
}
}