using HL_FristAidPlatform_Help; using HL_FristAidPlatform_IDataBase; using HL_FristAidPlatform_Models; using SqlSugar; namespace HL_FristAidPlatform_DataBase { /// /// 我的收藏 /// public class T_Service_EnshrineDB : BaseDB, IT_Service_Enshrine { public SqlSugarClient db = GetClient(); #region 增 /// /// 新增 /// /// 实体 /// public bool Add(T_Service_Enshrine model) { return db.Insertable(model).ExecuteCommand() == 0 ? false : true; } /// /// 新增 仅更新赋值的字段 /// /// 实体类 /// public int AddNotNullColumns(T_Service_Enshrine model) { return db.Insertable(model).IgnoreColumns(ignoreNullColumn: true).ExecuteCommand(); } /// /// 新增 仅更新赋值的字段 /// 用于移动端 /// /// 实体类 /// public int AddForApp(T_Service_Enshrine 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_Enshrine model) { return db.Updateable(model).UpdateColumns(it => new { it.DeleteFlag, it.EditorID, it.Editor, it.EditTime }).ExecuteCommand(); } /// /// 删除 /// 用于移动端 /// /// 实体类,ID必填 /// public int DeleteForApp(T_Service_Enshrine model) { return db.Updateable(model).UpdateColumns(it => new { it.DeleteFlag, it.EditorID, it.Editor, it.EditTime }).ExecuteCommand(); } #endregion #region 改 /// /// 更新一条数据 /// public bool Update(T_Service_Enshrine model) { return db.Updateable(model).ExecuteCommand() == 0 ? false : true; } /// /// 仅更新赋值的字段 /// /// 实体类 /// public int UpdateNotNullColumns(T_Service_Enshrine model) { return db.Updateable(model).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand(); } /// /// 修改--仅更新赋值的字段 /// 用于移动端 /// /// 实体类 /// public int UpdateForApp(T_Service_Enshrine model) { return db.Updateable(model).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand(); } #endregion #region 查 /// /// 得到一个对象实体 /// public T_Service_Enshrine 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; } /// /// 根据分页获得数据列表 /// /// 起始页 /// 每页条数 /// 用户编号 /// 类型 1:病例 public TableModel GetPageList(int pageIndex, int pageSize, long userId, int type) { int TotalNumber = 0; TableModel t = new TableModel(); //病例 if (type == 1) { var listMode = db.Queryable((Enshrine, Pathography, Patient) => new object[] { JoinType.Left,Enshrine.DynamicGuid==Pathography.GUID, JoinType.Left,Pathography.PatientGuid==Patient.GUID, }) .Where((Enshrine, Pathography, Patient) => Enshrine.UserID == userId && Enshrine.Type == type && Enshrine.DeleteFlag == 0 && Patient.DeleteFlag == 0) .Select((Enshrine, Pathography, Patient) => new T_Service_EnshrineModel { ID = Enshrine.ID, GUID = Enshrine.GUID, UserID = Enshrine.UserID, Type = Enshrine.Type, DynamicGuid = Enshrine.DynamicGuid, DeleteFlag = Enshrine.DeleteFlag, CreationDate = Enshrine.CreationDate, CreatorID = Enshrine.CreatorID, Creator = Enshrine.Creator, EditTime = Enshrine.EditTime, EditorID = Enshrine.EditorID, Editor = Enshrine.Editor, Content = Pathography.Editor, Name = Patient.Creator, Gender = Patient.Gender, Age = Patient.Age, Age_Unit = Patient.Age_Unit, }).OrderBy(Patient => Patient.CreationDate, OrderByType.Desc).ToPageList(pageIndex, pageSize, ref TotalNumber); t.Code = 0; t.PageCount = listMode.Count; t.TotalNumber = TotalNumber; t.Data = listMode; t.Msg = "成功"; return t; } else { return null; } } /// /// 根据分页获得数据列表 /// 用于移动端 /// /// 起始页 /// 每页条数 /// 用户编号 /// 类型 1:病例 public TableModel GetPageListForApp(int pageIndex, int pageSize, long userId, int type) { int TotalNumber = 0; TableModel t = new TableModel(); //病例 if (type == 1) { var listMode = db.Queryable((Enshrine, Pathography, Patient) => new object[] { JoinType.Left,Enshrine.DynamicGuid==Pathography.GUID, JoinType.Left,Pathography.PatientGuid==Patient.GUID, }) .Where((Enshrine, Pathography, Patient) => Enshrine.UserID == userId && Enshrine.Type == type && Enshrine.DeleteFlag == 0 && Patient.DeleteFlag == 0) .Select((Enshrine, Pathography, Patient) => new T_Service_EnshrineModel { ID = Enshrine.ID, GUID = Enshrine.GUID, UserID = Enshrine.UserID, Type = Enshrine.Type, DynamicGuid = Enshrine.DynamicGuid, DeleteFlag = Enshrine.DeleteFlag, CreationDate = Enshrine.CreationDate, CreatorID = Enshrine.CreatorID, Creator = Enshrine.Creator, EditTime = Enshrine.EditTime, EditorID = Enshrine.EditorID, Editor = Enshrine.Editor, Content = Pathography.Editor, Name = Patient.Creator, Gender = Patient.Gender, Age = Patient.Age, Age_Unit = Patient.Age_Unit, }).OrderBy(Patient => Patient.CreationDate, OrderByType.Desc).ToPageList(pageIndex, pageSize, ref TotalNumber); t.Code = 0; t.PageCount = listMode.Count; t.TotalNumber = TotalNumber; t.Data = listMode; t.Msg = "成功"; return t; } else { return null; } } /// /// 查询具体收藏 /// /// 用户编号 /// 类型 1:病例 /// 动态编号 /// public TableModel GetModelByDynamicGuid(long userId, int type, string dynamicGuid) { TableModel t = new TableModel(); //病例 if (type == 1) { var listMode = db.Queryable((Enshrine, Pathography, Patient) => new object[] { JoinType.Left,Enshrine.DynamicGuid==Pathography.GUID, JoinType.Left,Pathography.PatientGuid==Patient.GUID, }) .Where((Enshrine, Pathography, Patient) => Enshrine.UserID == userId && Pathography.GUID == dynamicGuid && Enshrine.Type == type && Enshrine.DeleteFlag == 0 && Patient.DeleteFlag == 0) .Select((Enshrine, Pathography, Patient) => new T_Service_EnshrineModel { ID = Enshrine.ID, GUID = Enshrine.GUID, UserID = Enshrine.UserID, Type = Enshrine.Type, DynamicGuid = Enshrine.DynamicGuid, DeleteFlag = Enshrine.DeleteFlag, CreationDate = Enshrine.CreationDate, CreatorID = Enshrine.CreatorID, Creator = Enshrine.Creator, EditTime = Enshrine.EditTime, EditorID = Enshrine.EditorID, Editor = Enshrine.Editor, Content = Pathography.Editor, Name = Patient.Creator, Gender = Patient.Gender, Age = Patient.Age, Age_Unit = Patient.Age_Unit, }).OrderBy(Patient => Patient.CreationDate, OrderByType.Desc).ToList(); t.Code = 0; t.PageCount = listMode.Count; t.TotalNumber = listMode.Count; t.Data = listMode; t.Msg = "成功"; return t; } else { return null; } } #endregion } }