Skip to content

Commit

Permalink
refactor :: 독후감 권수 누적
Browse files Browse the repository at this point in the history
  • Loading branch information
ta2ye0n committed Apr 22, 2024
1 parent 73bd96e commit e622d31
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,17 @@ public void execute(BookWriteRequest bookWriteRequest) {
}

private void accrue(User user) {
Ranks rank = rankRepository.findByUser(user);
if (rank == null) {
rank = new Ranks(user);
}
Ranks rank = rankRepository.findByUser(user)
.orElseGet(() -> saveUserRank(user));

rank.accrue();
rankRepository.save(rank);
}

private Ranks saveUserRank (User user) {
return Ranks.builder()
.user(user)
.accrue(0)
.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,22 @@
import com.mindway.server.v2.domain.user.entity.User;
import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;

@Entity
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Getter
public class Ranks {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private Integer accrue = 0;
private Integer accrue;

@ManyToOne
@JoinColumn(name = "user_id")
Expand All @@ -26,7 +28,4 @@ public void accrue() {
accrue++;
}

public Ranks(User user) {
this.user = user;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,10 @@
import org.springframework.data.jpa.repository.JpaRepository;

import java.util.List;
import java.util.Optional;

public interface RankRepository extends JpaRepository<Ranks, Long> {
List<Ranks> findTop3ByOrderByAccrueDesc();

Ranks findByUser(User user);
Optional<Ranks> findByUser(User user);
}

0 comments on commit e622d31

Please sign in to comment.