added role for posts

This commit is contained in:
SlimusMinus
2026-06-30 00:29:13 +03:00
parent 3f5aabdbd9
commit 1aee780ba1
6 changed files with 48 additions and 25 deletions

View File

@@ -48,7 +48,16 @@ public class AuthController {
String token = jwtService.generateToken(user.getLogin()); String token = jwtService.generateToken(user.getLogin());
UserDto userDto = new UserDto(user.getId(), user.getName(), user.getLogin(), user.getEmail()); UserDto userDto = new UserDto(
user.getId(),
user.getName(),
user.getLastName(),
user.getLogin(),
user.getEmail(),
user.getPhone(),
user.getAvatarUrl(),
user.getRole()
);
return ResponseEntity.ok(new AuthResponse(token, userDto)); return ResponseEntity.ok(new AuthResponse(token, userDto));
} }
@@ -66,7 +75,16 @@ public class AuthController {
String token = jwtService.generateToken(user.getLogin()); String token = jwtService.generateToken(user.getLogin());
UserDto userDto = new UserDto(user.getId(), user.getName(), user.getLogin(), user.getEmail()); UserDto userDto = new UserDto(
user.getId(),
user.getName(),
user.getLastName(),
user.getLogin(),
user.getEmail(),
user.getPhone(),
user.getAvatarUrl(),
user.getRole()
);
return ResponseEntity.ok(new AuthResponse(token, userDto)); return ResponseEntity.ok(new AuthResponse(token, userDto));
} }

View File

@@ -80,10 +80,7 @@ public class PostController {
} }
@PatchMapping("/{id}/status") @PatchMapping("/{id}/status")
public PostResponse updateStatus( public PostResponse updateStatus(@PathVariable Long id, @RequestBody StatusUpdateRequest request) {
@PathVariable Long id,
@RequestBody StatusUpdateRequest request
) {
return service.updateStatus(id, request.getStatus()); return service.updateStatus(id, request.getStatus());
} }
} }

View File

@@ -2,26 +2,28 @@ package com.krylov.refound.dto;
import com.krylov.refound.enums.PostStatus; import com.krylov.refound.enums.PostStatus;
import com.krylov.refound.enums.PostType; import com.krylov.refound.enums.PostType;
import com.krylov.refound.enums.Role;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import lombok.Data; import lombok.Data;
@Data @Data
public class PostResponse { public class PostResponse {
private Long id; private Long id;
private String title; private String title;
private String description; private String description;
private String category; private String category;
private String city; private String city;
private String district; private String district;
private PostType type; private PostType type;
private PostStatus status; private PostStatus status;
private LocalDateTime createdAt; private LocalDateTime createdAt;
private String userEmail; private String userEmail;
private String phone; private String phone;
private List<String> images; private List<String> images;
private boolean isFavorite; private boolean isFavorite;
private Long userId; private Long userId;
private Long likeCount; private Long likeCount;
} private Role userRole;
}

View File

@@ -1,5 +1,6 @@
package com.krylov.refound.dto; package com.krylov.refound.dto;
import com.krylov.refound.enums.Role;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
@@ -8,6 +9,10 @@ import lombok.Data;
public class UserDto { public class UserDto {
private Long id; private Long id;
private String name; private String name;
private String lastName;
private String login; private String login;
private String email; private String email;
private String phone;
private String avatarUrl;
private Role role;
} }

View File

@@ -1,5 +1,5 @@
package com.krylov.refound.enums; package com.krylov.refound.enums;
public enum Role { public enum Role {
ADMIN, USER ADMIN, USER, LOST_AND_FOUND, METRO
} }

View File

@@ -105,6 +105,7 @@ public class PostService {
PostResponse response = mapper.toResponse(post); PostResponse response = mapper.toResponse(post);
response.setLikeCount(likeCounts.getOrDefault(post.getId(), 0L)); response.setLikeCount(likeCounts.getOrDefault(post.getId(), 0L));
response.setFavorite(finalUserFavoriteIds.contains(post.getId())); response.setFavorite(finalUserFavoriteIds.contains(post.getId()));
response.setUserRole(post.getUser().getRole());
return response; return response;
}) })
.toList(); .toList();