From 7468fa8e2572de0cdab6d43a563e5b7b250ea42c Mon Sep 17 00:00:00 2001 From: jhonatapers Date: Tue, 26 Aug 2025 10:34:29 -0300 Subject: [PATCH] feat: include username in quota output and response models --- .../quota/retrieve/get/DefaultGetQuotaUseCase.java | 3 +-- .../member/quota/retrieve/get/GetQuotaOutput.java | 13 ++++++++++--- .../member/model/MemberQuotaResponse.java | 2 +- .../member/presenter/MemberPresenter.java | 1 + 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/DefaultGetQuotaUseCase.java b/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/DefaultGetQuotaUseCase.java index 5dacc890..d9fe4a17 100644 --- a/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/DefaultGetQuotaUseCase.java +++ b/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/DefaultGetQuotaUseCase.java @@ -34,9 +34,8 @@ public GetQuotaOutput execute(GetQuotaInput input) { .mapToLong(Content::size) .sum(); - final Long available = owner.getQuota().sizeInBytes() - actualUsedQuota; + return GetQuotaOutput.from(owner, actualUsedQuota); - return GetQuotaOutput.from(ownerId.getValue(), actualUsedQuota, owner.getQuota().sizeInBytes(), available); } } diff --git a/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/GetQuotaOutput.java b/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/GetQuotaOutput.java index bf305426..ad89cb90 100644 --- a/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/GetQuotaOutput.java +++ b/application/src/main/java/com/callv2/drive/application/member/quota/retrieve/get/GetQuotaOutput.java @@ -1,9 +1,16 @@ package com.callv2.drive.application.member.quota.retrieve.get; -public record GetQuotaOutput(String memberId, Long used, Long total, Long available) { +import com.callv2.drive.domain.member.Member; - public static GetQuotaOutput from(final String memberId, final Long used, final Long total, final Long available) { - return new GetQuotaOutput(memberId, used, total, available); +public record GetQuotaOutput(String memberId, String username, Long used, Long total, Long available) { + + public static GetQuotaOutput from(final Member member, final Long usedQuotaInBytes) { + return new GetQuotaOutput( + member.getId().getValue(), + member.getUsername().value(), + usedQuotaInBytes, + member.getQuota().sizeInBytes(), + member.getQuota().sizeInBytes() - usedQuotaInBytes); } } diff --git a/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/model/MemberQuotaResponse.java b/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/model/MemberQuotaResponse.java index c496b451..a9b2925b 100644 --- a/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/model/MemberQuotaResponse.java +++ b/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/model/MemberQuotaResponse.java @@ -1,5 +1,5 @@ package com.callv2.drive.infrastructure.member.model; -public record MemberQuotaResponse(String memberId, Long used, Long total, Long available) { +public record MemberQuotaResponse(String memberId, String username, Long used, Long total, Long available) { } diff --git a/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/presenter/MemberPresenter.java b/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/presenter/MemberPresenter.java index 4e48e5f4..a31038ed 100644 --- a/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/presenter/MemberPresenter.java +++ b/infrastructure/src/main/java/com/callv2/drive/infrastructure/member/presenter/MemberPresenter.java @@ -22,6 +22,7 @@ static QuotaRequestListResponse present(final ListRequestQuotaOutput output) { static MemberQuotaResponse present(final GetQuotaOutput output) { return new MemberQuotaResponse( output.memberId(), + output.username(), output.used(), output.total(), output.available());