Skip to content

Commit 36eb648

Browse files
committed
refactor(PronounSet): All gender variables and related functions are changed with pronunset and its functionality
1 parent 86b860c commit 36eb648

File tree

8 files changed

+18
-12
lines changed

8 files changed

+18
-12
lines changed

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/auth/dto/RegisterRequest.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,11 @@ public class RegisterRequest {
3434
@Size(min = 2, max = 30)
3535
private String lastName;
3636

37-
@Pattern(regexp = "^(?i)(MALE|FEMALE|OTHER)$")
38-
private String gender;
37+
@Pattern(
38+
regexp = "^(?i)(HE_HIM|SHE_HER|THEY_THEM|SHE_THEY|HE_THEY|OTHER|NONE)$",
39+
message = "Invalid pronoun set"
40+
)
41+
private String pronounSet;
3942

4043
@Size(max = 250)
4144
private String bio;

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/auth/service/AuthService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ public MessageResponse registerAndSendVerification(@Valid RegisterRequest regist
150150
.firstName(registerRequest.getFirstName())
151151
.lastName(registerRequest.getLastName())
152152
.bio(registerRequest.getBio())
153-
.gender(registerRequest.getGender())
153+
.pronounSet(PronounSet.valueOf(registerRequest.getPronounSet().toUpperCase()))
154154
.imageUrl(null)
155155
.build();
156156

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/profile/dto/CreateProfileRequestDto.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,5 @@ public class CreateProfileRequestDto {
1818
private String bio; // optional
1919

2020
@Pattern(regexp = "^(?i)(MALE|FEMALE|OTHER)$")
21-
private String gender;
21+
private String pronounSet;
2222
}

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/profile/dto/ProfileResponseDto.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class ProfileResponseDto {
1515
private String firstName;
1616
private String lastName;
1717
private String bio;
18-
private String gender;
18+
private String pronounSet;
1919
private String imageUrl;
2020

2121
private List<EducationResponseDto> educations;

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/profile/dto/PublicProfileResponseDto.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class PublicProfileResponseDto {
1212
private String firstName;
1313
private String lastName;
1414
private String bio;
15-
private String gender;
15+
private String pronounSet;
1616
private String imageUrl;
1717

1818
private List<EducationResponseDto> educations;

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/profile/dto/UpdateProfileRequestDto.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ public class UpdateProfileRequestDto {
1010
private String firstName; // optional (partial update)
1111
private String lastName; // optional
1212
private String bio; // optional
13-
private String gender;
13+
private String pronounSet;
1414
}

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/profile/model/Profile.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import jakarta.persistence.*;
44
import lombok.*;
5+
import org.bounswe.jobboardbackend.auth.model.PronounSet;
56
import org.bounswe.jobboardbackend.auth.model.User;
67
import org.hibernate.annotations.CreationTimestamp;
78
import org.hibernate.annotations.UpdateTimestamp;
@@ -39,7 +40,8 @@ public class Profile {
3940
@Column(length = 1024)
4041
private String imageUrl;
4142

42-
private String gender;
43+
@Enumerated(EnumType.STRING)
44+
private PronounSet pronounSet;
4345

4446
@OneToMany(mappedBy = "profile", cascade = CascadeType.ALL, orphanRemoval = true)
4547
@Builder.Default

apps/jobboard-backend/src/main/java/org/bounswe/jobboardbackend/profile/service/ProfileService.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package org.bounswe.jobboardbackend.profile.service;
22

33
import lombok.RequiredArgsConstructor;
4+
import org.bounswe.jobboardbackend.auth.model.PronounSet;
45
import org.bounswe.jobboardbackend.auth.model.User;
56
import org.bounswe.jobboardbackend.auth.repository.UserRepository;
67
import org.bounswe.jobboardbackend.exception.ErrorCode;
@@ -90,7 +91,7 @@ public ProfileResponseDto createProfile(Long userId, CreateProfileRequestDto dto
9091
.firstName(dto.getFirstName())
9192
.lastName(dto.getLastName())
9293
.bio(dto.getBio())
93-
.gender(dto.getGender())
94+
.pronounSet(PronounSet.valueOf(dto.getPronounSet().toUpperCase()))
9495
.imageUrl(null)
9596
.build();
9697

@@ -121,7 +122,7 @@ public ProfileResponseDto updateProfile(Long userId, UpdateProfileRequestDto dto
121122
if (dto.getFirstName() != null) profile.setFirstName(dto.getFirstName());
122123
if (dto.getLastName() != null) profile.setLastName(dto.getLastName());
123124
if (dto.getBio() != null) profile.setBio(dto.getBio());
124-
if (dto.getGender() != null) profile.setGender(dto.getGender());
125+
if (dto.getPronounSet() != null) profile.setPronounSet(PronounSet.valueOf(dto.getPronounSet().toUpperCase()));
125126

126127
return toProfileDto(profile);
127128
}
@@ -136,7 +137,7 @@ public PublicProfileResponseDto getPublicProfile(Long userId) {
136137
.firstName(p.getFirstName())
137138
.lastName(p.getLastName())
138139
.bio(p.getBio())
139-
.gender(p.getGender())
140+
.pronounSet(String.valueOf(p.getPronounSet()))
140141
.imageUrl(p.getImageUrl())
141142
.educations(p.getEducations().stream().map(this::toEducationDto).collect(Collectors.toList()))
142143
.experiences(p.getExperiences().stream().map(this::toExperienceDto).collect(Collectors.toList()))
@@ -505,7 +506,7 @@ private ProfileResponseDto toProfileDto(Profile p) {
505506
.firstName(p.getFirstName())
506507
.lastName(p.getLastName())
507508
.bio(p.getBio())
508-
.gender(p.getGender())
509+
.pronounSet(String.valueOf(p.getPronounSet()))
509510
.imageUrl(p.getImageUrl())
510511
.educations(p.getEducations().stream().map(this::toEducationDto).collect(java.util.stream.Collectors.toList()))
511512
.experiences(p.getExperiences().stream().map(this::toExperienceDto).collect(java.util.stream.Collectors.toList()))

0 commit comments

Comments
 (0)