using System.Linq.Expressions; using Mango.Nop.Core.Interfaces; using Nop.Core; using Nop.Core.Caching; using Nop.Core.Configuration; using Nop.Core.Events; using Nop.Data; namespace Mango.Nop.Core.Repositories; public class MgDbTableBase(IEventPublisher eventPublisher, INopDataProvider dataProvider, IShortTermCacheManager shortTermCacheManager, IStaticCacheManager staticCacheManager, AppSettings appSettings) : EntityRepository(eventPublisher, dataProvider, shortTermCacheManager, staticCacheManager, appSettings), IMgDbTableBase where TEntity : BaseEntity { protected IEventPublisher EventPublisher = eventPublisher; protected INopDataProvider DataProvider = dataProvider; protected IShortTermCacheManager ShortTermCacheManager = shortTermCacheManager; protected IStaticCacheManager StaticCacheManager = staticCacheManager; public override void Update(TEntity entity, bool publishEvent = true) { base.Update(entity, publishEvent); } public override void Update(IList entities, bool publishEvent = true) { base.Update(entities, publishEvent); } public override Task UpdateAsync(TEntity entity, bool publishEvent = true) { return base.UpdateAsync(entity, publishEvent); } public override Task UpdateAsync(IList entities, bool publishEvent = true) { return base.UpdateAsync(entities, publishEvent); } protected override Task DeleteAsync(IList entities) { return base.DeleteAsync(entities); } protected override Task DeleteAsync(IList entities) { return base.DeleteAsync(entities); } protected override IQueryable AddDeletedFilter(IQueryable query, in bool includeDeleted) { return base.AddDeletedFilter(query, in includeDeleted); } public override Task DeleteAsync(TEntity entity, bool publishEvent = true) { return base.DeleteAsync(entity, publishEvent); } public override Task DeleteAsync(IList entities, bool publishEvent = true) { return base.DeleteAsync(entities, publishEvent); } public override Task DeleteAsync(Expression> predicate) { return base.DeleteAsync(predicate); } public override void Delete(TEntity entity, bool publishEvent = true) { base.Delete(entity, publishEvent); } public override int Delete(Expression> predicate) { return base.Delete(predicate); } }