using Yw.DAL.SQLite; namespace HStation.DAL.SQLite { /// /// /// public partial class XhsProject : BaseDAL_Paras_Flags_TagName_Sorter_UseStatus, IXhsProject { /// /// /// public override ConnectionConfig ConnectionConfig { get { return Xhs.ConfigHelper.SQLiteConnectionConfig; } } /// /// 插入拓展 /// public long InsertEx(Entity.XhsProject project, Entity.XhsProjectItem Item, Entity.XhsProjectItemModel Model, Entity.XhsProjectItemModelMap Map) { if (project == null || Item == null || Model == null || Map == null) { return default; } using (var db = new SqlSugarClient(ConnectionConfig)) { try { db.BeginTran(); project.SortCode = db.Queryable().ToList().Max(x => x.SortCode) + 1; project.UseStatus = 1; var result = db.Insertable(project).ExecuteReturnSnowflakeId(); if (result < 0) { db.RollbackTran(); return default; } else { Item.ProjectID = result; Item.UseStatus = 1; Item.SortCode = db.Queryable().ToList().Max(x => x.SortCode) + 1; var itemresult = db.Insertable(Item).ExecuteReturnSnowflakeId(); if (itemresult < 0) { db.RollbackTran(); return default; } else { Model.ProjectID = result; Model.UseStatus = 1; Model.SortCode = db.Queryable().ToList().Max(x => x.SortCode) + 1; var Modelresult = db.Insertable(Model).ExecuteReturnSnowflakeId(); if (Modelresult < 0) { db.RollbackTran(); return default; } else { Map.ProjectID = result; Map.ItemID = itemresult; Map.ModelID = Modelresult; Map.UseStatus = 1; var Mapresult = db.Insertable(Map).ExecuteReturnSnowflakeId(); if (Mapresult < 0) { db.RollbackTran(); return default; } } } } db.CommitTran(); return result; } catch (Exception ex) { db.RollbackTran(); throw; } } } /// /// 删除拓展 /// public bool DeleteEx(long ID) { if (ID < 0) { return default; } using (var db = new SqlSugarClient(ConnectionConfig)) { try { db.BeginTran(); var project = db.Queryable().ToList().Where(x => x.ID == ID).First(); var result = db.Deleteable(project).Where(x => x.ID == project.ID).ExecuteCommand() > 0; if (!result) { db.RollbackTran(); return default; } else { var Item = db.Queryable().ToList(); var itemresult = db.Deleteable(Item).Where(x => x.ProjectID == project.ID).ExecuteCommand() > 0; if (!itemresult) { db.RollbackTran(); return default; } else { var Model = db.Queryable().ToList(); var Modelresult = db.Deleteable(Model).Where(x => x.ProjectID == project.ID).ExecuteCommand() > 0; if (!Modelresult) { db.RollbackTran(); return default; } else { var Map = db.Queryable().ToList(); var Mapresult = db.Deleteable(Map).Where(x => x.ProjectID == project.ID).ExecuteCommand() > 0; if (Mapresult) { db.RollbackTran(); return default; } } } } db.CommitTran(); return result; } catch (Exception ex) { db.RollbackTran(); throw; } } } /// /// 编辑拓展 /// public bool UpdateEx(Entity.XhsProject project, Entity.XhsProjectItem Item) { if (project == null || Item == null) { return default; } using (var db = new SqlSugarClient(ConnectionConfig)) { try { db.BeginTran(); var result = db.Updateable(project).ExecuteCommand() > 0; if (!result) { db.RollbackTran(); return default; } else { var itemresult = db.Updateable(Item).ExecuteCommand() > 0; if (!itemresult) { db.RollbackTran(); return default; } } db.CommitTran(); return true; } catch (Exception ex) { db.RollbackTran(); return default; throw; } } } } }