namespace Yw.DAL.PostgreSql
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public partial class SysUnitName : BaseDAL<Entity.SysUnitName>, ISysUnitName
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public override ConnectionConfig ConnectionConfig
|
{
|
get { return ConfigHelper.PostgreSqlConnectionConfig; }
|
}
|
|
/// <summary>
|
/// 通过 ValueID 获取
|
/// </summary>
|
public List<Entity.SysUnitName> GetByValueID(long ValueID)
|
{
|
using (var db = new SqlSugarClient(ConnectionConfig))
|
{
|
return db.Queryable<Entity.SysUnitName>()
|
.Where(x => x.ValueID == ValueID).ToList();
|
}
|
}
|
|
|
/// <summary>
|
/// Value
|
/// </summary>
|
public bool SetByValueID(long ValueID, List<Entity.SysUnitNameValueSetter> list)
|
{
|
using (var db = new SqlSugarClient(ConnectionConfig))
|
{
|
if (list == null || list.Count < 1)
|
{
|
return db.Deleteable<Entity.SysUnitName>()
|
.Where(x => x.ValueID == ValueID)
|
.ExecuteCommandHasChange();
|
}
|
|
try
|
{
|
db.BeginTran();
|
|
var ids = new List<long>();
|
foreach (var setter in list)
|
{
|
var entity = db.Queryable<Entity.SysUnitName>()
|
.Where(x => x.ValueID == ValueID && x.LangID == setter.LangID).First();
|
if (entity == null)
|
{
|
entity = new Entity.SysUnitName()
|
{
|
ValueID = ValueID,
|
LangID = setter.LangID,
|
Name = setter.Name
|
};
|
}
|
else
|
{
|
entity.Name = setter.Name;
|
}
|
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.SysUnitName>()
|
.Where(x => x.ValueID == ValueID && !ids.Contains(x.ID))
|
.ExecuteCommandHasChange();
|
|
db.CommitTran();
|
return true;
|
}
|
catch
|
{
|
db.RollbackTran();
|
throw;
|
}
|
}
|
}
|
|
|
|
}
|
}
|