Merge branch 'develop' into feature/dark-theme
This commit is contained in:
commit
d4a500beb9
@ -14,12 +14,14 @@ namespace ASC.Core.Common.EF.Context
|
||||
public class AuditTrailContext : BaseDbContext
|
||||
{
|
||||
public DbSet<AuditEvent> AuditEvents { get; set; }
|
||||
public DbSet<User> Users { get; set; }
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
ModelBuilderWrapper
|
||||
.From(modelBuilder, Provider)
|
||||
.AddAuditEvent()
|
||||
.AddUser()
|
||||
.AddDbFunction();
|
||||
}
|
||||
|
||||
|
@ -13,6 +13,7 @@ namespace ASC.Core.Common.EF.Context
|
||||
public class MessagesContext : BaseDbContext
|
||||
{
|
||||
public DbSet<LoginEvents> LoginEvents { get; set; }
|
||||
public DbSet<User> Users { get; set; }
|
||||
|
||||
protected override Dictionary<Provider, Func<BaseDbContext>> ProviderContext
|
||||
{
|
||||
@ -31,6 +32,7 @@ namespace ASC.Core.Common.EF.Context
|
||||
ModelBuilderWrapper
|
||||
.From(modelBuilder, Provider)
|
||||
.AddLoginEvents()
|
||||
.AddUser()
|
||||
.AddDbFunction();
|
||||
}
|
||||
}
|
||||
|
@ -12,7 +12,7 @@ namespace ASC.Data.Backup.EF.Context
|
||||
{
|
||||
public DbSet<BackupRecord> Backups { get; set; }
|
||||
public DbSet<BackupSchedule> Schedules { get; set; }
|
||||
|
||||
public DbSet<DbTenant> Tenants { get; set; }
|
||||
public BackupsContext() { }
|
||||
public BackupsContext(DbContextOptions<BackupsContext> options)
|
||||
: base(options)
|
||||
@ -23,8 +23,7 @@ namespace ASC.Data.Backup.EF.Context
|
||||
{
|
||||
ModelBuilderWrapper
|
||||
.From(modelBuilder, Provider)
|
||||
.AddDbTenant()
|
||||
.AddDbTariff();
|
||||
.AddDbTenant();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -34,80 +34,79 @@ using ASC.Core.Common.EF.Context;
|
||||
using ASC.Core.Tenants;
|
||||
using ASC.Data.Backup.EF.Context;
|
||||
using ASC.Data.Backup.EF.Model;
|
||||
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace ASC.Data.Backup.Storage
|
||||
{
|
||||
[Scope]
|
||||
public class BackupRepository : IBackupRepository
|
||||
{
|
||||
private Lazy<BackupsContext> LazyBackupsContext { get; }
|
||||
private BackupsContext BackupContext { get => LazyBackupsContext.Value; }
|
||||
private Lazy<TenantDbContext> LazyTenantDbContext { get; }
|
||||
private TenantDbContext TenantDbContext { get => LazyTenantDbContext.Value; }
|
||||
|
||||
public BackupRepository(DbContextManager<BackupsContext> backupContext, DbContextManager<TenantDbContext> tenantDbContext)
|
||||
{
|
||||
LazyBackupsContext = new Lazy<BackupsContext>(() => backupContext.Value);
|
||||
LazyTenantDbContext = new Lazy<TenantDbContext>(() => tenantDbContext.Value);
|
||||
private readonly Lazy<BackupsContext> _backupContext;
|
||||
public BackupRepository(DbContextManager<BackupsContext> dbContactManager)
|
||||
{
|
||||
_backupContext = new Lazy<BackupsContext>(() => dbContactManager.Value);
|
||||
}
|
||||
|
||||
public void SaveBackupRecord(BackupRecord backup)
|
||||
{
|
||||
BackupContext.AddOrUpdate(r => r.Backups, backup);
|
||||
BackupContext.SaveChanges();
|
||||
_backupContext.Value.AddOrUpdate(r => r.Backups, backup);
|
||||
_backupContext.Value.SaveChanges();
|
||||
}
|
||||
|
||||
public BackupRecord GetBackupRecord(Guid id)
|
||||
{
|
||||
return BackupContext.Backups.SingleOrDefault(b => b.Id == id);
|
||||
return _backupContext.Value.Backups.Find(id);
|
||||
}
|
||||
|
||||
public BackupRecord GetBackupRecord(string hash, int tenant)
|
||||
{
|
||||
return BackupContext.Backups.SingleOrDefault(b => b.Hash == hash && b.TenantId == tenant);
|
||||
return _backupContext.Value.Backups.AsNoTracking().SingleOrDefault(b => b.Hash == hash && b.TenantId == tenant);
|
||||
}
|
||||
|
||||
public List<BackupRecord> GetExpiredBackupRecords()
|
||||
{
|
||||
return BackupContext.Backups.Where(b => b.ExpiresOn != DateTime.MinValue && b.ExpiresOn <= DateTime.UtcNow).ToList();
|
||||
return _backupContext.Value.Backups.AsNoTracking().Where(b => b.ExpiresOn != DateTime.MinValue && b.ExpiresOn <= DateTime.UtcNow).ToList();
|
||||
}
|
||||
|
||||
public List<BackupRecord> GetScheduledBackupRecords()
|
||||
{
|
||||
return BackupContext.Backups.Where(b => b.IsScheduled == true).ToList();
|
||||
return _backupContext.Value.Backups.AsNoTracking().Where(b => b.IsScheduled == true).ToList();
|
||||
}
|
||||
|
||||
public List<BackupRecord> GetBackupRecordsByTenantId(int tenantId)
|
||||
{
|
||||
return BackupContext.Backups.Where(b => b.TenantId == tenantId).ToList();
|
||||
return _backupContext.Value.Backups.AsNoTracking().Where(b => b.TenantId == tenantId).ToList();
|
||||
}
|
||||
|
||||
public void DeleteBackupRecord(Guid id)
|
||||
{
|
||||
|
||||
var backup = BackupContext.Backups.FirstOrDefault(b => b.Id == id);
|
||||
var backup = _backupContext.Value.Backups.Find(id);
|
||||
|
||||
if (backup != null)
|
||||
{
|
||||
BackupContext.Backups.Remove(backup);
|
||||
BackupContext.SaveChanges();
|
||||
_backupContext.Value.Backups.Remove(backup);
|
||||
_backupContext.Value.SaveChanges();
|
||||
}
|
||||
}
|
||||
|
||||
public void SaveBackupSchedule(BackupSchedule schedule)
|
||||
{
|
||||
BackupContext.AddOrUpdate(r => r.Schedules, schedule);
|
||||
BackupContext.SaveChanges();
|
||||
_backupContext.Value.AddOrUpdate(r => r.Schedules, schedule);
|
||||
_backupContext.Value.SaveChanges();
|
||||
}
|
||||
|
||||
public void DeleteBackupSchedule(int tenantId)
|
||||
{
|
||||
var shedule = BackupContext.Schedules.Where(s => s.TenantId == tenantId).ToList();
|
||||
BackupContext.Schedules.RemoveRange(shedule);
|
||||
BackupContext.SaveChanges();
|
||||
var shedule = _backupContext.Value.Schedules.Where(s => s.TenantId == tenantId).ToList();
|
||||
|
||||
_backupContext.Value.Schedules.RemoveRange(shedule);
|
||||
_backupContext.Value.SaveChanges();
|
||||
}
|
||||
|
||||
public List<BackupSchedule> GetBackupSchedules()
|
||||
{
|
||||
var query = BackupContext.Schedules.Join(TenantDbContext.Tenants,
|
||||
var query = _backupContext.Value.Schedules.Join(_backupContext.Value.Tenants,
|
||||
s => s.TenantId,
|
||||
t => t.Id,
|
||||
(s, t) => new { schedule = s, tenant = t })
|
||||
@ -119,7 +118,7 @@ namespace ASC.Data.Backup.Storage
|
||||
|
||||
public BackupSchedule GetBackupSchedule(int tenantId)
|
||||
{
|
||||
return BackupContext.Schedules.SingleOrDefault(s => s.TenantId == tenantId);
|
||||
return _backupContext.Value.Schedules.AsNoTracking().SingleOrDefault(s => s.TenantId == tenantId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -45,17 +45,14 @@ namespace ASC.AuditTrail
|
||||
private MessageTarget MessageTarget { get; set; }
|
||||
private UserFormatter UserFormatter { get; set; }
|
||||
private Lazy<AuditTrailContext> LazyAuditTrailContext { get; }
|
||||
private Lazy<UserDbContext> LazyUserDbContext { get; }
|
||||
private AuditTrailContext AuditTrailContext { get => LazyAuditTrailContext.Value; }
|
||||
private UserDbContext UserDbContext { get => LazyUserDbContext.Value; }
|
||||
private AuditActionMapper AuditActionMapper { get; }
|
||||
|
||||
public AuditEventsRepository(MessageTarget messageTarget, UserFormatter userFormatter, DbContextManager<AuditTrailContext> dbContextManager, AuditActionMapper auditActionMapper, DbContextManager<UserDbContext> DbContextManager)
|
||||
public AuditEventsRepository(MessageTarget messageTarget, UserFormatter userFormatter, DbContextManager<AuditTrailContext> dbContextManager, AuditActionMapper auditActionMapper)
|
||||
{
|
||||
MessageTarget = messageTarget;
|
||||
UserFormatter = userFormatter;
|
||||
LazyAuditTrailContext = new Lazy<AuditTrailContext>(() => dbContextManager.Value );
|
||||
LazyUserDbContext = new Lazy<UserDbContext>(() => DbContextManager.Value);
|
||||
AuditActionMapper = auditActionMapper;
|
||||
}
|
||||
|
||||
@ -79,7 +76,7 @@ namespace ASC.AuditTrail
|
||||
{
|
||||
var query =
|
||||
from q in AuditTrailContext.AuditEvents
|
||||
from p in UserDbContext.Users.Where(p => q.UserId == p.Id).DefaultIfEmpty()
|
||||
from p in AuditTrailContext.Users.Where(p => q.UserId == p.Id).DefaultIfEmpty()
|
||||
where q.TenantId == tenant
|
||||
orderby q.Date descending
|
||||
select new Query { AuditEvent = q, User = p };
|
||||
|
@ -44,19 +44,13 @@ namespace ASC.AuditTrail.Data
|
||||
public class LoginEventsRepository
|
||||
{
|
||||
private UserFormatter UserFormatter { get; }
|
||||
private Lazy<AuditTrailContext> LazyAuditTrailContext { get; }
|
||||
private AuditTrailContext AuditTrailContext { get => LazyAuditTrailContext.Value; }
|
||||
private AuditActionMapper AuditActionMapper { get; }
|
||||
private UserDbContext UserDbContext { get => LazyUserDbContext.Value; }
|
||||
private Lazy<UserDbContext> LazyUserDbContext { get; }
|
||||
private MessagesContext MessagesContext { get => LazyMessagesContext.Value; }
|
||||
private Lazy<MessagesContext> LazyMessagesContext { get; }
|
||||
|
||||
public LoginEventsRepository(UserFormatter userFormatter, DbContextManager<AuditTrailContext> dbContextManager, AuditActionMapper auditActionMapper, DbContextManager<UserDbContext> DbContextManager, DbContextManager<MessagesContext> dbMessagesContext)
|
||||
public LoginEventsRepository(UserFormatter userFormatter, AuditActionMapper auditActionMapper, DbContextManager<MessagesContext> dbMessagesContext)
|
||||
{
|
||||
UserFormatter = userFormatter;
|
||||
LazyAuditTrailContext = new Lazy<AuditTrailContext>(() => dbContextManager.Value);
|
||||
LazyUserDbContext = new Lazy<UserDbContext>(() => DbContextManager.Value);
|
||||
AuditActionMapper = auditActionMapper;
|
||||
LazyMessagesContext = new Lazy<MessagesContext>(() => dbMessagesContext.Value);
|
||||
}
|
||||
@ -71,7 +65,7 @@ namespace ASC.AuditTrail.Data
|
||||
{
|
||||
var query =
|
||||
(from b in MessagesContext.LoginEvents
|
||||
from p in UserDbContext.Users.Where(p => b.UserId == p.Id).DefaultIfEmpty()
|
||||
from p in MessagesContext.Users.Where(p => b.UserId == p.Id).DefaultIfEmpty()
|
||||
where b.TenantId == tenant
|
||||
orderby b.Date descending
|
||||
select new Query { LoginEvents = b, User = p })
|
||||
@ -84,7 +78,7 @@ namespace ASC.AuditTrail.Data
|
||||
{
|
||||
var query =
|
||||
from q in MessagesContext.LoginEvents
|
||||
from p in UserDbContext.Users.Where(p => q.UserId == p.Id).DefaultIfEmpty()
|
||||
from p in MessagesContext.Users.Where(p => q.UserId == p.Id).DefaultIfEmpty()
|
||||
where q.TenantId == tenant
|
||||
where q.Date >= fromDate
|
||||
where q.Date <= to
|
||||
|
@ -50,8 +50,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
private Lazy<CrmDbContext> LazyCrmDbContext { get; }
|
||||
public CrmDbContext CrmDbContext { get => LazyCrmDbContext.Value; }
|
||||
private Lazy<TenantDbContext> LazyTenantDbContext { get; }
|
||||
public TenantDbContext TenantDbContext { get => LazyTenantDbContext.Value; }
|
||||
protected readonly SecurityContext _securityContext;
|
||||
protected readonly ICache _cache;
|
||||
protected ILog _logger;
|
||||
@ -59,7 +57,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public AbstractDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
@ -73,7 +70,6 @@ namespace ASC.CRM.Core.Dao
|
||||
_cache = ascCache;
|
||||
|
||||
LazyCrmDbContext = new Lazy<CrmDbContext>(() => dbContextManager.Get(CrmConstants.DatabaseId));
|
||||
LazyTenantDbContext = new Lazy<TenantDbContext>(() => dbContextManager1.Get(CrmConstants.DatabaseId));
|
||||
TenantID = tenantManager.GetCurrentTenant().TenantId;
|
||||
_securityContext = securityContext;
|
||||
|
||||
|
@ -65,7 +65,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public CasesDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
CrmSecurity crmSecurity,
|
||||
@ -77,8 +76,7 @@ namespace ASC.CRM.Core.Dao
|
||||
BundleSearch bundleSearch,
|
||||
IMapper mapper
|
||||
) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
base(dbContextManager,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -67,7 +67,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public ContactDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
CrmSecurity crmSecurity,
|
||||
@ -83,7 +82,6 @@ namespace ASC.CRM.Core.Dao
|
||||
IMapper mapper
|
||||
) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -54,7 +54,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public ContactInfoDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
TenantUtil tenantUtil,
|
||||
@ -63,7 +62,6 @@ namespace ASC.CRM.Core.Dao
|
||||
FactoryIndexerContactInfo factoryIndexerContactInfo,
|
||||
IMapper mapper)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -46,14 +46,12 @@ namespace ASC.CRM.Core.Dao
|
||||
public class CurrencyInfoDao : AbstractDao
|
||||
{
|
||||
public CurrencyInfoDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache ascCache,
|
||||
IMapper mapper) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -47,14 +47,12 @@ namespace ASC.CRM.Core.Dao
|
||||
{
|
||||
public CurrencyRateDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache ascCache,
|
||||
IMapper mapper) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -58,7 +58,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public CustomFieldDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
TenantUtil tenantUtil,
|
||||
@ -68,7 +67,6 @@ namespace ASC.CRM.Core.Dao
|
||||
IMapper mapper
|
||||
) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -65,7 +65,6 @@ namespace ASC.CRM.Core.Dao
|
||||
private readonly AuthorizationManager _authorizationManager;
|
||||
|
||||
public DealDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
CrmSecurity crmSecurity,
|
||||
@ -78,7 +77,6 @@ namespace ASC.CRM.Core.Dao
|
||||
IMapper mapper,
|
||||
BundleSearch bundleSearch) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -54,14 +54,12 @@ namespace ASC.CRM.Core.Dao
|
||||
{
|
||||
|
||||
public DealMilestoneDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache ascCache,
|
||||
IMapper mapper) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -50,14 +50,12 @@ namespace ASC.CRM.Core.Dao
|
||||
private FilesIntegration _filesIntegration;
|
||||
public FileDao(FilesIntegration filesIntegration,
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache ascCache,
|
||||
IMapper mapper) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -76,7 +76,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public InvoiceDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
FactoryIndexerInvoice factoryIndexer,
|
||||
@ -89,7 +88,6 @@ namespace ASC.CRM.Core.Dao
|
||||
TenantUtil tenantUtil,
|
||||
IMapper mapper)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -54,7 +54,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public InvoiceItemDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
CrmSecurity crmSecurity,
|
||||
@ -62,7 +61,6 @@ namespace ASC.CRM.Core.Dao
|
||||
ICache ascCache,
|
||||
IMapper mapper
|
||||
) : base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -51,14 +51,12 @@ namespace ASC.CRM.Core.Dao
|
||||
public class InvoiceLineDao : AbstractDao
|
||||
{
|
||||
public InvoiceLineDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache ascCache,
|
||||
IMapper mapper)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -51,7 +51,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
public InvoiceTaxDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
@ -59,7 +58,6 @@ namespace ASC.CRM.Core.Dao
|
||||
IMapper mapper
|
||||
)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -53,14 +53,12 @@ namespace ASC.CRM.Core.Dao
|
||||
public ListItemDao(
|
||||
CrmSecurity crmSecurity,
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache ascCache,
|
||||
IMapper mapper)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -62,7 +62,6 @@ namespace ASC.CRM.Core.Dao
|
||||
private readonly FactoryIndexerEvents _factoryIndexer;
|
||||
|
||||
public RelationshipEventDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
FilesIntegration filesIntegration,
|
||||
@ -74,7 +73,6 @@ namespace ASC.CRM.Core.Dao
|
||||
IMapper mapper
|
||||
) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -79,7 +79,6 @@ namespace ASC.CRM.Core.Dao
|
||||
#region Constructor
|
||||
|
||||
public ReportDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
FilesIntegration filesIntegration,
|
||||
@ -95,7 +94,6 @@ namespace ASC.CRM.Core.Dao
|
||||
DisplayUserSettingsHelper displayUserSettingsHelper,
|
||||
IMapper mapper) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -73,7 +73,6 @@ namespace ASC.CRM.Core.Dao
|
||||
|
||||
|
||||
public SearchDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
DaoFactory daoFactory,
|
||||
SecurityContext securityContext,
|
||||
@ -89,7 +88,6 @@ namespace ASC.CRM.Core.Dao
|
||||
IMapper mapper
|
||||
) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -50,13 +50,12 @@ namespace ASC.CRM.Core.Dao
|
||||
public class TagDao : AbstractDao
|
||||
{
|
||||
public TagDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache ascCache,
|
||||
IMapper mapper) :
|
||||
base(dbContextManager,dbContextManager1,
|
||||
base(dbContextManager,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -61,7 +61,6 @@ namespace ASC.CRM.Core.Dao
|
||||
private UserDbContext _userDbContext { get => LazyUserDbContext.Value; }
|
||||
|
||||
public TaskDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
CrmSecurity crmSecurity,
|
||||
@ -72,7 +71,6 @@ namespace ASC.CRM.Core.Dao
|
||||
DbContextManager<UserDbContext> userDbContext,
|
||||
IMapper mapper) :
|
||||
base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -49,7 +49,6 @@ namespace ASC.CRM.Core.Dao
|
||||
{
|
||||
public TaskTemplateContainerDao(
|
||||
DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
@ -57,7 +56,6 @@ namespace ASC.CRM.Core.Dao
|
||||
IMapper mapper
|
||||
)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
@ -123,14 +121,12 @@ namespace ASC.CRM.Core.Dao
|
||||
public class TaskTemplateDao : AbstractDao
|
||||
{
|
||||
public TaskTemplateDao(DbContextManager<CrmDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
SecurityContext securityContext,
|
||||
IOptionsMonitor<ILog> logger,
|
||||
ICache cache,
|
||||
IMapper mapper)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
tenantManager,
|
||||
securityContext,
|
||||
logger,
|
||||
|
@ -35,6 +35,7 @@ namespace ASC.CRM.Core.EF
|
||||
public virtual DbSet<DbTaskTemplateTask> TaskTemplateTask { get; set; }
|
||||
public virtual DbSet<DbVoipCalls> VoipCalls { get; set; }
|
||||
public virtual DbSet<DbVoipNumber> VoipNumber { get; set; }
|
||||
public virtual DbSet<DbTenant> Tenants { get; set; }
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
@ -45,7 +46,8 @@ namespace ASC.CRM.Core.EF
|
||||
.AddDbCase()
|
||||
.AddDbRelationshipEvent()
|
||||
.AddDbDeal()
|
||||
.AddDbTask();
|
||||
.AddDbTask()
|
||||
.AddDbTenant();
|
||||
|
||||
modelBuilder.Entity<DbCurrencyInfo>(entity =>
|
||||
{
|
||||
|
@ -51,10 +51,7 @@ namespace ASC.Files.Core.Data
|
||||
protected readonly ICache cache;
|
||||
|
||||
private Lazy<EF.FilesDbContext> LazyFilesDbContext { get; }
|
||||
public EF.FilesDbContext FilesDbContext { get => LazyFilesDbContext.Value; }
|
||||
private Lazy<TenantDbContext> LazyTenantDbContext { get; }
|
||||
public TenantDbContext TenantDbContext { get => LazyTenantDbContext.Value; }
|
||||
|
||||
public EF.FilesDbContext FilesDbContext { get => LazyFilesDbContext.Value; }
|
||||
private int tenantID;
|
||||
protected internal int TenantID { get => tenantID != 0 ? tenantID : (tenantID = TenantManager.GetCurrentTenant().TenantId); }
|
||||
protected UserManager UserManager { get; }
|
||||
@ -71,7 +68,6 @@ namespace ASC.Files.Core.Data
|
||||
|
||||
protected AbstractDao(
|
||||
DbContextManager<EF.FilesDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
UserManager userManager,
|
||||
TenantManager tenantManager,
|
||||
TenantUtil tenantUtil,
|
||||
@ -87,7 +83,6 @@ namespace ASC.Files.Core.Data
|
||||
{
|
||||
this.cache = cache;
|
||||
LazyFilesDbContext = new Lazy<EF.FilesDbContext>(() => dbContextManager.Get(FileConstant.DatabaseId));
|
||||
LazyTenantDbContext = new Lazy<TenantDbContext>(() => dbContextManager1.Get(FileConstant.DatabaseId));
|
||||
UserManager = userManager;
|
||||
TenantManager = tenantManager;
|
||||
TenantUtil = tenantUtil;
|
||||
|
@ -79,7 +79,6 @@ namespace ASC.Files.Core.Data
|
||||
FactoryIndexerFile factoryIndexer,
|
||||
UserManager userManager,
|
||||
DbContextManager<EF.FilesDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
TenantUtil tenantUtil,
|
||||
SetupInfo setupInfo,
|
||||
@ -102,7 +101,6 @@ namespace ASC.Files.Core.Data
|
||||
Settings settings)
|
||||
: base(
|
||||
dbContextManager,
|
||||
dbContextManager1,
|
||||
userManager,
|
||||
tenantManager,
|
||||
tenantUtil,
|
||||
|
@ -78,7 +78,6 @@ namespace ASC.Files.Core.Data
|
||||
FactoryIndexerFolder factoryIndexer,
|
||||
UserManager userManager,
|
||||
DbContextManager<EF.FilesDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
TenantUtil tenantUtil,
|
||||
SetupInfo setupInfo,
|
||||
@ -96,7 +95,6 @@ namespace ASC.Files.Core.Data
|
||||
CrossDao crossDao)
|
||||
: base(
|
||||
dbContextManager,
|
||||
dbContextManager1,
|
||||
userManager,
|
||||
tenantManager,
|
||||
tenantUtil,
|
||||
|
@ -40,7 +40,6 @@ namespace ASC.Files.Core.Data
|
||||
public LinkDao(
|
||||
UserManager userManager,
|
||||
DbContextManager<EF.FilesDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
TenantUtil tenantUtil,
|
||||
SetupInfo setupInfo,
|
||||
@ -54,7 +53,6 @@ namespace ASC.Files.Core.Data
|
||||
ICache cache)
|
||||
: base(
|
||||
dbContextManager,
|
||||
dbContextManager1,
|
||||
userManager,
|
||||
tenantManager,
|
||||
tenantUtil,
|
||||
|
@ -49,7 +49,6 @@ namespace ASC.Files.Core.Data
|
||||
{
|
||||
public SecurityDao(UserManager userManager,
|
||||
DbContextManager<EF.FilesDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
TenantUtil tenantUtil,
|
||||
SetupInfo setupInfo,
|
||||
@ -62,7 +61,6 @@ namespace ASC.Files.Core.Data
|
||||
IServiceProvider serviceProvider,
|
||||
ICache cache)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
userManager,
|
||||
tenantManager,
|
||||
tenantUtil,
|
||||
|
@ -54,7 +54,6 @@ namespace ASC.Files.Core.Data
|
||||
public TagDao(
|
||||
UserManager userManager,
|
||||
DbContextManager<EF.FilesDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> dbContextManager1,
|
||||
TenantManager tenantManager,
|
||||
TenantUtil tenantUtil,
|
||||
SetupInfo setupInfo,
|
||||
@ -67,7 +66,6 @@ namespace ASC.Files.Core.Data
|
||||
IServiceProvider serviceProvider,
|
||||
ICache cache)
|
||||
: base(dbContextManager,
|
||||
dbContextManager1,
|
||||
userManager,
|
||||
tenantManager,
|
||||
tenantUtil,
|
||||
|
@ -22,8 +22,11 @@ namespace ASC.Files.Core.EF
|
||||
public DbSet<DbFilesTagLink> TagLink { get; set; }
|
||||
public DbSet<DbFilesTag> Tag { get; set; }
|
||||
public DbSet<DbFilesThirdpartyApp> ThirdpartyApp { get; set; }
|
||||
|
||||
public DbSet<DbFilesLink> FilesLink { get; set; }
|
||||
public DbSet<DbFilesLink> FilesLink { get; set; }
|
||||
public DbSet<DbTariff> Tariffs { get; set; }
|
||||
public DbSet<DbQuota> Quotas { get; set; }
|
||||
public DbSet<DbTenant> Tenants { get; set; }
|
||||
|
||||
protected override Dictionary<Provider, Func<BaseDbContext>> ProviderContext
|
||||
{
|
||||
get
|
||||
@ -48,7 +51,11 @@ namespace ASC.Files.Core.EF
|
||||
.AddDbFilesThirdpartyIdMapping()
|
||||
.AddDbFilesTagLink()
|
||||
.AddDbFilesTag()
|
||||
.AddDbDbFilesThirdpartyApp() .AddDbFilesLink();
|
||||
.AddDbDbFilesThirdpartyApp()
|
||||
.AddDbFilesLink()
|
||||
.AddDbTariff()
|
||||
.AddDbQuota()
|
||||
.AddDbTenant();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -132,7 +132,7 @@ namespace ASC.Web.Files.Core.Search
|
||||
|
||||
IQueryable<FileTenant> GetBaseQuery(DateTime lastIndexed) => fileDao.FilesDbContext.Files
|
||||
.Where(r => r.ModifiedOn >= lastIndexed)
|
||||
.Join(fileDao.TenantDbContext.Tenants, r => r.TenantId, r => r.Id, (f, t) => new FileTenant { DbFile = f, DbTenant = t })
|
||||
.Join(fileDao.FilesDbContext.Tenants, r => r.TenantId, r => r.Id, (f, t) => new FileTenant { DbFile = f, DbTenant = t })
|
||||
.Where(r => r.DbTenant.Status == ASC.Core.Tenants.TenantStatus.Active);
|
||||
|
||||
try
|
||||
|
@ -128,7 +128,7 @@ namespace ASC.Web.Files.Core.Search
|
||||
|
||||
IQueryable<FolderTenant> GetBaseQuery(DateTime lastIndexed) => folderDao.FilesDbContext.Folders
|
||||
.Where(r => r.ModifiedOn >= lastIndexed)
|
||||
.Join(folderDao.TenantDbContext.Tenants, r => r.TenantId, r => r.Id, (f, t) => new FolderTenant { DbFolder = f, DbTenant = t })
|
||||
.Join(folderDao.FilesDbContext.Tenants, r => r.TenantId, r => r.Id, (f, t) => new FolderTenant { DbFolder = f, DbTenant = t })
|
||||
.Where(r => r.DbTenant.Status == ASC.Core.Tenants.TenantStatus.Active);
|
||||
|
||||
try
|
||||
|
@ -38,25 +38,16 @@ namespace ASC.Files.ThumbnailBuilder
|
||||
private readonly ICache cache;
|
||||
private Lazy<Core.EF.FilesDbContext> LazyFilesDbContext { get; }
|
||||
private Core.EF.FilesDbContext filesDbContext { get => LazyFilesDbContext.Value; }
|
||||
private Lazy<TenantDbContext> LazyTenantDbContext { get; }
|
||||
private TenantDbContext TenantDbContext { get => LazyTenantDbContext.Value; }
|
||||
private Lazy<CoreDbContext> LazyCoreDbContext { get; }
|
||||
private CoreDbContext coreDbContext { get => LazyCoreDbContext.Value; }
|
||||
private readonly string cacheKey;
|
||||
|
||||
public FileDataProvider(
|
||||
ThumbnailSettings settings,
|
||||
ICache ascCache,
|
||||
DbContextManager<Core.EF.FilesDbContext> dbContextManager,
|
||||
DbContextManager<TenantDbContext> tenantdbContextManager,
|
||||
DbContextManager<CoreDbContext> coredbContextManager
|
||||
)
|
||||
DbContextManager<Core.EF.FilesDbContext> dbContextManager)
|
||||
{
|
||||
thumbnailSettings = settings;
|
||||
cache = ascCache;
|
||||
LazyFilesDbContext = new Lazy<Core.EF.FilesDbContext>(() => dbContextManager.Get(thumbnailSettings.ConnectionStringName));
|
||||
LazyTenantDbContext = new Lazy<TenantDbContext>(() => tenantdbContextManager.Get(thumbnailSettings.ConnectionStringName));
|
||||
LazyCoreDbContext = new Lazy<CoreDbContext>(() => coredbContextManager.Get(thumbnailSettings.ConnectionStringName));
|
||||
cacheKey = "PremiumTenants";
|
||||
}
|
||||
|
||||
@ -97,8 +88,8 @@ namespace ASC.Files.ThumbnailBuilder
|
||||
*/
|
||||
|
||||
var search =
|
||||
coreDbContext.Tariffs
|
||||
.Join(coreDbContext.Quotas.DefaultIfEmpty(), a => a.Tariff, b => b.Tenant, (tariff, quota) => new { tariff, quota })
|
||||
filesDbContext.Tariffs
|
||||
.Join(filesDbContext.Quotas.DefaultIfEmpty(), a => a.Tariff, b => b.Tenant, (tariff, quota) => new { tariff, quota })
|
||||
.Where(r =>
|
||||
(
|
||||
r.tariff.Comment == null ||
|
||||
@ -139,7 +130,7 @@ namespace ASC.Files.ThumbnailBuilder
|
||||
}
|
||||
|
||||
return search
|
||||
.Join(TenantDbContext.Tenants, r => r.TenantId, r => r.Id, (f, t) => new FileTenant { DbFile = f, DbTenant = t })
|
||||
.Join(filesDbContext.Tenants, r => r.TenantId, r => r.Id, (f, t) => new FileTenant { DbFile = f, DbTenant = t })
|
||||
.Where(r => r.DbTenant.Status == TenantStatus.Active)
|
||||
.Select(r => new FileData<int>(r.DbFile.TenantId, r.DbFile.Id, ""))
|
||||
.ToList();
|
||||
|
Loading…
Reference in New Issue
Block a user