Skip to content

Commit 2e69d39

Browse files
committed
feat: added relations to find all posts service
1 parent 3949034 commit 2e69d39

File tree

5 files changed

+40
-3
lines changed

5 files changed

+40
-3
lines changed

src/main/java/com/joaov1ct0r/restful_api_users_java/modules/posts/dtos/PostDTO.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.joaov1ct0r.restful_api_users_java.modules.posts.dtos;
22

3+
import com.joaov1ct0r.restful_api_users_java.modules.users.dtos.UserDTO;
4+
35
import java.time.LocalDateTime;
46
import java.util.UUID;
57

@@ -10,6 +12,16 @@ public class PostDTO {
1012
public LocalDateTime updatedAt;
1113
public UUID userWhoCreatedId;
1214

15+
public UserDTO getUserWhoCreated() {
16+
return this.userWhoCreated;
17+
}
18+
19+
public void setUserWhoCreated(UserDTO userWhoCreated) {
20+
this.userWhoCreated = userWhoCreated;
21+
}
22+
23+
public UserDTO userWhoCreated;
24+
1325
public UUID getId() {
1426
return this.id;
1527
}

src/main/java/com/joaov1ct0r/restful_api_users_java/modules/posts/entities/PostEntity.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public class PostEntity {
3131
@Column()
3232
private UUID userWhoCreatedId;
3333

34-
@ManyToOne
34+
@ManyToOne(fetch = FetchType.EAGER)
3535
@JoinColumn(name = "UserWhoCreatedId", insertable = false, updatable = false)
3636
private UserEntity userWhoCreated;
3737

@@ -82,4 +82,12 @@ public void setUpdatedAt(LocalDateTime updatedAt) {
8282
public UUID getUserWhoCreatedId() {
8383
return this.userWhoCreatedId;
8484
}
85+
86+
public UserEntity getUserWhoCreated() {
87+
return this.userWhoCreated;
88+
}
89+
90+
public void setUserWhoCreated(UserEntity userWhoCreated) {
91+
this.userWhoCreated = userWhoCreated;
92+
}
8593
}

src/main/java/com/joaov1ct0r/restful_api_users_java/modules/posts/mappers/PostMapper.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.joaov1ct0r.restful_api_users_java.modules.posts.dtos.CreatePostDTO;
44
import com.joaov1ct0r.restful_api_users_java.modules.posts.dtos.PostDTO;
55
import com.joaov1ct0r.restful_api_users_java.modules.posts.entities.PostEntity;
6+
import com.joaov1ct0r.restful_api_users_java.modules.users.mappers.UserMapper;
67

78
import java.time.LocalDateTime;
89
import java.util.UUID;
@@ -15,6 +16,11 @@ public static PostDTO toDTO(PostEntity post) {
1516
postDTO.setCreatedAt(post.getCreatedAt());
1617
postDTO.setUpdatedAt(post.getUpdatedAt());
1718
postDTO.setUserWhoCreatedId(post.getUserWhoCreatedId());
19+
20+
if (post.getUserWhoCreated() != null) {
21+
postDTO.setUserWhoCreated(UserMapper.toDTO(post.getUserWhoCreated()));
22+
};
23+
1824
return postDTO;
1925
}
2026

src/main/java/com/joaov1ct0r/restful_api_users_java/modules/posts/services/FindAllPostsService.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
import org.springframework.data.domain.PageRequest;
1212
import org.springframework.data.domain.Sort;
1313
import org.springframework.stereotype.Service;
14+
15+
import java.util.Arrays;
1416
import java.util.List;
1517

1618
@Service
@@ -30,7 +32,6 @@ public List<PostDTO> execute(FindAllPostsDTO query) {
3032
query.getContent(),
3133
page
3234
);
33-
3435
} else {
3536
posts = this.postRepository.findAll(page);
3637
}

src/test/java/com/joaov1ct0r/restful_api_users_java/modules/posts/services/CreatePostServiceTest.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
package com.joaov1ct0r.restful_api_users_java.modules.posts.services;
22

33
import com.joaov1ct0r.restful_api_users_java.modules.posts.dtos.CreatePostDTO;
4+
import com.joaov1ct0r.restful_api_users_java.modules.posts.entities.PostEntity;
45
import com.joaov1ct0r.restful_api_users_java.modules.posts.mappers.PostMapper;
56
import com.joaov1ct0r.restful_api_users_java.modules.posts.repositories.PostRepository;
67
import com.joaov1ct0r.restful_api_users_java.modules.posts.services.CreatePostService;
78
import com.joaov1ct0r.restful_api_users_java.modules.domain.repositories.ErrorLogsRepository;
9+
import com.joaov1ct0r.restful_api_users_java.modules.users.entities.UserEntity;
810
import org.junit.jupiter.api.BeforeEach;
911
import org.junit.jupiter.api.Test;
1012
import static org.assertj.core.api.Assertions.assertThat;
@@ -16,6 +18,8 @@
1618
import org.mockito.junit.jupiter.MockitoExtension;
1719
import org.mockito.junit.jupiter.MockitoSettings;
1820
import org.mockito.quality.Strictness;
21+
22+
import java.time.LocalDateTime;
1923
import java.util.UUID;
2024
import static org.mockito.Mockito.when;
2125
import static org.mockito.Mockito.any;
@@ -46,7 +50,13 @@ public void shouldBeAbleToRegisterANewPost() throws Exception {
4650
"any_content"
4751
);
4852
when(this.postRepository.save(any())).thenReturn(
49-
PostMapper.toPersistence(post, userId)
53+
new PostEntity(
54+
UUID.randomUUID(),
55+
post.getContent(),
56+
LocalDateTime.now(),
57+
null,
58+
userId
59+
)
5060
);
5161

5262
var createdPost = this.sut.execute(post, userId);

0 commit comments

Comments
 (0)