로그에 메뉴코드 매핑하여 insert 하기

This commit is contained in:
2025-12-10 10:05:42 +09:00
parent e24f6801b3
commit c9094f04c2
13 changed files with 135 additions and 79 deletions

View File

@@ -9,15 +9,14 @@ import com.kamco.cd.kamcoback.postgres.entity.CommonCodeEntity;
import com.kamco.cd.kamcoback.postgres.repository.code.CommonCodeRepository;
import com.kamco.cd.kamcoback.zoo.dto.AnimalDto.SearchReq;
import jakarta.persistence.EntityNotFoundException;
import java.util.List;
import java.util.Optional;
import lombok.RequiredArgsConstructor;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.domain.Page;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Optional;
@Service
@RequiredArgsConstructor
public class CommonCodeCoreService
@@ -47,15 +46,13 @@ public class CommonCodeCoreService
String regex = "^([A-Z]+|[0-9]+|[A-Z0-9]+(_[A-Z0-9]+)+)$";
boolean isValid = req.getCode().matches(regex);
if (!isValid) {
return new ResponseObj(
ApiResponseCode.CONFLICT, "공통코드에 영문 대문자, 숫자, 언더바(_)만 입력 가능합니다.");
return new ResponseObj(ApiResponseCode.CONFLICT, "공통코드에 영문 대문자, 숫자, 언더바(_)만 입력 가능합니다.");
}
Long existsCount =
commonCodeRepository.findByParentIdCodeExists(req.getParentId(), req.getCode());
if (existsCount > 0) {
return new ResponseObj(
ApiResponseCode.DUPLICATE_DATA, "이미 사용중인 공통코드ID 입니다.");
return new ResponseObj(ApiResponseCode.DUPLICATE_DATA, "이미 사용중인 공통코드ID 입니다.");
}
CommonCodeEntity entity =
@@ -208,13 +205,11 @@ public class CommonCodeCoreService
String regex = "^([A-Z]+|[0-9]+|[A-Z0-9]+(_[A-Z0-9]+)+)$";
boolean isValid = code.matches(regex);
if (!isValid) {
return new ResponseObj(
ApiResponseCode.CONFLICT, "공통코드에 영문 대문자, 숫자, 언더바(_)만 입력 가능합니다.");
return new ResponseObj(ApiResponseCode.CONFLICT, "공통코드에 영문 대문자, 숫자, 언더바(_)만 입력 가능합니다.");
}
if (existsCount > 0) {
return new ResponseObj(
ApiResponseCode.DUPLICATE_DATA, "이미 사용중인 공통코드ID 입니다.");
return new ResponseObj(ApiResponseCode.DUPLICATE_DATA, "이미 사용중인 공통코드ID 입니다.");
}
return new ResponseObj(ApiResponseCode.OK, "");

View File

@@ -3,11 +3,10 @@ package com.kamco.cd.kamcoback.postgres.core;
import com.kamco.cd.kamcoback.menu.dto.MenuDto;
import com.kamco.cd.kamcoback.postgres.entity.MenuEntity;
import com.kamco.cd.kamcoback.postgres.repository.menu.MenuRepository;
import java.util.List;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@RequiredArgsConstructor
public class MenuCoreService {

View File

@@ -52,21 +52,20 @@ public class MenuEntity extends CommonDateEntity {
@Column(name = "menu_api_uri")
private String menuApiUri;
public MenuDto.Basic toDto(){
public MenuDto.Basic toDto() {
return new MenuDto.Basic(
this.menuUid,
this.menuNm,
this.menuUrl,
this.description,
this.menuOrder,
this.isUse,
this.deleted,
this.createdUid,
this.updatedUid,
this.children.stream().map(MenuEntity::toDto).toList(),
this.getCreatedDate(),
this.getModifiedDate(),
this.menuApiUri
);
this.menuUid,
this.menuNm,
this.menuUrl,
this.description,
this.menuOrder,
this.isUse,
this.deleted,
this.createdUid,
this.updatedUid,
this.children.stream().map(MenuEntity::toDto).toList(),
this.getCreatedDate(),
this.getModifiedDate(),
this.menuApiUri);
}
}

View File

@@ -5,6 +5,7 @@ import com.kamco.cd.kamcoback.postgres.CommonDateEntity;
import jakarta.persistence.*;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.hibernate.annotations.ColumnDefault;
@@ -12,6 +13,7 @@ import org.hibernate.annotations.ColumnDefault;
@Setter
@Entity
@Table(name = "tb_model_mng")
@NoArgsConstructor
public class ModelMngEntity extends CommonDateEntity {
@Id

View File

@@ -1,7 +1,6 @@
package com.kamco.cd.kamcoback.postgres.repository.menu;
import com.kamco.cd.kamcoback.postgres.entity.MenuEntity;
import java.util.List;
public interface MenuRepositoryCustom {

View File

@@ -1,14 +1,13 @@
package com.kamco.cd.kamcoback.postgres.repository.menu;
import static com.kamco.cd.kamcoback.postgres.entity.QMenuEntity.menuEntity;
import com.kamco.cd.kamcoback.postgres.entity.MenuEntity;
import com.querydsl.core.types.dsl.Expressions;
import com.querydsl.core.types.dsl.StringExpression;
import com.querydsl.jpa.impl.JPAQueryFactory;
import org.springframework.data.jpa.repository.support.QuerydslRepositorySupport;
import java.util.List;
import static com.kamco.cd.kamcoback.postgres.entity.QMenuEntity.menuEntity;
import org.springframework.data.jpa.repository.support.QuerydslRepositorySupport;
public class MenuRepositoryImpl extends QuerydslRepositorySupport implements MenuRepositoryCustom {
@@ -16,15 +15,12 @@ public class MenuRepositoryImpl extends QuerydslRepositorySupport implements Men
private final StringExpression NULL_STRING = Expressions.stringTemplate("cast(null as text)");
public MenuRepositoryImpl(JPAQueryFactory queryFactory) {
super(MenuEntity.class);
super(MenuEntity.class);
this.queryFactory = queryFactory;
}
@Override
public List<MenuEntity> getFindAll() {
return queryFactory
.selectFrom(menuEntity)
.where(menuEntity.deleted.isFalse())
.fetch();
return queryFactory.selectFrom(menuEntity).where(menuEntity.deleted.isFalse()).fetch();
}
}