Skip to content

Commit

Permalink
Merge pull request #30 from team-winey/dev
Browse files Browse the repository at this point in the history
[Feat] ๋งˆ์ดํ”ผ๋“œ ๋ฐฐํฌ
  • Loading branch information
funnysunny08 authored Jul 12, 2023
2 parents ed981a9 + 313d561 commit f5a66bb
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 8 deletions.
9 changes: 6 additions & 3 deletions src/main/java/org/winey/server/controller/FeedController.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,10 @@
import org.winey.server.controller.request.CreateFeedRequestDto;
import org.winey.server.controller.response.feed.CreateFeedResponseDto;
import org.winey.server.controller.response.feed.GetAllFeedResponseDto;
import org.winey.server.controller.response.recommend.RecommendListResponseDto;
import org.winey.server.exception.Success;
import org.winey.server.external.client.aws.S3Service;
import org.winey.server.service.FeedService;

import javax.validation.Valid;

@RestController
@RequiredArgsConstructor
@RequestMapping("/feed")
Expand Down Expand Up @@ -49,4 +46,10 @@ public ApiResponse deleteFeed(
public ApiResponse<GetAllFeedResponseDto> getAllFeed(@RequestParam int page, @RequestHeader Long userId) {
return ApiResponse.success(Success.GET_FEED_LIST_SUCCESS, feedService.getAllFeed(page, userId));
}

@GetMapping("/myFeed")
@ResponseStatus(HttpStatus.OK)
public ApiResponse<GetAllFeedResponseDto> getMyFeed(@RequestParam int page, @RequestHeader Long userId){
return ApiResponse.success(Success.GET_MYFEED_SUCCESS, feedService.getMyFeed(page, userId));
}
}
1 change: 1 addition & 0 deletions src/main/java/org/winey/server/exception/Success.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ public enum Success {
GET_RECOMMEND_LIST_SUCCESS(HttpStatus.OK, "์ถ”์ฒœ ์œ„๋‹ˆ ์ „์ฒด ์กฐํšŒ ์„ฑ๊ณต"),
GET_FEED_LIST_SUCCESS(HttpStatus.OK, "ํ”ผ๋“œ ์ „์ฒด ์กฐํšŒ ์„ฑ๊ณต"),
GET_USER_SUCCESS(HttpStatus.OK, "์œ ์ € ์กฐํšŒ ์„ฑ๊ณต"),
GET_MYFEED_SUCCESS(HttpStatus.OK, "๋งˆ์ด ํ”ผ๋“œ ์กฐํšŒ ์„ฑ๊ณต"),

/**
* 201 CREATED
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.repository.Repository;
import org.winey.server.domain.feed.Feed;
import org.winey.server.domain.user.User;

import java.util.List;
import java.util.Optional;
Expand All @@ -13,6 +14,6 @@ public interface FeedRepository extends Repository<Feed,Long> {
void save(Feed feed);
Optional<Feed> findByFeedId(Long feedId);
void delete(Feed feed);

Page<Feed> findAllByOrderByCreatedAtDesc(Pageable pageable);
Page<Feed> findAllByUserOrderByCreatedAtDesc(User user, Pageable pageable);
}
25 changes: 21 additions & 4 deletions src/main/java/org/winey/server/service/FeedService.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,7 @@
import org.winey.server.common.dto.ApiResponse;
import org.winey.server.controller.request.CreateFeedRequestDto;
import org.winey.server.controller.response.PageResponseDto;
import org.winey.server.controller.response.feed.CreateFeedResponseDto;
import org.winey.server.controller.response.feed.GetAllFeedResponseDto;
import org.winey.server.controller.response.feed.GetFeedResponseDto;
import org.winey.server.controller.response.feed.GetWriterResponseDto;
import org.winey.server.controller.response.feed.*;
import org.winey.server.controller.response.recommend.RecommendResponseDto;
import org.winey.server.domain.feed.Feed;
import org.winey.server.domain.goal.Goal;
Expand Down Expand Up @@ -119,7 +116,27 @@ public GetAllFeedResponseDto getAllFeed(int page, Long userId){
feed.getCreatedAt().toLocalDate() //ํ•ด๋‹น ํ”ผ๋“œ ๋งŒ๋“  ๋‚ ์งœ localdate๋กœ ๋ฐ”๊ฟ”์„œ ์ฃผ๊ธฐ.
)).collect(Collectors.toList());
return GetAllFeedResponseDto.of(pageInfo,feeds);
}

public GetAllFeedResponseDto getMyFeed(int page, Long userId){
User myUser = userRepository.findByUserId(userId).orElseThrow(()-> new NotFoundException(Error.NOT_FOUND_USER_EXCEPTION, Error.NOT_FOUND_USER_EXCEPTION.getMessage()));
PageRequest pageRequest = PageRequest.of(page, 50);
Page<Feed> myFeedPage = feedRepository.findAllByUserOrderByCreatedAtDesc(myUser,pageRequest);
PageResponseDto pageInfo = PageResponseDto.of(myFeedPage.getTotalPages(), myFeedPage.getNumber() + 1, (myFeedPage.getTotalPages() == myFeedPage.getNumber() + 1));
List<GetFeedResponseDto> feeds = myFeedPage.stream()
.map(myFeed -> GetFeedResponseDto.of(
myFeed.getFeedId(),
myFeed.getUser().getUserId(),
myFeed.getUser().getNickname(),
myFeed.getUser().getUserLevel().getLevelNumber(),
myFeed.getFeedTitle(),
myFeed.getFeedImage(),
myFeed.getFeedMoney(),
feedLikeRepository.existsByFeedAndUser(myFeed,myUser), //ํ˜„์žฌ ์ ‘์†ํ•œ ์œ ์ €๊ฐ€ ์ข‹์•„์š” ๋ˆŒ๋ €๋Š”์ง€
feedLikeRepository.countByFeed(myFeed), //ํ•ด๋‹น ํ”ผ๋“œ์˜ ์ข‹์•„์š” ๊ฐœ์ˆ˜ ์„ธ๊ธฐ.
myFeed.getCreatedAt().toLocalDate() //ํ•ด๋‹น ํ”ผ๋“œ ๋งŒ๋“  ๋‚ ์งœ localdate๋กœ ๋ฐ”๊ฟ”์„œ ์ฃผ๊ธฐ.
)).collect(Collectors.toList());
return GetAllFeedResponseDto.of(pageInfo,feeds);

}
}

0 comments on commit f5a66bb

Please sign in to comment.