Files
Backend-Api/PersonalContractingParty.Config/PersonalBootstrapper.cs

599 lines
30 KiB
C#

using System;
using _0_Framework.Application.UID;
using Company.Domain.BillAgg;
using Company.Domain.Board;
using Company.Domain.ChapterAgg;
using Company.Domain.CheckoutAgg;
using Company.Domain.ClassifiedSalaryAgg;
using Company.Domain.Contact2Agg;
using Company.Domain.CrossJobAgg;
using Company.Domain.CrossJobGuildAgg;
using Company.Domain.ContarctingPartyAgg;
using Company.Domain.ContractAgg;
using Company.Domain.EmployeeAgg;
using Company.Domain.EmployeeChildrenAgg;
using Company.Domain.empolyerAgg;
using Company.Domain.Evidence;
using Company.Domain.EvidenceDetail;
using Company.Domain.File1;
using Company.Domain.FileAlert;
using Company.Domain.FileEmployeeAgg;
using Company.Domain.FileEmployerAgg;
using Company.Domain.FileState;
using Company.Domain.FileTiming;
using Company.Domain.FileTitle;
using Company.Domain.HolidayAgg;
using Company.Domain.HolidayItemAgg;
using Company.Domain.JobAgg;
using Company.Domain.LeaveAgg;
using Company.Domain.LeftWorkAgg;
using Company.Domain.MandatoryHoursAgg;
using Company.Domain.MasterPenaltyTitle;
using Company.Domain.MasterPetition;
using Company.Domain.MasterWorkHistory;
using Company.Domain.ModuleAgg;
using Company.Domain.OriginalTitleAgg;
using Company.Domain.PenaltyTitle;
using Company.Domain.Petition;
using Company.Domain.ProceedingSession;
using Company.Domain.RepresentativeAgg;
using Company.Domain.SubtitleAgg;
using Company.Domain.WorkHistory;
using Company.Domain.WorkingHoursAgg;
using Company.Domain.WorkingHoursItemsAgg;
using Company.Domain.WorkshopAgg;
using Company.Domain.YearlySalaryAgg;
using Company.Domain.YearlySalaryItemsAgg;
using Company.Domain.YearlysSalaryTitleAgg;
using CompanyManagment.App.Contracts.Board;
using CompanyManagment.App.Contracts.Chapter;
using CompanyManagment.App.Contracts.Checkout;
using CompanyManagment.App.Contracts.Contact2;
using CompanyManagment.App.Contracts.Contract;
using CompanyManagment.App.Contracts.CrossJob;
using CompanyManagment.App.Contracts.CrossJobGuild;
using CompanyManagment.App.Contracts.Employee;
using CompanyManagment.App.Contracts.EmployeeChildren;
using CompanyManagment.App.Contracts.Employer;
using CompanyManagment.App.Contracts.Evidence;
using CompanyManagment.App.Contracts.EvidenceDetail;
using CompanyManagment.App.Contracts.File1;
using CompanyManagment.App.Contracts.FileAlert;
using CompanyManagment.App.Contracts.FileEmployee;
using CompanyManagment.App.Contracts.FileEmployer;
using CompanyManagment.App.Contracts.FileState;
using CompanyManagment.App.Contracts.FileTiming;
using CompanyManagment.App.Contracts.FileTitle;
using CompanyManagment.App.Contracts.Holiday;
using CompanyManagment.App.Contracts.HolidayItem;
using CompanyManagment.App.Contracts.Job;
using CompanyManagment.App.Contracts.Leave;
using CompanyManagment.App.Contracts.LeftWork;
using CompanyManagment.App.Contracts.MandantoryHours;
using CompanyManagment.App.Contracts.MasterPenaltyTitle;
using CompanyManagment.App.Contracts.MasterPetition;
using CompanyManagment.App.Contracts.MasterWorkHistory;
using CompanyManagment.App.Contracts.Module;
using CompanyManagment.App.Contracts.OriginalTitle;
using CompanyManagment.App.Contracts.PenaltyTitle;
using CompanyManagment.App.Contracts.PersonalContractingParty;
using CompanyManagment.App.Contracts.Petition;
using CompanyManagment.App.Contracts.ProceedingSession;
using CompanyManagment.App.Contracts.Representative;
using CompanyManagment.App.Contracts.Subtitle;
using CompanyManagment.App.Contracts.TextManager;
using CompanyManagment.App.Contracts.WorkHistory;
using CompanyManagment.App.Contracts.WorkingHours;
using CompanyManagment.App.Contracts.WorkingHoursItems;
using CompanyManagment.App.Contracts.Workshop;
using CompanyManagment.App.Contracts.YearlySalary;
using CompanyManagment.App.Contracts.YearlySalaryItems;
using CompanyManagment.App.Contracts.YearlySalaryTitles;
using CompanyManagment.Application;
using CompanyManagment.EFCore;
using CompanyManagment.EFCore.Repository;
using File.EfCore.Repository;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using P_TextManager.Domin.TextManagerAgg;
using CompanyManagment.App.Contracts.CrossJobItems;
using Company.Domain.CrossJobItemsAgg;
using Company.Domain.DateSalaryAgg;
using Company.Domain.DateSalaryItemAgg;
using Company.Domain.FinancialStatmentAgg;
using Company.Domain.FinancialTransactionAgg;
using Company.Domain.GroupPlanAgg;
using Company.Domain.GroupPlanJobItemAgg;
using Company.Domain.InstitutionContractAgg;
using Company.Domain.InstitutionContractContactInfoAgg;
using CompanyManagment.App.Contracts.Insurance;
using Company.Domain.InsuranceAgg;
using Company.Domain.InsuranceEmployeeInfoAgg;
using Company.Domain.InsuranceJobItemAgg;
using Company.Domain.InsuranceListAgg;
using Company.Domain.InsurancJobAgg;
using Company.Domain.InsurancWorkshopInfoAgg;
using Company.Domain.LeftWorkInsuranceAgg;
using Company.Domain.PaymentToEmployeeAgg;
using Company.Domain.PaymentToEmployeeItemAgg;
using Company.Domain.PercentageAgg;
using Company.Domain.PersonnelCodeAgg;
using Company.Domain.SmsResultAgg;
using Company.Domain.WorkingHoursTempAgg;
using Company.Domain.WorkingHoursTempItemAgg;
using Company.Domain.WorkshopPlanAgg;
using Company.Domain.WorkshopPlanEmployeeAgg;
using Company.Domain.ZoneAgg;
using CompanyManagment.App.Contracts.ClassifiedSalary;
using CompanyManagment.App.Contracts.DateSalary;
using CompanyManagment.App.Contracts.DateSalaryItem;
using CompanyManagment.App.Contracts.EmployeeInsurancListData;
using CompanyManagment.App.Contracts.FinancialStatment;
using CompanyManagment.App.Contracts.FinancilTransaction;
using CompanyManagment.App.Contracts.InstitutionContract;
using CompanyManagment.App.Contracts.InstitutionContractContactinfo;
using CompanyManagment.App.Contracts.InsuranceEmployeeInfo;
using CompanyManagment.App.Contracts.InsuranceJob;
using CompanyManagment.App.Contracts.InsuranceList;
using CompanyManagment.App.Contracts.InsuranceWorkshopInfo;
using CompanyManagment.App.Contracts.LeftWorkInsurance;
using CompanyManagment.App.Contracts.PaymentToEmployee;
using CompanyManagment.App.Contracts.Percentage;
using CompanyManagment.App.Contracts.PersonnleCode;
using CompanyManagment.App.Contracts.SmsResult;
using CompanyManagment.App.Contracts.WorkingHoursTemp;
using CompanyManagment.App.Contracts.WorkingHoursTempItem;
using CompanyManagment.App.Contracts.WorkshopPlan;
using CompanyManagment.App.Contracts.Zone;
using CompanyManagment.App.Contracts.EmployeeComputeOptions;
using Company.Domain.EmployeeComputeOptionsAgg;
using Company.Domain.InsuranceYearlySalaryAgg;
using Company.Domain.ReportAgg;
using Company.Domain.RollCallAgg;
using Company.Domain.RollCallEmployeeAgg;
using Company.Domain.RollCallPlanAgg;
using Company.Domain.RollCallServiceAgg;
using CompanyManagment.App.Contracts.InsuranceYearlySalary;
using CompanyManagment.App.Contracts.Report;
using CompanyManagment.App.Contracts.RollCall;
using CompanyManagment.App.Contracts.RollCallEmployee;
using CompanyManagment.App.Contracts.RollCallService;
using CompanyManagment.App.Contracts.RollCallPlan;
using Company.Domain.ReportClientAgg;
using Company.Domain.TaxJobCategoryAgg;
using Company.Domain.WorkshopAccountAgg;
using CompanyManagment.App.Contracts.ReportClient;
using CompanyManagment.App.Contracts.TaxJobCategory;
using Company.Domain.RollCallEmployeeStatusAgg;
using CompanyManagment.App.Contracts.RollCallEmployeeStatus;
using Company.Domain.CustomizeWorkshopEmployeeSettingsAgg;
using Company.Domain.CustomizeWorkshopGroupSettingsAgg;
using Company.Domain.CustomizeWorkshopSettingsAgg;
using Company.Domain.FineAgg;
using Company.Domain.LoanAgg;
using Company.Domain.RewardAgg;
using Company.Domain.SalaryAidAgg;
using CompanyManagment.App.Contracts.CustomizeWorkshopSettings;
using CompanyManagment.App.Contracts.Fine;
using CompanyManagment.App.Contracts.Loan;
using CompanyManagment.App.Contracts.Reward;
using CompanyManagment.App.Contracts.SalaryAid;
using Company.Domain.AndroidApkVersionAgg;
using Company.Domain.BankAgg;
using CompanyManagment.App.Contracts.AndroidApkVersion;
using Company.Domain.FineSubjectAgg;
using CompanyManagment.App.Contracts.FineSubject;
using Company.Domain.CustomizeCheckoutAgg;
using CompanyManagment.App.Contracts.CustomizeCheckout;
using Company.Domain.WorkshopSubAccountAgg;
using Company.Domain.CustomizeCheckoutTempAgg;
using Company.Domain.EmployeeBankInformationAgg;
using Company.Domain.RollCallAgg.DomainService;
using CompanyManagment.App.Contracts.Bank;
using CompanyManagment.App.Contracts.EmployeeBankInformation;
using Company.Domain.EmployeeDocumentItemAgg;
using Company.Domain.EmployeeDocumentsAdminSelectionAgg;
using Company.Domain.EmployeeDocumentsAgg;
using CompanyManagement.Infrastructure.Excel.SalaryAid;
using CompanyManagment.App.Contracts.EmployeeDocuments;
using CompanyManagment.App.Contracts.EmployeeDocumentsAdminSelection;
using Company.Domain.EmployeeClientTempAgg;
using Company.Domain.InstitutionPlanAgg;
using Company.Domain.LeftWorkTempAgg;
using Company.Domain.TemporaryClientRegistrationAgg;
using CompanyManagment.App.Contracts.EmployeeClientTemp;
using CompanyManagment.App.Contracts.InstitutionPlan;
using CompanyManagment.App.Contracts.LeftWorkTemp;
using CompanyManagment.App.Contracts.TemporaryClientRegistration;
using Company.Domain.ContactUsAgg;
using CompanyManagment.App.Contracts.ContactUs;
using Company.Domain.EmployeeAuthorizeTempAgg;
using Company.Domain.AdminMonthlyOverviewAgg;
using Company.Domain.ContractingPartyBankAccountsAgg;
using Company.Domain.PaymentInstrumentAgg;
using Company.Domain.PaymentTransactionAgg;
using CompanyManagment.App.Contracts.AdminMonthlyOverview;
using CompanyManagment.App.Contracts.ContractingPartyBankAccounts;
using CompanyManagment.App.Contracts.PaymentInstrument;
using CompanyManagment.App.Contracts.PaymentTransaction;
using CompanyManagment.App.Contracts.AuthorizedPerson;
using Company.Domain.AuthorizedPersonAgg;
using Company.Domain.LawAgg;
using CompanyManagment.App.Contracts.Law;
using CompanyManagment.EFCore.Repository;
namespace PersonalContractingParty.Config;
public class PersonalBootstrapper
{
public static void Configure(IServiceCollection services, string connectionString)
{
//----Task-Manager-Project---------------------------------
//services.AddTransient<ITaskApplication, TaskApplication>();
//services.AddTransient<ITaskRepository, TaskRepository>();
//services.AddTransient<ITaskStatusApplication, TaskStatusApplication>();
//services.AddTransient<ITaskStatusRepository, TaskStatusRepository>();
//services.AddTransient<ITaskTitleApplication, TaskTitleApplication>();
//services.AddTransient<ITaskTitleRepository, TaskTitleRepository>();
//------MAIN-PROJECT----------------
services.AddTransient<IPersonalContractingPartyApp, PersonalContractingPartyApplication>();
services.AddTransient<IPersonalContractingPartyRepository, PersonalContractingPartyRepository>();
services.AddTransient<IEmployerApplication, EmployerApplication>();
services.AddTransient<IEmployerRepository, EmployerRepository>();
services.AddTransient<IWorkshopApplication, WorkshopAppliction>();
services.AddTransient<IWorkshopRepository, WorkshopRepository>();
services.AddTransient<IEmployeeApplication, EmployeeAplication>();
services.AddTransient<IEmployeeRepository, EmployeeRepository>();
services.AddTransient<IEmployeeChildrenApplication, EmployeeChildrenApplication>();
services.AddTransient<IEmployeeChildrenRepository, EmployeeChildrenRepository>();
services.AddTransient<IYearlySalaryApplication, YearlySalaryApplication>();
services.AddTransient<IYearlySalaryRepository, YearlySalaryRepository>();
services.AddTransient<IYearlySalaryItemApplication, YearlySalaryItemApplication>();
services.AddTransient<IYearlySalaryItemRepository, YearlySalaryItemRepository>();
services.AddTransient<IYearlySalaryTitleApplication, YearlySalaryTitleApplication>();
services.AddTransient<IYearlySalaryTitleRepository, YearlySalaryTitleRepository>();
services.AddTransient<IContractApplication, ContractApplication>();
services.AddTransient<IContractRepository, ContractRepository>();
services.AddTransient<IJobApplication, JobApplication>();
services.AddTransient<IJobRepository, JobRepository>();
services.AddTransient<IMandatoryHoursApplication, MandatoryHoursApplication>();
services.AddTransient<IMandatoryHoursRepository, MandatoryHoursRepository>();
services.AddTransient<IHolidayApplication, HolidayApplication>();
services.AddTransient<IHolidayRepository, HolidayRepository>();
services.AddTransient<IHolidayItemApplication, HolidayItemApplication>();
services.AddTransient<IHolidayItemRepository, HolidayItemRepository>();
services.AddTransient<IWorkingHoursApplication, WorkingHoursApplication>();
services.AddTransient<IWorkingHoursRepository, WorkingHoursRepository>();
services.AddTransient<IWorkingHoursItemsApplication, WorkingHoursItemsApplication>();
services.AddTransient<IWorkingHoursItemsRepository, WorkingHoursItemsRepository>();
services.AddTransient<ILeftWorkApplication, LeftWorkApplication>();
services.AddTransient<ILeftWorkRepository, LeftWorkRepository>();
services.AddTransient<ILeaveApplication, LeaveApplication>();
services.AddTransient<ILeaveRepository, LeaveRepository>();
services.AddTransient<ICheckoutApplication, CheckoutApplication>();
services.AddTransient<ICheckoutRepository, CheckoutRepository>();
services.AddTransient<IRepresentativeApplication, RepresentativeApplication>();
services.AddTransient<IRepresentativeRepository, RepresentativeRepository>();
services.AddTransient<IFileEmployeeApplication, FileEmployeeApplication>();
services.AddTransient<IFileEmployeeRepository, FileEmployeeRepository>();
services.AddTransient<IFileEmployerApplication, FileEmployerApplication>();
services.AddTransient<IFileEmployerRepository, FileEmployerRepository>();
services.AddTransient<IInstitutionContractApplication, InstitutionContractApplication>();
services.AddTransient<IInstitutionContractRepository, InstitutionContractRepository>();
// AuthorizedPerson Services
services.AddTransient<IAuthorizedPersonApplication, AuthorizedPersonApplication>();
services.AddTransient<IAuthorizedPersonRepository, AuthorizedPersonRepository>();
// UID Service - moved to Infrastructure layer
services.AddTransient<IUidService, CompanyManagment.EFCore.Services.UidService>();
services.AddTransient<IContactInfoApplication, InstitutionContractContactInfoApplication>();
services.AddTransient<IContactInfoRepository, InstitutionContractContactInfoRepository>();
services.AddTransient<IPercentageApplication, PercentageApplication>();
services.AddTransient<IPercentageRepository, PercentageRepository>();
services.AddTransient<IDateSalaryApplication, DateSalaryApplication>();
services.AddTransient<IDateSalaryRepository, DateSalaryRepository>();
services.AddTransient<ILeftWorkInsuranceApplication, LeftWorkInsuranceApplication>();
services.AddTransient<ILeftWorkInsuranceRepository, LeftWorkInsuranceRepository>();
services.AddTransient<IEmployeeInsurancListDataApplication, EmployeeInsurancListDataApplication>();
services.AddTransient<IEmployeeInsurancListDataRepository, EmployeeInsurancListDataRepository>();
services.AddTransient<IInsuranceEmployeeInfoApplication, InsuranceEmployeeInfoApplication>();
services.AddTransient<IInsuranceEmployeeInfoRepository, InsuranceEmployeeInfoRepository>();
services.AddTransient<IInsuranceJobApplication, InsuranceJobApplication>();
services.AddTransient<IInsuranceJobRepositpry, InsuranceJobRepository>();
services.AddTransient<IInsuranceJobItemRepositpry, InsuranceJobItemRepository>();
services.AddTransient<IInsuranceListApplication, InsuranceListApplication>();
services.AddTransient<IInsuranceListRepository, InsuranceListRepository>();
services.AddTransient<IInsuranceWorkshopInfoApplication, InsuranceWorkshopInfoApplication>();
services.AddTransient<IInsuranceWorkshopInfoRepository, InsuranceWorkshopInfoRepository>();
services.AddTransient<IPersonnelCodeApplication, PersonnelCodeApplication>();
services.AddTransient<IPersonnelCodeRepository, PersonnelCodeRepository>();
services.AddTransient<IZoneRepository, ZoneRepository>();
services.AddTransient<IZoneApplication, ZoneApplication>();
services.AddTransient<IDateSalaryItemRepository, DateSalaryItemRepository>();
services.AddTransient<IDateSalaryItemApplication, DateSalaryItemApplication>();
services.AddTransient<IInsuranceListWorkshopRepository, InsuranceListWorkshopRepository>();
services.AddTransient<IWorkingHoursTempRepository, WorkingHoursTempRepository>();
services.AddTransient<IWorkingHoursTempApplication, WorkingHoursTempApplication>();
services.AddTransient<IWorkingHoursTempItemRepository, WorkingHoursTempItemRepository>();
services.AddTransient<IWorkingHoursTempItemApplication, WorkingHoursTempItemApplication>();
services.AddTransient<IFinancialStatmentRepository, FinancialStatmentRepository>();
services.AddTransient<IFinancialStatmentApplication, FinancialStatmentApplication>();
services.AddTransient<IFinancialTransactionRepository, FinancialTransactionRepository>();
services.AddTransient<IFinancialTransactionApplication, FinancialTransactionApplication>();
services.AddTransient<ISmsResultRepository, SmsResultRepository>();
services.AddTransient<ISmsResultApplication, SmsResultApplication>();
services.AddTransient<IClassifiedSalaryRepository, ClassifiedSalaryRepository>();
services.AddTransient<IClassifiedSalaryApplication, ClassifiedSalaryApplication>();
services.AddTransient<IWorkshopPlanRepository, WorkshopPlanRepository>();
services.AddTransient<IWorkshopPlanApplication, WorkshopPlanApplication>();
services.AddTransient<IGroupPlanRepository, GroupPlanRepository>();
services.AddTransient<IGroupPlanJobItemRepository, GroupPlanJobItemRepository>();
services.AddTransient<IWorkshopPlanEmployeeRepository, WorkshopPlanEmployeeRepository>();
services.AddTransient<IPaymentToEmployeeRepository, PaymentToEmployeeRepository>();
services.AddTransient<IPaymentToEmployeeApplication, PaymentToEmployeeApplication>();
services.AddTransient<IPaymentToEmployeeItemRepository, PaymentToEmployeeItemsRepository>();
services.AddTransient<IPaymentToEmployeeItemApplication, PaymentToEmployeeItemsApplication>();
services.AddTransient<IEmployeeComputeOptionsRepository, EmployeeComputeOptionsRepository>();
services.AddTransient<IEmployeeComputeOptionsApplication, EmployeeComputeOptionsApplication>();
services.AddTransient<IRollCallRepository, RollCallRepository>();
services.AddTransient<IRollCallApplication, RollCallApplication>();
services.AddTransient<IReportRepository, ReportRepository>();
services.AddTransient<IReportApplication, ReportApplication>();
services.AddTransient<IInsuranceYearlySalaryRepository, InsuranceYearlySalaryRepository>();
services.AddTransient<IInsuranceYearlySalaryApplication, InsuranceYearlySalaryApplication>();
services.AddTransient<IRollCallServiceRepository, RollCallServiceRepository>();
services.AddTransient<IRollCallServiceApplication, RollCallServiceApplication>();
services.AddTransient<IRollCallPlanRepository, RollCallPlanRepository>();
services.AddTransient<IRollCallPlanAppllication, RollCallPlanAppllication>();
services.AddTransient<IRollCallEmployeeRepository, RollCallEmployeeRepository>();
services.AddTransient<IRollCallEmployeeApplication, RollCallEmployeeApplication>();
services.AddTransient<IReportClientRepository, ReportClientRepository>();
services.AddTransient<IReportClientApplication, ReportClientApplication>();
services.AddTransient<ITaxJobCategoryRepository, TaxJobCategoryRepository>();
services.AddTransient<ITaxJobCategoryApplication, TaxJobCategoryApplication>();
services.AddTransient<IRollCallMandatoryRepository, RollCallMandatoryRepository>();
services.AddTransient<IRollCallMandatoryApplication, RollCallMandatoryApplication>();
services.AddTransient<IWorkshopAccountRepository, WorkshopAccountRepository>();
services.AddTransient<IRollCallEmployeeStatusRepository, RollCallEmployeeStatusRepository>();
services.AddTransient<IRollCallEmployeeStatusApplication, RollCallEmployeeStatusApplication>();
#region Mahan
services.AddTransient<ICustomizeWorkshopSettingsApplication, CustomizeWorkshopSettingsApplication>();
services.AddTransient<ICustomizeWorkshopSettingsRepository, CustomizeWorkshopSettingsRepository>();
services
.AddTransient<ICustomizeWorkshopEmployeeSettingsRepository, CustomizeWorkshopEmployeeSettingsRepository>();
services.AddTransient<ICustomizeWorkshopGroupSettingsRepository, CustomizeWorkshopGroupSettingsRepository>();
services.AddTransient<IFineRepository, FineRepository>();
services.AddTransient<IFineApplication, FineApplication>();
services.AddTransient<IFineSubjectApplication, FineSubjectApplication>();
services.AddTransient<IFineSubjectRepository, FineSubjectRepository>();
services.AddTransient<ILoanRepository, LoanRepository>();
services.AddTransient<ILoanApplication, LoanApplication>();
services.AddTransient<ISalaryAidApplication, SalaryAidApplication>();
services.AddTransient<ISalaryAidRepository, SalaryAidRepository>();
services.AddTransient<IRewardApplication, RewardApplication>();
services.AddTransient<IRewardRepository, RewardRepository>();
services.AddTransient<IAndroidApkVersionRepository, AndroidApkVersionRepository>();
services.AddTransient<IAndroidApkVersionApplication, AndroidApkVersionApplication>();
services.AddTransient<SalaryAidImportExcel>();
services.AddTransient<IEmployeeClientTempRepository, EmployeeClientTempRepository>();
services.AddTransient<IEmployeeClientTempApplication, EmployeeClientTempApplication>();
services.AddTransient<ILeftWorkTempRepository, LeftWorkTempRepository>();
services.AddTransient<ILeftWorkTempApplication, LeftWorkTempApplication>();
services.AddTransient<IContactUsRepository, ContactUsRepository>();
services.AddTransient<IContactUsApplication, ContactUsApplication>();
services.AddTransient<IEmployeeAuthorizeTempRepository, EmployeeAuthorizeTempRepository>();
services.AddTransient<IAdminMonthlyOverviewRepository, AdminMonthlyOverviewRepository>();
services.AddTransient<IAdminMonthlyOverviewApplication, AdminMonthlyOverviewApplication>();
services.AddTransient<IPaymentTransactionRepository, PaymentTransactionRepository>();
services.AddTransient<IPaymentTransactionApplication, PaymentTransactionApplication>();
services.AddTransient<IContractingPartyBankAccountsApplication, ContractingPartyBankAccountsApplication>();
services.AddTransient<IContractingPartyBankAccountsRepository, ContractingPartyBankAccountsRepository>();
services.AddTransient<IPaymentInstrumentRepository, PaymentInstrumentRepository>();
services.AddTransient<IPaymentInstrumentApplication, PaymentInstrumentApplication>();
services.AddTransient<IPaymentInstrumentGroupRepository, PaymentInstrumentGroupRepository>();
services.AddTransient<ILawApplication,LawApplication>();
services.AddTransient<ILawRepository,LawRepository>();
#endregion
#region Pooya
services.AddTransient<IEmployeeDocumentsApplication, EmployeeDocumentsApplication>();
services.AddTransient<IEmployeeDocumentsRepository, EmployeeDocumentsRepository>();
services.AddTransient<IEmployeeDocumentItemRepository, EmployeeDocumentItemRepository>();
services.AddTransient<IEmployeeDocumentsAdminSelectionRepository, EmployeeDocumentsAdminSelectionRepository>();
services
.AddTransient<IEmployeeDocumentsAdminSelectionApplication, EmployeeDocumentsAdminSelectionApplication>();
services.AddTransient<ICustomizeCheckoutRepository, CustomizeCheckoutRepository>();
services.AddTransient<ICustomizeCheckoutApplication, CustomizeCheckoutApplication>();
services.AddTransient<ICustomizeCheckoutTempRepository, CustomizeCheckoutTempRepository>();
services.AddTransient<ICustomizeCheckoutTempApplication, CustomizeCheckoutTempApplication>();
services.AddTransient<IWorkshopSubAccountRepository, WorkshopSubAccountRepository>();
services.AddTransient<IBankRepository, BankRepository>();
services.AddTransient<IBankApplication, BankApplication>();
services.AddTransient<IEmployeeBankInformationRepository, EmployeeBankInformationRepository>();
services.AddTransient<IEmployeeBankInformationApplication, EmployeeBankInformationApplication>();
#endregion
#region TemporaryClientRegisteration
services.AddTransient<ITemporaryClientRegistrationApplication, TemporaryClientRegistrationApplication>();
services.AddTransient<IContractingPartyTempRepository, ContractingPartyTempRepository>();
services.AddTransient<IWorkshopTempRepository, WorkshopTempRepository>();
services.AddTransient<IWorkshopServicesTempRepository, WorkshopServicesTempRepository>();
services.AddTransient<IInstitutionContractTempRepository, InstitutionContractTempRepository>();
#endregion
services.AddTransient<IRollCallDomainService, RollCallDomainService>();
services.AddTransient<IPlanPercentageRepository, PlanPercentageRepository>();
services.AddTransient<IInstitutionPlanApplication, InstitutionPlanApplication>();
//=========End Of Main====================================
//---File Project------------------------------------
services.AddTransient<IBoardApplication, BoardApplication>();
services.AddTransient<IBoardRepository, BoardRepository>();
services.AddTransient<IFileApplication, FileApplication>();
services.AddTransient<IFileRepository, FileRepository>();
services.AddTransient<IPetitionApplication, PetitionApplication>();
services.AddTransient<IPetitionRepository, PetitionRepository>();
services.AddTransient<IWorkHistoryApplication, WorkHistoryApplication>();
services.AddTransient<IWorkHistoryRepository, WorkHistoryRepository>();
services.AddTransient<IPenaltyTitleApplication, PenaltyTitleApplication>();
services.AddTransient<IPenaltyTitleRepository, PenaltyTitleRepository>();
services.AddTransient<IProceedingSessionApplication, ProceedingSessionApplication>();
services.AddTransient<IProceedingSessionRepository, ProceedingSessionRepository>();
services.AddTransient<IMasterPetitionApplication, MasterPetitionApplication>();
services.AddTransient<IMasterPetitionRepository, MasterPetitionRepository>();
services.AddTransient<IMasterWorkHistoryApplication, MasterWorkHistoryApplication>();
services.AddTransient<IMasterWorkHistoryRepository, MasterWorkHistoryRepository>();
services.AddTransient<IMasterPenaltyTitleApplication, MasterPenaltyTitleApplication>();
services.AddTransient<IMasterPenaltyTitleRepository, MasterPenaltyTitleRepository>();
services.AddTransient<IEvidenceApplication, EvidenceApplication>();
services.AddTransient<IEvidenceRepository, EvidenceRepository>();
services.AddTransient<IEvidenceDetailApplication, EvidenceDetailApplication>();
services.AddTransient<IEvidenceDetailRepository, EvidenceDetailRepository>();
services.AddTransient<IFileTitleApplication, FileTitleApplication>();
services.AddTransient<IFileTitleRepository, FileTitleRepository>();
services.AddTransient<IFileTimingApplication, FileTimingApplication>();
services.AddTransient<IFileTimingRepository, FileTimingRepository>();
services.AddTransient<IFileStateApplication, FileStateApplication>();
services.AddTransient<IFileStateRepository, FileStateRepository>();
services.AddTransient<IFileAlertApplication, FileAlertApplication>();
services.AddTransient<IFileAlertRepository, FileAlertRepository>();
//----Text-Manager-Project---------------------------------
services.AddTransient<ISubtitleApplication, SubtitleAppliction>();
services.AddTransient<ISubtitleRepozitory, SubtitleRepository>();
services.AddTransient<IOriginalTitleApplication, OriginalTitleAppliction>();
services.AddTransient<IOriginalTitleRepozitory, OriginalTitleRepository>();
services.AddTransient<ITextManagerApplication, TextManagerAppliction>();
services.AddTransient<ITextManagerRepozitory, TextManagerRepository>();
services.AddTransient<IModuleApplication, ModuleAppliction>();
services.AddTransient<IModuleRepozitory, ModuleRepository>();
services.AddTransient<IBillApplication, BillAppliction>();
services.AddTransient<IBillRepozitory, BillRepository>();
services.AddTransient<IContactApplication2, Contact2Appliction>();
services.AddTransient<IContactRepozitory2, ContactRepository2>();
services.AddTransient<IChapterApplication, ChapterAppliction>();
services.AddTransient<IChapterRepozitory, ChapterRepository>();
//--------InsuranceProject-----------------------------------
services.AddTransient<ICrossJobGuildApplication, CrossJobGuildApplication>();
services.AddTransient<ICrossJobGuildRepository, CrossJobGuildRepository>();
services.AddTransient<ICrossJobApplication, CrossJobApplication>();
services.AddTransient<ICrossJobRepository, CrossJobRepository>();
services.AddTransient<ICrossJobItemsApplication, CrossJobItemsApplication>();
services.AddTransient<ICrossJobItemsRepository, CrossJobItemsRepository>();
services.AddTransient<IInsuranceApplication, InsuranceApplication>();
services.AddTransient<IInsuranceRepository, InsuranceRepository>();
services.AddDbContext<CompanyContext>(x => x.UseSqlServer(connectionString));
}
}