From 4a2dec6043dad00ddbf89ae347a63e18f32e434d Mon Sep 17 00:00:00 2001 From: chaewon Date: Tue, 23 Sep 2025 23:20:54 +0900 Subject: [PATCH] =?UTF-8?q?[refactor]=20#214=20BaseTimeEntity=20=EC=83=81?= =?UTF-8?q?=EC=86=8D=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../homepage/domain/minigame/dex/entity/Dex.java | 3 ++- .../homepage/domain/minigame/dex/service/DexService.java | 2 +- .../homepage/domain/minigame/farm/entity/FarmplotTile.java | 3 ++- .../homepage/domain/minigame/farm/entity/PlantedPlant.java | 3 ++- .../homepage/domain/minigame/garden/entity/GardenTile.java | 2 +- .../domain/minigame/garden/entity/PlacedObject.java | 4 +--- .../domain/minigame/garden/service/GardenService.java | 2 +- .../homepage/domain/minigame/inventory/entity/Goods.java | 4 +--- .../domain/minigame/inventory/entity/Inventory.java | 1 - .../minigame/inventory/service/InventoryService.java | 2 +- .../homepage/domain/minigame/player/entity/Badge.java | 3 ++- .../homepage/domain/minigame/player/entity/DailyGame.java | 3 ++- .../homepage/domain/minigame/player/entity/Player.java | 2 +- .../homepage/domain/minigame/solar/entity/Solar.java | 7 ++++--- .../org/farmsystem/homepage/global/error/ErrorCode.java | 2 +- 15 files changed, 22 insertions(+), 21 deletions(-) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/dex/entity/Dex.java b/src/main/java/org/farmsystem/homepage/domain/minigame/dex/entity/Dex.java index 75e0240..14c4e49 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/dex/entity/Dex.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/dex/entity/Dex.java @@ -2,6 +2,7 @@ import jakarta.persistence.*; import lombok.*; +import org.farmsystem.homepage.domain.common.entity.BaseTimeEntity; import org.farmsystem.homepage.domain.minigame.inventory.entity.Goods; import org.farmsystem.homepage.domain.minigame.player.entity.Player; @@ -10,7 +11,7 @@ @Getter @NoArgsConstructor @AllArgsConstructor -public class Dex { +public class Dex extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/dex/service/DexService.java b/src/main/java/org/farmsystem/homepage/domain/minigame/dex/service/DexService.java index f2d2e96..65e849c 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/dex/service/DexService.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/dex/service/DexService.java @@ -37,7 +37,7 @@ public DexResponseDTO addDex(Long userId, DexRequestDTO request) { // 해당 식물이 store에 존재하는지 확인 Goods goods = goodsRepository.findByGoodsNumber(request.ownedPlant()) - .orElseThrow(() -> new BusinessException(ErrorCode.STORE_NOT_FOUND)); + .orElseThrow(() -> new BusinessException(ErrorCode.GOODS_NOT_FOUND)); // 이미 등록된 식물인지 확인 if (dexRepository.existsByPlayerAndOwnedPlant(player, goods)) { throw new BusinessException(ErrorCode.DEX_ALREADY_REGISTERED); diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/FarmplotTile.java b/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/FarmplotTile.java index 4e6d8e2..0d9f7aa 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/FarmplotTile.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/FarmplotTile.java @@ -2,6 +2,7 @@ import jakarta.persistence.*; import lombok.*; +import org.farmsystem.homepage.domain.common.entity.BaseTimeEntity; import org.farmsystem.homepage.domain.minigame.player.entity.Player; @Entity @@ -10,7 +11,7 @@ @NoArgsConstructor @AllArgsConstructor @Builder -public class FarmplotTile { +public class FarmplotTile extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/PlantedPlant.java b/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/PlantedPlant.java index b9bb993..de9a39e 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/PlantedPlant.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/farm/entity/PlantedPlant.java @@ -2,6 +2,7 @@ import jakarta.persistence.*; import lombok.*; +import org.farmsystem.homepage.domain.common.entity.BaseTimeEntity; import org.farmsystem.homepage.domain.minigame.farm.dto.request.TileUpdateRequestDTO; import org.farmsystem.homepage.domain.minigame.player.entity.Player; @@ -12,7 +13,7 @@ @Getter @NoArgsConstructor @AllArgsConstructor -public class PlantedPlant { +public class PlantedPlant extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/GardenTile.java b/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/GardenTile.java index 6bf5bf0..6fef3b8 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/GardenTile.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/GardenTile.java @@ -12,7 +12,7 @@ @NoArgsConstructor @AllArgsConstructor @Builder -// TODO: public class Tile | @Table(name = "tile") 은 어때요 + public class GardenTile extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/PlacedObject.java b/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/PlacedObject.java index 8e68b7e..d8c9974 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/PlacedObject.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/garden/entity/PlacedObject.java @@ -11,9 +11,7 @@ @NoArgsConstructor @AllArgsConstructor @Builder -// TODO: 진수) 이것도 이름 바꾸고 싶은데 고민.. 소은) 그냥 유지하고 placed_object_id 안되나? 꼭 placed를 붙여야 하는 이유가 있다면 그렇게 하는 게 맞는 거 같은데... -// 하연 ) 상관없는데 아이디랑 테이블 명 통일만 해줬으면 좋겠다. -// 소은 ) 인정. + public class PlacedObject extends BaseTimeEntity { //인벤토리에서 보유한 오브젝트 하나를 삭제하고 정원에 하나를 추가하여 배치함. @Id diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/garden/service/GardenService.java b/src/main/java/org/farmsystem/homepage/domain/minigame/garden/service/GardenService.java index e93bc71..1621ee5 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/garden/service/GardenService.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/garden/service/GardenService.java @@ -56,7 +56,7 @@ private boolean isDefaultGrass(Goods goods) { //상점에 존재하는 넘버인지 확인 private Goods findStoreOrThrow(Long goodsNumber) { return goodsRepository.findByGoodsNumber(goodsNumber) - .orElseThrow(() -> new BusinessException(ErrorCode.STORE_NOT_FOUND)); + .orElseThrow(() -> new BusinessException(ErrorCode.GOODS_NOT_FOUND)); } diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Goods.java b/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Goods.java index 33e2323..48ca500 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Goods.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Goods.java @@ -9,9 +9,7 @@ @NoArgsConstructor @AllArgsConstructor @Builder -// TODO: Goods 대신 Goods 같은 이름으로 바꾸는 것을 추천 -// 이유: GardenTile에서 'private Goods tileType;' 이 있는데, 이해하기 어렵다. -// 필드명에서도 store 빼서 한꺼번에 슉슉 정리하고 + public class Goods { //enum 대신 오브젝트/식물 넘버와 이름으로 존재하는 전체 오브젝트/식물 관리 @Id diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Inventory.java b/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Inventory.java index 6424b72..03e02cc 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Inventory.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/entity/Inventory.java @@ -13,7 +13,6 @@ @Builder public class Inventory extends BaseTimeEntity { //획득한 오브젝트들을 관리하는 인벤토리 - // TODO: 각종 ID는 엔티티명_id로 일치시켜주세요! ex. inventoryId (inventory_id) @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "inventory_id", nullable = false) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/service/InventoryService.java b/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/service/InventoryService.java index 042f12c..c6a2ce6 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/service/InventoryService.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/inventory/service/InventoryService.java @@ -66,7 +66,7 @@ public List updateInventoryObject(Long userId, InventoryUp .orElseThrow(() -> new BusinessException(ErrorCode.PLAYER_NOT_FOUND)); Goods goods = goodsRepository.findByGoodsNumber(requestDTO.objectType()) - .orElseThrow(() -> new BusinessException(ErrorCode.STORE_NOT_FOUND)); + .orElseThrow(() -> new BusinessException(ErrorCode.GOODS_NOT_FOUND)); Long storeGoodsNumber = requestDTO.objectType(); int newCount = requestDTO.objectCount(); diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Badge.java b/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Badge.java index 2b37f6a..65fd7a8 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Badge.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Badge.java @@ -2,13 +2,14 @@ import jakarta.persistence.*; import lombok.*; +import org.farmsystem.homepage.domain.common.entity.BaseTimeEntity; @Entity @Table(name = "badge") @Getter @NoArgsConstructor @AllArgsConstructor -public class Badge { //칭호 +public class Badge extends BaseTimeEntity { //칭호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "badge_id", nullable = false) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/DailyGame.java b/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/DailyGame.java index 8137bb1..98e3526 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/DailyGame.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/DailyGame.java @@ -2,6 +2,7 @@ import jakarta.persistence.*; import lombok.*; +import org.farmsystem.homepage.domain.common.entity.BaseTimeEntity; import org.farmsystem.homepage.global.error.ErrorCode; import org.farmsystem.homepage.global.error.exception.BusinessException; @@ -13,7 +14,7 @@ @NoArgsConstructor @AllArgsConstructor @Builder -public class DailyGame { +public class DailyGame extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Player.java b/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Player.java index decee28..a271492 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Player.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/player/entity/Player.java @@ -27,7 +27,7 @@ public class Player extends BaseTimeEntity { @Column(nullable = false) private int sunlight = 0; - @Column(nullable = false) + @Column(name = "seed_count", nullable = false) private int seedCount = 0; @Column(nullable = false) diff --git a/src/main/java/org/farmsystem/homepage/domain/minigame/solar/entity/Solar.java b/src/main/java/org/farmsystem/homepage/domain/minigame/solar/entity/Solar.java index 4aaafcc..32a8818 100644 --- a/src/main/java/org/farmsystem/homepage/domain/minigame/solar/entity/Solar.java +++ b/src/main/java/org/farmsystem/homepage/domain/minigame/solar/entity/Solar.java @@ -2,6 +2,7 @@ import jakarta.persistence.*; import lombok.*; +import org.farmsystem.homepage.domain.common.entity.BaseTimeEntity; import org.farmsystem.homepage.domain.minigame.player.entity.Player; import java.time.LocalDateTime; @@ -11,12 +12,12 @@ @Getter @NoArgsConstructor(access = AccessLevel.PROTECTED) @AllArgsConstructor -// TODO: public class Solar | @Table(name = "solar") 은 어때요 -public class Solar { + +public class Solar extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - // TODO: 같은 맥락으로 solarId + @Column(name = "solar_id", nullable = false) private Long solarId; diff --git a/src/main/java/org/farmsystem/homepage/global/error/ErrorCode.java b/src/main/java/org/farmsystem/homepage/global/error/ErrorCode.java index 7abef64..599d3e7 100644 --- a/src/main/java/org/farmsystem/homepage/global/error/ErrorCode.java +++ b/src/main/java/org/farmsystem/homepage/global/error/ErrorCode.java @@ -141,7 +141,7 @@ public enum ErrorCode { OBJECT_NOT_OWNED(HttpStatus.NOT_FOUND, "오브젝트 수량이 부족합니다."), OBJECT_NOT_FOUND(HttpStatus.NOT_FOUND, "해당 타일 위치에 오브젝트가 없습니다."), OBJECT_TYPE_MISMATCH(HttpStatus.BAD_REQUEST, "기존 타일 좌표 위의 오브젝트와 다른 오브젝트가 요청으로 들어왔습니다."), - STORE_NOT_FOUND(HttpStatus.NOT_FOUND, "상점에 없는 오브젝트입니다."), + GOODS_NOT_FOUND(HttpStatus.NOT_FOUND, "상점에 없는 오브젝트입니다."), PLAYER_NOT_FOUND(HttpStatus.NOT_FOUND, "플레이어를 찾을 수 없습니다."), FARMTILE_NOT_FOUND(HttpStatus.NOT_FOUND, "텃밭 타일을 찾을 수 없습니다."), BADGE_NOT_FOUND(HttpStatus.NOT_FOUND, "해당 칭호를 찾을 수 없습니다."),