namespace Yw.DAL.PostgreSql { /// /// /// public partial class BimfaceFileRelation : BaseDAL_Sorter, IBimfaceFileRelation { /// /// /// public override ConnectionConfig ConnectionConfig { get { return ConfigHelper.PostgreSqlConnectionConfig; } } /// /// 插入拓展 /// public long InsertEx(Entity.BimfaceFileRelation entity, List entityLabelList) { if (entity == null) { return default; } using (var db = new SqlSugarClient(ConnectionConfig)) { try { db.BeginTran(); if (entity.ID > 0) { var bol = db.Insertable(entity).ExecuteCommand() > 0; if (!bol) { db.RollbackTran(); return default; } } else { entity.ID = db.Insertable(entity).ExecuteReturnSnowflakeId(); } if (entity.ID < 1) { db.RollbackTran(); return default; } if (entityLabelList != null && entityLabelList.Count > 0) { entityLabelList.ForEach(x => { x.RelationID = entity.ID; if (x.ID < 1) { x.ID = SnowFlakeSingle.instance.NextId(); } }); var bol = db.Insertable(entityLabelList).ExecuteCommand() > 0; if (!bol) { db.RollbackTran(); return default; } } db.CommitTran(); return entity.ID; } catch { db.RollbackTran(); throw; } } } /// /// 更新 Purpose /// public bool UpdatePurpose(long ID, string Purpose) { using (SqlSugarClient db = new(ConnectionConfig)) { return db.Updateable() .SetColumns(x => x.Purpose == Purpose) .Where(x => x.ID == ID) .ExecuteCommandHasChange(); } } /// /// 更新 Content /// public bool UpdateContent(long ID, string Content) { using (SqlSugarClient db = new(ConnectionConfig)) { return db.Updateable() .SetColumns(x => x.Content == Content) .Where(x => x.ID == ID) .ExecuteCommandHasChange(); } } /// /// 通过 ID 删除(同时删除标签) /// public bool DeleteExByID(long ID) { using (var db = new SqlSugarClient(ConnectionConfig)) { try { db.BeginTran(); var bol = db.Deleteable().Where(x => x.ID == ID).ExecuteCommandHasChange(); if (!bol) { db.RollbackTran(); return false; } db.Deleteable().Where(x => x.RelationID == ID).ExecuteCommandHasChange(); db.CommitTran(); return true; } catch { db.RollbackTran(); throw; } } } } }