namespace Yw.DAL.SQLite
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public partial class SysUnitTransfer : BaseDAL<Entity.SysUnitTransfer>, ISysUnitTransfer
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public override ConnectionConfig ConnectionConfig
|
{
|
get { return ConfigHelper.SQLiteConnectionConfig; }
|
|
}
|
|
/// <summary>
|
/// 通过 TypeID 获取
|
/// </summary>
|
public List<Entity.SysUnitTransfer> GetByTypeID(long TypeID)
|
{
|
using (var db = new SqlSugarClient(ConnectionConfig))
|
{
|
return db.Queryable<Entity.SysUnitTransfer>()
|
.Where(x => x.TypeID == TypeID).ToList();
|
}
|
}
|
|
/// <summary>
|
/// 通过 ValueID 获取
|
/// </summary>
|
public List<Entity.SysUnitTransfer> GetByValueID(long ValueID)
|
{
|
using (var db = new SqlSugarClient(ConnectionConfig))
|
{
|
return db.Queryable<Entity.SysUnitTransfer>()
|
.Where(x => x.FromValueID == ValueID || x.ToValueID == ValueID).ToList();
|
}
|
}
|
|
/// <summary>
|
/// 设置
|
/// </summary>
|
public bool SetByTypeID(long TypeID, List<Entity.SysUnitTransferTypeSetter> list)
|
{
|
using (var db = new SqlSugarClient(ConnectionConfig))
|
{
|
if (list == null || list.Count < 1)
|
{
|
return db.Deleteable<Entity.SysUnitTransfer>()
|
.Where(x => x.TypeID == TypeID)
|
.ExecuteCommandHasChange();
|
}
|
try
|
{
|
|
db.BeginTran();
|
|
var ids = new List<long>();
|
foreach (var setter in list)
|
{
|
var entity = db.Queryable<Entity.SysUnitTransfer>()
|
.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<Entity.SysUnitTransfer>()
|
.Where(x => x.TypeID == TypeID && !ids.Contains(x.ID))
|
.ExecuteCommandHasChange();
|
|
db.CommitTran();
|
return true;
|
}
|
catch
|
{
|
db.RollbackTran();
|
return false;
|
}
|
}
|
}
|
|
|
|
}
|
}
|