Skip to content

Commit

Permalink
feat(#124): item entity 추가
Browse files Browse the repository at this point in the history
- item entity에서 지급받은 아이템, 사용여부 등 다양한 정보를 저장하는 entity를 만들었습니다.
  • Loading branch information
anys34 committed Oct 18, 2024
1 parent 54e3375 commit d611c87
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 0 deletions.
50 changes: 50 additions & 0 deletions src/main/java/com/insert/ioj/domain/item/domain/UserItem.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package com.insert.ioj.domain.item.domain;

import com.insert.ioj.domain.item.domain.type.Item;
import com.insert.ioj.domain.room.domain.Room;
import com.insert.ioj.domain.user.domain.User;
import com.insert.ioj.global.entity.BaseTimeEntity;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.EnumType;
import jakarta.persistence.Enumerated;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

@Getter
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Entity
public class UserItem extends BaseTimeEntity {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@Enumerated(EnumType.STRING)
private Item item;

private Boolean used = false;

private Boolean booked = false;

@Column(name = "used_at")
private LocalDateTime usedAt;

@ManyToOne
@JoinColumn(name = "room_id")
private Room room;

@ManyToOne
@JoinColumn(name = "user_id")
private User user;

@ManyToOne
@JoinColumn(name = "target_user_id")
private User targetUser;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package com.insert.ioj.domain.item.domain.type;

public enum Item {
BUBBLE,
INK,
DEVIL,
MIRROR,
SHIELD,
}

0 comments on commit d611c87

Please sign in to comment.