Skip to content

Commit

Permalink
Merge pull request #84 from SanE-Seo/develop
Browse files Browse the repository at this point in the history
Develop
  • Loading branch information
Changha-dev authored May 5, 2024
2 parents 4b7e961 + 38ec616 commit 3bf81d7
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ public PostController(PostService postService) {

@PostMapping
public ResponseEntity<?> addPost(@LoginMember AuthMember authMember, @RequestBody AddPostRequest request) {
postService.addPost(authMember.getId(), request);
return ApiResponse.ok("게시글이 추가되었습니다.");
Long postId = postService.addPost(authMember.getId(), request);
return ApiResponse.ok("게시글이 추가되었습니다.", postId);
}

@GetMapping("/{postId}")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public class PostService {
private final CoordinateService coordinateService;

@Transactional
public Post addPost(Long memberId, AddPostRequest request) {
public Long addPost(Long memberId, AddPostRequest request) {

Member member = memberPort.loadById(memberId);

Expand Down Expand Up @@ -61,7 +61,7 @@ public Post addPost(Long memberId, AddPostRequest request) {
PostDistrict postDistrict = new PostDistrict(post, district);
postDistrictPort.save(postDistrict); // PostDistrict 저장

return post; // 저장된 Post 반환
return post.getId(); // 저장된 Post 반환
}

public GetPostResponse getPost(Long postId) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

import java.util.List;

public record GetPostDistrictResponse(Long postId, Long authorId, String authorName, String authorProfileImageUrl, List<GetImageResponse> postImages, String title, String subTitle, String time, int likes, String distance, String level, String districts) {
public record GetPostDistrictResponse(Long postId, Long authorId, String authorName, String authorProfileImageUrl, List<GetImageResponse> postImages, String title, String subTitle, String time, int likes, String distance, String level, String districts, String lat, String lng) {

public GetPostDistrictResponse {
Assert.notNull(postId, "게시글 ID는 필수입니다.");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,13 @@
import com.seoultech.sanEseo.post.domain.Post;
import com.seoultech.sanEseo.post_district.application.port.PostDistrictPort;
import com.seoultech.sanEseo.post_district.domain.PostDistrict;
import com.seoultech.sanEseo.public_api.application.service.CoordinateService;
import com.seoultech.sanEseo.public_api.application.service.dto.GetCoordinateResponse;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Slice;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

@Service
Expand All @@ -26,12 +27,14 @@ public class PostDistrictService {
private final PostDistrictPort postDistrictPort;
private final ImageService imageService;
private final LikeService likeService;
private final CoordinateService coordinateService;

public PostDistrictService(DistrictPort districtPort, PostDistrictPort postDistrictPort, ImageService imageService, LikeService likeService) {
public PostDistrictService(DistrictPort districtPort, PostDistrictPort postDistrictPort, ImageService imageService, LikeService likeService, CoordinateService coordinateService) {
this.districtPort = districtPort;
this.postDistrictPort = postDistrictPort;
this.imageService = imageService;
this.likeService = likeService;
this.coordinateService = coordinateService;
}

public void createPostDistrictRelation(Post post, Long districtId) {
Expand Down Expand Up @@ -59,7 +62,6 @@ public List<GetPostDistrictResponse> getAllPostDistrict(Pageable pageable, int c
return getPostDistrictResponses(postDistricts);
}


public List<GetPostDistrictResponse> getPostByLikesSortedDesc(int category) {
Category categoryEnum = Category.from(category);
List<PostDistrict> postDistricts = postDistrictPort.findByPostCategory(categoryEnum);
Expand All @@ -82,6 +84,12 @@ private List<GetPostDistrictResponse> getPostDistrictResponses(List<PostDistrict
Post post = postDistrict.getPost();
Member author = post.getMember();

// 좌표값 찾기
GetCoordinateResponse coordinateResponse = coordinateService.getCoordinateResponse(post);
List<List<Double>> coordinates = coordinateResponse.getCoordinates();
List initial_value = coordinates.get(0);


List<PostImage> images = imageService.getPostImages(post.getId());
List<GetImageResponse> imageResponses = images.stream().map(image -> new GetImageResponse(image.getImageUrl())).collect(Collectors.toList());
int likeCount = likeService.getLikeCount(post.getId());
Expand All @@ -97,7 +105,9 @@ private List<GetPostDistrictResponse> getPostDistrictResponses(List<PostDistrict
likeCount, // 가정: Post 엔티티에 좋아요 수를 반환하는 getLikes() 메소드가 있음
post.getDistance(),
post.getLevel(),
postDistrict.getDistrict().getName()
postDistrict.getDistrict().getName(),
initial_value.get(0).toString(),
initial_value.get(1).toString()
);
}).collect(Collectors.toList());
return responses;
Expand Down

0 comments on commit 3bf81d7

Please sign in to comment.