From d5407e812db06da5a25bcc6d4627b797726812ec Mon Sep 17 00:00:00 2001
From: essaysir <sonjs7554@naver.com>
Date: Wed, 3 Dec 2025 00:45:35 +0900
Subject: [PATCH 1/5] =?UTF-8?q?feat=20:=20Mock=20API=20=EC=BB=A8=ED=8A=B8?=
 =?UTF-8?q?=EB=A1=A4=EB=9F=AC=20=EB=B0=8F=20Response=20mock=20=EB=A9=94?=
 =?UTF-8?q?=EC=84=9C=EB=93=9C=20=EA=B5=AC=ED=98=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../service/response/ReportGetResponse.java   | 13 ++++
 .../response/LimjangDetailGetResponse.java    | 16 +++++
 .../LimjangsMainGetVersion2Response.java      | 69 +++++++++++--------
 .../service/response/UserNoteGetResponse.java | 25 +++++++
 .../response/UserNotesGetResponse.java        | 23 +++++++
 .../th/juinjang/api/mock/MockController.java  | 69 +++++++++++++++++++
 .../juinjang/auth/config/SecurityConfig.java  |  3 +-
 7 files changed, 190 insertions(+), 28 deletions(-)
 create mode 100644 src/main/java/umc/th/juinjang/api/mock/MockController.java

diff --git a/src/main/java/umc/th/juinjang/api/checklist/service/response/ReportGetResponse.java b/src/main/java/umc/th/juinjang/api/checklist/service/response/ReportGetResponse.java
index 57e5caa0..2a648944 100644
--- a/src/main/java/umc/th/juinjang/api/checklist/service/response/ReportGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/checklist/service/response/ReportGetResponse.java
@@ -24,4 +24,17 @@ public static ReportGetResponse of(Report report) {
 			report.getTotalRate()
 		);
 	}
+
+	public static ReportGetResponse mock() {
+		return new ReportGetResponse(
+			1L,
+			"상당히 쾌적한 실내",
+			"훌륭한 공용 공간",
+			"좋은 편인 입지 조건",
+			4.6f,
+			4.3f,
+			4.7f,
+			4.5f
+		);
+	}
 }
\ No newline at end of file
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
index 63b8251b..6477d2a9 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
@@ -38,4 +38,20 @@ public static LimjangDetailGetResponse of(Limjang limjang){
         .updatedAt(limjang.getUpdatedAt())
         .build();
   }
+
+  public static LimjangDetailGetResponse mock() {
+    return LimjangDetailGetResponse.builder()
+        .limjangId(1L)
+        .checkListVersion(LimjangCheckListVersion.LIMJANG)
+        .images(List.of("https://example.com/image1.jpg", "https://example.com/image2.jpg"))
+        .purposeCode(1)
+        .nickname("우성 아파트")
+        .priceType(0)
+        .priceList(List.of("500000000"))
+        .address("서울특별시 강남구 테헤란로 123")
+        .addressDetail("101동 1001호")
+        .createdAt(LocalDateTime.of(2024, 11, 15, 10, 30))
+        .updatedAt(LocalDateTime.of(2024, 11, 20, 14, 20))
+        .build();
+  }
 }
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java
index afd83ee9..35f5fbce 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java
@@ -1,36 +1,51 @@
 package umc.th.juinjang.api.limjang.service.response;
 
-import static umc.th.juinjang.api.limjang.service.LimjangPriceBridge.getPriceToString;
+import static umc.th.juinjang.api.limjang.service.LimjangPriceBridge.*;
 
 import java.util.List;
