From 04ebed5cca7a42d1494e2c02c697363a3c6fa49a Mon Sep 17 00:00:00 2001 From: "gayoun.park" Date: Wed, 10 Dec 2025 11:06:14 +0900 Subject: [PATCH 1/2] =?UTF-8?q?=EA=B3=B5=ED=86=B5=EC=BD=94=EB=93=9C=20?= =?UTF-8?q?=EC=A0=80=EC=9E=A5=20parent=20null=EC=9D=B8=20=EA=B2=BD?= =?UTF-8?q?=EC=9A=B0=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kamcoback/postgres/core/CommonCodeCoreService.java | 4 +++- .../repository/code/CommonCodeRepositoryImpl.java | 9 ++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java b/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java index b3541ed9..19e91265 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java @@ -76,9 +76,11 @@ public class CommonCodeCoreService "parent id 를 찾을 수 없습니다. id : " + req.getParentId())); entity.addParent(parentCommonCodeEntity); + } else { + entity.addParent(null); } - commonCodeRepository.save(entity).toDto(); + return new ResponseObj(ApiResponseCode.OK, ""); } diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/code/CommonCodeRepositoryImpl.java b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/code/CommonCodeRepositoryImpl.java index 2557240d..4298eedd 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/code/CommonCodeRepositoryImpl.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/code/CommonCodeRepositoryImpl.java @@ -4,6 +4,7 @@ import static com.kamco.cd.kamcoback.postgres.entity.QCommonCodeEntity.commonCod import com.kamco.cd.kamcoback.postgres.entity.CommonCodeEntity; import com.kamco.cd.kamcoback.postgres.entity.QCommonCodeEntity; +import com.querydsl.core.types.dsl.BooleanExpression; import com.querydsl.jpa.impl.JPAQueryFactory; import java.util.List; import java.util.Optional; @@ -106,10 +107,16 @@ public class CommonCodeRepositoryImpl implements CommonCodeRepositoryCustom { return queryFactory .select(commonCodeEntity.code.count()) .from(commonCodeEntity) - .where(commonCodeEntity.parent.id.eq(parentId), commonCodeEntity.code.eq(code)) + .where(conditionParentId(parentId), commonCodeEntity.code.eq(code)) .fetchOne(); } + private BooleanExpression conditionParentId(Long parentId) { + return parentId == null + ? commonCodeEntity.parent.id.isNull() + : commonCodeEntity.parent.id.eq(parentId); + } + private List findAllByIds(Set ids) { return queryFactory .selectFrom(commonCodeEntity) From c288423cf0ebeaa7b5bc286414679c23868de94c Mon Sep 17 00:00:00 2001 From: "gayoun.park" Date: Wed, 10 Dec 2025 12:22:53 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=EA=B3=B5=ED=86=B5=EC=BD=94=EB=93=9C=20?= =?UTF-8?q?=EC=B2=B4=ED=81=AC=20=EC=A0=95=EA=B7=9C=EC=8B=9D=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cd/kamcoback/postgres/core/CommonCodeCoreService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java b/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java index 19e91265..259b885c 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/core/CommonCodeCoreService.java @@ -43,7 +43,7 @@ public class CommonCodeCoreService @CacheEvict(value = "commonCodes", allEntries = true) public ResponseObj save(CommonCodeDto.AddReq req) { - String regex = "^([A-Z]+|[0-9]+|[A-Z0-9]+(_[A-Z0-9]+)+)$"; + String regex = "^[A-Z0-9]+(_[A-Z0-9]+)*$"; boolean isValid = req.getCode().matches(regex); if (!isValid) { return new ResponseObj(ApiResponseCode.CONFLICT, "공통코드에 영문 대문자, 숫자, 언더바(_)만 입력 가능합니다."); @@ -204,7 +204,7 @@ public class CommonCodeCoreService public ResponseObj getCodeCheckDuplicate(Long parentId, String code) { Long existsCount = commonCodeRepository.findByParentIdCodeExists(parentId, code); - String regex = "^([A-Z]+|[0-9]+|[A-Z0-9]+(_[A-Z0-9]+)+)$"; + String regex = "^[A-Z0-9]+(_[A-Z0-9]+)*$"; boolean isValid = code.matches(regex); if (!isValid) { return new ResponseObj(ApiResponseCode.CONFLICT, "공통코드에 영문 대문자, 숫자, 언더바(_)만 입력 가능합니다.");