using HL_FristAidPlatform_Help; using HL_FristAidPlatform_IDataBase; using HL_FristAidPlatform_Models; using SqlSugar; using System; using System.Collections.Generic; using System.Data; namespace HL_FristAidPlatform_DataBase { /// /// 出院带药 V2.1版 /// public class T_Service_ChestPain_OutDrugDetailDB : BaseDB, IT_Service_ChestPain_OutDrugDetail { public SqlSugarClient db = GetClient(); #region 增 /// /// 新增 /// /// 实体 /// public bool Add(T_Service_ChestPain_OutDrugDetail model) { return db.Insertable(model).ExecuteCommand() == 0 ? false : true; } /// /// 新增 仅更新赋值的字段 /// /// 实体类 /// public int AddNotNullColumns(T_Service_ChestPain_OutDrugDetail model) { return db.Insertable(model).IgnoreColumns(ignoreNullColumn: true).ExecuteCommand(); } /// /// 新增 仅更新赋值的字段 /// 用于移动端 /// /// 实体类 /// public int AddForApp(T_Service_ChestPain_OutDrugDetail model) { return db.Insertable(model).IgnoreColumns(ignoreNullColumn: true).ExecuteCommand(); } #endregion #region 删 /// /// 删除一条数据 /// public bool Delete(long ID) { return db.Deleteable(it => it.ID == ID).ExecuteCommand() == 0 ? false : true; ; } /// /// 逻辑删除 /// /// 实体类 /// public int LogicalDelete(T_Service_ChestPain_OutDrugDetail model) { return db.Updateable(model).UpdateColumns(it => new { it.DeleteFlag, it.EditorID, it.Editor, it.EditTime }).Where(it => it.ID == model.ID).ExecuteCommand(); //return db.Updateable(model).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand(); //更新忽略null字段 } /// /// 删除 /// 用于移动端 /// /// 实体类,ID必填 /// public int DeleteForApp(T_Service_ChestPain_OutDrugDetail model) { return db.Updateable(model).UpdateColumns(it => new { it.DeleteFlag, it.EditorID, it.Editor, it.EditTime }).ExecuteCommand(); } #endregion #region 改 /// /// 更新一条数据 /// public bool Update(T_Service_ChestPain_OutDrugDetail model) { return db.Updateable(model).ExecuteCommand() == 0 ? false : true; } /// /// 仅更新赋值的字段 /// /// 实体类 /// public int UpdateNotNullColumns(T_Service_ChestPain_OutDrugDetail model) { return db.Updateable(model).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand(); } /// /// 修改--仅更新赋值的字段 /// 用于移动端 /// /// 实体类 /// public int UpdateForApp(T_Service_ChestPain_OutDrugDetail model) { return db.Updateable(model).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand(); } #endregion #region 查 /// /// 得到一个对象实体 /// public T_Service_ChestPain_OutDrugDetail GetModel(long ID) { return db.Queryable().First(it => it.ID == ID); } /// /// 得到一个对象实体 /// 用于移动端 /// /// 患者编号 /// GUID /// public TableModel GetModelForApp(long id, string guid) { TableModel t = new TableModel(); var listMode = db.Queryable() .Where(it => it.DeleteFlag == 0) .WhereIF(id > 0, it => it.ID == id && it.DeleteFlag == 0) .WhereIF(!string.IsNullOrEmpty(guid), it => it.GUID == guid).ToList(); t.Code = 0; t.PageCount = listMode.Count; t.TotalNumber = listMode.Count; t.Data = listMode; t.Msg = "成功"; return t; } /// /// 获得前几行数据 /// /// 起始页 /// 每页条数 /// public TableModel GetPageList(int pageIndex, int pageSize) { int total = 0; List data = db.Queryable().Where(it => it.DeleteFlag == 0).ToPageList(pageIndex, pageSize, ref total); TableModel t = new TableModel(); t.Code = 0; t.PageCount = data.Count; t.TotalNumber = total; t.Data = data; t.Msg = "成功"; return t; } /// /// 根据患者编号(GUID) 获取数据信息 /// /// 病人编号(GUID) /// public string GetByPatientGuid(string patientGuid) { try { //case when 是为了将T_Base_PublicDictionary表中的药物类型与字典表里的类型相对应匹配 string SqlStr = string.Format(@"SELECT a.*,(SELECT [TEXT] FROM T_Base_PublicDictionary WHERE Type=(CASE a.Type WHEN 1 THEN '4' WHEN 2 THEN '5' WHEN 3 THEN '6' WHEN 4 THEN '7' END) AND Value=a.Name) AS NameText FROM T_Service_ChestPain_OutDrugDetail a WHERE a.PatientGuid='{0}' AND a.DeleteFlag=0", patientGuid); DataTable dt = db.Ado.GetDataTable(SqlStr); return Help.DataTableToJsonStr(dt); } catch (Exception) { throw; } } /// /// 根据患者编号(GUID) 获取数据信息 /// 用于移动端 /// /// 病人编号(GUID) /// public string GetByPatientGuidForApp(string patientGuid) { try { //case when 是为了将T_Base_PublicDictionary表中的药物类型与字典表里的类型相对应匹配 string SqlStr = string.Format(@"SELECT a.*,(SELECT [TEXT] FROM T_Base_PublicDictionary WHERE Type=(CASE a.Type WHEN 1 THEN '4' WHEN 2 THEN '5' WHEN 3 THEN '6' WHEN 4 THEN '7' END) AND Value=a.Name) AS NameText FROM T_Service_ChestPain_OutDrugDetail a WHERE a.PatientGuid='{0}' AND a.DeleteFlag=0", patientGuid); DataTable dt = db.Ado.GetDataTable(SqlStr); return Help.DataTableToJsonStr(dt); } catch (Exception) { throw; } } #endregion /// /// 逻辑删除 出院带药 /// /// /// public bool UpdateDelete(T_Service_ChestPain_OutDrugDetail model) { var oneClass = db.Queryable().Where(i => i.GUID == model.GUID).First(); if (oneClass != null) { //oneClass.DeleteFlag = model.DeleteFlag; //oneClass.Editor = model.Editor; //oneClass.EditorID = model.EditorID; //oneClass.EditTime = DateTime.Now; //return db.Updateable().IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand() == 1 ? true : false; return db.Updateable(model).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand() == 0 ? false : true; } else { return false; } } } }