+
 import lombok.Builder;
 import umc.th.juinjang.domain.limjang.model.Limjang;
 
 public record LimjangsMainGetVersion2Response(List<LimjangMainVersion2Response> recentUpdatedList) {
- @Builder
-  record LimjangMainVersion2Response(
-      long limjangId,
-      int priceType,
-      String image,
-      String nickname,
-      String price,
-      String totalAverage,
-      String address) {
-
-   static LimjangMainVersion2Response of(Limjang limjang) {
-     return LimjangMainVersion2Response.builder()
-         .limjangId(limjang.getLimjangId())
-         .priceType(limjang.getPriceType().getValue())
-         .image(limjang.getDefaultImage())
-         .nickname(limjang.getNickname())
-         .price(getPriceToString(limjang))
-         .totalAverage(limjang.getReport() == null ? null : limjang.getReport().getTotalRate().toString())
-         .address(limjang.getAddress())
-         .build();
-   }
- }
-
-  public static LimjangsMainGetVersion2Response of(List<Limjang> limjangList) {
-    return new LimjangsMainGetVersion2Response(limjangList.stream().map(LimjangMainVersion2Response::of).toList());
-  }
+	@Builder
+	record LimjangMainVersion2Response(
+		long limjangId,
+		int priceType,
+		String image,
+		String nickname,
+		String price,
+		String totalAverage,
+		String address) {
+
+		static LimjangMainVersion2Response of(Limjang limjang) {
+			return LimjangMainVersion2Response.builder()
+				.limjangId(limjang.getLimjangId())
+				.priceType(limjang.getPriceType().getValue())
+				.image(limjang.getDefaultImage())
+				.nickname(limjang.getNickname())
+				.price(getPriceToString(limjang))
+				.totalAverage(limjang.getReport() == null ? null : limjang.getReport().getTotalRate().toString())
+				.address(limjang.getAddress())
+				.build();
+		}
+	}
+
+	public static LimjangsMainGetVersion2Response of(List<Limjang> limjangList) {
+		return new LimjangsMainGetVersion2Response(limjangList.stream().map(LimjangMainVersion2Response::of).toList());
+	}
+
+	public static LimjangsMainGetVersion2Response mock() {
+		LimjangMainVersion2Response mockNote = LimjangMainVersion2Response.builder()
+			.limjangId(1L)
+			.priceType(0)
+			.image("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_1.png")
+			.nickname("우성 아파트")
+			.price("3010000000")
+			.totalAverage("4.5")
+			.address("")
+			.build();
+
+		return new LimjangsMainGetVersion2Response(List.of(mockNote));
+	}
 }
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java
index e14fd7ab..3dc50c95 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java
@@ -52,4 +52,29 @@ public static UserNoteGetResponse of(boolean isShared, Limjang note, Address add
 			address != null ? address.getBname2() : null
 		);
 	}
+
+	// TODO : 이미지 저장 및 URL 변경 필요
+	public static UserNoteGetResponse mock() {
+		return new UserNoteGetResponse(
+			true,
+			LimjangPurpose.RESIDENTIAL_PURPOSE,
+			LimjangPropertyType.APARTMENT,
+			LimjangPriceType.SALE,
+			"우성 아파트",
+			List.of("https://example.com/image1.jpg", "https://example.com/image2.jpg",
+				"https://example.com/image3.jpg"),
+			"서울 송파구 잠실동",
+			"101-1",
+			"3010000000",
+			null,
+			"23.12.01",
+			"10",
+			28,
+			"1168010100",
+			"서울특별시",
+			"송파구",
+			"잠실동",
+			""
+		);
+	}
 }
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
index 27288eeb..322a7b65 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
@@ -53,4 +53,27 @@ public static UserNotesGetResponse of(List<Limjang> limjangs, Map<Long, Boolean>
 		return new UserNotesGetResponse(
 			limjangs.stream().map(it -> UserNoteResponse.of(it, isScraped.get(it.getLimjangId()))).toList());
 	}
