Skip to content

Commit

Permalink
[BE] 체크리스트 지하철 정보 저장 시 위도, 경도가 NULL 인 경우도 허용한다. (#1065)
Browse files Browse the repository at this point in the history
  • Loading branch information
tkdgur0906 authored Dec 10, 2024
1 parent b242129 commit ef4d521
Show file tree
Hide file tree
Showing 5 changed files with 44 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -349,8 +349,8 @@ private void updateChecklistMaintenances(ChecklistRequest checklistRequest, Chec
}

private void updateChecklistStations(RoomRequest roomRequest, Checklist checklist) {
double latitude = roomRequest.latitude();
double longitude = roomRequest.longitude();
Double latitude = roomRequest.latitude();
Double longitude = roomRequest.longitude();
checklistStationService.updateChecklistStation(checklist, latitude, longitude);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public class ChecklistStationService {
private final SubwayStationService subwayStationService;

@Transactional
public void createChecklistStations(Checklist checklist, double latitude, double longitude) {
public void createChecklistStations(Checklist checklist, Double latitude, Double longitude) {
saveChecklistStations(checklist, latitude, longitude);
}

Expand All @@ -28,7 +28,7 @@ public List<ChecklistStation> readChecklistStationsByChecklist(Checklist checkli
}

@Transactional
public void updateChecklistStation(Checklist checklist, double latitude, double longitude) {
public void updateChecklistStation(Checklist checklist, Double latitude, Double longitude) {
checklistStationRepository.deleteAllByChecklistId(checklist.getId());
saveChecklistStations(checklist, latitude, longitude);
}
Expand All @@ -38,7 +38,10 @@ public void deleteChecklistStation(Long checklistId) {
checklistStationRepository.deleteAllByChecklistId(checklistId);
}

private void saveChecklistStations(Checklist checklist, double latitude, double longitude) {
private void saveChecklistStations(Checklist checklist, Double latitude, Double longitude) {
if (latitude == null || longitude == null) {
return;
}
List<SubwayStationResponse> responses = subwayStationService.readNearestStation(latitude, longitude)
.getStations();
List<ChecklistStation> checklistStations = new ArrayList<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,16 @@ public static ChecklistRequestV1 CHECKLIST_CREATE_REQUEST_V1() {
);
}

public static ChecklistRequestV1 CHECKLIST_CREATE_REQUEST_V1_EMPTY_LOCATION() {
return new ChecklistRequestV1(
RoomFixture.ROOM_CREATE_REQUEST_EMPTY_LOCATION(),
List.of(Option.REFRIGERATOR.getId(), Option.SINK.getId(), Option.INDUCTION.getId(),
Option.SHOE_RACK.getId()),
List.of(QUESTION_1_CREATE_REQUEST(), QUESTION_2_CREATE_REQUEST(),
QUESTION_3_CREATE_REQUEST(), QUESTION_5_CREATE_REQUEST())
);
}

public static ChecklistRequest CHECKLIST_CREATE_REQUEST2() {
return new ChecklistRequest(
RoomFixture.ROOM_CREATE_REQUEST(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,20 @@ void createChecklistV1() {
assertThat(checklistId).isGreaterThan(0);
}

@DisplayName("체크리스트 작성 v1 성공 : 위도, 경도가 null 인 경우")
@Test
void createChecklistV1_emptyLocation() {
//given
User user = userRepository.save(UserFixture.USER1());
ChecklistRequestV1 checklistRequestV1 = ChecklistFixture.CHECKLIST_CREATE_REQUEST_V1_EMPTY_LOCATION();

// when
long checklistId = checklistManageService.createChecklistV1(user, checklistRequestV1);

//then
assertThat(checklistId).isGreaterThan(0);
}

@DisplayName("작성된 체크리스트 조회 성공")
@Test
void readChecklist() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,18 @@ public static RoomRequest ROOM_CREATE_REQUEST() {
);
}

public static RoomRequest ROOM_CREATE_REQUEST_EMPTY_LOCATION() {
return new RoomRequest(
"방이름", "부산광역시 북구", "루터회관", "잠실",
10, 1000, 50, 5,
List.of(1, 3), FloorLevel.GROUND.getName(), 10,
Structure.TWO_ROOM.getName(), 3.3, null, null,
12, OccupancyMonth.APRIL.getMonth(),
OccupancyPeriod.EARLY.getPeriod(),
"방끗공인중개사", "메모", "한줄평"
);
}

public static RoomRequest ROOM_UPDATE_REQUEST() {
return new RoomRequest(
"방이름", "부산광역시 루터회관", "잠실역", "루터회관",
Expand Down

0 comments on commit ef4d521

Please sign in to comment.