-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix/#42 test fix #52
Fix/#42 test fix #52
Changes from all commits
86155c6
40c8e24
f8dab73
63e7ad4
a9791b9
9a8f4c6
7c30e0c
26e1211
af99187
07c02c8
068d559
e6b3244
74f30dd
8556edb
7217245
86546e5
30787fb
ef78c37
e6466c5
3c5b56d
1bfb467
9c72755
779faf3
21e69ba
b3521b7
4f1058a
cacd90b
0a1bc41
28f1d09
905fd25
b5db37b
9417cf3
288f7b4
c703663
8ff4c13
aebc863
c7ce85f
b20c336
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -25,6 +25,20 @@ jobs: | |
touch ./application-secret.yml | ||
echo "${{ secrets.APPLICATION_SECRET }}" > ./application-secret.yml | ||
|
||
- name: firebase_service_key.json ํ์ผ ์์ฑ | ||
id: create-json | ||
uses: jsdaniell/[email protected] | ||
with: | ||
name: "firebase_service_key.json" | ||
json: ${{ secrets.FCM_KEY }} | ||
|
||
|
||
- name: JSON ํ์ผ ์ด๋ ๋ฐ ๋ก๊ทธ ํ์ธ | ||
run: | | ||
mv ./firebase_service_key.json ./src/main/resources/firebase_service_key.json | ||
cd ./src/main/resources | ||
ls -a . | ||
|
||
- name: Gradle ๊ถํ ํ์ฉ | ||
run: chmod +x gradlew | ||
- name: PR ๋ฐ PUSH ์ , ํ ์คํธ ํ์ธ | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
package com.aliens.backend.block.controller; | ||
|
||
import com.aliens.backend.auth.controller.dto.LoginMember; | ||
import com.aliens.backend.block.controller.dto.BlockRequest; | ||
import com.aliens.backend.block.service.BlockService; | ||
import com.aliens.backend.global.config.resolver.Login; | ||
import com.aliens.backend.global.response.SuccessResponse; | ||
import com.aliens.backend.global.response.success.ChatSuccess; | ||
import org.springframework.web.bind.annotation.PostMapping; | ||
import org.springframework.web.bind.annotation.RequestBody; | ||
import org.springframework.web.bind.annotation.RestController; | ||
|
||
@RestController | ||
public class BlockController { | ||
|
||
private final BlockService blockService; | ||
|
||
public BlockController(BlockService blockService) { | ||
this.blockService = blockService; | ||
} | ||
|
||
@PostMapping("/chat/block") | ||
public SuccessResponse<String> blockPartner(@Login LoginMember loginMember, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ๋ฉค๋ฒ๋ ๋ณํํด์ฃผ์ จ๋ค์! ๊ฐ์ฌํฉ๋๋ค There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ์ํ๋๊ป์ ์์ฑํ์ ๋ฆฌ๋ทฐ์์ ์ฒ๋ผ, ์์ง @Login ์์ Long memberId๋ฅผ ๋ฐ๊ณ ์๋ ์ปจํธ๋กค๋ฌ๋ ์์ต๋๋ค! |
||
@RequestBody BlockRequest request) { | ||
return SuccessResponse.of( | ||
ChatSuccess.BLOCK_SUCCESS, | ||
blockService.blockPartner(loginMember, request) | ||
); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
package com.aliens.backend.block.controller.dto; | ||
|
||
public record BlockRequest(Long partnerId, Long chatRoomId) { | ||
} |
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. chatBlock -> Block์ผ๋ก ๋ณ๊ฒฝ๋ ๋ถ๋ถ์ธ๊ฐ์? |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
package com.aliens.backend.block.domain; | ||
|
||
import com.aliens.backend.auth.domain.Member; | ||
import jakarta.persistence.*; | ||
|
||
@Entity | ||
public class Block { | ||
@Id | ||
@GeneratedValue(strategy = GenerationType.IDENTITY) | ||
@Column | ||
private Long id; | ||
|
||
@ManyToOne | ||
@JoinColumn(name = "blocking_member_id") | ||
private Member blockingMember; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Join ๋ฃ์ด์ฃผ์ จ๊ตฐ์! There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ใ
ใ
ใ
ํผ๋๋ฐฑ ๋๋ฆฐ ๋ด์ฉ์ ์ ๊ฐ ์์ ํด์ ์ฃ์กํฉ๋๋ค.. |
||
|
||
@ManyToOne | ||
@JoinColumn(name = "blocked_member_id") | ||
private Member blockedMember; | ||
|
||
protected Block() { | ||
} | ||
|
||
public static Block of(Member blockedMember, Member blockingMember) { | ||
Block block = new Block(); | ||
block.blockingMember = blockingMember; | ||
block.blockedMember = blockedMember; | ||
return block; | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
package com.aliens.backend.block.domain.repository; | ||
|
||
import com.aliens.backend.block.domain.Block; | ||
import org.springframework.data.jpa.repository.JpaRepository; | ||
import org.springframework.stereotype.Repository; | ||
|
||
@Repository | ||
public interface BlockRepository extends JpaRepository<Block, Long> { | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
package com.aliens.backend.block.service; | ||
|
||
import com.aliens.backend.auth.controller.dto.LoginMember; | ||
import com.aliens.backend.auth.domain.Member; | ||
import com.aliens.backend.auth.domain.repository.MemberRepository; | ||
import com.aliens.backend.block.domain.repository.BlockRepository; | ||
import com.aliens.backend.block.controller.dto.BlockRequest; | ||
import com.aliens.backend.block.domain.Block; | ||
import com.aliens.backend.chat.domain.ChatRoom; | ||
import com.aliens.backend.chat.domain.repository.ChatRoomRepository; | ||
import com.aliens.backend.global.exception.RestApiException; | ||
import com.aliens.backend.global.response.error.MemberError; | ||
import com.aliens.backend.global.response.success.ChatSuccess; | ||
import jakarta.transaction.Transactional; | ||
import org.springframework.stereotype.Service; | ||
|
||
import java.util.List; | ||
|
||
@Service | ||
public class BlockService { | ||
private final BlockRepository blockRepository; | ||
private final ChatRoomRepository chatRoomRepository; | ||
private final MemberRepository memberRepository; | ||
|
||
public BlockService(BlockRepository blockRepository, ChatRoomRepository chatRoomRepository, final MemberRepository memberRepository) { | ||
this.blockRepository = blockRepository; | ||
this.chatRoomRepository = chatRoomRepository; | ||
this.memberRepository = memberRepository; | ||
} | ||
|
||
@Transactional | ||
public String blockPartner(LoginMember loginMember, BlockRequest blockRequest) { | ||
blockMember(loginMember, blockRequest); | ||
blockChatRoom(blockRequest); | ||
return ChatSuccess.BLOCK_SUCCESS.getMessage(); | ||
} | ||
|
||
private void blockMember(final LoginMember loginMember, final BlockRequest blockRequest) { | ||
Member blockingMember = getMember(loginMember); | ||
Member blockedMember = findMemberById(blockRequest.partnerId()); | ||
|
||
Block block = Block.of(blockingMember, blockedMember); | ||
blockRepository.save(block); | ||
} | ||
|
||
private void blockChatRoom(final BlockRequest blockRequest) { | ||
List<ChatRoom> chatRooms = findChatRoomsById(blockRequest.chatRoomId()); | ||
chatRooms.forEach(ChatRoom::block); | ||
chatRoomRepository.saveAll(chatRooms); | ||
} | ||
|
||
private List<ChatRoom> findChatRoomsById(final Long chatRoomId) { | ||
return chatRoomRepository.findByRoomId(chatRoomId); | ||
} | ||
|
||
private Member findMemberById(final Long partnerId) { | ||
return memberRepository.findById(partnerId).orElseThrow(() -> new RestApiException(MemberError.NULL_MEMBER)); | ||
} | ||
|
||
private Member getMember(final LoginMember loginMember) { | ||
return memberRepository.findById(loginMember.memberId()).orElseThrow(() -> new RestApiException(MemberError.NULL_MEMBER)); | ||
} | ||
} |
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,17 +6,16 @@ | |
import com.aliens.backend.chat.domain.Message; | ||
import com.aliens.backend.chat.service.ChatService; | ||
import com.aliens.backend.global.config.resolver.Login; | ||
import org.springframework.http.ResponseEntity; | ||
import com.aliens.backend.global.response.SuccessResponse; | ||
import com.aliens.backend.global.response.success.ChatSuccess; | ||
import org.springframework.messaging.handler.annotation.MessageMapping; | ||
import org.springframework.messaging.handler.annotation.Payload; | ||
import org.springframework.web.bind.annotation.GetMapping; | ||
import org.springframework.web.bind.annotation.PathVariable; | ||
import org.springframework.web.bind.annotation.RequestParam; | ||
import org.springframework.web.bind.annotation.RestController; | ||
|
||
import java.util.Collections; | ||
import java.util.List; | ||
import java.util.Map; | ||
|
||
|
||
@RestController | ||
|
@@ -39,17 +38,22 @@ public void readMessage(@Payload ReadRequest readRequest) { | |
} | ||
|
||
@GetMapping("/chat/summaries") | ||
public ResponseEntity<Map<String, ChatSummaryResponse>> getChatSummaries(@Login Long memberId) { | ||
ChatSummaryResponse chatSummaryResponse = chatService.getChatSummaries(memberId); | ||
Map<String, ChatSummaryResponse> response = Collections.singletonMap("response", chatSummaryResponse); | ||
return ResponseEntity.ok(response); | ||
public SuccessResponse<ChatSummaryResponse> getChatSummaries(@Login Long memberId) { | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. (@Login Long memberId) ์ด ๋ถ๋ถ There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ํ
์คํธ ์ฝ๋๊ฐ ์ฑ๊ณตํ๋๋ก๋ง ํผ๋๋ฐฑ ํ๋ ๋ถ๋ถ์ ์ต๋ํ ์์ ํ์ง ์๊ณ ์ ํ์ต๋๋ค. (์๊ณ ์๋๋ฐ ์ผ๋จ ๋์ด์ ๐ฅฒ) |
||
|
||
return SuccessResponse.of( | ||
ChatSuccess.GET_SUMMARIES_SUCCESS, | ||
chatService.getChatSummaries(memberId) | ||
); | ||
} | ||
|
||
@GetMapping("/chat/room/{roomId}/messages") | ||
public ResponseEntity<Map<String, List>> getMessages(@PathVariable("roomId") Long chatRoomId, | ||
@RequestParam(value = "lastMessageId", required = false) String lastMessageId) { | ||
List<Message> messages = chatService.getMessages(chatRoomId,lastMessageId); | ||
Map<String, List> response = Collections.singletonMap("response", messages); | ||
return ResponseEntity.ok(response); | ||
public SuccessResponse<List<Message>> getMessages(@PathVariable("roomId") Long chatRoomId, | ||
@RequestParam(value = "lastMessageId", required = false) String messageId) { | ||
|
||
return SuccessResponse.of( | ||
ChatSuccess.GET_MESSAGES_SUCCESS, | ||
chatService.getMessages(chatRoomId,messageId) | ||
); | ||
|
||
} | ||
} |
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,6 @@ | ||
package com.aliens.backend.chat.controller.dto.request; | ||
|
||
public record ChatReportRequest(Long partnerId, Long chatRoomId, String category, String content) { | ||
import com.aliens.backend.chat.domain.ChatReportCategory; | ||
|
||
public record ChatReportRequest(Long partnerId, Long chatRoomId, ChatReportCategory category, String content) { | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,6 @@ | ||
package com.aliens.backend.chat.controller.dto.request; | ||
|
||
public record MessageSendRequest(String type, String content, Long roomId, Long senderId, Long receiverId) { | ||
import com.aliens.backend.chat.domain.MessageType; | ||
|
||
public record MessageSendRequest(MessageType type, String content, Long roomId, Long senderId, Long receiverId) { | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
๋ง์ํ์ ๋๋ก ์์ ํด์ฃผ์ จ๊ตฐ์ ! ์ปจ๋ฒค์ ์ผ๋ก ํ์ฉํ๋๋ก ํ๊ฒ ์ต๋๋ค