+
+	public static UserNotesGetResponse mock() {
+		UserNoteResponse mockNote1 = new UserNoteResponse(
+			1L,
+			LimjangPurpose.RESIDENTIAL_PURPOSE,
+			LimjangPropertyType.APARTMENT,
+			LimjangPriceType.SALE,
+			"우성 아파트",
+			List.of("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_1.png",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_2.png",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_3.png"),
+			true,
+			"4.6",
+			"3010000000",
+			null,
+			28,
+			"10",
+			"서울 송파구 잠실동 101-1",
+			"서울시"
+		);
+
+		return new UserNotesGetResponse(List.of(mockNote1));
+	}
 }
\ No newline at end of file
diff --git a/src/main/java/umc/th/juinjang/api/mock/MockController.java b/src/main/java/umc/th/juinjang/api/mock/MockController.java
new file mode 100644
index 00000000..95e01690
--- /dev/null
+++ b/src/main/java/umc/th/juinjang/api/mock/MockController.java
@@ -0,0 +1,69 @@
+package umc.th.juinjang.api.mock;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import umc.th.juinjang.api.checklist.service.response.ReportGetResponse;
+import umc.th.juinjang.api.checklist.service.response.ReportWithLimjangResponseDTO;
+import umc.th.juinjang.api.dto.ApiResponse;
+import umc.th.juinjang.api.limjang.service.response.LimjangDetailGetResponse;
+import umc.th.juinjang.api.limjang.service.response.LimjangsMainGetVersion2Response;
+import umc.th.juinjang.api.limjang.service.response.UserNoteGetResponse;
+import umc.th.juinjang.api.limjang.service.response.UserNotesGetResponse;
+import umc.th.juinjang.api.record.service.response.RecordResponseDTO;
+
+@RestController
+@RequestMapping("/api/mock")
+@RequiredArgsConstructor
+public class MockController {
+
+	@Operation(summary = "임장 메인화면에서 최근 임장 조회 Mock API")
+	@GetMapping("/notes/recent")
+	public ApiResponse<LimjangsMainGetVersion2Response> getRecentMockNotes() {
+		return ApiResponse.onSuccess(LimjangsMainGetVersion2Response.mock());
+	}
+
+	@Operation(summary = "임장 상세 조회 Mock API")
+	@GetMapping("/notes")
+	public ApiResponse<UserNoteGetResponse> getMockNoteDetail() {
+		return ApiResponse.onSuccess(UserNoteGetResponse.mock());
+	}
+
+	@Operation(summary = "마이노트 조회 Mock API")
+	@GetMapping("/notes")
+	public ApiResponse<UserNotesGetResponse> getMockUserNotes() {
+		return ApiResponse.onSuccess(UserNotesGetResponse.mock());
+	}
+
+	@Operation(summary = "리포트 조회 Mock API")
+	@GetMapping("/notes/mock/report")
+	public ApiResponse<ReportWithLimjangResponseDTO> getMockReport() {
+		ReportGetResponse reportMock = ReportGetResponse.mock();
+		LimjangDetailGetResponse limjangMock = LimjangDetailGetResponse.mock();
+		ReportWithLimjangResponseDTO response = new ReportWithLimjangResponseDTO(reportMock, limjangMock);
+		return ApiResponse.onSuccess(response);
+	}
+
+	@Operation(summary = "녹음 및 메모 조회 Mock API")
+	@GetMapping("/notes/mock/records")
+	public ApiResponse<RecordResponseDTO.RecordMemoDto> getMockRecordMemo() {
+
+		// Mock 메모 데이터 생성
+		RecordResponseDTO.RecordMemoDto response = RecordResponseDTO.RecordMemoDto.builder()
+			.limjangId(noteId)
+			.memo("- 베란다 확장 공사 완료. 냉기 차단 잘 됨 - 단지내 어린이집")
+			.createdAt(LocalDateTime.of(2024, 11, 15, 10, 30))
+			.updatedAt(LocalDateTime.of(2024, 11, 20, 17, 0))
+			.recordDto(List.of())
+			.build();
+
+		return ApiResponse.onSuccess(response);
+	}
+
+}
diff --git a/src/main/java/umc/th/juinjang/auth/config/SecurityConfig.java b/src/main/java/umc/th/juinjang/auth/config/SecurityConfig.java
index 03424875..c156e129 100644
--- a/src/main/java/umc/th/juinjang/auth/config/SecurityConfig.java
+++ b/src/main/java/umc/th/juinjang/auth/config/SecurityConfig.java
@@ -37,7 +37,8 @@ public class SecurityConfig {
 		"/api/auth/v2/kakao/**",
 		"/api/members/nickname/exists",
 		"/api/app/version/ios",
-		"/api/apple/notifications/v2"
+		"/api/apple/notifications/v2",
+		"/api/mock/**"
 	};
 	// 개발 환경에서만 추가로 허용되는 URL 패턴
 	private static final String[] DEV_WHITELIST_URLS = {

From 4bd8099a084f5811c3e8f3ef2febcbb310dea440 Mon Sep 17 00:00:00 2001
From: essaysir <sonjs7554@naver.com>
Date: Wed, 3 Dec 2025 00:58:17 +0900
Subject: [PATCH 2/5] =?UTF-8?q?fix=20:=20=EB=B9=8C=EB=93=9C=20=EC=98=A4?=
 =?UTF-8?q?=EB=A5=98=20=EC=88=98=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/main/java/umc/th/juinjang/api/mock/MockController.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/main/java/umc/th/juinjang/api/mock/MockController.java b/src/main/java/umc/th/juinjang/api/mock/MockController.java
index 95e01690..574b7540 100644
--- a/src/main/java/umc/th/juinjang/api/mock/MockController.java
+++ b/src/main/java/umc/th/juinjang/api/mock/MockController.java
@@ -56,7 +56,7 @@ public ApiResponse<RecordResponseDTO.RecordMemoDto> getMockRecordMemo() {
 
 		// Mock 메모 데이터 생성
 		RecordResponseDTO.RecordMemoDto response = RecordResponseDTO.RecordMemoDto.builder()
-			.limjangId(noteId)
+			.limjangId(1L)
 			.memo("- 베란다 확장 공사 완료. 냉기 차단 잘 됨 - 단지내 어린이집")
 			.createdAt(LocalDateTime.of(2024, 11, 15, 10, 30))
 			.updatedAt(LocalDateTime.of(2024, 11, 20, 17, 0))

From 699dc77dea36ec246132213074623a6c182f4c17 Mon Sep 17 00:00:00 2001
From: essaysir <sonjs7554@naver.com>
Date: Mon, 8 Dec 2025 14:16:57 +0900
Subject: [PATCH 3/5] =?UTF-8?q?feat=20:=20=EC=B2=B4=ED=81=AC=EB=A6=AC?=
 =?UTF-8?q?=EC=8A=A4=ED=8A=B8=20Mock=20API=20=EC=B6=94=EA=B0=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../response/UserNotesGetResponse.java        |  2 +-
 .../th/juinjang/api/mock/MockController.java  | 83 +++++++++++++++++++
 2 files changed, 84 insertions(+), 1 deletion(-)

diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
index 322a7b65..57f11a3d 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
@@ -65,7 +65,7 @@ public static UserNotesGetResponse mock() {
 				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_2.png",
 				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_3.png"),
 			true,
-			"4.6",
+			"3.63",
 			"3010000000",
 			null,
 			28,
diff --git a/src/main/java/umc/th/juinjang/api/mock/MockController.java b/src/main/java/umc/th/juinjang/api/mock/MockController.java
index 574b7540..335ecb92 100644
--- a/src/main/java/umc/th/juinjang/api/mock/MockController.java
+++ b/src/main/java/umc/th/juinjang/api/mock/MockController.java
@@ -1,6 +1,7 @@
 package umc.th.juinjang.api.mock;
 
 import java.time.LocalDateTime;
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.web.bind.annotation.GetMapping;
@@ -9,6 +10,7 @@
 
 import io.swagger.v3.oas.annotations.Operation;
 import lombok.RequiredArgsConstructor;
+import umc.th.juinjang.api.checklist.service.response.ChecklistAnswerResponseDTO;
 import umc.th.juinjang.api.checklist.service.response.ReportGetResponse;
 import umc.th.juinjang.api.checklist.service.response.ReportWithLimjangResponseDTO;
 import umc.th.juinjang.api.dto.ApiResponse;
@@ -17,6 +19,8 @@
 import umc.th.juinjang.api.limjang.service.response.UserNoteGetResponse;
 import umc.th.juinjang.api.limjang.service.response.UserNotesGetResponse;
 import umc.th.juinjang.api.record.service.response.RecordResponseDTO;
+import umc.th.juinjang.domain.checklist.model.ChecklistQuestionCategory;
+import umc.th.juinjang.domain.checklist.model.ChecklistQuestionType;
 
 @RestController
 @RequestMapping("/api/mock")
@@ -66,4 +70,83 @@ public ApiResponse<RecordResponseDTO.RecordMemoDto> getMockRecordMemo() {
 		return ApiResponse.onSuccess(response);
 	}
 
+	@Operation(summary = "체크리스트 조회 Mock API")
+	@GetMapping("/notes/mock/checklists")
+	public ApiResponse<List<ChecklistAnswerResponseDTO.AnswerDto>> getMockChecklistAnswer() {
+		Long limjangId = 1L;
+
+		// 카테고리, 답변, 답변타입 순서로 정의
+		Object[][] mockData = {
+			// 입지여건
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "2호선 신당역", ChecklistQuestionType.DROPDOWN},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "1", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "아파트 단지", ChecklistQuestionType.DROPDOWN},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "남향", ChecklistQuestionType.DROPDOWN},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "1", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "2000년도", ChecklistQuestionType.TEXT_FIELD},
+			{ChecklistQuestionCategory.LOCATION_CONDITION, "3", ChecklistQuestionType.SCORE},
+			// 공용공간
+			{ChecklistQuestionCategory.PUBLIC_SPACE, "2대", ChecklistQuestionType.TEXT_FIELD},
+			{ChecklistQuestionCategory.PUBLIC_SPACE, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.PUBLIC_SPACE, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.PUBLIC_SPACE, "1", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.PUBLIC_SPACE, "3", ChecklistQuestionType.SCORE},
+			// 실내
+			{ChecklistQuestionCategory.INDOOR, "설치형에어컨", ChecklistQuestionType.DROPDOWN},
+			{ChecklistQuestionCategory.INDOOR, "2", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "거실중앙형 구조", ChecklistQuestionType.DROPDOWN},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "1", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "2", ChecklistQuestionType.TEXT_FIELD},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "4", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "3", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE},
+			{ChecklistQuestionCategory.INDOOR, "5", ChecklistQuestionType.SCORE}
+		};
+
+		List<ChecklistAnswerResponseDTO.AnswerDto> answers = new ArrayList<>();
+		for (int i = 0; i < mockData.length; i++) {
+			answers.add(ChecklistAnswerResponseDTO.AnswerDto.builder()
+				.answerId((long)(i + 1))
+				.questionId((long)(i + 1))
+				.category((ChecklistQuestionCategory)mockData[i][0])
+				.limjangId(limjangId)
+				.answer((String)mockData[i][1])
+				.answerType((ChecklistQuestionType)mockData[i][2])
+				.build());
+		}
+
+		return ApiResponse.onSuccess(answers);
+	}
+
 }

