using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
|
namespace IStation.DAL
|
{
|
/// <summary>
|
/// 信号
|
/// </summary>
|
public class Signal : Entity.Signal
|
{
|
|
#region Path
|
|
/// <summary>
|
/// 查询文件路径
|
/// </summary>
|
private string GetFolderPath()
|
{
|
return FileHelper.GetVersionsPath();
|
}
|
|
#endregion
|
|
#region Get
|
|
/// <summary>
|
/// 查询全部
|
/// </summary>
|
public List<Entity.Signal> GetAll()
|
{
|
var path = GetFolderPath();
|
var all = FileIdHelper<Entity.Signal>.GetAll(path);
|
var entities = all?.OrderBy(x => x.SortCode).ToList();
|
return entities;
|
}
|
|
/// <summary>
|
/// 根据 ID查询
|
/// </summary>
|
public Entity.Signal GetByID(long ID)
|
{
|
if (ID < 0)
|
return default;
|
var all = GetAll();
|
var entities = all?.ToList();
|
return entities?.Find(t => t.ID == ID);
|
}
|
|
/// <summary>
|
/// 根据 ID集合查询
|
/// </summary>
|
public List<Entity.Signal> GetByIds(IEnumerable<long> Ids)
|
{
|
if (Ids == null || Ids.Count() < 1)
|
return default;
|
var all = GetAll();
|
var entities = all?.Where(x => Ids.Contains(x.ID)).ToList();
|
return entities;
|
}
|
|
#endregion
|
|
#region Insert
|
|
/// <summary>
|
/// 插入
|
/// </summary>
|
public long Insert(Entity.Signal rhs)
|
{
|
if (rhs == null)
|
return default;
|
var path = GetFolderPath();
|
return FileIdHelper<Entity.Signal>.Insert(path, rhs);
|
}
|
|
/// <summary>
|
/// 批量插入
|
/// </summary>
|
public bool Inserts(IEnumerable<Entity.Signal> list)
|
{
|
if (list == null || list.Count() < 1)
|
return default;
|
var path = GetFolderPath();
|
return FileIdHelper<Entity.Signal>.Inserts(path, list);
|
}
|
|
/// <summary>
|
/// 插入并返回
|
/// </summary>
|
public Entity.Signal InsertR(Entity.Signal rhs)
|
{
|
if (rhs == null)
|
return default;
|
var path = GetFolderPath();
|
var entities = FileIdHelper<Entity.Signal>.InsertR(path, rhs);
|
return entities;
|
}
|
|
/// <summary>
|
/// 批量插入并返回
|
/// </summary>
|
public List<long> InsertsR(IEnumerable<Entity.Signal> list)
|
{
|
if (list == null || list.Count() < 1)
|
return default;
|
var path = GetFolderPath();
|
var entities = FileIdHelper<Entity.Signal>.InsertRs(path, list);
|
return entities?.Select(x => x.ID).ToList();
|
}
|
|
#endregion
|
|
#region Update
|
|
/// <summary>
|
/// 更新
|
/// </summary>
|
public bool Update(Entity.Signal rhs)
|
{
|
if (rhs == null)
|
return default;
|
var path = GetFolderPath();
|
return FileIdHelper<Entity.Signal>.Update(path, rhs);
|
}
|
|
/// <summary>
|
/// 批量更新
|
/// </summary>
|
public bool Updates(IEnumerable<Entity.Signal> list)
|
{
|
if (list == null || list.Count() < 1)
|
return default;
|
var path = GetFolderPath();
|
return FileIdHelper<Entity.Signal>.Updates(path, list);
|
}
|
|
#endregion
|
|
#region Delete
|
|
/// <summary>
|
/// 根据 ID删除
|
/// </summary>
|
public bool DeleteByID(long ID)
|
{
|
if (ID < 0)
|
return default;
|
var path = GetFolderPath();
|
var bol = FileIdHelper<Entity.Signal>.DeleteByID(path, ID);
|
return bol;
|
}
|
|
/// <summary>
|
/// 根据 ID集合删除
|
/// </summary>
|
public bool DeleteByIds(IEnumerable<long> Ids)
|
{
|
if (Ids == null || Ids.Count() < 1)
|
return default;
|
var path = GetFolderPath();
|
var bol = FileIdHelper<Entity.Signal>.DeleteByIds(path, Ids);
|
return bol;
|
}
|
|
/// <summary>
|
/// 删除
|
/// </summary>
|
public bool Delete(Entity.Signal rhs)
|
{
|
if (rhs == null)
|
return default;
|
var path = GetFolderPath();
|
var bol = FileIdHelper<Entity.Signal>.DeleteByID(path, rhs.ID);
|
return bol;
|
}
|
|
/// <summary>
|
/// 批量删除
|
/// </summary>
|
public bool Deletes(IEnumerable<Entity.Signal> list)
|
{
|
if (list == null || list.Count() < 1)
|
return default;
|
var path = GetFolderPath();
|
var Ids = list.Select(x => x.ID).ToList();
|
var bol = FileIdHelper<Entity.Signal>.DeleteByIds(path, Ids);
|
return bol;
|
}
|
|
/// <summary>
|
/// 删除全部
|
/// </summary>
|
public bool DeleteAll()
|
{
|
var path = GetFolderPath();
|
var bol = FileIdHelper<Entity.Signal>.DeleteAll(path);
|
return bol;
|
}
|
|
#endregion
|
|
#region Cover
|
|
/// <summary>
|
/// 批量覆盖
|
/// </summary>
|
public bool Covers(IEnumerable<Entity.Signal> list)
|
{
|
if (list == null || list.Count() < 1)
|
return default;
|
var path = GetFolderPath();
|
return FileIdHelper<Entity.Signal>.Covers(path, list);
|
}
|
|
/// <summary>
|
/// 批量覆盖并返回
|
/// </summary>
|
public List<Entity.Signal> CoversR(IEnumerable<Entity.Signal> list)
|
{
|
if (list == null || list.Count() < 1)
|
return default;
|
var path = GetFolderPath();
|
return FileIdHelper<Entity.Signal>.CoversR(path, list);
|
}
|
|
#endregion
|
}
|
}
|