hrms-api-backend/BMA.EHR.Application/ApplicationServicesRegistration.cs
Suphonchai Phoonsawat a463df5716 Add migration to create CheckInJobStatuses table for RMQ task control
- Introduced a new migration that creates the CheckInJobStatuses table.
- The table includes fields for tracking job statuses, timestamps, user information, and error messages.
- Supports various statuses such as PENDING, PROCESSING, COMPLETED, and FAILED.
2026-01-20 10:49:13 +07:00

75 lines
3.3 KiB
C#

using BMA.EHR.Application.Messaging;
using BMA.EHR.Application.Repositories;
using BMA.EHR.Application.Repositories.Commands;
using BMA.EHR.Application.Repositories.Leaves.LeaveRequests;
using BMA.EHR.Application.Repositories.Leaves.TimeAttendants;
using BMA.EHR.Application.Repositories.MessageQueue;
using BMA.EHR.Application.Repositories.MetaData;
using BMA.EHR.Application.Repositories.Reports;
using Microsoft.Extensions.DependencyInjection;
namespace BMA.EHR.Application
{
public static class ApplicationServicesRegistration
{
public static IServiceCollection AddApplication(this IServiceCollection services)
{
services.AddTransient<PrefixRepository>();
services.AddTransient<PlacementRepository>();
services.AddTransient<OrganizationEmployeeRepository>();
services.AddTransient<MessageQueueRepository>();
services.AddTransient<CommandRepository>();
services.AddTransient<CommandTypeRepository>();
services.AddTransient<CommandStatusRepository>();
services.AddTransient<InsigniaPeriodsRepository>();
services.AddTransient<RetirementRepository>();
services.AddTransient<RetirementEmployeeRepository>();
services.AddTransient<UserProfileRepository>();
services.AddTransient<OrganizationCommonRepository>();
services.AddTransient<InboxRepository>();
services.AddTransient<NotificationRepository>();
//services.AddTransient<RetirementRepository>();
services.AddTransient<RetireReportRepository>();
services.AddTransient<InsigniaReportRepository>();
services.AddTransient<CommandReportRepository>();
services.AddTransient<ProbationReportRepository>();
services.AddTransient<TransferReportRepository>();
services.AddTransient<EmailSenderService>();
services.AddTransient<CandidateReportRepository>();
services.AddTransient<MinIOExamService>();
services.AddTransient<PermissionRepository>();
services.AddTransient<HolidayRepository>();
//services.AddTransient<UserDutyTimeRepository>();
return services;
}
public static IServiceCollection AddLeaveApplication(this IServiceCollection services)
{
services.AddTransient<DutyTimeRepository>();
services.AddTransient<UserTimeStampRepository>();
services.AddTransient<ProcessUserTimeStampRepository>();
services.AddTransient<UserDutyTimeRepository>();
services.AddTransient<AdditionalCheckRequestRepository>();
services.AddTransient<UserCalendarRepository>();
services.AddTransient<CheckInJobStatusRepository>();
services.AddTransient<LeaveTypeRepository>();
services.AddTransient<LeaveRequestRepository>();
services.AddTransient<LeaveBeginningRepository>();
services.AddTransient<MinIOLeaveService>();
return services;
}
public static IServiceCollection AddDisciplineApplication(this IServiceCollection services)
{
services.AddTransient<MinIODisciplineService>();
services.AddTransient<NotificationRepository>();
return services;
}
}
}