From abe5573c8803673a94efd83e7cd16a0a017e1a77 Mon Sep 17 00:00:00 2001 From: n-kawahito Date: Fri, 18 Sep 2026 09:53:53 +0900 Subject: [PATCH] =?UTF-8?q?[ADD]=E6=94=AF=E5=87=BA=E5=88=86=E6=9E=90?= =?UTF-8?q?=E7=94=BB=E9=9D=A2=E3=81=AE=E3=81=9F=E3=82=81=E3=81=AEform?= =?UTF-8?q?=E3=82=AF=E3=83=A9=E3=82=B9=E3=82=92=E4=BD=9C=E6=88=90=E3=81=97?= =?UTF-8?q?=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AnalysisController.java | 1 + .../app/presentation/form/AnalysisForm.java | 35 ++++++++++++++ .../form/CategoryAnalysisForm.java | 47 +++++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100644 src/main/java/com/example/demo/app/presentation/form/AnalysisForm.java create mode 100644 src/main/java/com/example/demo/app/presentation/form/CategoryAnalysisForm.java diff --git a/src/main/java/com/example/demo/app/presentation/controller/AnalysisController.java b/src/main/java/com/example/demo/app/presentation/controller/AnalysisController.java index 6b48a58..a3a745f 100644 --- a/src/main/java/com/example/demo/app/presentation/controller/AnalysisController.java +++ b/src/main/java/com/example/demo/app/presentation/controller/AnalysisController.java @@ -9,6 +9,7 @@ import org.springframework.web.bind.annotation.GetMapping; import com.example.demo.app.domain.model.AnalysisModel; import com.example.demo.app.domain.model.LoginModel; import com.example.demo.app.domain.service.AnalysisService; +import com.example.demo.app.presentation.form.AnalysisForm; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/com/example/demo/app/presentation/form/AnalysisForm.java b/src/main/java/com/example/demo/app/presentation/form/AnalysisForm.java new file mode 100644 index 0000000..1594955 --- /dev/null +++ b/src/main/java/com/example/demo/app/presentation/form/AnalysisForm.java @@ -0,0 +1,35 @@ +package com.example.demo.app.presentation.form; + +import java.util.List; + +import com.example.demo.app.domain.model.AnalysisModel; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AnalysisForm { + + private Integer currentMonthTotalAmount; + + private Integer previousMonthTotalAmount; + + private Integer totalDifferenceAmount; + + private List + categoryAnalysisFormList; + + public static AnalysisForm convertFrom( + AnalysisModel analysisModel) { + + return new AnalysisForm( + analysisModel.getCurrentMonthTotalAmount(), + analysisModel.getPreviousMonthTotalAmount(), + analysisModel.getTotalDifferenceAmount(), + CategoryAnalysisForm.convertFrom( + analysisModel.getCategoryAnalysisModelList())); + } +} diff --git a/src/main/java/com/example/demo/app/presentation/form/CategoryAnalysisForm.java b/src/main/java/com/example/demo/app/presentation/form/CategoryAnalysisForm.java new file mode 100644 index 0000000..1b44353 --- /dev/null +++ b/src/main/java/com/example/demo/app/presentation/form/CategoryAnalysisForm.java @@ -0,0 +1,47 @@ +package com.example.demo.app.presentation.form; + +import java.util.List; + +import com.example.demo.app.domain.model.CategoryAnalysisModel; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class CategoryAnalysisForm { + + private String categoryName; + + private Integer currentMonthAmount; + + private Integer previousMonthAmount; + + private Integer monthDifferenceAmount; + + private Integer courseLimitAmount; + + private Integer courseDifferenceAmount; + + public static CategoryAnalysisForm convertFrom( + CategoryAnalysisModel categoryAnalysisModel) { + + return new CategoryAnalysisForm( + categoryAnalysisModel.getCategoryName(), + categoryAnalysisModel.getCurrentMonthAmount(), + categoryAnalysisModel.getPreviousMonthAmount(), + categoryAnalysisModel.getMonthDifferenceAmount(), + categoryAnalysisModel.getCourseLimitAmount(), + categoryAnalysisModel.getCourseDifferenceAmount()); + } + + public static List convertFrom( + List categoryAnalysisModelList) { + + return categoryAnalysisModelList.stream() + .map(CategoryAnalysisForm::convertFrom) + .toList(); + } +}