using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
|
namespace TProduct.BLL
|
{
|
public partial class WorkBenchMonitorPoint
|
{
|
private readonly DAL.WorkBenchMonitorPoint _dal = new DAL.WorkBenchMonitorPoint();
|
static List<Model.WorkBenchMonitorPoint> _allWorkBenchMonitorPoint = null;
|
internal static void ClearChache()
|
{
|
_allWorkBenchMonitorPoint = null;
|
}
|
|
#region Query
|
|
/// <summary>
|
/// 获取所有
|
/// </summary>
|
public List<Model.WorkBenchMonitorPoint> GetAll()
|
{
|
if (_allWorkBenchMonitorPoint != null)
|
return _allWorkBenchMonitorPoint;
|
var all = _dal.GetAll()?.OrderBy(x => x.SortCode)?.ToList();
|
_allWorkBenchMonitorPoint = Entity2Models(all);
|
if (_allWorkBenchMonitorPoint == null)
|
_allWorkBenchMonitorPoint = new List<Model.WorkBenchMonitorPoint>();
|
return _allWorkBenchMonitorPoint;
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
public Model.WorkBenchMonitorPoint GetByID(long ID)
|
{
|
if (ID < 1)
|
return default;
|
return GetAll().Find(x => x.ID == ID);
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
public List<Model.WorkBenchMonitorPoint> GetByBenchID(long BenchID)
|
{
|
if (BenchID < 1)
|
return default;
|
return GetAll().Where(x => x.BenchID == BenchID).ToList();
|
}
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
public List<Model.WorkBenchMonitorPoint> Get模拟量ByBenchID(long BenchID)
|
{
|
if (BenchID < 1)
|
return default;
|
return GetAll().Where(x => x.BenchID == BenchID && x.SourceType == Model.eMonitorPointSourceType.模拟量).ToList();
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
public List<Model.WorkBenchMonitorPoint> Get数字量ByBenchID(long BenchID)
|
{
|
if (BenchID < 1)
|
return default;
|
return GetAll().Where(x => x.BenchID == BenchID && x.SourceType == Model.eMonitorPointSourceType.数字量).ToList();
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
public List<Model.WorkBenchMonitorPoint> GetByIds(List<long> Ids)
|
{
|
if (Ids == null || Ids.Count() < 1)
|
return default;
|
return GetAll().Where(x => Ids.Contains(x.ID)).ToList();
|
}
|
|
/// <summary>
|
/// 获取最大排序码
|
/// </summary>
|
public int GetMaxSortCode(long BenchID)
|
{
|
if (BenchID < 1)
|
return default;
|
var items = GetAll().Where(x => x.BenchID == BenchID);
|
if (items == null || items.Count() == 0)
|
return 1;
|
return items.Select(x => x.SortCode).Max();
|
}
|
|
#endregion
|
|
#region Insert
|
|
/// <summary>
|
/// 添加一条
|
/// </summary>
|
public long Insert(Model.WorkBenchMonitorPoint model)
|
{
|
_allWorkBenchMonitorPoint = null;
|
if (model == null)
|
return default;
|
model.CreateTime = DateTime.Now;
|
model.UpdateTime = DateTime.Now;
|
if (string.IsNullOrEmpty(model.Code))
|
model.Code = CreateNO();
|
var entity = Model2Entity(model);
|
var id = _dal.Insert(entity);
|
return id;
|
}
|
|
/// <summary>
|
/// 批量插入
|
/// </summary>
|
public bool Inserts(List<Model.WorkBenchMonitorPoint> list)
|
{
|
_allWorkBenchMonitorPoint = null;
|
if (list == null || list.Count() < 1)
|
return default;
|
var codes = new BLL.WorkBenchMonitorPoint().CreateNO(list.Count());
|
for (int i = 0; i < list.Count; i++)
|
{
|
var item = list[i];
|
item.CreateTime = DateTime.Now;
|
item.UpdateTime = DateTime.Now;
|
if (string.IsNullOrEmpty(item.Code))
|
item.Code = codes[i];
|
}
|
var entity_list = Model2Entities(list);
|
var ids = _dal.InsertsR(entity_list);
|
if (ids != null && ids.Count > 0)
|
return true;
|
return false;
|
}
|
|
/// <summary>
|
/// 批量插入并返回标记
|
/// </summary>
|
public List<long> InsertsR(List<Model.WorkBenchMonitorPoint> list)
|
{
|
_allWorkBenchMonitorPoint = null;
|
if (list == null || list.Count() < 1)
|
return default;
|
foreach (var item in list)
|
{
|
item.CreateTime = DateTime.Now;
|
item.UpdateTime = DateTime.Now;
|
if (string.IsNullOrEmpty(item.Code))
|
item.Code = CreateNO();
|
}
|
var entity_list = Model2Entities(list);
|
return _dal.InsertsR(entity_list);
|
}
|
|
#endregion
|
|
#region Update
|
|
/// <summary>
|
/// 更新一条
|
/// </summary>
|
public bool Update(Model.WorkBenchMonitorPoint model)
|
{
|
_allWorkBenchMonitorPoint = null;
|
if (model == null)
|
return default;
|
model.UpdateTime = DateTime.Now;
|
var entity = Model2Entity(model);
|
var bol = _dal.Update(entity);
|
return bol;
|
}
|
|
/// <summary>
|
/// 批量更新
|
/// </summary>
|
public bool Updates(List<Model.WorkBenchMonitorPoint> list)
|
{
|
_allWorkBenchMonitorPoint = null;
|
if (list == null || list.Count() < 1)
|
return default;
|
foreach (var item in list)
|
{
|
item.UpdateTime = DateTime.Now;
|
}
|
var entity_list = Model2Entities(list);
|
var bol = _dal.Updates(entity_list);
|
return bol;
|
}
|
|
#endregion
|
|
#region Delete
|
/// <summary>
|
/// 通过 ID 删除
|
/// </summary>
|
public bool DeleteByID(long ID)
|
{
|
_allWorkBenchMonitorPoint = null;
|
return _dal.DeleteByID(ID);
|
}
|
public bool DeleteByWorkBenchID(long WorkBenchID)
|
{
|
_allWorkBenchMonitorPoint = null;
|
return _dal.DeleteByWorkBenchID(WorkBenchID);
|
}
|
/// <summary>
|
/// 通过 Ids 批量删除
|
/// </summary>
|
public bool DeleteByIds(List<long> Ids)
|
{
|
_allWorkBenchMonitorPoint = null;
|
return _dal.DeleteByIds(Ids);
|
}
|
#endregion
|
|
#region Exist
|
/// <summary>
|
///是否存在Code
|
/// </summary>
|
public bool IsExistCode(string Code)
|
{
|
if (string.IsNullOrEmpty(Code))
|
return false;
|
var find = GetAll().Find(x => x.Code.ToLower() == Code.ToLower());
|
if (find == null)
|
return false;
|
else
|
return true;
|
}
|
|
/// <summary>
|
///是否存在Name
|
/// </summary>
|
public bool IsExistName(long BenchID, string Name)
|
{
|
if (string.IsNullOrEmpty(Name) || BenchID <= 0)
|
return false;
|
var find = GetAll().Find(x => x.BenchID == BenchID && x.Name.ToLower() == Name.ToLower());
|
if (find == null)
|
return false;
|
else
|
return true;
|
}
|
#endregion
|
}
|
}
|