using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Threading.Tasks; using APT.Infrastructure.Core; namespace APT.Infrastructure.Api { public partial class CommonService : DomainServiceBase, ICommonService { private IRepository _repository; public IRepository Repository { get { return _repository; } } public CommonService(IRepository repository) : base(repository.UnitOfWork) { _repository = repository; } public IUnitOfWork UnitWork() { return Repository.UnitOfWork; } public virtual bool AddEntity(T entity) where T : MesEntityBase, new() { this.Repository.AddEntity(entity); return true; } public virtual T AddAndGetEntity(T entity) where T : MesEntityBase, new() { return this.Repository.AddAndGetEntity(entity); } public virtual bool BantchAddEntity(IEnumerable entities) where T : MesEntityBase, new() { this.Repository.AddEntities(entities); return true; } /// /// 逻辑删除 /// /// /// public virtual bool DeleteEntity(Guid id) where T : MesEntityBase, new() { this.Repository.DeleteEntity(id); return true; } /// /// 逻辑删除 /// /// /// public virtual bool DeleteEntity(Expression> predicate) where T : MesEntityBase, new() { this.Repository.DeleteEntity(predicate); return true; } /// /// 逻辑删除 /// /// /// public virtual bool DeleteEntity(IEnumerable entities) where T : MesEntityBase, new() { this.Repository.DeleteEntities(entities); return true; } /// /// 逻辑批量删除 /// /// /// /// public bool BantchDeleteEntity(List ids) where T : MesEntityBase, new() { if (ids == null || !ids.Any()) return false; this.Repository.DeleteEntity(t => ids.Contains(t.ID)); return true; } /// /// 逻辑删除 /// /// /// public virtual bool DeleteEntity(T entity) where T : MesEntityBase, new() { this.Repository.DeleteEntity(entity); return true; } /// /// 更新 /// /// 实体 /// 是否成功 public virtual bool UpdateEntity(T entity) where T : MesEntityBase, new() { this.Repository.UpdateEntity(entity); return true; } public virtual bool UpdateEntity(T entity, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntity(entity, true, updateField); return true; } public virtual bool BantchUpdateEntity(IEnumerable entities, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntities(entities, true, updateField); return true; } /// /// 批量更新 /// /// 实体集合 /// 是否成功 public virtual bool BantchUpdateEntity(IEnumerable entities) where T : MesEntityBase, new() { this.Repository.UpdateEntities(entities); return true; } /// /// 批量更新(新增和保存一起)速度慢 /// /// 实体集合 /// 是否成功 public virtual bool BantchSaveEntity(IEnumerable entities) where T : MesEntityBase, new() { //entities.ForEach(i => i.MODIFICATION_TIME = DateTime.Now); this.Repository.SaveEntities(entities); return true; } #region 树实体 /// /// 添加实体 /// /// /// public bool TreeAddEntity(T entity) where T : TreeEntityBase, new() { return this.AddEntity(entity); } public T TreeAddAndGetEntity(T entity) where T : MesEntityBase, new() { return this.AddAndGetEntity(entity); } /// /// 删除实体 /// /// /// public bool TreeDeleteEntity(Guid id) where T : TreeEntityBase, new() { return this.DeleteEntity(id); } /// /// 删除实体 /// /// /// public bool TreeDeleteEntity(Expression> expression) where T : TreeEntityBase, new() { return this.DeleteEntity(expression); } /// /// 删除实体 /// /// /// public bool TreeDeleteEntity(IEnumerable entity) where T : TreeEntityBase, new() { return this.DeleteEntity(entity); } /// /// 删除实体 /// /// /// /// public bool TreeDeleteEntity(T entity) where T : TreeEntityBase, new() { return this.DeleteEntity(entity); } /// /// 逻辑批量删除 /// /// /// /// public bool TreeBantchDeleteEntity(List ids) where T : TreeEntityBase, new() { return this.BantchDeleteEntity(ids); } /// /// 更新实体 /// /// /// public bool TreeUpdateEntity(T entity) where T : TreeEntityBase, new() { return this.UpdateEntity(entity); } /// /// 批量添加实体 /// /// 实体集合 /// public bool TreeBantchAddEntity(IEnumerable entities) where T : TreeEntityBase, new() { return this.BantchAddEntity(entities); } /// /// 批量更新实体 /// /// 实体集 /// public bool TreeBantchUpdateEntity(IEnumerable entities) where T : TreeEntityBase, new() { return this.BantchUpdateEntity(entities); } /// /// 批量保存实体 /// /// 批量保存 /// public bool TreeBantchSaveEntity(IEnumerable entities) where T : TreeEntityBase, new() { return this.BantchSaveEntity(entities); } #endregion /// /// 查询实体 /// /// /// /// /// public T GetEntity(string id, params string[] paths) where T : MesEntityBase, new() { var gId = new Guid(id); return this.GetEntity(t => t.ID == gId, paths); } public T GetEntity(Guid id, params string[] paths) where T : MesEntityBase, new() { return this.GetEntity(t => t.ID == id, paths); } /// /// 查询实体 /// /// /// /// /// public T GetEntity(Expression> expression, params string[] paths) where T : MesEntityBase, new() { return this.GetEntity(expression, null, paths); } /// /// 查询实体 /// /// /// /// /// public T GetEntity(Expression> expression, BaseFilter filter, params string[] paths) where T : MesEntityBase, new() { return this.GetEntity(expression, filter, (!filter?.IsNoTranking) ?? true, paths); } public T GetEntity(Expression> expression, BaseFilter filter, bool isTracking = true, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetEntity(expression, filter, isTracking, paths); } public int GetCount(Expression> expression, BaseFilter filter) where T : MesEntityBase, new() { return this.GetCount(expression, filter); } public T GetEntityByRedis(string key, Guid orgid) where T : MesEntityBase, new() { return this.Repository.GetEntityByRedis(key, orgid); } public List GetEntitiesByRedis(BaseFilter filter) where T : MesEntityBase, new() { return this.Repository.GetEntitiesByRedis(filter).Result; } public List GetEntitiesByGroupRedis(BaseFilter filter, string groupValue) where T : MesEntityBase, new() { return this.Repository.GetEntitiesByGroupRedis(filter, groupValue).Result; } public List GetEntitiesByRedis(Expression> expression, BaseFilter filter) where T : MesEntityBase, new() { return this.Repository.GetEntitiesByRedis(expression, filter); } public List GetEntitiesTableByRedis(Expression> expression, BaseFilter filter, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetEntitiesTableByRedis(expression, filter, paths).Result; } public List GetEntitiesByRedis(Expression> expression, BaseFilter filter, string groupValue, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetEntitiesByRedis(expression, filter, groupValue, paths).Result; } public PagedResultDto GetOrderPageByRedis(Expression> expression, BasePageFilter pageFilter, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderPageByRedis(expression, pageFilter, paths); } public T GetEntityByRedis(Guid key, Guid orgid) where T : MesEntityBase, new() { return this.Repository.GetEntityByRedis(key, orgid); } public IEnumerable GetEntities(Expression> expression, params string[] paths) where T : MesEntityBase, new() { return this.GetEntities(expression, false, paths); } public IEnumerable GetEntities(Expression> expression, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetEntities(expression, null, isTracking, paths); } /// /// 获取所有数据 /// /// /// /// /// /// public IEnumerable GetEntities(Expression> expression, BaseFilter filter, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetEntities(expression, filter, false, paths); } public IEnumerable GetEntities(Expression> expression, BaseFilter filter, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetEntities(expression, filter, isTracking, paths); } /// /// 获取所有数据 /// /// 类型 /// 排序 /// lambd表达式 /// 过滤器 /// 需要关联查询的数据 /// public IEnumerable GetOrderEntities(Expression> expression, BaseFilter filter, Action> orderBy, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderEntities(expression, filter, null, orderBy, false, paths); } /// /// 获取所有数据 /// /// 类型 /// lambd表达式 /// 过滤器 /// 需要关联查询的数据 /// public IEnumerable GetOrderEntities (Expression> expression, BaseFilter filter, params string[] paths) where T : MesEntityBase, new() { return this.GetOrderEntities(expression, filter, new Dictionary(), paths); } public IEnumerable GetOrderEntities(Expression> expression, BaseFilter filter, Action> orderBy, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderEntities(expression, filter, null, orderBy, isTracking, paths); } /// /// 排序获取数据 /// /// /// /// /// /// /// /// public IEnumerable GetOrderEntities(Expression> expression, BaseFilter filter, string sort, string order, params string[] paths) where T : MesEntityBase, new() { Dictionary orders = new Dictionary(); if (!string.IsNullOrEmpty(sort)) orders[sort] = order; return this.GetOrderEntities(expression, filter, orders, paths); } /// /// 排序获取数据 /// /// /// /// /// /// /// /// public IEnumerable GetOrderEntities(Expression> expression, BaseFilter filter, Dictionary orders, params string[] paths) where T : MesEntityBase, new() { return this.GetOrderEntities(expression, filter, orders, null, false, paths); } public IEnumerable GetOrderEntities(Expression> expression, BaseFilter filter, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.GetOrderEntities(expression, filter, null, null, isTracking, paths); } public IEnumerable GetOrderEntities(Expression> expression, BaseFilter filter, Dictionary orders, Action> orderBy, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderEntities(expression, filter, orders, orderBy, isTracking, paths); } public PagedResultDto GetOrderPageEntities(Expression> expression, BasePageFilter pageFilter, Action> orderBy, params string[] paths) where T : MesEntityBase, new() { return this.GetOrderPageEntities(expression, pageFilter, null, 0, 0, orderBy, false, paths); } public PagedResultDto GetPageEntities(Expression> expression, BasePageFilter pageFilter, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetPageEntities(expression, pageFilter, paths); } public PagedResultDto GetOrderPageEntities(Expression> expression, BasePageFilter pageFilter, params string[] paths) where T : MesEntityBase, new() { return this.GetOrderPageEntities(expression, pageFilter, 0, 0, paths); } public PagedResultDto GetOrderPageEntities(Expression> expression, BasePageFilter pageFilter, int pageSize, int startIndex, params string[] paths) where T : MesEntityBase, new() { return this.GetOrderPageEntities(expression, pageFilter, pageSize, startIndex, (!pageFilter?.IsNoTranking) ?? true, paths); } public PagedResultDto GetOrderPageEntities(Expression> expression, BasePageFilter pageFilter, int pageSize, int startIndex, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderPageEntities(expression, pageFilter, pageSize, startIndex, isTracking, paths); } public IEnumerable> GetTreeOrderEntities(Expression> expression, BaseFilter filter, bool isTracking = false, params string[] paths) where T : TreeEntityBase, new() { return this.Repository.GetTreeOrderEntities(expression, filter, isTracking, paths); } public IEnumerable GetTree(string id, bool containCurrent = true, BaseFilter filter = null, params string[] paths) where T : TreeEntityBase, new() { return this.Repository.GetTree(id, containCurrent, filter, paths); } public PagedResultDto GetOrderPageEntities(Expression> expression, BasePageFilter pageFilter, Dictionary orders, int pageSize, int startIndex, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderPageEntities(expression, pageFilter, orders, pageSize, startIndex, isTracking, paths); } public PagedResultDto GetOrderPageEntities(Expression> expression, BasePageFilter pageFilter, Dictionary orders, int pageSize, int startIndex, Action> orderBy, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderPageEntities(expression, pageFilter, orders, 0, 0, orderBy, isTracking, paths); } public PagedResultDto GetOrderPageEntities(Expression> expression, BasePageFilter pageFilter, string[] selectField, params string[] paths) where T : MesEntityBase, new() { return this.Repository.GetOrderPageEntities(expression, pageFilter, selectField, paths); } public async Task> GetOrderPageEntitiesSync(Expression> expression, BasePageFilter pageFilter, params string[] paths) where T : MesEntityBase, new() { return await this.GetOrderPageEntitiesSync(expression, pageFilter, 0, 0, paths); } public async Task> GetOrderPageEntitiesSync(Expression> expression, BasePageFilter pageFilter, int pageSize, int startIndex, params string[] paths) where T : MesEntityBase, new() { return await this.GetOrderPageEntitiesSync(expression, pageFilter, pageSize, startIndex, false, paths); } public async Task> GetOrderPageEntitiesSync(Expression> expression, BasePageFilter pageFilter, int pageSize, int startIndex, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return await this.Repository.GetOrderPageEntitiesSync(expression, pageFilter, pageSize, startIndex, isTracking, paths); } public async Task> GetOrderPageEntitiesSync(Expression> expression, BasePageFilter pageFilter, Dictionary orders, int pageSize, int startIndex, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return await this.Repository.GetOrderPageEntitiesSync(expression, pageFilter, orders, pageSize, startIndex, isTracking, paths); } public async Task> GetOrderPageEntitiesSync(Expression> expression, BasePageFilter pageFilter, Dictionary orders, int pageSize, int startIndex, Action> orderBy, bool isTracking = false, params string[] paths) where T : MesEntityBase, new() { return await this.Repository.GetOrderPageEntitiesSync(expression, pageFilter, orders, pageSize, startIndex, orderBy, isTracking, paths); } public async Task> GetOrderPageEntitiesSync(Expression> expression, BasePageFilter pageFilter, Action> orderBy, params string[] paths) where T : MesEntityBase, new() { return await this.Repository.GetOrderPageEntitiesSync(expression, pageFilter, null, 0, 0, orderBy, false, paths); } public int Count(Expression> expression, BaseFilter filter) where T : MesEntityBase, new() { return this.Repository.GetCount(expression, filter); } public bool IsAny(Expression> expression, BaseFilter filter) where T : MesEntityBase, new() { return this.Repository.IsAny(expression, filter); } public int Count(Expression> expression) where T : MesEntityBase, new() { return this.Count(expression, null); } /// /// 提交事务 /// /// 提交方法 protected void WitCommitTransaction(Action comitAction) { try { UnitOfWork.BeginTransaction(); comitAction(); UnitOfWork.CommitTransaction(); } catch { try { UnitOfWork.RollbackTransaction(); } catch (Exception ex) { LoggerManager.GetLogger().Info("rollback Error" + ex.ToString()); } throw; } } public T AddAndGetEntity_noneBase(T entity) where T : class { return this.Repository.AddAndGetEntity_noneBase(entity); } public void AddEntities_noneBase(IEnumerable entities) where T : class { this.Repository.AddEntities_noneBase(entities); } public void UpdateEntities_noneBase(IEnumerable entities) where T : class { if (entities != null && entities.Any()) this.Repository.UpdateEntities_noneBase(entities); } public T GetEntity_noneBase(Expression> expressions) where T : class { return this.Repository.GetEntity_noneBase(expressions); } public List GetEntities_noneBase(Expression> expressions) where T : class { return this.Repository.GetEntities_noneBase(expressions); } public bool DeleteEntity_noneBase(Expression> expression) where T : class { Repository.DeleteEntity_noneBase(expression); return true; } #region nocomit public bool AddEntityNoCommit(T entity) where T : MesEntityBase, new() { this.Repository.AddEntityNoCommit(entity); return true; } public bool BantchAddEntityNoCommit(IEnumerable entities) where T : MesEntityBase, new() { this.Repository.AddEntitiesNoCommit(entities); return true; } /// /// 逻辑删除 /// /// /// public bool DeleteEntityNoCommit(Guid id) where T : MesEntityBase, new() { this.Repository.DeleteEntityNoCommit(id); return true; } /// /// 逻辑删除 /// /// /// public bool DeleteEntityNoCommit(Expression> predicate) where T : MesEntityBase, new() { this.Repository.DeleteEntityNoCommit(predicate); return true; } /// /// 逻辑删除 /// /// /// public bool DeleteEntityNoCommit(IEnumerable entities) where T : MesEntityBase, new() { this.Repository.DeleteEntitiesNoCommit(entities); return true; } /// /// 逻辑批量删除 /// /// /// /// public bool BantchDeleteEntityNoCommit(List ids) where T : MesEntityBase, new() { if (ids == null || !ids.Any()) return false; this.Repository.DeleteEntityNoCommit(t => ids.Contains(t.ID)); return true; } /// /// 逻辑删除 /// /// /// public bool DeleteEntityNoCommit(T entity) where T : MesEntityBase, new() { this.Repository.DeleteEntityNoCommit(entity); return true; } /// /// 更新 /// /// 实体 /// 是否成功 public bool UpdateEntityNoCommit(T entity) where T : MesEntityBase, new() { this.Repository.UpdateEntityNoCommit(entity); return true; } /// /// 批量更新 /// /// 实体集合 /// 是否成功 public bool BantchUpdateEntityNoCommit(IEnumerable entities) where T : MesEntityBase, new() { this.Repository.UpdateEntitiesNoCommit(entities); return true; } /// /// 批量更新 /// /// 实体集合 /// 是否成功 public bool BantchUpdateEntityNoCommit(IEnumerable entities, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntitiesNoCommit(entities, updateField); return true; } /// /// 更新 /// /// 实体 /// 是否成功 public bool UpdateEntityNoCommit(T entity, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntityNoCommit(entity, updateField); return true; } /// /// 批量更新(新增和保存一起)速度慢 /// /// 实体集合 /// 是否成功 public bool BantchSaveEntityNoCommit(IEnumerable entities) where T : MesEntityBase, new() { this.Repository.SaveEntitiesNoCommit(entities); return true; } /// /// 统一提交 /// /// 数据库方法 public void UnifiedCommit(Action comitAction) { try { comitAction(); UnitOfWork.SaveChanges(); } catch (Exception ex) { LoggerManager.GetLogger().Info("rollback Error" + ex.ToString()); throw; } } /// /// 批量添加实体 /// /// 实体集合 /// public bool TreeBantchAddEntityNoCommit(IEnumerable entities) where T : TreeEntityBase, new() { return this.BantchAddEntityNoCommit(entities); } /// /// 添加实体 /// /// /// public bool TreeAddEntityNoCommit(T entity) where T : TreeEntityBase, new() { return this.AddEntityNoCommit(entity); } public T TreeAddAndGetEntityNoCommit(T entity) where T : MesEntityBase, new() { return this.AddAndGetEntityNoCommit(entity); } public T AddAndGetEntityNoCommit(T entity) where T : MesEntityBase, new() { return this.Repository.AddAndGetEntityNoCommit(entity); } /// /// 删除实体 /// /// /// public bool TreeDeleteEntityNoCommit(Guid id) where T : TreeEntityBase, new() { return this.DeleteEntityNoCommit(id); } /// /// 删除实体 /// /// /// public bool TreeDeleteEntityNoCommit(Expression> expression) where T : TreeEntityBase, new() { return this.DeleteEntityNoCommit(expression); } /// /// 删除实体 /// /// /// public bool TreeDeleteEntityNoCommit(IEnumerable entity) where T : TreeEntityBase, new() { return this.DeleteEntityNoCommit(entity); } /// /// 删除实体 /// /// /// /// public bool TreeDeleteEntityNoCommit(T entity) where T : TreeEntityBase, new() { return this.DeleteEntityNoCommit(entity); } /// /// 逻辑批量删除 /// /// /// /// public bool TreeBantchDeleteEntityNoCommit(List ids) where T : TreeEntityBase, new() { return this.BantchDeleteEntityNoCommit(ids); } /// /// 更新实体 /// /// /// public bool TreeUpdateEntityNoCommit(T entity) where T : TreeEntityBase, new() { return this.UpdateEntityNoCommit(entity); } /// /// 批量更新实体 /// /// 实体集 /// public bool TreeBantchUpdateEntityNoCommit(IEnumerable entities) where T : TreeEntityBase, new() { return this.BantchUpdateEntityNoCommit(entities); } /// /// 批量保存实体 /// /// 批量保存 /// public bool TreeBantchSaveEntityNoCommit(IEnumerable entities) where T : TreeEntityBase, new() { return this.BantchSaveEntityNoCommit(entities); } /// /// 根据数据库连接新增数据 /// /// /// 实体数据 /// 加密连接 public void AddEntityByConn(T entity, string conn) where T : MesEntityBase, new() { this.Repository.AddEntityByConn(entity, conn); } /// /// 根据数据库连接更新数据 /// /// /// 实体数据集合 /// 加密连接 public void UpdateEntitiesByConn(IEnumerable entities, string conn) where T : MesEntityBase, new() { this.Repository.UpdateEntitiesByConn(entities, conn); } /// /// 根据数据库连接更新数据 /// /// /// 实体数据 /// 加密连接 /// 更新字段 public void UpdateEntityByConn(T entity, string conn, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntityByConn(entity, conn, updateField); } /// /// 根据数据库连接删除数据 /// /// /// 表达式 /// 加密连接 public void DeleteEntityByConn(Expression> expression, string conn) where T : MesEntityBase, new() { this.Repository.DeleteEntityByConn(expression, conn); } /// /// 根据数据库连接删除数据 /// /// /// 数据实体 /// 加密连接 public void DeleteEntityByConn(T entity, string conn) where T : MesEntityBase, new() { this.Repository.DeleteEntityByConn(entity, conn); } /// /// 根据数据库连接删除数据 /// /// /// 主键 /// 加密连接 public void DeleteEntityByConn(Guid id, string conn) where T : MesEntityBase, new() { this.Repository.DeleteEntityByConn(id, conn); } /// /// 根据数据库连接删除数据 /// /// /// 数据集合 /// 加密连接 public void DeleteEntitiesByConn(IEnumerable entities, string conn) where T : MesEntityBase, new() { this.Repository.DeleteEntitiesByConn(entities, conn); } /// /// 根据数据库连接新增数据 /// /// /// 数据集合 /// 加密连接 public void AddEntitiesByConn(IEnumerable entities, string conn) where T : MesEntityBase, new() { this.Repository.AddEntitiesByConn(entities, conn); } /// /// 根据数据库连接新增数据 /// /// /// /// /// public void UpdateEntitiesByConn(IEnumerable entities, string conn, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntitiesByConn(entities, conn, updateField); } //Tenant /// /// 根据数据库连接新增数据 /// /// /// 实体数据 /// 加密连接 public void AddEntityByTenant(T entity, string Tenant) where T : MesEntityBase, new() { this.Repository.AddEntityByTenant(entity, Tenant); } /// /// 根据数据库连接更新数据 /// /// /// 实体数据集合 /// 加密连接 public void UpdateEntitiesByTenant(IEnumerable entities, string Tenant) where T : MesEntityBase, new() { this.Repository.UpdateEntitiesByTenant(entities, Tenant); } /// /// 根据数据库连接更新数据 /// /// /// 实体数据 /// 加密连接 /// 更新字段 public void UpdateEntityByTenant(T entity, string Tenant, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntityByTenant(entity, Tenant, updateField); } /// /// 根据数据库连接删除数据 /// /// /// 表达式 /// 加密连接 public void DeleteEntityByTenant(Expression> expression, string Tenant) where T : MesEntityBase, new() { this.Repository.DeleteEntityByTenant(expression, Tenant); } /// /// 根据数据库连接删除数据 /// /// /// 数据实体 /// 加密连接 public void DeleteEntityByTenant(T entity, string Tenant) where T : MesEntityBase, new() { this.Repository.DeleteEntityByTenant(entity, Tenant); } /// /// 根据数据库连接删除数据 /// /// /// 主键 /// 加密连接 public void DeleteEntityByTenant(Guid id, string Tenant) where T : MesEntityBase, new() { this.Repository.DeleteEntityByTenant(id, Tenant); } /// /// 根据数据库连接删除数据 /// /// /// 数据集合 /// 加密连接 public void DeleteEntitiesByTenant(IEnumerable entities, string Tenant) where T : MesEntityBase, new() { this.Repository.DeleteEntitiesByTenant(entities, Tenant); } /// /// 根据数据库连接新增数据 /// /// /// 数据集合 /// 加密连接 public void AddEntitiesByTenant(IEnumerable entities, string Tenant) where T : MesEntityBase, new() { this.Repository.AddEntitiesByTenant(entities, Tenant); } /// /// 根据数据库连接新增数据 /// /// /// /// /// public void UpdateEntitiesByTenant(IEnumerable entities, string Tenant, params string[] updateField) where T : MesEntityBase, new() { this.Repository.UpdateEntitiesByTenant(entities, Tenant, updateField); } #endregion } }