using DAL._Shared.SharedRepositories;
using DAL.Repositories;
using Microsoft.Extensions.DependencyInjection;

namespace DAL
{
    public static class DIExtensions
    {
        public static IServiceCollection AddStaffDBRepositories(this IServiceCollection services)
        {
            services.AddScoped<AdWebAppToWebAppRoleRepository>();
            services.AddScoped<CostCentreRepository>();
            services.AddScoped<DepartmentRepository>();
            services.AddScoped<DepartmentToWebAppToEmployeeForWindreamRepository>();
            services.AddScoped<DocumentArtRepository>();
            services.AddScoped<DocumentArtToDepartmentRepository>();
            services.AddScoped<EmployeeAttributeRepository>();
            services.AddScoped<EmployeeRepository>();
            services.AddScoped<EmployeeStatusRepository>();
            services.AddScoped<EmployeeToAttributeRepository>();
            services.AddScoped<EmployeeToDepartmentRepository>();
            services.AddScoped<EmployeeToWebAppRepository>();
            services.AddScoped<ProjectRepository>();
            services.AddScoped<RangRepository>();
            services.AddScoped<SubsidiaryRepository>();
            services.AddScoped<WebAppAdditionalRoleRepository>();
            services.AddScoped<WebAppRepository>();
            services.AddScoped<WebAppRoleRepository>();
            services.AddScoped<WebAppToDepartmentRepository>();
            services.AddScoped<WebAppToWebAppAdditionalRoleRepository>();
            services.AddScoped<WebAppToWebAppRoleRepository>();
            services.AddScoped<WindreamColumnsToDepartmentRepository>();
            services.AddScoped<WindreamIndexRepository>();
            services.AddScoped<WindreamIndexToWindreamSearchToDepartmentRepository>();
            services.AddScoped<WindreamInputFolderRepository>();
            services.AddScoped<WindreamSearchItemRepository>();
            services.AddScoped<WindreamSearchItemToWindreamSearchToDepartmentRepository>();
            services.AddScoped<WindreamSearchRepository>();
            services.AddScoped<WindreamSearchToDepartmentRepository>();
            services.AddScoped<WebAppEmployeeInfoRepository>();
            services.AddScoped<WebAppUserRepository>();            

            return services;
        }
    }
}
