111 lines
5.3 KiB
C#
111 lines
5.3 KiB
C#
using AccountManagement.Application;
|
|
using AccountManagement.Application.Contracts.Account;
|
|
using AccountManagement.Application.Contracts.CameraAccount;
|
|
using AccountManagement.Application.Contracts.Media;
|
|
using AccountManagement.Application.Contracts.Position;
|
|
using AccountManagement.Application.Contracts.Role;
|
|
using AccountManagement.Application.Contracts.SubAccount;
|
|
using AccountManagement.Application.Contracts.SubAccountPermissionSubtitle;
|
|
using AccountManagement.Application.Contracts.Task;
|
|
using AccountManagement.Application.Contracts.TaskSchedule;
|
|
using AccountManagement.Application.Contracts.TaskSubject;
|
|
using AccountManagement.Application.Contracts.Ticket;
|
|
using AccountManagement.Application.Contracts.TicketAccessAccount;
|
|
using AccountManagement.Domain.AccountAgg;
|
|
using AccountManagement.Domain.AccountLeftWorkAgg;
|
|
using AccountManagement.Domain.AssignAgg;
|
|
using AccountManagement.Domain.CameraAccountAgg;
|
|
using AccountManagement.Domain.MediaAgg;
|
|
using AccountManagement.Domain.PositionAgg;
|
|
using AccountManagement.Domain.RoleAgg;
|
|
using AccountManagement.Domain.SubAccountAgg;
|
|
using AccountManagement.Domain.SubAccountPermissionSubtitle1Agg;
|
|
using AccountManagement.Domain.SubAccountPermissionSubtitle2Agg;
|
|
using AccountManagement.Domain.SubAccountPermissionSubtitle3Agg;
|
|
using AccountManagement.Domain.SubAccountPermissionSubtitle4Agg;
|
|
using AccountManagement.Domain.SubAccountRoleAgg;
|
|
using AccountManagement.Domain.TaskAgg;
|
|
using AccountManagement.Domain.TaskMessageAgg;
|
|
using AccountManagement.Domain.TaskScheduleAgg;
|
|
using AccountManagement.Domain.TaskSubjectAgg;
|
|
using AccountManagement.Domain.TicketAccessAccountAgg;
|
|
using AccountManagement.Domain.TicketAgg;
|
|
using AccountMangement.Infrastructure.EFCore;
|
|
using AccountMangement.Infrastructure.EFCore.Repository;
|
|
using AccountMangement.Infrastructure.EFCore.Services;
|
|
using Company.Domain.WorkshopAccountAgg;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Shared.Contracts.Account;
|
|
using TaskManager.Application;
|
|
using TaskManager.Infrastructure.EFCore.Repository;
|
|
|
|
namespace AccountManagement.Configuration
|
|
{
|
|
public class AccountManagementBootstrapper
|
|
{
|
|
public static void Configure(IServiceCollection services, string connectionString)
|
|
{
|
|
services.AddTransient<IAccountApplication, AccountApplication>();
|
|
services.AddTransient<IAccountRepository, AccountRepository>();
|
|
services.AddTransient<IAccountQueryService, AccountQueryService>();
|
|
|
|
services.AddTransient<IRoleApplication, RoleApplication>();
|
|
services.AddTransient<IRoleRepository, RoleRepository>();
|
|
|
|
services.AddTransient<ICameraAccountApplication, CameraAccountApplication>();
|
|
services.AddTransient<ICameraAccountRepository, CameraAccountRepository>();
|
|
|
|
services.AddTransient<IAccountLeftworkRepository, AccountLeftworkRepository>();
|
|
|
|
//services.AddTransient<IWorkshopAccountRepository, IWorkshopAccountRepository>();
|
|
#region Mahan
|
|
|
|
services.AddTransient<IPositionRepository, PositionRepository>();
|
|
services.AddTransient<IPositionApplication, PositionApplication>();
|
|
|
|
services.AddScoped<ITaskRepository, TaskRepository>();
|
|
services.AddTransient<ITaskApplication, TaskApplication>();
|
|
|
|
services.AddTransient<ITaskScheduleApplication, TaskScheduleApplication>();
|
|
services.AddTransient<ITaskScheduleRepository, TaskScheduleRepository>();
|
|
|
|
services.AddTransient<ITaskSubjectRepository, TaskSubjectRepository>();
|
|
services.AddTransient<ITaskSubjectApplication, TaskSubjectApplication>();
|
|
|
|
services.AddTransient<IAssignRepository, AssignRepository>();
|
|
|
|
services.AddTransient<IMediaRepository, MediaRepository>();
|
|
services.AddTransient<IMediaApplication, MediaApplication>();
|
|
|
|
services.AddTransient<ITicketRepository, TicketRepository>();
|
|
services.AddTransient<ITicketApplication, TicketApplication>();
|
|
|
|
services.AddTransient<ITaskMessageRepository, TaskMessageRepository>();
|
|
|
|
services.AddTransient<ITicketAccessAccountRepository, TicketAccessAccountRepository>();
|
|
services.AddTransient<ITicketAccessAccountApplication, TicketAccessAccountApplication>();
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region Pooya
|
|
services.AddTransient<ISubAccountRepository, SubAccountRepository>();
|
|
services.AddTransient<ISubAccountApplication, SubAccountApplication>();
|
|
services.AddTransient<ISubAccountRoleRepository, SubAccountRoleRepository>();
|
|
services.AddTransient<ISubAccountPermissionSubtitle1Repository, SubAccountPermissionSubtitle1Repository>();
|
|
services.AddTransient<ISubAccountPermissionSubtitle2Repository, SubAccountPermissionSubtitle2Repository>();
|
|
services.AddTransient<ISubAccountPermissionSubtitle3Repository, SubAccountPermissionSubtitle3Repository>();
|
|
services.AddTransient<ISubAccountPermissionSubtitle4Repository, SubAccountPermissionSubtitle4Repository>();
|
|
services.AddTransient<ISubAccountPermissionSubtitleApplication, SubAccountPermissionSubtitleApplication>();
|
|
#endregion
|
|
|
|
|
|
|
|
services.AddScoped<IWorker, Worker>();
|
|
services.AddDbContext<AccountContext>(x => x.UseSqlServer(connectionString));
|
|
}
|
|
}
|
|
}
|