namespace Yw.DAL { /// /// /// public partial class SysUnitTransfer : BaseDAL { /// /// /// public override ConnectionConfig ConnectionConfig { get { return ConfigHelper.DefaultConnectionConfig; } } /// /// 通过 TypeID 获取 /// public List GetByTypeID(long TypeID) { using (var db = new SqlSugarClient(ConnectionConfig)) { return db.Queryable() .Where(x => x.TypeID == TypeID).ToList(); } } /// /// 设置 /// public bool SetOfType(long TypeID, List list) { using (var db = new SqlSugarClient(ConnectionConfig)) { if (list == null || list.Count < 1) { return db.Deleteable() .Where(x => x.TypeID == TypeID) .ExecuteCommandHasChange(); } try { db.BeginTran(); var ids = new List(); foreach (var setter in list) { var entity = db.Queryable() .Where(x => x.TypeID == TypeID && x.FromValueID == setter.FromValueID && x.ToValueID == setter.ToValueID).First(); if (entity == null) { entity = new Entity.SysUnitTransfer() { TypeID = TypeID, FromValueID = setter.FromValueID, ToValueID = setter.ToValueID, Expression = setter.Expression }; } else { entity.Expression = setter.Expression; } if (entity.ID < 1) { entity.ID = db.Insertable(entity).ExecuteReturnSnowflakeId(); if (entity.ID < 1) { db.RollbackTran(); return false; } } else { var bol = db.Updateable(entity).ExecuteCommandHasChange(); if (!bol) { db.RollbackTran(); return false; } } ids.Add(entity.ID); } //删除 db.Deleteable() .Where(x => x.TypeID == TypeID && !ids.Contains(x.ID)) .ExecuteCommandHasChange(); db.CommitTran(); return true; } catch { db.RollbackTran(); return false; } } } } }