From 6a2275d9a9c74101de194ed910804355eb091b5c Mon Sep 17 00:00:00 2001
From: essaysir <sonjs7554@naver.com>
Date: Mon, 8 Dec 2025 14:39:14 +0900
Subject: [PATCH 4/5] =?UTF-8?q?=20=20feat=20:=20=EC=B2=B4=ED=81=AC?=
 =?UTF-8?q?=EB=A6=AC=EC=8A=A4=ED=8A=B8=20=EC=A1=B0=ED=9A=8C=20Mock=20API?=
 =?UTF-8?q?=20=EC=83=81=EC=84=B8=20=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EA=B5=AC?=
 =?UTF-8?q?=ED=98=84=20=EB=B0=8F=20=EA=B2=BD=EB=A1=9C=20=EC=A0=95=EB=A6=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../response/LimjangDetailGetResponse.java    | 89 ++++++++++---------
 .../LimjangsMainGetVersion2Response.java      |  2 +-
 .../service/response/UserNoteGetResponse.java |  5 +-
 .../response/UserNotesGetResponse.java        |  6 +-
 .../th/juinjang/api/mock/MockController.java  |  6 +-
 5 files changed, 56 insertions(+), 52 deletions(-)

diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
index 6477d2a9..ba669af3 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
@@ -1,57 +1,60 @@
 package umc.th.juinjang.api.limjang.service.response;
 
