From d2d9c14d8b5657806143653963b7de9ce500cfc0 Mon Sep 17 00:00:00 2001 From: jihwan2da Date: Wed, 15 May 2024 00:48:20 +0900 Subject: [PATCH 1/5] =?UTF-8?q?fix:=20Legacy=20Group=20Create=20Event?= =?UTF-8?q?=EC=97=90=20groupId=20=ED=95=84=EB=93=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gloddy/server/group/event/GroupCreateEvent.java | 1 + src/main/java/com/gloddy/server/user/domain/User.java | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gloddy/server/group/event/GroupCreateEvent.java b/src/main/java/com/gloddy/server/group/event/GroupCreateEvent.java index 8e7c8ea1..2c3cd80c 100644 --- a/src/main/java/com/gloddy/server/group/event/GroupCreateEvent.java +++ b/src/main/java/com/gloddy/server/group/event/GroupCreateEvent.java @@ -11,4 +11,5 @@ @NoArgsConstructor(access = AccessLevel.PROTECTED) public class GroupCreateEvent implements Event { private Long userId; + private Long groupId; } diff --git a/src/main/java/com/gloddy/server/user/domain/User.java b/src/main/java/com/gloddy/server/user/domain/User.java index 3d1b949c..bd395048 100644 --- a/src/main/java/com/gloddy/server/user/domain/User.java +++ b/src/main/java/com/gloddy/server/user/domain/User.java @@ -87,7 +87,7 @@ public Group saveGroup(GroupFactory groupFactory, GroupEventProducer groupEventP GroupCommandHandler groupCommandHandler, GroupRequest.Create groupInfo) { Group group = groupCommandHandler.save(groupFactory.getGroupFrom(this, groupInfo)); - groupEventProducer.produceEvent(new GroupCreateEvent(this.getId())); + groupEventProducer.produceEvent(new GroupCreateEvent(this.getId() ,group.getId())); groupEventProducer.produceEvent(new GroupParticipateEvent(this.getId(), group.getId())); return group; } From 0b72a96da1235436ca8164a2027140ad39deeccf Mon Sep 17 00:00:00 2001 From: jihwan2da Date: Wed, 15 May 2024 00:49:49 +0900 Subject: [PATCH 2/5] =?UTF-8?q?feat:=20GroupAdapterEvent=EC=97=90=20?= =?UTF-8?q?=EA=B7=B8=EB=A3=B9=20=EC=83=9D=EC=84=B1=20enum=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=20=EB=B0=8F=20=EA=B4=80=EB=A0=A8=20=EC=B2=98=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../outbox/adapter/group/event/GroupEventType.java | 2 ++ .../adapter/group/handler/GroupAdapterEventHandler.java | 7 +++++++ .../outbox/adapter/group/mapper/GroupEventMapper.java | 9 +++++++++ 3 files changed, 18 insertions(+) diff --git a/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java b/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java index 4aa80fbd..1a1ba6f9 100644 --- a/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java +++ b/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java @@ -6,6 +6,8 @@ @AllArgsConstructor @Getter public enum GroupEventType { + + CREATE("모임이 생성될 때"), APPROACHING_GROUP("모임 시작이 임박할 때"), END_GROUP("모임이 완료됏을 때"); diff --git a/src/main/java/com/gloddy/server/outbox/adapter/group/handler/GroupAdapterEventHandler.java b/src/main/java/com/gloddy/server/outbox/adapter/group/handler/GroupAdapterEventHandler.java index 937e3244..7d424d28 100644 --- a/src/main/java/com/gloddy/server/outbox/adapter/group/handler/GroupAdapterEventHandler.java +++ b/src/main/java/com/gloddy/server/outbox/adapter/group/handler/GroupAdapterEventHandler.java @@ -3,6 +3,7 @@ import com.gloddy.server.article.event.GroupArticleCreateEvent; import com.gloddy.server.batch.group.event.GroupApproachingEvent; import com.gloddy.server.batch.group.event.GroupEndEvent; +import com.gloddy.server.group.event.GroupCreateEvent; import com.gloddy.server.group_member.event.GroupMemberLeaveEvent; import com.gloddy.server.outbox.adapter.group.event.GroupAdapterEvent; import com.gloddy.server.outbox.adapter.group.event.GroupArticleAdapterEvent; @@ -21,6 +22,12 @@ public class GroupAdapterEventHandler { private final OutboxEventSaveService outboxEventSaveService; + @TransactionalEventListener(phase = TransactionPhase.BEFORE_COMMIT) + public void handle(GroupCreateEvent event) { + GroupAdapterEvent adapterEvent = GroupEventMapper.mapToGroupAdapterEvent(event); + outboxEventSaveService.save(adapterEvent); + } + @TransactionalEventListener(phase = TransactionPhase.BEFORE_COMMIT) public void handle(GroupArticleCreateEvent event) { GroupArticleAdapterEvent adapterEvent = GroupEventMapper.mapToGroupArticleAdapterEvent(event); diff --git a/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java b/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java index 1b3b1b96..2f87daa4 100644 --- a/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java +++ b/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java @@ -3,6 +3,7 @@ import com.gloddy.server.article.event.GroupArticleCreateEvent; import com.gloddy.server.batch.group.event.GroupApproachingEvent; import com.gloddy.server.batch.group.event.GroupEndEvent; +import com.gloddy.server.group.event.GroupCreateEvent; import com.gloddy.server.group_member.event.GroupMemberLeaveEvent; import com.gloddy.server.outbox.adapter.group.event.GroupAdapterEvent; import com.gloddy.server.outbox.adapter.group.event.GroupArticleAdapterEvent; @@ -46,4 +47,12 @@ public static GroupAdapterEvent mapToGroupAdapterEvent(GroupEndEvent event) { LocalDateTime.now() ); } + + public static GroupAdapterEvent mapToGroupAdapterEvent(GroupCreateEvent event) { + return new GroupAdapterEvent( + event.getGroupId(), + GroupEventType.CREATE, + LocalDateTime.now() + ); + } } From 43abbdad96e415148ff749beeac9b3d8541d392b Mon Sep 17 00:00:00 2001 From: jihwan2da Date: Wed, 15 May 2024 01:01:58 +0900 Subject: [PATCH 3/5] =?UTF-8?q?chore:=20group=20topic=20=ED=99=98=EA=B2=BD?= =?UTF-8?q?=EB=B3=80=EC=88=98=20=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/application.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index b91f4178..5a0f2e68 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -56,6 +56,7 @@ spring: group-article-topic: ${GROUP_ARTICLE_TOPIC} group-status-topic: ${GROUP_STATUS_TOPIC} user-topic: ${USER_TOPIC} + group-topic: ${GROUP_TOPIC} logging: level: From c5927b805ea19f8ff6a6674abb7f8a99673c4967 Mon Sep 17 00:00:00 2001 From: jihwan2da Date: Wed, 15 May 2024 01:02:23 +0900 Subject: [PATCH 4/5] =?UTF-8?q?feat:=20Group=20Create=20Event=20=EC=99=B8?= =?UTF-8?q?=EB=B6=80=20=EB=A9=94=EC=8B=9C=EC=A7=80=20=EC=8B=9C=EC=8A=A4?= =?UTF-8?q?=ED=85=9C=20=EB=B0=9C=ED=96=89=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/gloddy/server/messaging/sns/Topic.java | 2 ++ .../server/outbox/adapter/group/event/GroupEventType.java | 2 +- .../server/outbox/adapter/group/mapper/GroupEventMapper.java | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gloddy/server/messaging/sns/Topic.java b/src/main/java/com/gloddy/server/messaging/sns/Topic.java index 55bf6431..241d41b0 100644 --- a/src/main/java/com/gloddy/server/messaging/sns/Topic.java +++ b/src/main/java/com/gloddy/server/messaging/sns/Topic.java @@ -8,6 +8,8 @@ public enum Topic { APPLY_APPROVE("지원서가 승인 처리 되었을 때", "apply-topic"), APPLY_REFUSE("지원서가 거절 처리 되었을 때", "apply-topic"), + CREATE_GROUP("그룹이 생성 되었을 때", "group-topic"), + CREATE_GENERAL_ARTICLE("그룹 일반 게시글이 생성될 떄", "group-article-topic"), CREATE_NOTICE_ARTICLE("그룹 공지글이 생성될 때", "group-article-topic"), diff --git a/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java b/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java index 1a1ba6f9..8d986da3 100644 --- a/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java +++ b/src/main/java/com/gloddy/server/outbox/adapter/group/event/GroupEventType.java @@ -7,7 +7,7 @@ @Getter public enum GroupEventType { - CREATE("모임이 생성될 때"), + CREATE_GROUP("모임이 생성될 때"), APPROACHING_GROUP("모임 시작이 임박할 때"), END_GROUP("모임이 완료됏을 때"); diff --git a/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java b/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java index 2f87daa4..b07ea342 100644 --- a/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java +++ b/src/main/java/com/gloddy/server/outbox/adapter/group/mapper/GroupEventMapper.java @@ -51,7 +51,7 @@ public static GroupAdapterEvent mapToGroupAdapterEvent(GroupEndEvent event) { public static GroupAdapterEvent mapToGroupAdapterEvent(GroupCreateEvent event) { return new GroupAdapterEvent( event.getGroupId(), - GroupEventType.CREATE, + GroupEventType.CREATE_GROUP, LocalDateTime.now() ); } From e6090535588b0e2cc6244290016516c28a269578 Mon Sep 17 00:00:00 2001 From: jihwan2da Date: Wed, 15 May 2024 01:51:33 +0900 Subject: [PATCH 5/5] =?UTF-8?q?fix:=20Apply,=20Group=20=EB=82=B4=EB=B6=80?= =?UTF-8?q?=20API=20=20Legacy=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gloddy/server/apply/api/in/ApplyPayloadApi.java | 2 +- .../java/com/gloddy/server/group/api/in/GroupPayloadApi.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gloddy/server/apply/api/in/ApplyPayloadApi.java b/src/main/java/com/gloddy/server/apply/api/in/ApplyPayloadApi.java index 3128bec1..b5bf4258 100644 --- a/src/main/java/com/gloddy/server/apply/api/in/ApplyPayloadApi.java +++ b/src/main/java/com/gloddy/server/apply/api/in/ApplyPayloadApi.java @@ -20,7 +20,7 @@ public class ApplyPayloadApi { @GetMapping("/applies/{applyId}") public ResponseEntity getApplyPayload( @PathVariable("applyId") Long applyId, - @RequestParam("eventType") ApplyEventType eventType + @RequestParam(value = "eventType", required = false) ApplyEventType eventType ) { ApplyPayload response = applyPayloadService.getPayload(applyId, eventType); return ResponseEntity.ok(response); diff --git a/src/main/java/com/gloddy/server/group/api/in/GroupPayloadApi.java b/src/main/java/com/gloddy/server/group/api/in/GroupPayloadApi.java index 61902693..6f7521df 100644 --- a/src/main/java/com/gloddy/server/group/api/in/GroupPayloadApi.java +++ b/src/main/java/com/gloddy/server/group/api/in/GroupPayloadApi.java @@ -23,7 +23,7 @@ public class GroupPayloadApi { @GetMapping("/groups/{groupId}") public ResponseEntity getGroupPayload( @PathVariable("groupId") Long groupId, - @RequestParam("eventType") GroupPayloadEventType eventType + @RequestParam(value = "eventType", required = false) GroupPayloadEventType eventType ) { GroupPayload response = groupPayloadService.getGroupPayload(groupId, eventType); return ApiResponse.ok(response);