presenter refactoring

This commit is contained in:
2025-12-20 17:06:11 +01:00
parent 92be9d2e1b
commit e9d6f90bb2
109 changed files with 4159 additions and 1283 deletions

View File

@@ -92,99 +92,99 @@ export class PaymentsService {
@Inject(LOGGER_TOKEN) private readonly logger: Logger,
) {}
async getPayments(query: GetPaymentsQuery): Promise<GetPaymentsOutput> {
async getPayments(query: GetPaymentsQuery): Promise<GetPaymentsPresenter> {
this.logger.debug('[PaymentsService] Getting payments', { query });
const presenter = new GetPaymentsPresenter();
await this.getPaymentsUseCase.execute(query, presenter);
return presenter.viewModel;
return presenter;
}
async createPayment(input: CreatePaymentInput): Promise<CreatePaymentOutput> {
async createPayment(input: CreatePaymentInput): Promise<CreatePaymentPresenter> {
this.logger.debug('[PaymentsService] Creating payment', { input });
const presenter = new CreatePaymentPresenter();
await this.createPaymentUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
async updatePaymentStatus(input: UpdatePaymentStatusInput): Promise<UpdatePaymentStatusOutput> {
async updatePaymentStatus(input: UpdatePaymentStatusInput): Promise<UpdatePaymentStatusPresenter> {
this.logger.debug('[PaymentsService] Updating payment status', { input });
const presenter = new UpdatePaymentStatusPresenter();
await this.updatePaymentStatusUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
async getMembershipFees(query: GetMembershipFeesQuery): Promise<GetMembershipFeesOutput> {
async getMembershipFees(query: GetMembershipFeesQuery): Promise<GetMembershipFeesPresenter> {
this.logger.debug('[PaymentsService] Getting membership fees', { query });
const presenter = new GetMembershipFeesPresenter();
await this.getMembershipFeesUseCase.execute(query, presenter);
return presenter.viewModel;
return presenter;
}
async upsertMembershipFee(input: UpsertMembershipFeeInput): Promise<UpsertMembershipFeeOutput> {
async upsertMembershipFee(input: UpsertMembershipFeeInput): Promise<UpsertMembershipFeePresenter> {
this.logger.debug('[PaymentsService] Upserting membership fee', { input });
const presenter = new UpsertMembershipFeePresenter();
await this.upsertMembershipFeeUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
async updateMemberPayment(input: UpdateMemberPaymentInput): Promise<UpdateMemberPaymentOutput> {
async updateMemberPayment(input: UpdateMemberPaymentInput): Promise<UpdateMemberPaymentPresenter> {
this.logger.debug('[PaymentsService] Updating member payment', { input });
const presenter = new UpdateMemberPaymentPresenter();
await this.updateMemberPaymentUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
async getPrizes(query: GetPrizesQuery): Promise<GetPrizesOutput> {
async getPrizes(query: GetPrizesQuery): Promise<GetPrizesPresenter> {
this.logger.debug('[PaymentsService] Getting prizes', { query });
const presenter = new GetPrizesPresenter();
await this.getPrizesUseCase.execute({ leagueId: query.leagueId!, seasonId: query.seasonId }, presenter);
return presenter.viewModel;
return presenter;
}
async createPrize(input: CreatePrizeInput): Promise<CreatePrizeOutput> {
async createPrize(input: CreatePrizeInput): Promise<CreatePrizePresenter> {
this.logger.debug('[PaymentsService] Creating prize', { input });
const presenter = new CreatePrizePresenter();
await this.createPrizeUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
async awardPrize(input: AwardPrizeInput): Promise<AwardPrizeOutput> {
async awardPrize(input: AwardPrizeInput): Promise<AwardPrizePresenter> {
this.logger.debug('[PaymentsService] Awarding prize', { input });
const presenter = new AwardPrizePresenter();
await this.awardPrizeUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
async deletePrize(input: DeletePrizeInput): Promise<DeletePrizeOutput> {
async deletePrize(input: DeletePrizeInput): Promise<DeletePrizePresenter> {
this.logger.debug('[PaymentsService] Deleting prize', { input });
const presenter = new DeletePrizePresenter();
await this.deletePrizeUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
async getWallet(query: GetWalletQuery): Promise<GetWalletOutput> {
async getWallet(query: GetWalletQuery): Promise<GetWalletPresenter> {
this.logger.debug('[PaymentsService] Getting wallet', { query });
const presenter = new GetWalletPresenter();
await this.getWalletUseCase.execute({ leagueId: query.leagueId! }, presenter);
return presenter.viewModel;
return presenter;
}
async processWalletTransaction(input: ProcessWalletTransactionInput): Promise<ProcessWalletTransactionOutput> {
async processWalletTransaction(input: ProcessWalletTransactionInput): Promise<ProcessWalletTransactionPresenter> {
this.logger.debug('[PaymentsService] Processing wallet transaction', { input });
const presenter = new ProcessWalletTransactionPresenter();
await this.processWalletTransactionUseCase.execute(input, presenter);
return presenter.viewModel;
return presenter;
}
}