Skip to content

Commit

Permalink
Merge pull request #35 from YAPP-Github/fix/PC-440-confict-fix
Browse files Browse the repository at this point in the history
[PC-440] 머지 뒤 생긴 에러들 수정
  • Loading branch information
devchlee12 authored Jan 27, 2025
2 parents c1b81ef + ce1e086 commit 645b79c
Show file tree
Hide file tree
Showing 14 changed files with 223 additions and 280 deletions.
6 changes: 4 additions & 2 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,9 @@ jobs:

# gradle build
- name: Build with Gradle
run: ./gradlew build -x test
run: |
chmod u+x ./gradlew
./gradlew build -x test
# docker build & push to develop
- name: Docker build & push to dev
Expand All @@ -66,5 +68,5 @@ jobs:
script: |
sudo docker ps
sudo docker pull ${{ secrets.DOCKER_USERNAME }}/docker-test-dev
sudo docker run -d -p 8080:8080 --add-host=localhost:host-gateway ${{ secrets.DOCKER_USERNAME }}/docker-test-dev
sudo docker run -d -p 8080:8080 --network piece-nw ${{ secrets.DOCKER_USERNAME }}/docker-test-dev
sudo docker image prune -f
Original file line number Diff line number Diff line change
Expand Up @@ -16,73 +16,73 @@
@RequiredArgsConstructor
public class OauthService {

private final OauthProviderResolver oauthProviderResolver;
private final JwtUtil jwtUtil;
private final UserRepository userRepository;

public OauthLoginResponse login(OauthLoginRequest request) {
OauthProvider oauthProvider = oauthProviderResolver.find(request.getProviderName());
String oauthId =
request.getProviderName() + oauthProvider.getOAuthProviderUserId(request.getToken());

//이미 가입된 유저인지 확인하고 가입되어 있지 않으면 회원가입 처리
Optional<User> userOptional = userRepository.findByOauthId(oauthId);
if (userOptional.isEmpty()) {
User newUser = User.builder().oauthId(oauthId).role(RoleStatus.NONE.getStatus())
.build();
User savedUser = userRepository.save(newUser);
Long userId = savedUser.getId();
String accessToken = jwtUtil.createJwt("access_token", userId, oauthId, "NONE",
600000L);
String refreshToken = jwtUtil.createJwt("refresh_token", userId, oauthId, "NONE",
864000000L);
return new OauthLoginResponse(RoleStatus.NONE.getStatus(), accessToken, refreshToken);
}

//이미 가입한 유저인 경우 로그인 처리
Long userId = userOptional.get().getId();
final User user = userOptional.get();

String accessToken = jwtUtil.createJwt("access_token", userId, oauthId, user.getRole(),
600000L);
String refreshToken = jwtUtil.createJwt("refresh_token", userId, oauthId, user.getRole(),
864000000L);

//아직 SMS 인증이 완료되지 않음
if (user.getRole().equals("NONE")) {
return new OauthLoginResponse(RoleStatus.NONE.getStatus(), accessToken, refreshToken);
}

// SMS 인증은 완료되었으나, 프로필 등록을 안함
if (user.getRole().equals("REGISTER")) {
return new OauthLoginResponse(RoleStatus.REGISTER.getStatus(), accessToken,
refreshToken);
}

//프로필 등록은 했지만, 심사중
if (user.getRole().equals("PENDING")) {
return new OauthLoginResponse(RoleStatus.PENDING.getStatus(), accessToken,
refreshToken);
}

// 가입과 프로필 등록까지 완료된 유저
return new OauthLoginResponse(user.getRole(), accessToken, refreshToken);
private final OauthProviderResolver oauthProviderResolver;
private final JwtUtil jwtUtil;
private final UserRepository userRepository;

public OauthLoginResponse login(OauthLoginRequest request) {
OauthProvider oauthProvider = oauthProviderResolver.find(request.getProviderName());
String oauthId =
request.getProviderName() + oauthProvider.getOAuthProviderUserId(request.getToken());

//이미 가입된 유저인지 확인하고 가입되어 있지 않으면 회원가입 처리
Optional<User> userOptional = userRepository.findByOauthId(oauthId);
if (userOptional.isEmpty()) {
User newUser = User.builder().oauthId(oauthId).role(RoleStatus.NONE.getStatus())
.build();
User savedUser = userRepository.save(newUser);
Long userId = savedUser.getId();
String accessToken = jwtUtil.createJwt("access_token", userId, oauthId, "NONE",
600000L);
String refreshToken = jwtUtil.createJwt("refresh_token", userId, oauthId, "NONE",
864000000L);
return new OauthLoginResponse(RoleStatus.NONE.getStatus(), accessToken, refreshToken);
}

//이미 가입한 유저인 경우 로그인 처리
Long userId = userOptional.get().getId();
final User user = userOptional.get();

public OauthLoginResponse tmpTokenGet(Long userId) {
//이미 가입된 유저인지 확인하고 가입되어 있지 않으면 회원가입 처리
Optional<User> userOptional = userRepository.findById(userId);
String accessToken = jwtUtil.createJwt("access_token", userId, oauthId, user.getRole(),
600000L);
String refreshToken = jwtUtil.createJwt("refresh_token", userId, oauthId, user.getRole(),
864000000L);

System.out.println("userOptional = " + userOptional);

User user = userOptional.get();
//아직 SMS 인증이 완료되지 않음
if (user.getRole().equals("NONE")) {
return new OauthLoginResponse(RoleStatus.NONE.getStatus(), accessToken, refreshToken);
}

String accessToken = jwtUtil.createJwt("access_token", userId, user.getOauthId(),
user.getRole(), 600000L);
String refreshToken = jwtUtil.createJwt("refresh_token", userId, user.getOauthId(),
user.getRole(), 864000000L);
// SMS 인증은 완료되었으나, 프로필 등록을 안함
if (user.getRole().equals("REGISTER")) {
return new OauthLoginResponse(RoleStatus.REGISTER.getStatus(), accessToken,
refreshToken);
}

return new OauthLoginResponse(RoleStatus.NONE.getStatus(), accessToken, refreshToken);
//프로필 등록은 했지만, 심사중
if (user.getRole().equals("PENDING")) {
return new OauthLoginResponse(RoleStatus.PENDING.getStatus(), accessToken,
refreshToken);
}

// 가입과 프로필 등록까지 완료된 유저
return new OauthLoginResponse(user.getRole(), accessToken, refreshToken);
}


public OauthLoginResponse tmpTokenGet(Long userId) {
//이미 가입된 유저인지 확인하고 가입되어 있지 않으면 회원가입 처리
Optional<User> userOptional = userRepository.findById(userId);

System.out.println("userOptional = " + userOptional);

User user = userOptional.get();

String accessToken = jwtUtil.createJwt("access_token", userId, user.getOauthId(),
user.getRole(), 600000L);
String refreshToken = jwtUtil.createJwt("refresh_token", userId, user.getOauthId(),
user.getRole(), 864000000L);

return new OauthLoginResponse(RoleStatus.NONE.getStatus(), accessToken, refreshToken);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,34 +16,38 @@
@RequiredArgsConstructor
public class BlockContactService {

private final BlockContactRepository blockContactRepository;

@Transactional()
public void blockPhoneNumbers(BlockContactCreateDto blockContactCreateDto) {
Long userId = blockContactCreateDto.userId();
List<String> phoneNumbers = blockContactCreateDto.phoneNumbers();
List<BlockContact> newBlockContacts = new ArrayList<>();

Set<String> blockedPhoneNumbers = blockContactRepository.findBlocksByUserId(userId)
.stream()
.map(BlockContact::getPhoneNumber)
.collect(Collectors.toSet());

phoneNumbers.stream()
.filter(phoneNumber -> !blockedPhoneNumbers.contains(phoneNumber))
.forEach(phoneNumber -> {
BlockContact blockContact = BlockContact.builder()
.user(User.builder().id(userId).build())
.phoneNumber(phoneNumber)
.build();
newBlockContacts.add(blockContact);
});

blockContactRepository.saveAll(newBlockContacts);
}

@Transactional(readOnly = false)
public List<BlockContact> findBlocksByUserId(Long userId) {
return blockContactRepository.findBlocksByUserId(userId);
}
private final BlockContactRepository blockContactRepository;

@Transactional()
public void blockPhoneNumbers(BlockContactCreateDto blockContactCreateDto) {
Long userId = blockContactCreateDto.userId();
List<String> phoneNumbers = blockContactCreateDto.phoneNumbers();
List<BlockContact> newBlockContacts = new ArrayList<>();

Set<String> blockedPhoneNumbers = blockContactRepository.findBlocksByUserId(userId)
.stream()
.map(BlockContact::getPhoneNumber)
.collect(Collectors.toSet());

phoneNumbers.stream()
.filter(phoneNumber -> !blockedPhoneNumbers.contains(phoneNumber))
.forEach(phoneNumber -> {
BlockContact blockContact = BlockContact.builder()
.user(User.builder().id(userId).build())
.phoneNumber(phoneNumber)
.build();
newBlockContacts.add(blockContact);
});

blockContactRepository.saveAll(newBlockContacts);
}

@Transactional(readOnly = false)
public List<BlockContact> findBlocksByUserId(Long userId) {
return blockContactRepository.findBlocksByUserId(userId);
}

public boolean checkIfUserBlockedPhoneNumber(Long userId, String phoneNumber) {
return blockContactRepository.existsByUser_IdAndPhoneNumber(userId, phoneNumber);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,7 @@
@Repository
public interface BlockContactRepository extends JpaRepository<BlockContact, Long> {

List<BlockContact> findBlocksByUserId(Long userId);
List<BlockContact> findBlocksByUserId(Long userId);

boolean existsByUser_IdAndPhoneNumber(Long userId, String phoneNumber);
}
Original file line number Diff line number Diff line change
Expand Up @@ -184,8 +184,8 @@ public MatchValuePickResponse getMatchedUserValuePicks() {
private List<MatchValuePickInnerResponse> getMatchValuePickInnerResponses(Long fromProfileId,
Long toProfileId) {
List<ProfileValuePick> profileValuePicksOfFrom =
profileValuePickService.getAllProfileValuesByProfileId(fromProfileId);
List<ProfileValuePick> profileValuePicksOfTo = profileValuePickService.getAllProfileValuesByProfileId(
profileValuePickService.getAllProfileValuePicksByProfileId(fromProfileId);
List<ProfileValuePick> profileValuePicksOfTo = profileValuePickService.getAllProfileValuePicksByProfileId(
toProfileId);

List<MatchValuePickInnerResponse> talkInnerResponses = new ArrayList<>();
Expand Down Expand Up @@ -220,8 +220,8 @@ public String getMatchedUserImageUrl() {

private List<String> getMatchedValues(Long fromProfileId, Long toProfileId) {
List<ProfileValuePick> profileValuePicksOfFrom =
profileValuePickService.getAllProfileValuesByProfileId(fromProfileId);
List<ProfileValuePick> profileValuePicksOfTo = profileValuePickService.getAllProfileValuesByProfileId(
profileValuePickService.getAllProfileValuePicksByProfileId(fromProfileId);
List<ProfileValuePick> profileValuePicksOfTo = profileValuePickService.getAllProfileValuePicksByProfileId(
toProfileId);

int valueListSize = profileValuePicksOfFrom.size();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,8 +84,8 @@ private boolean checkBlock(Long blockingUserId, Long blockedUserId) {

private int calculateWeight(Long fromProfileId, Long toProfileId) {
List<ProfileValuePick> profileValuePicksOfFrom =
profileValuePickService.getAllProfileValuesByProfileId(fromProfileId);
List<ProfileValuePick> profileValuePicksOfTo = profileValuePickService.getAllProfileValuesByProfileId(
profileValuePickService.getAllProfileValuePicksByProfileId(fromProfileId);
List<ProfileValuePick> profileValuePicksOfTo = profileValuePickService.getAllProfileValuePicksByProfileId(
toProfileId);

int valueListSize = profileValuePicksOfFrom.size();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
package org.yapp.domain.match.application.blocker;

import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Component;
import org.yapp.domain.block.application.BlockService;
import org.yapp.domain.block.application.BlockContactService;
import org.yapp.domain.user.User;
import org.yapp.domain.user.application.UserService;

import lombok.RequiredArgsConstructor;

@Component
@RequiredArgsConstructor
public class AcquaintanceBasedBlocker implements Blocker {
private final BlockService blockService;

private final BlockContactService blockContactService;
private final UserService userService;

@Override
public boolean blocked(Long blockingUserId, Long blockedUserId) {
User user = userService.getUserById(blockingUserId);
return blockService.checkIfUserBlockedPhoneNumber(blockedUserId, user.getPhoneNumber());
return blockContactService.checkIfUserBlockedPhoneNumber(blockedUserId, user.getPhoneNumber());
}
}
Loading

0 comments on commit 645b79c

Please sign in to comment.