-import static umc.th.juinjang.api.limjang.service.LimjangPriceBridge.makePriceListVersion2;
+import static umc.th.juinjang.api.limjang.service.LimjangPriceBridge.*;
 
 import java.time.LocalDateTime;
 import java.util.List;
+
 import lombok.Builder;
-import umc.th.juinjang.domain.image.model.Image;
 import umc.th.juinjang.domain.checklist.model.LimjangCheckListVersion;
+import umc.th.juinjang.domain.image.model.Image;
 import umc.th.juinjang.domain.limjang.model.Limjang;
 
 @Builder
 public record LimjangDetailGetResponse(
-    long limjangId,
-    LimjangCheckListVersion checkListVersion,
-    List<String> images,
-    int purposeCode,
-    String nickname,
-    int priceType,
-    List<String> priceList,
-    String address,
-    String addressDetail,
-    LocalDateTime createdAt,
-    LocalDateTime updatedAt
+	long limjangId,
+	LimjangCheckListVersion checkListVersion,
+	List<String> images,
+	int purposeCode,
+	String nickname,
+	int priceType,
+	List<String> priceList,
+	String address,
+	String addressDetail,
+	LocalDateTime createdAt,
+	LocalDateTime updatedAt
 ) {
-  public static LimjangDetailGetResponse of(Limjang limjang){
-    return LimjangDetailGetResponse.builder()
-        .limjangId(limjang.getLimjangId())
-        .checkListVersion(LimjangCheckListVersion.getByLimjangType(limjang))
-        .images(limjang.getImageList().stream().map(Image::getImageUrl).toList())
-        .purposeCode(limjang.getPurpose().getValue())
-        .nickname(limjang.getNickname())
-        .priceType(limjang.getPriceType().getValue())
-        .priceList(makePriceListVersion2(limjang.getPriceType(), limjang.getPurpose(), limjang.getLimjangPrice()))
-        .address(limjang.getAddress())
-        .addressDetail(limjang.getAddressDetail())
-        .createdAt(limjang.getCreatedAt())
-        .updatedAt(limjang.getUpdatedAt())
-        .build();
-  }
+	public static LimjangDetailGetResponse of(Limjang limjang) {
+		return LimjangDetailGetResponse.builder()
+			.limjangId(limjang.getLimjangId())
+			.checkListVersion(LimjangCheckListVersion.getByLimjangType(limjang))
+			.images(limjang.getImageList().stream().map(Image::getImageUrl).toList())
+			.purposeCode(limjang.getPurpose().getValue())
+			.nickname(limjang.getNickname())
+			.priceType(limjang.getPriceType().getValue())
+			.priceList(makePriceListVersion2(limjang.getPriceType(), limjang.getPurpose(), limjang.getLimjangPrice()))
+			.address(limjang.getAddress())
+			.addressDetail(limjang.getAddressDetail())
+			.createdAt(limjang.getCreatedAt())
+			.updatedAt(limjang.getUpdatedAt())
+			.build();
+	}
 
-  public static LimjangDetailGetResponse mock() {
-    return LimjangDetailGetResponse.builder()
-        .limjangId(1L)
-        .checkListVersion(LimjangCheckListVersion.LIMJANG)
-        .images(List.of("https://example.com/image1.jpg", "https://example.com/image2.jpg"))
-        .purposeCode(1)
-        .nickname("우성 아파트")
-        .priceType(0)
-        .priceList(List.of("500000000"))
-        .address("서울특별시 강남구 테헤란로 123")
-        .addressDetail("101동 1001호")
-        .createdAt(LocalDateTime.of(2024, 11, 15, 10, 30))
-        .updatedAt(LocalDateTime.of(2024, 11, 20, 14, 20))
-        .build();
-  }
+	public static LimjangDetailGetResponse mock() {
+		return LimjangDetailGetResponse.builder()
+			.limjangId(1L)
+			.checkListVersion(LimjangCheckListVersion.LIMJANG)
+			.images(List.of("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_1.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_2.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_3.jpeg"))
+			.purposeCode(1)
+			.nickname("우성 아파트")
+			.priceType(0)
+			.priceList(List.of("500000000"))
+			.address("서울특별시 강남구 테헤란로 123")
+			.addressDetail("101동 1001호")
+			.createdAt(LocalDateTime.of(2024, 11, 15, 10, 30))
+			.updatedAt(LocalDateTime.of(2024, 11, 20, 14, 20))
+			.build();
+	}
 }
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java
index 35f5fbce..b7da1e5f 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangsMainGetVersion2Response.java
@@ -39,7 +39,7 @@ public static LimjangsMainGetVersion2Response mock() {
 		LimjangMainVersion2Response mockNote = LimjangMainVersion2Response.builder()
 			.limjangId(1L)
 			.priceType(0)
-			.image("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_1.png")
+			.image("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_1.jpeg")
 			.nickname("우성 아파트")
 			.price("3010000000")
 			.totalAverage("4.5")
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java
index 3dc50c95..45156c2b 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNoteGetResponse.java
@@ -61,8 +61,9 @@ public static UserNoteGetResponse mock() {
 			LimjangPropertyType.APARTMENT,
 			LimjangPriceType.SALE,
 			"우성 아파트",
-			List.of("https://example.com/image1.jpg", "https://example.com/image2.jpg",
-				"https://example.com/image3.jpg"),
+			List.of("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_1.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_2.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_3.jpeg"),
 			"서울 송파구 잠실동",
 			"101-1",
 			"3010000000",
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
index 57f11a3d..339d6f00 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
@@ -61,9 +61,9 @@ public static UserNotesGetResponse mock() {
 			LimjangPropertyType.APARTMENT,
 			LimjangPriceType.SALE,
 			"우성 아파트",
-			List.of("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_1.png",
-				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_2.png",
-				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_3.png"),
+			List.of("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_1.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_2.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_3.jpeg"),
 			true,
 			"3.63",
 			"3010000000",
diff --git a/src/main/java/umc/th/juinjang/api/mock/MockController.java b/src/main/java/umc/th/juinjang/api/mock/MockController.java
index 335ecb92..53c248eb 100644
--- a/src/main/java/umc/th/juinjang/api/mock/MockController.java
+++ b/src/main/java/umc/th/juinjang/api/mock/MockController.java
@@ -46,7 +46,7 @@ public ApiResponse<UserNotesGetResponse> getMockUserNotes() {
 	}
 
 	@Operation(summary = "리포트 조회 Mock API")
-	@GetMapping("/notes/mock/report")
+	@GetMapping("/notes/report")
 	public ApiResponse<ReportWithLimjangResponseDTO> getMockReport() {
 		ReportGetResponse reportMock = ReportGetResponse.mock();
 		LimjangDetailGetResponse limjangMock = LimjangDetailGetResponse.mock();
@@ -55,7 +55,7 @@ public ApiResponse<ReportWithLimjangResponseDTO> getMockReport() {
 	}
 
 	@Operation(summary = "녹음 및 메모 조회 Mock API")
-	@GetMapping("/notes/mock/records")
+	@GetMapping("/notes/records")
 	public ApiResponse<RecordResponseDTO.RecordMemoDto> getMockRecordMemo() {
 
 		// Mock 메모 데이터 생성
@@ -71,7 +71,7 @@ public ApiResponse<RecordResponseDTO.RecordMemoDto> getMockRecordMemo() {
 	}
 
 	@Operation(summary = "체크리스트 조회 Mock API")
-	@GetMapping("/notes/mock/checklists")
+	@GetMapping("/notes/checklists")
 	public ApiResponse<List<ChecklistAnswerResponseDTO.AnswerDto>> getMockChecklistAnswer() {
 		Long limjangId = 1L;
 

From dd448d40c694904a192c145a71d093aad25d2ad1 Mon Sep 17 00:00:00 2001
From: essaysir <sonjs7554@naver.com>
Date: Mon, 8 Dec 2025 18:44:41 +0900
Subject: [PATCH 5/5] =?UTF-8?q?feat=20:=20Mock=20API=20=EC=A4=84=EB=B0=94?=
 =?UTF-8?q?=EA=BF=88=20=EC=B6=94=EA=B0=80=20,=20=EC=9D=B4=EB=AF=B8?=
 =?UTF-8?q?=EC=A7=80=20=EC=B6=94=EA=B0=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../api/limjang/service/response/LimjangDetailGetResponse.java | 3 ++-
 .../api/limjang/service/response/UserNotesGetResponse.java     | 3 ++-
 src/main/java/umc/th/juinjang/api/mock/MockController.java     | 2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
index ba669af3..8732718b 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/LimjangDetailGetResponse.java
@@ -46,7 +46,8 @@ public static LimjangDetailGetResponse mock() {
 			.checkListVersion(LimjangCheckListVersion.LIMJANG)
 			.images(List.of("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_1.jpeg",
 				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_2.jpeg",
-				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_3.jpeg"))
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_3.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_4.jpeg"))
 			.purposeCode(1)
 			.nickname("우성 아파트")
 			.priceType(0)
diff --git a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
index 339d6f00..be022c68 100644
--- a/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
+++ b/src/main/java/umc/th/juinjang/api/limjang/service/response/UserNotesGetResponse.java
@@ -63,7 +63,8 @@ public static UserNotesGetResponse mock() {
 			"우성 아파트",
 			List.of("https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock-png_1.jpeg",
 				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_2.jpeg",
-				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_3.jpeg"),
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_3.jpeg",
+				"https://juinjang-bucket.s3.ap-northeast-2.amazonaws.com/mock/mock_png_4.jpeg"),
 			true,
 			"3.63",
 			"3010000000",
diff --git a/src/main/java/umc/th/juinjang/api/mock/MockController.java b/src/main/java/umc/th/juinjang/api/mock/MockController.java
index 53c248eb..937f14ee 100644
--- a/src/main/java/umc/th/juinjang/api/mock/MockController.java
+++ b/src/main/java/umc/th/juinjang/api/mock/MockController.java
@@ -61,7 +61,7 @@ public ApiResponse<RecordResponseDTO.RecordMemoDto> getMockRecordMemo() {
 		// Mock 메모 데이터 생성
 		RecordResponseDTO.RecordMemoDto response = RecordResponseDTO.RecordMemoDto.builder()
 			.limjangId(1L)
-			.memo("- 베란다 확장 공사 완료. 냉기 차단 잘 됨 - 단지내 어린이집")
+			.memo("- 베란다 확장 공사 완료. 냉기 차단 잘 됨 \n - 단지내 어린이집")
 			.createdAt(LocalDateTime.of(2024, 11, 15, 10, 30))
 			.updatedAt(LocalDateTime.of(2024, 11, 20, 17, 0))
 			.recordDto(List.of())
